{"version":3,"file":"index.client.js","mappings":";;;;;;AAAA,0CAA+C;;;;;;;;;ACA/C;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;AACA;AACA;AACA;;AAEA,SAAa;AACb,SAAiB;;AAEjB;AACA;AACA;AACA;;AAEA;AACA;AACA,yBAAyB;;AAEzB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kBAAkB,kBAAkB;AACpC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,gBAAgB;AAC7C,kBAAkB;AAClB;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,cAAc;AACd;;AAEA;AACA;AACA;AACA;;AAEA,cAAc;AACd;;AAEA;AACA;AACA;AACA;;AAEA,cAAc;AACd;;AAEA;AACA;AACA;AACA;;AAEA,cAAc;AACd;;AAEA;AACA,cAAc;AACd;;AAEA;AACA,cAAc;AACd;;AAEA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,kBAAkB;AAClB;AACA;AACA,kBAAkB;AAClB;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,UAAU;AACrB;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;;;;;;;ACzMA;;AAEA;AACA;AACA;;AAEA,kBAAkB;AAClB,YAAY;AACZ,YAAY;AACZ,iBAAiB;AACjB,eAAe;AACf,eAAe;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,4CAA4C;;AAEvD;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,QAAQ;AACpB;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA,iBAAiB,mBAAO,CAAC,IAAU;;AAEnC,OAAO,YAAY;;AAEnB;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;;AC3QA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,mBAAO,CAAC,IAAI;AACpC;;AAEA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY,eAAe;AAC3B;AACA;AACA;AACA;;AAEA,kBAAkB,sBAAsB;AACxC;AACA,cAAc;AACd;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,uCAAuC;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,IAAI;AACJ;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,cAAc,SAAS;AACvB;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,QAAQ;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,8CAA8C,SAAS;AACvD;AACA;AACA;AACA;;AAEA,8CAA8C,SAAS;AACvD;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY,QAAQ;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,OAAO;AAClB,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;;;;;;;ACjRA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,KAAK,IAA4E;AACjF,EAAE,mCAAO;AACT;AACA,GAAG;AAAA,kGAAC;AACJ,GAAG,KAAK,EAIN;;AAEF,CAAC;;;;;;;;;ACvCY;;AAEb;;;;AAIA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,uBAAuB,UAAU;AACjC;AACA;AACA;;;;AAIA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,UAAU;AAC/B;;AAEA,qBAAqB,UAAU;AAC/B;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;;;;;;;AC7Ca;;AAEb,wBAAwB,2BAA2B,sGAAsG,qBAAqB,mBAAmB,8HAA8H;;AAE/T,kDAAkD,0CAA0C;;AAE5F,4CAA4C,gBAAgB,kBAAkB,OAAO,2BAA2B,wDAAwD,gCAAgC,uDAAuD;;AAE/P,8DAA8D,sEAAsE,8DAA8D,kDAAkD,iBAAiB,GAAG;;AAExQ,2CAA2C,+DAA+D,6EAA6E,yEAAyE,eAAe,uDAAuD,GAAG,+CAA+C,iBAAiB,GAAG;;AAE5Y,iCAAiC,4EAA4E,iBAAiB,aAAa;;AAE3I,iCAAiC,6DAA6D,yCAAyC,8CAA8C,iCAAiC,mDAAmD,2DAA2D,OAAO,yCAAyC;;AAEpX,kDAAkD,0EAA0E,eAAe,4BAA4B,mFAAmF;;AAE1P,wCAAwC,uBAAuB,yFAAyF;;AAExJ,uCAAuC,wEAAwE,0CAA0C,8CAA8C,MAAM,4EAA4E,IAAI,eAAe,YAAY;;AAExT,8BAA8B,gGAAgG,mDAAmD;;AAEjL,YAAY,mBAAO,CAAC,IAAO;;AAE3B,eAAe,mBAAO,CAAC,IAAW;;AAElC,gBAAgB,mBAAO,CAAC,IAAY;;AAEpC,eAAe,mBAAO,CAAC,IAAY;AACnC,gDAAgD;AAChD;AACA;;AAEA;;;AAGA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA,sCAAsC;AACtC;AACA;AACA;AACA;;AAEA;AACA;AACA,OAAO;AACP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,MAAM,0DAA0D;AAChE;AACA;;;AAGA,6DAA6D;;AAE7D;;AAEA;AACA;AACA;AACA;AACA,eAAe,oBAAoB;AACnC;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA,MAAM;;AAEN,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;;AAEA;AACA,8CAA8C;;AAE9C;AACA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,4HAA4H;AAC5H;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB;AAClB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA,CAAC,mBAAmB;;;AAGpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;;;;;;;;;;;;;;;;;ACrWA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D;;AAE9D;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;;;AAGA;AACA;AACA,IAAI;AACJ;AACA,wDAAwD;AACxD,uBAAuB;AACvB;;;AAGA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA,kBAAkB,kBAAkB;AACpC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA,GAAG;AACH;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,6CAA6C;AAC7C;AACA;AACA,wBAAwB,gCAAgC;AACxD;;AAEA;AACA;AACA;AACA,cAAc;AACd;;;AAGA;AACA;AACA,UAAU;;;AAGV;AACA;;AAEA;AACA;AACA,IAAI;AACJ;;;AAGA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEwD;AACxD;;;ACtQA;AACA;AACA;AACA;AACwE;;AAExE;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA,kBAAkB,sBAAsB;AACxC;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG,mDAAmD;AACtD;;;AAGA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;;AAEA,iBAAiB;AACjB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,WAAW,GAAG;AACd,WAAW,MAAM;AACjB,aAAa,GAAG;AAChB;;;AAGA;AACA,2FAA2F,aAAa;AACxG;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC,gDAAgD;AAChD;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;;AAEZ;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB,eAAe,8CAA8C;AAC7D,kDAAkD;AAClD,uDAAuD;AACvD;AACA,cAAc,OAAO;AACrB;AACA;;;AAGA;AACA;;AAEA;AACA,mGAAmG,eAAe;AAClH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;;;AAGR;AACA;;AAEA,4BAA4B;;AAE5B;AACA,6CAA6C;;AAE7C;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,iDAAiD;;AAEjD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA,4FAA4F;;AAE5F;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,0BAA0B,QAAQ,aAAa,kEAAkE;AACjH;;AAEA,2BAA2B,SAAS;;AAEpC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,aAAa;AAClC,qBAAqB,SAAS,8CAA8C;AAC5E;AACA,uBAAuB,uBAAuB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;;AAEb;AACA;AACA,uBAAuB,UAAU;AACjC,eAAe;AACf;;AAEA;AACA,qBAAqB,UAAU;AAC/B,aAAa;AACb;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA,KAAK,GAAG;AACR;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;;AAGA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D;AAC7D;AACA;AACA,wDAAwD,WAAW;AACnE,OAAO;AACP;AACA,MAAM;AACN;AACA;;;AAGA;AACA;AACA;AACA,MAAM;;;AAGN;AACA,KAAK;;;AAGL;AACA;AACA,qDAAqD;;AAErD;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET,6EAA6E,WAAW,aAAa,UAAU;AAC/G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET,4EAA4E,WAAW,aAAa,UAAU;AAC9G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM;;AAEN;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;;AAGA;AACA;AACA;AACA,MAAM;;;AAGN,yCAAyC;AACzC;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;;AAGA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA,kDAAkD;;AAElD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAE2B;AAC3B;;;;;;;;;ACrsBa;;AAEb,cAAc,mBAAO,CAAC,IAAU;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA,IAAI;;;AAGJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,oBAAoB,iBAAiB;AACrC;;AAEA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;;AAEA;;;;;;;;;ACtGA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM,KAAqC,EAAE,EAI1C;;AAEH;AACA;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,2CAA2C,0BAA0B;AACrE;AACA;AACA;;AAEA,2BAA2B;AAC3B;AACA;AACA;;AAEA;;;;;;;;;AC/CA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,mBAAmB,oBAAoB;AACvC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,uDAAuD,+BAA+B;AACtF,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,oEAAoE,yDAAyD;AAC7H,GAAG;;AAEH;AACA;AACA,qDAAqD,gBAAgB;AACrE,GAAG;;AAEH;AACA;AACA;AACA,4EAA4E,2CAA2C;AACvH,GAAG;;AAEH;AACA;AACA;AACA,iDAAiD;;AAEjD,8CAA8C,YAAY;AAC1D;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,MAAM;AACN,gDAAgD;AAChD,2CAA2C,YAAY;AACvD;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;;AAEA;;AAEA,GAAG;;;AAGH;AACA;AACA;AACA,oDAAoD,gCAAgC;AACpF,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,oEAAoE,0DAA0D;AAC9H,GAAG;;AAEH;AACA,4DAA4D,aAAa;AACzE,GAAG;AACH;AACA;AACA;AACA,8BAA8B;AAC9B,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,0BAA0B;AAC3C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA,uBAAuB,oBAAoB;AAC3C;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA,uBAAuB,oBAAoB;AAC3C;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,qBAAqB,oBAAoB;AACzC;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,qBAAqB,MAAM;AAC3B;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,qBAAqB,oBAAoB;AACzC;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,qBAAqB,OAAO;AAC5B;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA,mBAAmB,oBAAoB;AACvC;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,eAAe,oBAAoB;AACnC;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,4EAA4E,sCAAsC;AAClH,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;;AAEhB,gBAAgB,OAAO;AACvB;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED,IAAI,IAA0C;AAC9C,EAAE,mCAAO,cAAc,kBAAkB;AAAA,kGAAC;AAC1C,EAAE,KAAK,EAEN;;;;;;;;ACpfD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,eAAe;AACf,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACjFD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtKD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACjED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACrLD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AClED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACnHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACjED;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACvMD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AChHD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACxJD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;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,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACjGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC7DD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC3ID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACjID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,IAAI;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AClLD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AChKD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9GD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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,sDAAsD;AACtD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,sDAAsD;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;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,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9LD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACzED;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC,kBAAkB;AAClB;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC5GD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC/DD;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACzFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtFD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACxFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACpGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,gCAAgC;AAChC,+BAA+B;AAC/B,+BAA+B;AAC/B,8BAA8B;AAC9B;AACA;AACA;AACA,yDAAyD;AACzD;AACA,0DAA0D;AAC1D;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC;AACrC,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACpHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC1ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC1ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9ED;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9ED;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACxHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACxHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACxHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACxFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC3ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC3HD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACpED;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACnED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AChFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACpFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACrFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACzGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACzGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACrFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACxID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACpID;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACxGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AClLD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;;AAEA;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtKD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AChID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI,IAAI,IAAI;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACxGD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;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;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtJD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;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,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC1ED;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACpHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;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,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9JD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,8CAA8C,IAAI,IAAI,IAAI;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC5FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,sCAAsC,IAAI;AAC1C;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACjHD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACrFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AChID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9FD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;AACA;AACA,sBAAsB;AACtB,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACnJD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,yCAAyC,IAAI;AAC7C;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC5ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA,cAAc;AACd;AACA;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACvID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D;AAC7D;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;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;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACxGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC/HD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,IAAI;AAC3D,6DAA6D,IAAI;AACjE,4DAA4D,IAAI;AAChE,kEAAkE,IAAI;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtED;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;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,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AChGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;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,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC5FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,KAAK;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9GD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACrND;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACrFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AClED;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACrGD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACnID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AChHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AClHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACrED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC/FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACpID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtJD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACpED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACzED;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtFD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;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,kBAAkB;AAClB;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC/ND;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;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,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC3FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACnED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,KAAK;AACzC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC/ED;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;;AAEA;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,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC3JD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACrLD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC3ED;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;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,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACzID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC3ID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACjED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,cAAc;AACd,iCAAiC;AACjC,cAAc;AACd,gCAAgC;AAChC,cAAc;AACd,mCAAmC;AACnC,cAAc;AACd,mCAAmC;AACnC,cAAc;AACd,gCAAgC;AAChC,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC7ID;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AClGD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC/HD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;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,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC3ED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;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,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACrGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACnED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;;AAEA;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;AACA;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;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACtID;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACpHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,CAAC;;;;;;;;ACnGD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AChED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AChED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACzHD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACjLD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;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,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC5FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AChED;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC7DD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;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,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC1FD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;ACnFD;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,0CAA0C,IAAI;AAC9C;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC/DD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;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,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AClID;AACA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;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,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC/GD;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;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,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC9GD;AACA;AACA;AACA;;AAEA,CAAC;AACD,GAAG,KACoC,WAAW,mBAAO,CAAC,GAAW;AACrE,GAAG,CACsB;AACzB,CAAC,4BAA4B;;AAE7B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oCAAoC,IAAI;AACxC;AACA;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,SAAS;AACT,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;AC7GD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACnSA;AACA;AACA;AACA;AACA;;AAEA,CAAC;AACD,IAAI,KAA4D;AAChE,IAAI,CACyB;AAC7B,CAAC,sBAAsB;;AAEvB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,oBAAoB,YAAY;AAChC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;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;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;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;AACA;AACA;AACA;;AAEA;AACA,wBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,YAAY;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,IAAI;AACxB;AACA;;AAEA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,wGAAwG,IAAI,wBAAwB,IAAI,uDAAuD,IAAI;AACnM,qEAAqE,IAAI;AACzE,4BAA4B;AAC5B;;AAEA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,2CAA2C,YAAY;AACvD;AACA;AACA,cAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAwB,YAAY;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,4CAA4C,IAAI;;AAEhD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,gCAAgC;AAChC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,6BAA6B,kCAAkC;AAC/D;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,oBAAoB;AAC5C;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,qBAAqB,EAAE;AACvB,qBAAqB,EAAE;AACvB,0BAA0B,EAAE;AAC5B;AACA;AACA;AACA,wBAAwB,IAAI;AAC5B,wBAAwB,IAAI;AAC5B,6BAA6B,IAAI;AACjC;AACA;AACA;AACA;AACA,wCAAwC,IAAI;AAC5C;AACA;AACA;AACA,mBAAmB,MAAM,wEAAwE,MAAM,mBAAmB,MAAM,qBAAqB,MAAM,EAAE,IAAI;AACjK;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,8CAA8C;AAC9C;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,cAAc;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,wBAAwB,iBAAiB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;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;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,QAAQ;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,oBAAoB,QAAQ;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,QAAQ;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,QAAQ;AAC5B;AACA;AACA;AACA,oBAAoB,QAAQ;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,cAAc;AACd;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,OAAO;AAC3B;;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;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,OAAO;AAC3B;AACA;AACA;AACA;AACA;AACA;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;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,oBAAoB;AACpB,2BAA2B;AAC3B;;AAEA;AACA;AACA;AACA,oBAAoB,UAAU;AAC9B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;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;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,QAAa;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,SAAO;AACxC,gBAAgB,0BAAe,IAAW,OAAO,CAAC;AAClD;AACA,cAAc;AACd;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB;AACjB;;AAEA;AACA;AACA;AACA;;AAEA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;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;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,EAAE,IAAI,EAAE;AACpC;AACA,4BAA4B,EAAE,IAAI,EAAE;AACpC;AACA;AACA,qCAAqC,EAAE;AACvC,+BAA+B,EAAE;AACjC,iCAAiC,EAAE;AACnC,+BAA+B,EAAE;AACjC,6BAA6B,EAAE,IAAI,EAAE;AACrC,4BAA4B,EAAE;AAC9B,mCAAmC,GAAG;AACtC,6BAA6B,EAAE;AAC/B,+BAA+B,EAAE,IAAI,EAAE;AACvC,8BAA8B,EAAE,IAAI,EAAE;AACtC,4BAA4B,EAAE;AAC9B,2BAA2B,EAAE;AAC7B,yBAAyB,EAAE;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,IAAI,0DAA0D,IAAI,qEAAqE,EAAE;AACjM;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,yCAAyC,OAAO;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,OAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oBAAoB,+BAA+B;AACnD;AACA;;AAEA;AACA,eAAe,OAAO;AACtB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;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;;AAEA;AACA;AACA;AACA,oBAAoB,cAAc;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,gBAAgB;AACpC;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,mCAAmC,iBAAiB;AACpD;;AAEA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA,aAAa;AACb;AACA,UAAU;AACV;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,oBAAoB;AACxC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;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;AACA;;AAEA,oBAAoB,cAAc;AAClC;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kBAAkB;AAClB;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB;AACrB;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,4GAA4G;AAC5G;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,iBAAiB;AACrC;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,oBAAoB,uBAAuB;AAC3C;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA,uBAAuB;AACvB;AACA;AACA,uBAAuB;AACvB;AACA;AACA,uBAAuB;AACvB;AACA;AACA,uBAAuB;AACvB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;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;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oCAAoC,sBAAsB;AAC1D;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,oCAAoC,sBAAsB;AAC1D;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;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;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;AACA;AACA;;AAEA;;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;AACA;AACA;AACA;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;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;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;AACA;;AAEA;AACA;AACA;;AAEA;AACA,wBAAwB;AACxB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;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;;AAEA,qCAAqC,OAAO;AAC5C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,qCAAqC,OAAO;AAC5C;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;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;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,yBAAyB,mBAAmB;AAC5C;AACA;;AAEA;AACA;AACA;;AAEA,sBAAsB,mBAAmB;AACzC;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,oBAAoB,QAAQ;AAC5B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,oBAAoB,OAAO;AAC3B;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,oCAAoC,IAAI;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;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;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;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;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;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;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;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;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;;AAEA;;AAEA;;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;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,CAAC;;;;;;;;ACpjLD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,eAAe;AAC1B,WAAW,QAAQ;AACnB,YAAY,OAAO;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY;AACZ;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;AACA;AACA;AACA;AACA;AACA;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,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;ACjKA;AACA;AACA;AACA;AACA;;AAEa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB,QAAQ;AAC1B;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,iBAAiB,sBAAsB;AACvC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mBAAmB,oBAAoB;AACvC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;ACzFA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,qBAAqB;AACjC,YAAY,OAAO;AACnB,YAAY,QAAQ;AACpB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,KAAK;AACL;AACA;;AAEA;AACA,+BAA+B;AAC/B;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;AChIA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb,2BAA2B,mBAAO,CAAC,GAA4B;;AAE/D;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;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;;;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAI,KAAqC,EAAE,qCAO1C,CAAC;AACF;AACA;AACA,mBAAmB,mBAAO,CAAC,IAA4B;AACvD;;;;;;;;;AClBA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;;AAEA;;;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACa,OAAO,mBAA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A;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,WAAW;AACX;;AAEA;AACA;AACA,wCAAwC,WAAW;AACnD;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;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,GAAG;AACH;;AAEA;AACA,4BAA4B;AAC5B;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,UAAU;AACV;AACA;AACA;AACA;;AAEA;;AAEA,UAAU;AACV;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qCAAqC,cAAc;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC,mBAAmB;AACpD;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA,kBAAkB;;AAElB;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,yBAAyB,gBAAgB;AACzC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,aAAa;AACb;AACA;;AAEA;AACA,aAAa;AACb;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,+CAA+C,QAAQ;AACvD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;;AAEA,YAAY;AACZ;AACA;AACA;;AAEA,YAAY;A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;AACA;AACA;;AAEA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS;;AAET;AACA,OAAO;AACP;AACA,GAAG;;AAEH;;AAEA;AACA;;AAEA;AACA;;AAEA;;;;;;;;AC5Fa;;AAEb,8CAA6C;AAC7C;AACA,CAAC,EAAC;;AAEF,kBAAkB,mBAAO,CAAC,IAAa;;AAEvC;;AAEA,uCAAuC,uCAAuC;;AAE9E,kBAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM;AACN;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;;;;;;UChDA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;UAEA;UACA;;;;;WC5BA;WACA;WACA;WACA,eAAe,4BAA4B;WAC3C,eAAe;WACf,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,EAAE;WACF;;;;;WCRA;WACA;WACA;WACA;WACA;;;;;WCJA;WACA;WACA;WACA;WACA;;;;;WCJA;WACA;WACA;WACA;WACA,GAAG;WACH;WACA;WACA,CAAC;;;;;WCPD,8CAA8C;;;;;WCA9C;WACA;WACA;WACA;WACA,uBAAuB,4BAA4B;WACnD;WACA;WACA;WACA,iBAAiB,oBAAoB;WACrC;WACA,mGAAmG,YAAY;WAC/G;WACA;WACA;WACA;WACA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,4CAA4C,mBAAmB;WAC/D;WACA;WACA;WACA,mEAAmE,iCAAiC;WACpG;WACA;WACA;WACA;;;;;WCzCA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;WCNA;WACA;WACA;WACA;WACA;;;;;WCJA;;;;;WCAA;;WAEA;WACA;WACA;WACA;WACA;WACA;;WAEA;WACA;WACA;WACA,iCAAiC;;WAEjC;WACA;WACA;WACA,KAAK;WACL,eAAe;WACf;WACA,2DAA2D,oEAAoE;WAC/H;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,MAAM;WACN;WACA;WACA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;;WAEA;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,iCAAiC,mCAAmC;WACpE;WACA;WACA;WACA;WACA;WACA;WACA;WACA;WACA,MAAM,qBAAqB;WAC3B;WACA;WACA;WACA;WACA;WACA;;WAEA;;WAEA;WACA;WACA;;;;;;;;;;;;ACvFA;AACA,wCAAe,EAAE;;ACDF;AACf;AACA;AACA;AACA;;AAEA;AACA;;ACPiD;AAClC;AACf;AACA;AACA,EAAE,eAAc;AAChB;;ACLe,SAAS,eAAQ;AAChC,EAAE,eAAQ;AACV,oBAAoB,sBAAsB;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,SAAS,eAAQ;AACjB;;AChBA;AACA;AACA;;AAEA;AACA;AACA,kDAAkD,OAAO;AACzD;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA,iCAAiC,QAAQ;AACzC;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA,0BAA0B,MAAM;;AAEhC;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA,qDAAe,eAAe,EAAC;;;AC1E/B,mBAAmB,YAAoB;AACvC;AACA,SAAS,4BAAS;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEgC;;;ACd0B;AACX;AACV;AACF;AACI;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAAS,sBAAc;AACvB;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,eAAe,eAAQ,GAAG;AAC1B;;AAEA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN,0BAA0B,gBAAe;AACzC;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS,yBAAiB;AAC1B;AACA;;AAEA;AACA;;AAEA;AACA,IAAI,MAAqC,GAAG,CAAuE;AACnH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV,UAAU,MAAqC,GAAG,CAAiG;AACnJ;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA,wEAAwE,aAAa;AACrF;AACA;;AAEA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA,eAAe,MAAqC,GAAG,CAA+C,GAAG,4BAAS;AAClH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iCAAiC;AACjC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAI,MAAqC,GAAG,CAAwN;AACpQ;AACA,WAAW,sBAAc;AACzB;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,IAAI,eAAQ;;AAEZ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,UAAU;AACV;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA,uCAAuC;AACvC;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,uCAAuC;;AAEvC;AACA;AACA;;AAEA;AACA,IAAI,MAAqC,GAAG,CAA6O;AACzR;AACA,mBAAmB,sBAAc;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,QAAQ;AACR,QAAQ,MAAqC,GAAG,CAA+G;AAC/J;AACA;AACA,KAAK;AACL;;AAEA;AACA,IAAI,MAAqC,GAAG,CAAgP;AAC5R;AACA,mBAAmB,sBAAc;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,QAAQ;AACR,QAAQ,MAAqC,GAAG,CAAkH;AAClK;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,eAAe,MAAqC,GAAG,CAA4C,GAAG,4BAAS;AAC/G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI,MAAqC,GAAG,CAAwN;AACpQ;AACA,WAAW,sBAAc;AACzB;;AAEA;;AAEA;AACA,IAAI,eAAQ;;AAEZ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,iFAAiF;;AAEjF,uDAAuD,uBAAuB;;AAE9E;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,UAAU;AACV;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA,uCAAuC;AACvC;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;;;AAGJ;AACA;AACA;AACA;AACA,gDAAgD;;AAEhD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,IAAI,MAAqC,GAAG,CAA6E;AACzH;AACA,mBAAmB,sBAAc;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,QAAQ;AACR,QAAQ,MAAqC,GAAG,CAA4G;AAC5J;AACA;AACA,KAAK;AACL;;AAEA;AACA,IAAI,MAAqC,GAAG,CAAgF;AAC5H;AACA,mBAAmB,sBAAc;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;;AAEA;AACA,IAAI,MAAqC,GAAG,CAA2F;AACvI;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,IAAI,eAAQ;;AAEZ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,uCAAuC,sBAAc,kCAAkC,sBAAc;AACrG,GAAG,GAAG;;AAEN;;AAEA;AACA,IAAI,MAAqC,GAAG,CAA6O;AACzR;AACA,mBAAmB,sBAAc;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;;AAEA;AACA,IAAI,MAAqC,GAAG,CAAgP;AAC5R;AACA,mBAAmB,sBAAc;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,QAAQ;AACR;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEkI;;;;;;ACt5BzF;AAC6B;AACnC;AACA;;AAEnC;AACA,sHAAsH,qBAAM,mBAAmB,qBAAM;;AAErJ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,IAAI,cAAc;;AAElB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,sBAAsB;AACtB;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;;AAEA,cAAc,KAAqC,EAAE,EAE1C;;AAEX;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAG,CAAC,eAAS;;AAEb,0DAA0D,uCAAuC,wCAA2B;;AAE5H;AACA,IAAI,cAAc;;AAElB;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAG,CAAC,eAAS;;AAEb,qDAAqD,uCAAuC,6BAAgB;AAC5G;AACA;AACA;AACA;AACA;;AAEA,YAAY,mBAAmB;;AAE/B,wCAAe,KAAK,EAAC;;;;;;;;AC/KN,SAAS,yDAA6B;AACrD;AACA;AACA;AACA;;AAEA,cAAc,uBAAuB;AACrC;AACA;AACA;AACA;;AAEA;AACA;;;;ACbsE;AAC5C;AACS;AAC0D;AAC1D;AACmB;AACf;AACmB;AAChB;AACI;AACsD;AACjD;;AAEnD;;AAEA;AACA,gBAAgB,GAAa;AAC7B;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA,EAAE,cAAc;;AAEhB;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,wBAAwB,mBAAmB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,eAAe,mBAAmB;AACvC;AACA;AACA,KAAK;AACL;;AAEA;AACA,CAAC,CAAC,eAAe;;AAEjB,IAAI,KAAqC,EAAE,EAU1C;;AAED;AACA;AACA;;AAEA;AACA,EAAE,cAAc;;AAEhB;AACA;;AAEA,wEAAwE,aAAa;AACrF;AACA;;AAEA;AACA,oBAAoB,mBAAmB;AACvC;AACA;;AAEA;;AAEA;AACA,wBAAwB,mBAAmB;AAC3C;AACA;AACA,KAAK;AACL;;AAEA;AACA,CAAC,CAAC,eAAe;;AAEjB,IAAI,KAAqC,EAAE,EAY1C;;AAED;AACA,EAAE,cAAc;;AAEhB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,CAAC,CAAC,eAAe;;AAEjB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,eAAe,MAAqC,GAAG,CAAkE;AACzH;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA,KAAK;AACL,GAAG;AACH;;AAEA,IAAI,KAAqC,EAAE,oBAM1C;;AAED;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,MAAqC,GAAG,CAAoE;AAC3H;AACA;AACA;AACA,+HAA+H;AAC/H;AACA,KAAK,SAAS;AACd;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO;AACP;AACA;;AAEA,wDAAwD;AACxD;AACA,SAAS;AACT;AACA;AACA,OAAO;AACP;AACA,KAAK;AACL,GAAG;AACH;;AAEA,IAAI,KAAqC,EAAE,EAM1C;;AAED;AACA;AACA;;AAEA;AACA;AACA,8DAA8D;AAC9D;AACA;AACA,eAAe,wBAAY;AAC3B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,IAAI;AACX;AACA,GAAG;AACH;;AAEA;AACA,SAAS,oBAAoB;AAC7B;;AAEA;AACA;AACA,EAAE,MAAqC,GAAG,CAAkN;AAC5P;AACA;AACA;AACA;AACA;;;AAGA;AACA,EAAE,cAAc;;AAEhB;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA,wBAAwB,mBAAmB;AAC3C,mBAAmB,MAAqC,GAAG,CAAiE,GAAG,4BAAS;AAC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AAK;AACL;AACA;AACA;;AAEA;AACA;AACA,cAAc,eAAQ,GAAG;AACzB;;AAEA,gBAAgB,eAAQ;AACxB;AACA;AACA;AACA;AACA,KAAK,SAAS;;;AAGd;AACA;AACA,MAAM;AACN;AACA;;AAEA,wBAAwB,mBAAmB;AAC3C,GAAG;AACH,CAAC;;AAED,IAAI,KAAqC,EAAE,wBAe1C;;AAEmD;AACpD;;;AC9T0B;AACnB,IAAI,yBAAiB,gBAAgB,mBAAmB;;AAE/D,IAAI,KAAqC,EAAE,EAE1C;;AAED,4CAAe,yEAAiB;;ACPhC;AACA;AACA;AACA;;AAEA,8BAA8B;;AAEvB;AACP;AACA,GAAG;;AAEI;AACP;AACA;;ACbmC,CAAC;AACpC;AACA;;AAEA;AACA,cAAc,QAAQ;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACO,SAAS,+BAAkB;AAClC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7HmD,CAAC;AACpD;AACA;AACA;AACA;AACA,mCAAmC;AACnC;AACA;;AAEO,IAAI,mDAAyB,qIAAqI,qBAAe,GAAG,eAAS;;ACT7J;AACJ;AACW;AACa;AACoB;;AAE/E;AACA;AACA;AACA;AACA,qBAAqB,iBAAO;AAC5B,uBAAuB,+BAAkB;AACzC;AACA;AACA;AACA;AACA,GAAG;AACH,sBAAsB,iBAAO;AAC7B;AACA,GAAG;AACH,EAAE,mDAAyB;AAC3B;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH,2BAA2B,yBAAiB;AAC5C,sBAAsB,mBAAmB;AACzC;AACA,GAAG;AACH;;AAEA,IAAI,KAAqC,EAAE,EAU1C;;AAED,wDAAe,QAAQ;;ACpDmC;AAC0C;AACpG,gBAAgB,+KAA+H;AAC/I,iBAAiB,0EAA0B;AACQ;AACoB;AACN;AACN;AACoB;AACjC,CAAC;;AAE/C,kBAAkB,kDAAE;AACpB,4BAA4B,4DAAY;;AAExC;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,qCAAqC;;AAErC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,yCAAyC;;AAEzC;AACA,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA,MAAM;;;AAGN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;;AAExC;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,KAAK;;;AAGL;AACA,+BAA+B;AAC/B;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEe,SAAS,+BAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAM,KAAqC,EAAE,kCAc1C;;AAEH;AACA;AACA,QAAQ,KAA8E,EAAE,EAEnF;;AAEL;AACA;;AAEA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA,MAAM;AACN;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,OAAO,4BAA4B;;AAEnC,mDAAmD;AACnD;AACA;;AAEA;AACA;;AAEA,UAAU,KAA2F,EAAE,EAEhG,CAAC;;;AAGR;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA,qEAAqE;AACrE;;AAEA;AACA;AACA,gHAAgH;AAChH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,2CAA2C,mBAAmB,qBAAqB;AACnF;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;;;AAGA,0BAA0B;AAC1B;AACA,SAAS;AACT,OAAO,wDAAwD;AAC/D;;AAEA;AACA;AACA;AACA,yDAAyD;;;AAGzD;AACA;AACA,QAAQ;;;AAGR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;;AAGA;AACA,OAAO,qDAAqD;AAC5D;AACA;;AAEA,kMAAkM;;AAElM,2SAA2S;AAC3S;;AAEA;AACA,6EAA6E;AAC7E;AACA,SAAS;AACT,OAAO,iEAAiE;AACxE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;;AAEA;AACA,OAAO;AACP;AACA,MAAM;;;AAGN;AACA;AACA;;AAEA;AACA;AACA,oEAAoE;AACpE;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;;ACxXe;AACf;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AClB2D;AACpD;AACP;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;;AAEA;AACA;AACA,OAAO;;;AAGP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,UAAU,KAAqC,EAAE,EAAkD;AACnG;AACA;;AAEA;AACA;AACA;;AC/D6D;AACiB;AACvE;AACP,oDAAoD,kBAAkB;AACtE;AACO;AACP,+BAA+B,sBAAsB;AACrD;AACA;AACA;AACA,GAAG;AACH;AACO;AACP,wEAAwE,sBAAsB;AAC9F,WAAW,kBAAkB;AAC7B,GAAG;AACH;AACA,uDAAe,mGAAmG;;ACjBpC;AACvE;AACP,iDAAiD,kBAAkB;AACnE;AACO;AACP,4BAA4B,sBAAsB;AAClD;AACA,GAAG;AACH;AACA,oDAAe,6DAA6D;;ACTlB;AACC;AACpD;AACP,SAAS,eAAQ,GAAG;AACpB;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ;AACR;AACA;AACA,YAAY,KAAqC,EAAE,EAA0D;AAC7G;;AAEA;AACA;AACA;AACA;AACO;AACP;AACA;AACO;AACP;AACA;AACA,IAAI;AACJ;AACA,+CAAe,mDAAmD;;ACnCR;AAC0C;AACpG,IAAI,gBAAS,GAAG,2IAA2F;AAC/C;AACX;AACqB;AACN;AACV;AACC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qCAAqC,QAAQ;AAC7C;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAE;AACF;;;AAGO;AACP,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,gBAAS;;AAE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GAAG,yBAAhC;AACA,IAAMC,UAAU,GAAG,YAAnB;AACA,IAAMC,kBAAkB,GAAG,oBAA3B;;ACLP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,gBAAgB,sCAAsC,kBAAkB;AACnF,0BAA0B;AAC1B;AACA;AACA;AACO;AACP;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACO;AACP;AACA,iDAAiD,OAAO;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA,6DAA6D,cAAc;AAC3E;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA,6CAA6C,QAAQ;AACrD;AACA;AACA;AACO;AACP,oCAAoC;AACpC;AACA;AACO;AACP;AACA;AACA;AACO;AACP,4BAA4B,+DAA+D,iBAAiB;AAC5G;AACA,oCAAoC,MAAM,+BAA+B,YAAY;AACrF,mCAAmC,MAAM,mCAAmC,YAAY;AACxF,gCAAgC;AAChC;AACA,KAAK;AACL;AACA;AACO;AACP,cAAc,6BAA6B,0BAA0B,cAAc,qBAAqB;AACxG,iBAAiB,oDAAoD,qEAAqE,cAAc;AACxJ,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC,mCAAmC,SAAS;AAC5C,mCAAmC,WAAW,UAAU;AACxD,0CAA0C,cAAc;AACxD;AACA,8GAA8G,OAAO;AACrH,iFAAiF,iBAAiB;AAClG,yDAAyD,gBAAgB,QAAQ;AACjF,+CAA+C,gBAAgB,gBAAgB;AAC/E;AACA,kCAAkC;AAClC;AACA;AACA,UAAU,YAAY,aAAa,SAAS,UAAU;AACtD,oCAAoC,SAAS;AAC7C;AACA;AACA;AACO;AACP;AACA,mCAAmC,oCAAoC,gBAAgB;AACvF,CAAC;AACD;AACA;AACA,CAAC;AACD;AACO;AACP;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACO,SAAS,cAAM;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,MAAM;AAC1B;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACO;AACP,6BAA6B,sBAAsB;AACnD,uBAAuB,cAAM;AAC7B;AACA;AACA;AACA;AACO;AACP,kDAAkD,QAAQ;AAC1D,yCAAyC,QAAQ;AACjD,yDAAyD,QAAQ;AACjE;AACA;AACA;AACA;AACO;AACP,6EAA6E,OAAO;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACO;AACP;AACA;AACA,iBAAiB,uFAAuF,cAAc;AACtH,uBAAuB,gCAAgC,qCAAqC,2CAA2C;AACvI,4BAA4B,MAAM,iBAAiB,YAAY;AAC/D,uBAAuB;AACvB,8BAA8B;AAC9B,6BAA6B;AAC7B,4BAA4B;AAC5B;AACA;AACO;AACP;AACA,iBAAiB,6CAA6C,UAAU,sDAAsD,cAAc;AAC5I,0BAA0B,6BAA6B,oBAAoB,gDAAgD,kBAAkB;AAC7I;AACA;AACO;AACP;AACA;AACA,2GAA2G,uFAAuF,cAAc;AAChN,uBAAuB,8BAA8B,gDAAgD,wDAAwD;AAC7J,6CAA6C,sCAAsC,UAAU,mBAAmB,IAAI;AACpH;AACA;AACO;AACP,iCAAiC,uCAAuC,YAAY,KAAK,OAAO;AAChG;AACA;AACA;AACA;AACA,0CAA0C,4BAA4B;AACtE,CAAC;AACD;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP,6CAA6C;AAC7C;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA;;;AC9OA,8CAA8C;AAC9C,kCAAkC,wCAAwC,uBAAuB,IAAI;AACrG,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE4C;;;AC7CN;;AAEtC,kBAAkB,uBAAa,GAAG,eAAe;;AAE1B;;;ACJU;AACF;AACI;AACoB;AAChB;AACqB;;AAE5D,+BAA+B,kBAAkB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,oBAAU,CAAC,WAAW;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,KAEkB,EAAE,EAEvB;AACL,oBAAoB,iBAAiB;AACrC;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,mBAAmB,YAAY,QAAQ,GAAG,aAAa,WAAW,8BAA8B;AAC1H;AACA;AACA;AACA;;AAEuB;;;ACzCe;;AAEtC;AACA;AACA;AACA,0BAA0B,uBAAa;AACvC,uCAAuC,WAAW;AAClD;AACA,CAAC;;AAE8B;;;ACVmB;;AAElD,oBAAoB,uBAAa,GAAG;AACpC;AACA,WAAW,oBAAU;AACrB;;AAEkD;;;ACPZ;;AAEtC;AACA;AACA;AACA,IAAI,+BAAe,GAAG,uBAAa;;AAER;;;ACP3B;;AAEqB;;;ACF8B;AACN;;AAE7C,IAAI,+CAAyB,GAAG,SAAS,GAAG,qBAAe,GAAG,eAAS;;AAElC;;;ACLiB;AACc;AACY;AACE;AACtB;;AAE5D;AACA,sBAAsB,oBAAU,CAAC,WAAW;AAC5C,iBAAiB,uBAAuB;AACxC,0BAA0B,oBAAU,CAAC,+BAAe;AACpD,2BAA2B,gBAAM;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,IAAI,+CAAyB;AAC7B;AACA,KAAK;AACL,IAAI,mBAAS;AACb;AACA;AACA,KAAK;AACL,IAAI,+CAAyB,eAAe,qBAAqB,wGAAwG;AACzK;AACA;;AAE4B;;;ACrC5B;AACA;AACA;AACA;;AAEuB;;;ACLa;AACwB;;AAE5D;AACA;AACA;AACA;AACA;AACA,WAAW,qBAAW;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,WAAW;AAChC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEwB;;;ACjCxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,sCAAsC;AAC7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,+CAA+C;AACtG;AACA;AACA;AACA;AACA,oCAAoC;AACpC,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEoI;;;AC1EvC;;AAE7F;AACA,QAAQ,0BAA0B;AAClC;AACA;AACA,0CAA0C,cAAc;AACxD;AACA;AACA,qBAAqB,cAAc;AACnC;AACA;AACA;AACA;;AAEkC;;;ACfU;AACA;AACS;;AAErD;AACA,aAAa,sBAAsB,QAAQ,oBAAU,CAAC,aAAa;AACnE,WAAW,iBAAO,eAAe,UAAU,oCAAoC,IAAI;AACnF;AACA;AACA;AACA;;AAEkC;;;ACZH;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,gBAAM;AACpB;AACA;AACA;AACA;AACA;;AAEuB;;;ACjBvB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEwC;;;ACRxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,cAAc;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAE4B;;;ACvDuC;AACP;;AAE5D;AACA;AACA;AACA;AACA,MAAM,QAAK;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,gBAAgB;AAC/B;AACA,CAAC,IAAI;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,IAAI;AACL;AACA;AACA;AACA,CAAC,IAAI;AACL;AACA,wCAAwC,QAAK;AAC7C;AACA,CAAC,IAAI;AACL,sDAAsD,QAAK;AAC3D;AACA;AACA,IAAI,QAAK;AACT,UAAU,eAAe;AACzB,wCAAwC,QAAK;AAC7C,IAAI,QAAK;AACT;AACA;AACA;AACA;AACA;AACA,QAAQ,WAAW;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,WAAW;AACnB;AACA,2BAA2B,QAAK;;AAEhC,uCAAe,IAAI,EAAC;AAC2B;;;AC/D/C;;AAEe;;;ACFf;AACA;AACA;;AAE6B;;;ACJE;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE+C;;;ACrBS;;AAExD;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,aAAa;AACrB,6BAA6B,OAAO,UAAU;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAE8B;;;ACzCgB;AACD;AAC0B;;AAExE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,mBAAmB;AACxD;AACA;AACA;AACA;AACA;AACA,6CAA6C,mBAAmB;AAChE;AACA;AACA;AACA;AACA;AACA,qCAAqC,mBAAmB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA,qBAAqB,YAAY;AACjC;AACA;AACA;AACA,gBAAgB,aAAe;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,OAAO,aAAe;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,qCAAqC,KAAK;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,qBAAqB,gCAAgC;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;;AAEoC;;;ACpTpC;AACA;AACA;;AAEyB;;;ACJzB;AACA,IAAI,uBAAS;AACb,IAAI,KAAqC,EAAE,EAW1C;;AAE6B;;;ACf9B,MAAM,WAAK;;AAEM;;;ACFoB;AACS;;AAE9C;AACA;AACA;AACA;AACA;AACA,sBAAsB,wDAAwD;AAC9E;AACA;AACA,IAAI,OAAO;AACX;AACA,mBAAmB,WAAK;AACxB,eAAe,WAAK;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,oBAAoB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEyF;;;AC9E1D;AACwC;;AAEvE;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,sFAAsF;AAC9H;AACA;AACA,wBAAwB,UAAU;AAClC,oEAAoE,8BAA8B,0BAA0B;AAC5H;AACA;AACA;AACA;AACA;AACA,UAAU,iDAAiD,gBAAgB,MAAM;AACjF,oBAAoB;AACpB,UAAU,wEAAwE;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,eAAe;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEkB;;;ACtHlB;AACA;AACA;AACA;;AAEoB;;;ACLpB,MAAM,WAAK;AACX;AACA;AACA,+BAA+B,EAAE,WAAW,EAAE,cAAc,EAAE,EAAE,IAAI,kCAAkC,IAAI;AAC1G,sCAAsC,EAAE,cAAc,EAAE,EAAE,IAAI,kCAAkC,IAAI;AACpG;AACA;AACA;;AAE+E;;;ACT1C;;AAErC;AACA;AACA;AACA;AACA;AACA,4CAA4C,aAAa,WAAW,WAAK,QAAQ;AACjF,4CAA4C,aAAa,YAAY;;AAErC;;;ACVsC;;AAEtE;AACA,oBAAoB,QAAQ,OAAO,qBAAqB;AACxD;AACA;AACA;AACA,SAAS,QAAQ;AACjB;AACA,qCAAqC,UAAU;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEqC;;;AClBgB;AACN;AACS;;AAExD,qBAAqB,WAAK;AAC1B,8CAA8C,EAAE,MAAM,KAAK,+CAA+C;AAC1G;AACA,UAAU,aAAa;AACvB,WAAW,UAAU;AACrB,kBAAkB,sCAAsC;AACxD;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,QAAQ,CAAC,eAAe;AAChC;AACA;;AAEyB;;;ACpBS;AACU;;AAE5C;AACA;AACA;AACA;AACA;AACA;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,aAAa;AACvB;AACA,eAAe,cAAc;AAC7B;;AAEe;;;ACrCyB;;AAExC;AACA,iBAAiB,QAAQ;AACzB;AACA,yBAAyB,EAAE,EAAE,KAAK;AAClC,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,yDAAyD,cAAc,oFAAoF;;AAE/F;;;ACdf;AACE;AACP;AACgB;;AAExD;AACA,UAAU,aAAa;AACvB,WAAW,UAAU;AACrB,kBAAkB,gDAAgD;AAClE;AACA;AACA;AACA,YAAY,iBAAiB,CAAC,QAAQ;AACtC;AACA,YAAY,iBAAiB,CAAC,QAAQ;AACtC;AACA,YAAY,QAAQ,CAAC,eAAe;AACpC;AACA,KAAK;AACL;;AAEgB;;;ACrBhB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,mCAAmC;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEsB;;;ACxCU;AACoB;AACb;AACS;;AAEhD;AACA;AACA;AACA;AACA;AACA,oBAAoB,GAAG,EAAE,IAAI,EAAE,IAAI;AACnC;AACA,qCAAqC,MAAM;AAC3C;AACA;AACA;AACA,IAAI,uBAAS;AACb,IAAI,uBAAS;AACb;AACA;AACA,0BAA0B,IAAI;AAC9B,oBAAoB,UAAU;AAC9B,wBAAwB,IAAI;AAC5B;AACA,wBAAwB,IAAI;AAC5B,kBAAkB,UAAU;AAC5B,sBAAsB,IAAI;AAC1B;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,GAAG;AAC3B;AACA;AACA;;AAEoC;;;ACxCI;AACR;AACE;AACA;;AAElC;AACA,iBAAiB,SAAS,OAAO,QAAQ,OAAO,SAAS;AACzD;AACA,YAAY,SAAS;AACrB,mBAAmB,UAAU;AAC7B;AACA,iBAAiB,SAAS;AAC1B,mBAAmB,UAAU;AAC7B;AACA;AACA,mBAAmB,SAAS;AAC5B;AACA,KAAK;AACL;AACA,eAAe,QAAQ;AACvB;AACA;AACA,kBAAkB,cAAc;AAChC,kBAAkB,cAAc;AAChC,KAAK;AACL;;AAEiB;;;AC3B0B;AACG;AAC4B;;AAE1E,sBAAsB,EAAE;AACxB,uBAAuB,EAAE;AACzB;AACA;AACA;AACA,QAAQ,QAAQ;AAChB,6BAA6B,UAAU,8GAA8G,UAAU;AAC/J;AACA;AACA;AACA,eAAe,EAAE;AACjB;AACA;AACA,2BAA2B,UAAU;AACrC;AACA;AACA,sBAAsB,UAAU;AAChC,kCAAkC,WAAW;AAC7C;AACA,4BAA4B,UAAU;AACtC;AACA,sBAAsB,UAAU;AAChC,mCAAmC,YAAY;AAC/C;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,YAAY,+BAA+B;AAC3C;AACA;AACA;AACA,wBAAwB,eAAe;AACvC,8FAA8F,eAAe,SAAS,QAAQ;AAC9H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;;AAEC;;;ACpDnB;AACA;AACA;AACA;AACA;AACA;;AAE4B;;;ACP5B;AACA;;AAEgB;;;ACHmC;AACnB;AACW;AACT;AACA;AACG;;AAErC;AACA,QAAQ,KAAK;AACb,sBAAsB,GAAG;AACzB;AACA,aAAa,UAAU;AACvB,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,eAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,mBAAO;AAChB,mBAAmB,aAAa;AAChC;AACA;AACA;AACA;AACA,oBAAoB,eAAe;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,qBAAqB,yBAAyB;AAC9C,wBAAwB,mBAAO;AAC/B,wBAAwB,mBAAO;AAC/B;AACA;AACA;AACA;AACA,eAAe,IAAI;AACnB;AACA;AACA,QAAQ,OAAO,0BAA0B,OAAO,SAAS,OAAO;AAChE,yBAAyB,wBAAwB;AACjD;AACA;;AAE2C;;;ACjFD;AACV;AACW;AACyB;AAC1B;AACN;AACF;AACK;;AAEvC,uCAAuC,GAAG;AAC1C;AACA;AACA;AACA;AACA;AACA,YAAY,UAAU;AACtB,mBAAmB,QAAQ;AAC3B;AACA;AACA,mBAAmB,UAAU;AAC7B;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,eAAe;AACnC;AACA;AACA;AACA,oBAAoB,IAAI;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,QAAQ;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,iBAAiB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,QAAQ;AACxC;AACA;AACA;AACA,sCAAsC,qCAAqC,IAAI;AAC/E;AACA,IAAI,uBAAS;AACb,IAAI,uBAAS;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,WAAK;AACnC;AACA;;AAEuB;;;AC3FvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEqF;;;ACXmB;;AAExG;AACA;AACA;AACA;AACA;AACA,eAAe,YAAY;AAC3B,gBAAgB,aAAa;AAC7B,kBAAkB,YAAY;AAC9B;AACA,gBAAgB,aAAa;AAC7B,kBAAkB,YAAY;AAC9B,eAAe,YAAY;AAC3B,gBAAgB,aAAa;AAC7B,kBAAkB,YAAY;AAC9B,mBAAmB,gBAAgB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,aAAa;AAC9B;AACA;AACA;;AAEoJ;;;ACrC1F;AACP;;AAEnD;AACA,sCAAsC,SAAS;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,iDAAiD;AACtE,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA,eAAe,WAAW;AAC1B;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEyE;;;ACtCzE,iBAAiB,yFAAyF;AAC1G,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,6BAA6B;AAC7B;AACA;;AAEiB;;;AClBiC;AACM;AACR;;AAEhD,gBAAgB,SAAS,mBAAQ,eAAO;AACxC;AACA;AACA,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,MAAM;AACrB;AACA,WAAW,SAAS;AACpB;;AAEsC;;;AC5BtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE8D;;;ACZ/B;AACwD;AAC1C;AACU;AACkC;;AAEzF;AACA,6BAA6B,OAAO;AACpC;AACA,qBAAqB,SAAW;AAChC,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA,UAAU,sKAAsK,gBAAgB,MAAM;AACtM,UAAU,KAAK;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,0BAA0B;AAC/C;AACA,gCAAgC,WAAW;AAC3C;AACA,SAAS;AACT;AACA;AACA;AACA,6DAA6D,cAAc,UAAU;AACrF;AACA;AACA;AACA;AACA,sBAAsB,cAAc;AACpC;AACA;AACA,sBAAsB,WAAW;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,qBAAqB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEmB;;;ACxFmB;AAC+B;AAC5B;;AAEzC,mBAAmB,kLAAkL;AACrM;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,OAAO,+BAA+B,cAAc;AAC/E;AACA;AACA;AACA,aAAa;AACb,oBAAoB;AACpB;AACA;AACA,uCAAuC,+EAA+E;AACtH;AACA;AACA,sBAAsB,2CAA2C;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,iBAAiB,WAAW,YAAY;AAC/D;AACA;AACA,8BAA8B,iCAAiC;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEmB;;;AChEnB;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD;;AAEhB;;;ACRI;;AAErC,MAAM,cAAC;AACP,MAAM,cAAC;AACP,MAAM,cAAC;AACP,oCAAoC,cAAC,eAAe,cAAC,gBAAgB,cAAC;AACtE,sCAAsC,cAAC,yBAAyB,cAAC,eAAe,cAAC;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,sBAAsB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,MAAM;AACrB;AACA,oBAAoB,sBAAsB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,mEAAmE;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEuB;;;ACzEQ;AACQ;AAC2I;;AAElL;AACA,YAAY,MAAM;AAClB,YAAY,MAAM;AAClB,eAAe,SAAS;AACxB,aAAa,OAAO;AACpB,YAAY,MAAM;AAClB,eAAe,SAAS;AACxB,aAAa,OAAO;AACpB,YAAY,MAAM;AAClB,eAAe,SAAS;AACxB,aAAa,OAAO;AACpB,gBAAgB,UAAU;AAC1B,cAAc,QAAQ;AACtB,iBAAiB,WAAW;AAC5B,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA,QAAQ,uBAAS;AACjB,iBAAiB,cAAM;AACvB,eAAe,WAAW;AAC1B;AACA;AACA;AACA,QAAQ,uBAAS;AACjB;AACA;AACA;AACA;A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E;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,UAAU,kBAAkB,oBAAoB,qBAAqB,WAAW,eAAe,gBAAgB,SAAS,iBAAiB,MAAM;AAC5J;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uGAAuG,MAAM;AAC7G,kBAAkB,QAAQ,GAAG;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,qBAAqB;AACnD;AACA,8BAA8B,qBAAqB;AACnD;AACA;AACA;AACA;AACA,0BAA0B,aAAa;AACvC,uBAAuB,0BAA0B;AACjD,cAAc,0BAA0B;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,OAAO;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,aAAa,KAAK,cAAM;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,QAAQ,CAAC,QAAQ,GAAG,eAAe,oBAAoB;AAC5E;AACA,WAAW,QAAQ,CAAC,QAAQ,GAAG;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,YAAY;AACzC;AACA;AACA;AACA;AACA;AACA,iBAAiB,iCAAiB;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,YAAY;AACzC,IAAI,OAAO;AACX;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,sBAAsB;AAC3D;AACA;AACA;AACA,cAAc,OAAO,CAAC,QAAQ,CAAC,QAAQ,GAAG;AAC1C,cAAc,OAAO,CAAC,QAAQ,CAAC,QAAQ,GAAG,kEAAkE;AAC5G;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA,0BAA0B,4BAA4B;AACtD;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,iCAAiB;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC,QAAQ,6BAA6B;AACrC,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA,2CAA2C,qBAAqB;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEqM;;;ACjNpJ;AACkB;AACV;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,SAAS,eAAO;AAChB,iCAAiC;AACjC,gBAAgB,aAAa,gBAAgB,WAAW;AACxD,IAAI,cAAc;AAClB;AACA,4BAA4B,sBAAsB;AAClD,mCAAmC,6BAA6B;AAChE;AACA;;AAEmB;;;ACzCwC;AACX;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,OAAO;AAC/C;AACA;AACA;AACA;AACA,yBAAyB,GAAG;AAC5B;AACA;AACA;AACA,6BAA6B,GAAG;AAChC;AACA;AACA,yBAAyB,GAAG;AAC5B;AACA;AACA;AACA;AACA,oBAAoB,gBAAgB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,GAAG;AAC9C,gBAAgB,YAAY,gBAAgB,YAAY;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,GAAG;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,OAAO;AAC9C,2CAA2C,MAAM;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,QAAQ;AAC9B;AACA;;AAEqB;;;AC9FrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEqC;;;ACnBrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEkC;;;ACtBH;AACC;AAC0B;;AAE1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,gBAAgB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sCAAsC;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,YAAY;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,cAAM;AACnB;AACA,sBAAsB,GAAG;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEmI;;;AC1GnI;;AAEmB;;;ACFsB;;AAEzC,6BAA6B,OAAO;;AAEf;;;ACJoB;AACK;AACZ;;AAElC;AACA;AACA,QAAQ,KAAK,OAAO,KAAK;AACzB;AACA;AACA,aAAa,OAAO,OAAO,OAAO;AAClC;AACA;AACA,uBAAuB,SAAS,OAAO,SAAS;AAChD;AACA;AACA;;AAEoB;;;ACjBsB;;AAE1C;AACA;AACA;AACA;AACA,6BAA6B;AAC7B,kCAAkC;AAClC,WAAW,QAAQ;AACnB;AACA;AACA,6BAA6B;AAC7B;AACA,wBAAwB,GAAG;AAC3B;AACA;AACA;AACA;AACA,QAAQ,GAAG;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE8I;;;AC3C/G;AACC;AACY;AACG;;AAE/C;AACA;AACA;AACA;AACA;AACA,YAAY,UAAU;AACtB;AACA,gBAAgB,UAAU;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,4BAA4B;AAC5B,6BAA6B;AAC7B,iCAAiC;AACjC,iCAAiC;AACjC,QAAQ,YAAY;AACpB;AACA,+BAA+B,GAAG;AAClC;AACA;AACA;AACA;AACA,sBAAsB,GAAG;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,cAAM;AACnB;AACA;AACA;AACA;AACA;AACA,IAAI,kBAAK;AACT,IAAI,kBAAK;AACT;AACA;AACA;AACA;AACA;AACA,4CAA4C,kBAAK;AACjD,4CAA4C,kBAAK;AACjD;;AAEwF;;;AC5DxF,oCAAoC;AACpC;AACA;AACA;AACA;AACA,CAAC;AACD,gCAAgC;AAChC;AACA;AACA,CAAC;AACD,+BAA+B,UAAU,gBAAgB;AACzD,8BAA8B;AAC9B;AACA;AACA,CAAC;;AAE8D;;;AChB/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEkC;;;ACbgC;;AAElE;AACA;AACA;AACA;AACA;AACA,QAAQ,aAAa;AACrB;AACA;AACA;AACA,QAAQ,UAAU;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE,yBAAyB;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,QAAQ;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAEoB;;;AC/GrB;AACA;AACA;AACA;;AAE8C;;;ACL9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEwD;;;ACxBxD;AACA;AACA;;AAEoB;;;ACJpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEqG;;;ACxCrG;AACA;AACA;;AAE0B;;;ACJwC;AACV;;AAExD;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,aAAa;AACrB;AACA;AACA;AACA,QAAQ,UAAU;AAClB;AACA;AACA;AACA,2CAA2C,cAAc;AACzD;AACA;AACA;AACA;AACA,CAAC;;AAEmB;;;ACxB0C;AACR;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,aAAa;AACtC,WAAW,aAAa;AACxB;AACA;AACA;;AAE8B;;;ACjB0B;AACA;AACxB;AACsB;AACqB;AACnB;AACL;AACuD;AACG;AAC1C;AACH;AACW;AACZ;AACf;AACiB;AACE;AACjB;AACkB;AACE;AACV;AACoB;;AAEhF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C;AAC3C,qCAAqC;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,aAAa,CAAC,aAAa,KAAK,cAAM;AACvE;AACA;AACA;AACA,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA,iCAAiC,QAAQ;AACzC;AACA;AACA;AACA,iDAAiD,mBAAmB;AACpE;AACA;AACA;AACA;AACA;AACA,6BAA6B,uBAAuB;AACpD;AACA;AACA;AACA,4IAA4I,aAAa,KAAK,cAAM;AACpK;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;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,yBAAyB,SAAS;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,QAAQ,CAAC,QAAQ,GAAG,EAAE,kBAAkB,iCAAiC,uCAAuC;AAC7J;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,oBAAoB;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,gBAAgB;AAC5B,YAAY,mBAAmB;AAC/B,YAAY,gBAAgB;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,YAAc;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,aAAe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sBAAsB;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,SAAS;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,WAAW;AACpE;AACA;AACA;AACA;AACA;AACA,oBAAoB,YAAY;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,SAAS;AAChC;AACA;AACA;AACA;AACA,gBAAgB,aAAa;AAC7B,gBAAgB,aAAa;AAC7B;AACA;AACA;AACA;AACA,mCAAmC,SAAS;AAC5C,YAAY,WAAW;AACvB;AACA;AACA;AACA;AACA,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA,oBAAoB,aAAa;AACjC,oBAAoB,aAAa;AACjC;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C,iCAAiC,SAAS;AAC1C,YAAY,WAAW;AACvB,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA;AACA;AACA,oBAAoB,YAAY;AAChC;AACA;AACA,qBAAqB;AACrB;AACA,qBAAqB,YAAY;AACjC;AACA,gBAAgB,YAAY;AAC5B;AACA,gBAAgB,YAAY;AAC5B,gBAAgB,YAAY;AAC5B;AACA;AACA;AACA;AACA;AACA,sCAAsC,SAAS;AAC/C,YAAY,WAAW;AACvB,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA,qBAAqB,YAAY;AACjC;AACA,gBAAgB,QAAQ;AACxB,gCAAgC,SAAS;AACzC;AACA,gBAAgB,WAAW;AAC3B,gBAAgB,mBAAmB;AACnC;AACA,gBAAgB,YAAY;AAC5B,gBAAgB,mBAAmB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,QAAQ,CAAC,QAAQ,CAAC,QAAQ,GAAG,6BAA6B,2EAA2E;AAChK;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,SAAS;AACnD,gDAAgD,SAAS;AACzD,oBAAoB,oBAAoB;AACxC,oBAAoB,WAAW;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,SAAS;AACvC,4CAA4C,SAAS;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,eAAe;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,WAAW;AAC/B;AACA,gBAAgB,aAAa;AAC7B;AACA;AACA;AACA;AACA;AACA,gBAAgB,WAAW;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,SAAS;AACnD,gDAAgD,SAAS;AACzD,oBAAoB,oBAAoB;AACxC,oBAAoB,WAAW;AAC/B;AACA;AACA;AACA;AACA,gCAAgC,YAAY;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,WAAW;AACvB;AACA;AACA;AACA;AACA,YAAY,eAAe;AAC3B;AACA;AACA;AACA;AACA,uCAAuC,WAAW;AAClD,oDAAoD,WAAW;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,YAAY;AACxB,uCAAuC,wBAAwB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D;AAC3D;AACA;AACA,8BAA8B,QAAQ,GAAG;AACzC,8BAA8B,WAAW;AACzC;AACA;AACA,iCAAiC,SAAS;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,oBAAoB;AACxC;AACA;AACA;AACA;AACA,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,SAAW;AAC/C;AACA,yCAAyC,eAAO,qBAAqB,QAAQ,CAAC,QAAQ,GAAG,cAAc;AACvG;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,WAAW;AACvB;AACA;AACA;AACA;AACA;AACA,YAAY,YAAY;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,YAAY;AACxB;AACA;AACA;AACA;AACA,mDAAmD,SAAS;AAC5D;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,wCAAwC;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,wBAAwB;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,IAAI,oBAAoB,EAAE;AACtD,2BAA2B,aAAa;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,kBAAkB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,kBAAkB;AAC1C;AACA,0CAA0C,YAAY;AACtD;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,wBAAwB;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,eAAe;AAC3C;AACA;AACA,yBAAyB,eAAe;AACxC;AACA;AACA;AACA,oCAAoC,SAAS;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,kBAAkB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,QAAQ,qFAAqF;AACnJ;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,QAAQ;AACpB;AACA;AACA;AACA,6BAA6B,UAAU;AACvC;AACA;AACA,aAAa;AACb;AACA;AACA,YAAY,QAAQ;AACpB;AACA;AACA;AACA,6BAA6B,UAAU;AACvC;AACA,aAAa;AACb;AACA,0BAA0B,WAAW;AACrC,QAAQ,YAAY;AACpB,0BAA0B,WAAW;AACrC;AACA,YAAY,YAAY;AACxB;AACA;AACA,YAAY,YAAY;AACxB;AACA,gCAAgC,WAAW;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,SAAS;AACpD,oBAAoB,oBAAoB;AACxC,yCAAyC,SAAS;AAClD,oBAAoB,oBAAoB;AACxC,yBAAyB,SAAS;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE,cAAc;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,GAAG;AAC1B,mBAAmB,GAAG;AACtB;AACA;AACA;AACA;AACA,iBAAiB,GAAG;AACpB,iBAAiB,GAAG;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,QAAQ;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEsF;;;ACnqC3B;AACU;;AAErE;AACA;AACA,WAAW,WAAW;AACtB,YAAY,oCAAoC;AAChD;AACA;AACA,KAAK;AACL;;AAE2B;;;ACZW;;AAEtC;AACA;AACA;AACA,yBAAyB,uBAAa,GAAG;;AAEX;;;ACPQ;;AAEtC;AACA;AACA;AACA,+BAA+B,uBAAa,GAAG;;AAEX;;;ACPwB;AACzB;AACmD;;AAEtF;AACA;AACA;AACA,iCAAiC,oBAAU,CAAC,wBAAwB;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,WAAW;AAC7E;AACA,sCAAsC,wCAAwC;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEyB;;;ACjCS;AACC;;AAEnC;AACA,IAAI,SAAS;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC,eAAwB;;AAEM;;;AC3BC;AACF;AACgB;AACW;AACe;AACN;AACD;AACR;AACmB;AACC;AAC1B;AACQ;AACW;AACT;AACU;;AAExE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,4BAAqB;AAC9B;AACA,yBAAyB,YAAY;AACrC;AACA;AACA,gBAAgB,QAAQ,CAAC,QAAQ,GAAG,YAAY,oBAAoB;AACpE;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,oBAAU,CAAC,mBAAmB;AACnD;AACA,sBAAsB,sBAAsB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,eAAe;AACxE;AACA;AACA;AACA;AACA,gCAAgC,SAAS;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,gBAAgB,yBAAyB,QAAQ,CAAC,QAAQ,GAAG;AACjG,YAAY,aAAa;AACzB,gBAAgB,4CAA4C;AAC5D;AACA;AACA;AACA;AACA,uBAAuB,WAAW;AAClC;AACA;AACA;AACA;AACA;AACA,gBAAgB,mBAAmB,CAAC,oBAAoB,IAAI,6CAA6C,QAAQ,CAAC,QAAQ,GAAG,mBAAmB;AAChJ;AACA,YAAY,mBAAmB,CAAC,sBAAsB,IAAI,gBAAgB,4CAA4C,YAAY;AAClI;AACA,WAAW,oBAAU;AACrB;AACA;AACA;AACA;AACA,8BAA8B,oBAAU,CAAC,kBAAkB;AAC3D;AACA;AACA;AACA;;AAEiC;;;AC7F8B;;AAE/D;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,KAAK;AAC3B,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD;AACtD,eAAe,4BAAqB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;;AAE6B;;;AC/C7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEgC;;;AChCwC;;AAExE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,4BAA4B;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE0B;;;AC7BqD;AACgB;;AAE/F;AACA;AACA,YAAY,eAAe;AAC3B,QAAQ,qBAAqB;AAC7B;AACA,eAAe,eAAe;AAC9B;;AAE+B;;;ACXsB;;AAErD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,kBAAkB;AACzC;AACA;AACA;AACA;AACA;AACA,oBAAoB,sBAAsB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEgD;;;ACzDhD;AACA;AACA;AACA;AACA;AACA;;AAEyB;;;ACPzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE0B;;;ACTmD;AACT;AACK;AACF;AACH;;AAEpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,aAAa;AACzB;AACA;AACA;AACA;AACA,wBAAwB,gBAAgB;AACxC,0BAA0B,cAAc;AACxC,YAAY,eAAe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,qBAAqB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,cAAc;AACxC;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;AACA,gCAAgC,oBAAoB;AACpD;AACA;;AAE2B;;;ACvE3B,0CAA0C;AAC1C,aAAa;AACb,iBAAiB;AACjB;AACA,uBAAuB;AACvB,YAAY;AACZ,CAAC;;AAEgC;;;ACRA;AACD;AACoD;AACd;AACX;AACa;;AAExE;AACA;AACA,aAAa,aAAa,kBAAkB,mBAAmB;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,iBAAO;AAClB,oBAAoB,qBAAqB;AACzC,QAAQ,eAAe,uBAAuB,uCAAuC;AACrF;AACA,eAAe,QAAQ,CAAC,QAAQ,GAAG;AACnC,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;;AAEqD;;;AC1DrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE6B;;;AC3E4C;;AAEzE,qCAAqC,QAAQ,iBAAiB;AAC9D;AACA;AACA;AACA;AACA;AACA,uCAAuC,iBAAiB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,iBAAiB;AAC7D,wBAAwB,iBAAiB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEgD;;;ACjDT;;AAEvC;AACA;AACA;AACA,UAAU,YAAY;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEkC;;;ACjBK;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B,6BAA6B;AAC7B,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,YAAY;AACrC;AACA,qBAAqB,YAAY;AACjC,sBAAsB,YAAY;AAClC;AACA;;AAEwB;;;AClCO;AACqC;AACJ;AACtB;;AAE1C;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,MAAM;AACnB,IAAI,eAAe;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sBAAsB;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,YAAY;AACpB;AACA;;AAEyB;;;ACzCQ;AACgD;;AAEjF,yCAAyC,QAAQ,QAAQ,CAAC,QAAQ,GAAG,EAAE,qBAAqB,OAAO,WAAW;;AAE9E;;;ACLC;AACD;AAC0B;AACF;AACe;;AAEvE;AACA,sBAAsB,iBAAO;AAC7B,oBAAoB,oBAAoB;AACxC,QAAQ,aAAa,uBAAuB,mCAAmC;AAC/E,eAAe,QAAQ,CAAC,QAAQ,GAAG,kBAAkB,OAAO,QAAQ,GAAG,gBAAgB;AACvF,KAAK;AACL;AACA;AACA,QAAQ,iBAAiB;AACzB,4BAA4B,QAAQ,CAAC,QAAQ,GAAG;AAChD;AACA;AACA;;AAEuB;;;ACpBU;AACK;AACe;AACE;AACO;AACX;;AAEnD;AACA,yCAAyC;AACzC;AACA;AACA,6BAA6B,cAAc;AAC3C,cAAc,WAAW;AACzB,cAAc,YAAY;AAC1B;AACA,4BAA4B,WAAW;AACvC,2BAA2B,QAAQ,CAAC,QAAQ,CAAC,QAAQ,GAAG,kCAAkC,UAAU;AACpG;AACA;AACA;AACA,eAAe,uBAAa;AAC5B;AACA;AACA;;AAE2B;;;ACzB3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEuB;;;ACTvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEsB;;;ACTtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE+B;;;AC1BiC;AACP;AACI;;AAE7D;AACA,IAAI,UAAU;AACd;AACA,8BAA8B,uBAAuB,QAAQ,WAAW;AACxE;AACA;;AAEqB;;;ACXkE;AACd;;AAEzE;AACA;AACA;AACA;AACA,YAAY,aAAa,gBAAgB,mBAAmB;AAC5D;AACA;AACA;AACA;AACA;;AAEuC;;;ACdkC;AACgD;;AAEzH,SAAS,gDAA2B;AACpC,oBAAoB,2BAA6B;AACjD;AACA,YAAY,aAAa;AACzB;AACA;AACA;AACA;AACA;AACA;;AAEuC;;;ACdvC;AACA;AACA;;AAE+B;;;ACJA;AACI;AACmD;AAClB;AACsD;AAC/D;AACqB;AACV;;AAEtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA,sBAAsB,oBAAU,CAAC,aAAa;AAC9C,8BAA8B,oBAAU,CAAC,+BAAe;AACxD;AACA;AACA,cAAc,WAAW;AACzB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kBAAkB;AACxC;AACA;AACA,gCAAgC,0BAA0B;AAC1D,wBAAwB,kBAAkB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,mBAAmB;AAC5B;AACA;AACA,2BAA2B,uBAAuB;AAClD;AACA;AACA,wDAAwD,qBAAqB,aAAa,MAAM;AAChG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAE8B;;;AClFiB;AACgC;AACF;AACN;AACf;;AAExD;AACA,oBAAoB,kBAAkB;AACtC,qCAAqC,gDAA2B;AAChE,2BAA2B,oBAAoB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,aAAa,8BAA8B,mCAAmC;AAC1F;AACA,YAAY,SAAS;AACrB,SAAS;AACT,KAAK;AACL;;AAE2B;;;ACnCkD;AACE;AACP;;AAExE;AACA,oBAAoB,kBAAkB;AACtC,qCAAqC,2BAA2B;AAChE,2BAA2B,qBAAqB;AAChD,KAAK;AACL;;AAE4B;;;ACXK;AACuB;AACJ;AACU;AACE;;AAEhE,SAAS,mCAAqB;AAC9B;AACA,qBAAqB,cAAc;AACnC,UAAU,eAAe;AACzB,UAAU,gBAAgB;AAC1B,WAAW,QAAQ,CAAC,QAAQ,GAAG,iBAAiB,iDAAiD,eAAe,4IAA4I;AAC5P;;AAEiC;;;ACdjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,sCAAsC;;AAEd;;;ACXS;;AAElC;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,gBAAgB;AACxD;AACA,oBAAoB,KAAK;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,mBAAS;AACb;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEoC;;;ACpCsB;AACA;;AAE1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8FAA8F,mBAAmB;AACjH;AACA;AACA;AACA,8FAA8F,mBAAmB;AACjH;AACA,IAAI,WAAW;AACf,IAAI,WAAW;AACf;;AAE2B;;;ACvB3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEsC;;;ACZ0B;;AAEhE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC;AACA,eAAe,YAAY;AAC3B;AACA;AACA;AACA;AACA;AACA,iDAAiD;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEyC;;;ACnDW;;AAEpD;AACA;AACA,WAAW,SAAS;AACpB;AACA;AACA,WAAW,SAAS;AACpB;AACA;AACA,WAAW,SAAS;AACpB;;AAE2E;;;ACbZ;AAChB;AAC+C;;AAE9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,qBAAqB;AAC7B;AACA;AACA,aAAa,mBAAmB;AAChC;AACA;AACA,aAAa,mBAAmB;AAChC;AACA;AACA;AACA;AACA;AACA,WAAW,WAAW,yCAAyC,WAAW;AAC1E;AACA;AACA,WAAW,WAAW,iDAAiD,WAAW;AAClF;;AAE4C;;;ACvC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEmD;;;ACpDG;AACI;AACQ;AACb;;AAErD;AACA;AACA;AACA,aAAa,YAAY,WAAW,YAAY;AAChD;AACA;AACA;AACA;AACA,8FAA8F,mBAAmB;AACjH;AACA;AACA;AACA;AACA;AACA,IAAI,eAAe;AACnB;AACA;AACA,IAAI,eAAe;AACnB;AACA;AACA;;AAE2B;;;AC3B3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEyB;;;ACnBS;;AAElC;AACA,WAAW,mBAAS,eAAe,qBAAqB,uBAAuB;AAC/E;;AAE4B;;;ACNG;AAC8B;AACsB;AAChB;AAClC;AACyB;AACL;;AAErD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,gBAAM;AAC3B,oCAAoC,gBAAM;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8FAA8F,iBAAiB;AAC/G,gBAAgB,YAAY;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,aAAa;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,IAAI,CAAC,eAAe,oCAAoC,eAAe;AACnH;AACA;AACA;AACA,8FAA8F,iBAAiB;AAC/G;AACA;AACA,IAAI,eAAe;AACnB,IAAI,gBAAgB;AACpB;;AAEyB;;;AC9DgB;;AAEzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,MAAM;AACxC;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF,QAAQ,GAAG,YAAY;AACvG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE+B;;;ACnDW;AACsB;AACR;AACF;;AAEtD;AACA,oMAAoM;AACpM,gBAAgB,gBAAM;AACtB;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,mBAAS;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kGAAkG,oBAAoB;AACtH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,mBAAmB;AAClC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,mBAAS;AACb;AACA;AACA,YAAY,KAAqC,EAAE,EAE1C;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kGAAkG,oBAAoB;AACtH,SAAS;AACT,KAAK;AACL;;AAEuB;;;AChGvB,gDAAgD;AAChD;AACA;AACA;;AAEmC;;;ACLoC;AACA;AACJ;AACT;AACuB;;AAEjF;AACA,YAAY,uBAAuB,CAAC,WAAW;AAC/C,SAAS,uBAAuB,CAAC,aAAa;AAC9C,WAAW,uBAAuB,CAAC,eAAe;AAClD,WAAW,uBAAuB,CAAC,eAAe;AAClD;;AAE6B;;;ACbiB;AACsB;AACT;;AAE3D;AACA;AACA;AACA;AACA;AACA,YAAY,cAAc;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,oBAAU,CAAC,+BAAe;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,mBAAS,eAAe,sBAAsB;AAClD,qCAAqC;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,eAAe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,gCAAgC,OAAO,WAAW;;AAEF;;;ACtEhD;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,gBAAgB;AACpC;AACA;AACA;AACA;AACA;;AAE0B;;;ACb1B;AACA;AACA;AACA,uCAAuC;;AAEV;;;ACL7B;AACA;AACA;AACA,uCAAuC;;AAEV;;;ACL7B;AACA;AACA;AACA,mCAAmC,yBAAyB;;AAEnC;;;ACLzB;AACA;AACA;AACA;AACA,yBAAyB,sBAAsB;AAC/C,0BAA0B,WAAW;AACrC;;AAEgB;;;ACRyD;AAC9B;AACJ;;AAEvC;AACA;AACA;AACA,2BAA2B,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI;AACrE;AACA;AACA;AACA;AACA,oCAAoC,aAAa;AACjD;;AAEuD;;;ACfT;AACK;AACI;AACZ;;AAE3C;AACA;AACA;AACA,iBAAiB,aAAa,CAAC,aAAa,KAAK,cAAM,CAAC,mBAAmB,YAAY,KAAK,EAAE,OAAO;AACrG;AACA;AACA;AACA,mCAAmC,uBAAuB,aAAa;;AAE9C;;;ACduC;AACpB;AAC4B;AACC;AACI;AACzB;AACuB;AACf;AACZ;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,WAAW;AAC/C;AACA;AACA;AACA,mBAAmB,cAAc;AACjC,gFAAgF,4DAA4D,MAAM,eAAe,aAAa,MAAM;AACpL,aAAa,QAAQ,CAAC,QAAQ,GAAG;AACjC;AACA,oBAAoB,4BAA4B;AAChD;AACA;AACA;AACA;AACA,yBAAyB,aAAa,KAAK,cAAM;AACjD;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mEAAmE,sCAAsC;AACzG;AACA;AACA;AACA,oBAAoB,kBAAkB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,iBAAiB,WAAW,iBAAiB;AAC1D;AACA;AACA;AACA,kBAAkB,aAAa,WAAW,YAAY;AACtD,oBAAoB,iCAAiB;AACrC;AACA,oCAAoC,WAAW;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE6F;;;AClH5C;AACsB;AAC7B;AACM;;AAEhD;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,cAAc;AAC5B;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,8BAA8B;AAC9B,mBAAmB,cAAc;AACjC,4BAA4B,sFAAsF;AAClH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C;AAC3C;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,cAAM;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,oMAAoM,MAAM;AAC1M;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,cAAc,0BAA0B,QAAQ,GAAG,cAAc;AACzF;AACA;AACA;AACA,yBAAyB,SAAS;AAClC,KAAK;AACL;AACA;AACA,oCAAoC;AACpC,sCAAsC;AACtC,uCAAuC;AACvC;AACA;AACA;AACA;AACA,gCAAgC;AAChC;AACA;AACA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA,uDAAuD,QAAQ,CAAC,QAAQ,GAAG,cAAc,mDAAmD,sBAAsB,gDAAgD;AAClN,KAAK;AACL;AACA;AACA;AACA,kDAAkD,sBAAsB;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEgE;;;AC5IA;AACsB;AACJ;AACjB;AACV;AACX;AACqC;;AAEjF;AACA,IAAI,qBAAqB;AACzB,IAAI,oBAAoB;AACxB,IAAI,mBAAmB;AACvB,IAAI,mBAAmB;AACvB,IAAI,iBAAiB;AACrB,IAAI,kBAAkB;AACtB,IAAI,kBAAkB;AACtB;AACA,2BAA2B,aAAa,KAAK,cAAM;AACnD;AACA;AACA;AACA;AACA;AACA,mBAAmB,oBAAoB;AACvC,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,cAAc;AACrC;AACA,iCAAiC,qDAAqD,MAAM;AAC5F,kBAAkB,QAAQ,CAAC,QAAQ,CAAC,QAAQ,GAAG;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,cAAc;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,QAAQ,GAAG;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,mBAAmB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kFAAkF;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2FAA2F;AAC3F,0BAA0B,QAAQ,CAAC,QAAQ,GAAG;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,iBAAiB,UAAU,iBAAiB;AACpE,6BAA6B,cAAc;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,QAAQ,CAAC,QAAQ,GAAG;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,aAAa,KAAK,cAAM,2CAA2C;AACrH;AACA,6BAA6B,QAAQ,GAAG,YAAY;AACpD,iBAAiB,IAAI;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA,0BAA0B,QAAQ,GAAG;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,8BAA8B,gCAAgC;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gHAAgH,QAAQ,uGAAuG;AAC/N;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,eAAe;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,eAAe;AAC5B,gBAAgB,cAAc;AAC9B;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA,yBAAyB;AACzB,0BAA0B;AAC1B,8BAA8B;AAC9B;AACA;AACA;AACA;AACA,kBAAkB;AAClB,WAAW,qBAAqB;AAChC,WAAW,oBAAoB;AAC/B,WAAW,mBAAmB;AAC9B,WAAW,iBAAiB;AAC5B,WAAW,kBAAkB;AAC7B,WAAW,mBAAmB;AAC9B,WAAW,kBAAkB;AAC7B;AACA;;AAE8E;;;ACjV/C;AACe;AACwC;AACN;AACZ;AACU;AACjB;AACoB;;AAEjF;AACA,eAAe,uBAAuB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE,oBAAoB;AAC5F;AACA;AACA;AACA,YAAY,mBAAmB;AAC/B,YAAY,mBAAS,eAAe,0CAA0C;AAC9E;AACA,KAAK;AACL,UAAU,uBAAuB;AACjC;AACA,iBAAiB,cAAM,CAAC,WAAW;AACnC,8BAA8B,oBAAU,CAAC,+BAAe;AACxD,QAAQ,mBAAS;AACjB;AACA;AACA,kHAAkH,kBAAkB,gBAAgB,iJAAiJ;AACrS;AACA,SAAS;AACT,KAAK;AACL;;AAEsB;;;ACtCW;AACmC;AACR;AACD;AACU;AACH;AACvB;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,QAAQ,gBAAgB,YAAY;AAC9E;AACA;AACA;AACA,4BAA4B,YAAY;AACxC,+BAA+B,QAAQ,CAAC,QAAQ,GAAG,YAAY,sBAAsB;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,YAAY;AAC5B;AACA;AACA;AACA;AACA,YAAY,SAAW;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,YAAY;AACxB;AACA;AACA;AACA,mBAAmB,gBAAgB;AACnC;AACA;AACA,wBAAwB,YAAY;AACpC,wBAAwB,QAAQ,CAAC,QAAQ,GAAG,YAAY,sBAAsB;AAC9E;AACA;AACA;AACA,+BAA+B,IAAI,CAAC,eAAe,iDAAiD,eAAe,6CAA6C,eAAe;AAC/K;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,iBAAiB;AACzB;AACA;AACA,CAAC;AACD;AACA,kCAAkC,wCAAwC;AAC1E;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,sBAAW;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,sBAAW;AACpB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,qBAAqB;AACjC;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEsB;;;ACxJS;AACkB;AACwB;;AAEzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,GAAG;AAC7B;AACA;AACA;AACA,0BAA0B,GAAG;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,cAAM;AACnB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,sBAAU;AACnB;AACA,uBAAuB,UAAU;AACjC,uBAAuB,UAAU;AACjC;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA,WAAW,WAAK;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEwP;;;AChIxP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,uBAAuB;AACpC,aAAa,uBAAuB;AACpC;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,6BAA6B;AAChE,uCAAuC,iCAAiC;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;;AAEgF;;;AClCS;AAC7B;;AAE5D;AACA,WAAW,uBAAuB,CAAC,kBAAkB;AACrD;AACA;AACA;AACA;AACA;AACA,QAAQ,aAAa;AACrB,QAAQ,aAAa;AACrB;AACA;AACA;;AAE8C;;;AChBb;AACM;AACQ;AACE;AACW;AACS;AAC+G;AACvH;AACI;AACD;AACI;AACL;AACQ;AACqC;AAC/C;AAC7B;AACY;AAC0B;;AAEtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,SAAS;AAChC;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,gBAAgB;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,aAAa;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,QAAQ;AACpB;AACA;AACA;AACA;AACA;AACA,oBAAoB,YAAY;AAChC;AACA;AACA,uCAAuC,UAAU;AACjD;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,wGAAwG,kBAAkB;AAC1H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,UAAU;AACxC;AACA;AACA;AACA;AACA,SAAS,IAAI,gEAAgE;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mGAAmG,kBAAkB;AACrH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,gBAAgB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD;AACzD;AACA,+BAA+B,WAAW;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,uBAAuB;AAC1D;AACA;AACA;AACA;AACA;AACA,uBAAuB,kBAAkB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,QAAQ;AACpB;AACA,8CAA8C,qBAAqB;AACnE;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,6BAA6B,WAAW;AACxC;AACA;AACA,QAAQ,uBAAS;AACjB;AACA;AACA;AACA;AACA,6BAA6B,cAAc;AAC3C,kCAAkC,uBAAuB;AACzD;AACA;AACA;AACA;AACA;AACA,2DAA2D,uBAAuB;AAClF;AACA;AACA,sCAAsC,uBAAuB;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,QAAQ;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,QAAQ,CAAC,QAAQ,GAAG,8KAA8K;AAC5N;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,eAAe,cAAc;AAC7B;AACA;AACA;AACA,QAAQ,QAAQ,mBAAmB,+CAA+C;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,QAAQ;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,GAAG;AAC/C;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,WAAW;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B,QAAQ,QAAQ;AAChB;AACA;AACA;AACA,oCAAoC,sBAAU,GAAG,0BAA0B;AAC3E;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,QAAQ;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,GAAG;AAC7B,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,eAAe;AACjD;AACA;AACA,SAAS;AACT;AACA;AACA,gBAAgB,WAAW;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,WAAW;AAC5C;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,QAAQ;AACxB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wVAAwV,cAAc;AACtW,eAAe,QAAQ,CAAC,QAAQ,GAAG,YAAY,4KAA4K;AAC3N;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE0D;;;AC7bxB;AAC0C;AACjB;;AAE3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,WAAW,eAAe,WAAW,yBAAyB,kBAAkB;AACvG;AACA;AACA,IAAI,mBAAS,eAAe,wEAAwE;AACpG;AACA,IAAI,mBAAS,eAAe,qCAAqC;AACjE;;AAEmB;;;ACnBmC;AACmB;AACN;AACD;AACpB;;AAE9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,gBAAM;AAC3B,6BAA6B,oBAAU,CAAC,mBAAmB;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,IAAI,mBAAS;AACb;AACA;AACA;AACA,KAAK;AACL;AACA,iCAAiC,UAAU;AAC3C;AACA,SAAS;AACT;AACA,IAAI,eAAe;AACnB,IAAI,gBAAgB,eAAe,wDAAwD;AAC3F;;AAEyB;;;AC9CkC;AACQ;AACc;;AAEjF;AACA,SAAS,uBAAuB,CAAC,aAAa;AAC9C,UAAU,uBAAuB,CAAC,OAAO;AACzC;;AAEgB;;;ACT8B;AAC6B;;AAE3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,WAAW,mBAAmB,KAAK;AAC9E;AACA;AACA,yCAAyC,6CAA6C,yBAAyB,IAAI;AACnH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA,2DAA2D;AAC3D;AACA;AACA,6BAA6B,uBAAuB;AACpD;AACA;AACA,0CAA0C,aAAa,KAAK,cAAM;AAClE;AACA,KAAK;AACL;AACA;;AAE4B;;;AChDwB;AACkB;;AAEtE;AACA;AACA;AACA;AACA;AACA,YAAY,aAAa;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,aAAa;AAC9B;AACA;AACA;AACA;AACA,kCAAkC,WAAW;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,WAAW;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEuC;;;AC9CiB;AACX;AACI;AACkB;AACA;AACT;AACc;AAC8B;;AAEtG;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,gBAAgB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,QAAQ,GAAG;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,SAAW;AAC7C,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,aAAa;AAChE;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,0BAA0B;AAC9D,4BAA4B,kBAAkB;AAC9C,sBAAsB,QAAQ,CAAC,QAAQ,GAAG;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE,OAAO;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,2BAA2B;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC,gBAAgB,iBAAiB;AACjC,+DAA+D,kBAAkB;AACjF;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,uCAAuC,wBAAwB;AAC/D;AACA;AACA;AACA,uCAAuC,kBAAkB;AACzD;AACA;AACA;AACA,6CAA6C,2BAA2B,0CAA0C,qCAAqC;AACvJ;AACA;AACA;AACA;AACA;AACA,2CAA2C,sBAAsB;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,uCAAuC,yBAAyB;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,WAAW;AACvC;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,gDAAgD,kCAAkC;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,aAAa;AAC9D;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,gBAAgB,SAAW;AAC3B,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,2BAA2B;AAC9D,aAAa,0BAA0B,eAAe;AACtD;AACA;AACA;AACA;AACA,0CAA0C,QAAQ,6EAA6E;AAC/H;AACA;AACA;AACA,gDAAgD,0BAA0B;AAC1E;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,qBAAqB;AACrD;AACA;AACA,wBAAwB,cAAc;AACtC;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA,mBAAmB,aAAa,cAAc,cAAM,CAAC,oBAAoB;AACzE;;AAEyB;;;AC/YwB;AACV;;AAEvC,SAAS,sCAAa;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,cAAM;AACnB;AACA;AACA;AACA;AACA,4BAA4B;AAC5B,IAAI,uBAAS;AACb,aAAa,cAAM;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,sCAAa;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,MAAM;AACvB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,wBAAwB,QAAQ,GAAG;AACnC;AACA;AACA;AACA;AACA,aAAa,sCAAa;AAC1B;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,aAAa,sCAAa;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEmE;;;ACzF1B;AACM;AACsC;AAC9C;AACyB;AACO;;AAEvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,MAAM,UAAU,EAAE;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,oDAAoD;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,qBAAqB,kBAAkB,iCAAiC;AAC5G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,6BAA6B;AAC7B,oCAAoC;AACpC,aAAa,QAAQ,GAAG;AACxB,oBAAoB,QAAQ,GAAG;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,iBAAiB;AAC7B;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C,oCAAoC,kBAAkB;AACtD;AACA,6BAA6B,sBAAsB;AACnD,oBAAoB,uBAAS;AAC7B;AACA;AACA;AACA,oBAAoB,uBAAS,CAAC,sBAAsB;AACpD;AACA;AACA;AACA;AACA,qBAAqB,sBAAsB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,EAAE;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACL;AACA;AACA;AACA;AACA;AACA,yBAAyB,cAAM;AAC/B;AACA,aAAa;AACb;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;;AAEkE;;;ACjQG;AACd;;AAEvD;AACA;AACA;AACA;AACA;AACA,mBAAmB,mBAAmB;AACtC;AACA;AACA,WAAW,cAAc;AACzB;;AAE2B;;;ACdc;AACI;AAC6B;AACf;AACM;AACI;AACb;AACuB;AAC/B;AACsB;AACE;;AAExE,SAAS,+BAAgB;AACzB;AACA;AACA;AACA;AACA;AACA,YAAY,eAAe;AAC3B,8BAA8B,mBAAmB;AACjD;AACA;AACA;AACA,gCAAgC,+BAAgB;AAChD,qBAAqB,aAAa;AAClC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,eAAe,kBAAkB;AACjC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC,mFAAmF,MAAM;AACzF,qBAAqB,SAAS,yBAAyB;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,uBAAuB;AACnC,yBAAyB,eAAe;AACxC;AACA;AACA;AACA,eAAe,QAAQ,GAAG,sDAAsD;AAChF,KAAK;AACL,iCAAiC,2BAA2B;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,eAAe;AACvB,KAAK;AACL,YAAY,UAAU;AACtB;AACA,wBAAwB,aAAa;;AAEsB;;;AC7G1B;AACY;AACkC;AACvB;AACA;AACK;AACM;AACL;AACf;AACuB;;AAEtE,uBAAuB,aAAa,CAAC,QAAQ,CAAC,QAAQ,GAAG,EAAE,UAAU,KAAK;AAC1E;AACA,KAAK;AACL;AACA,YAAY,eAAe;AAC3B,0BAA0B,mBAAmB;AAC7C;AACA,eAAe,uBAAuB,QAAQ,WAAW;AACzD;AACA,KAAK,+BAA+B,gDAA2B;AAC/D,QAAQ,aAAa;AACrB,KAAK,UAAU,SAAS,EAAE;;AAEE;;;ACxBmC;AACF;AACC;;AAE9D,IAAI,4CAAsB;AAC1B,WAAW,cAAc;AACzB,UAAU,gBAAgB,YAAY,mCAAmC;AACzE,UAAU,iBAAiB,YAAY,kCAAkC;AACzE;;AAEkC;;;ACVK;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,OAAO;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEgD;;;ACxChB;AACY;AAC2C;;AAEvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,gBAAgB;AACpD;AACA;AACA,aAAa;AACb;AACA,qBAAqB,aAAa;AAClC;AACA;AACA;AACA,uBAAuB,yBAAyB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,GAAG;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,KAAK;AACL;;AAE4B;;;ACzDwB;AACvB;AACsB;AACgC;AACN;AACY;AACG;AACH;AACN;AACC;;AAEpF;AACA,IAAI,SAAS;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,iBAAiB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,kCAAkC,QAAQ,CAAC,QAAQ,GAAG,yBAAyB,8BAA8B,gCAAgC;AAC7I;AACA,QAAQ,oCAAoC;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA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;;;AC9EgC;AAC3B;AACsB;;AAExD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,uBAAuB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,eAAe;AACvC,OAAO;AACP;AACA,kCAAkC,UAAU;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,WAAW,CAAC,iBAAiB;AAChD,IAAI,mBAAS;AACb;AACA;;AAEwB;;;ACvCO;AACG;;AAElC,SAAS,qCAAQ;AACjB,EAAE,qCAAQ;AACV,oBAAoB,sBAAsB;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,SAAS,qCAAQ;AACjB;;AAEA,SAAS,2CAAc;AACvB;AACA;;AAEA,EAAE,4CAAe;AACjB;;AAEA,SAAS,4CAAe;AACxB,EAAE,4CAAe;AACjB;AACA;AACA;;AAEA,SAAS,4CAAe;AACxB;;AAEA,SAAS,0DAA6B;AACtC;AACA;AACA;AACA;;AAEA,cAAc,uBAAuB;AACrC;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;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;AACA;;;AAGA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS,GAAG;;AAEZ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS;AACT,OAAO;AACP,KAAK,YAAY;;AAEjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,wBAAwB;AACxB;AACA,IAAI;;;AAGJ;AACA;AACA;AACA,2CAA2C;;;AAG3C;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAI,sCAAS;;AAEb;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,UAAU,SAAS;;AAEnB;AACA;AACA,EAAE,GAAG,oBAAoB;AACzB,gBAAgB,IAAI;AACpB,aAAa,0BAA0B,OAAO,GAAG;AACjD;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,UAAU,SAAS;;AAEnB;AACA,4BAA4B,kDAAkD;AAC9E;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA,EAAE,2CAAc;;AAEhB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA,gBAAgB,0DAA6B,eAAe,sCAAS;;AAErE,wBAAwB,mBAAmB,qBAAqB,qCAAQ;AACxE;AACA,KAAK;AACL;;AAEA;AACA,CAAC,CAAC,eAAe;AACjB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAC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mBAAY;AACvC;AACA;AACA;AACA,uBAAuB,YAAY;AACnC;AACA,mCAAmC,iBAAiB;AACpD;AACA;AACA,wBAAwB,iCAAiC;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,UAAU;AACrC,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA,eAAe,UAAU;AACzB;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,2BAA2B,UAAU;AACrC;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA,qDAAqD,mBAAmB,qBAAqB;AAC7F;AACA,8BAA8B,uBAAgB;AAC9C;AACA,2BAA2B,sBAAsB;AACjD;AACA;AACA,oFAAoF,uCAAuC,mDAAmD;AAC9K,uCAAuC;AACvC;AACA;AACA,8BAA8B,uBAAgB;AAC9C;AACA,2BAA2B,iCAAiC;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AC3GgC;AAChC,wCAAe,OAAO,EAAC;AACC;;;ACFe;AACvC,gDAAe,GAAO,EAAC;;;ACDQ;AACC;AAChC,uBAAuB,mBAAmB,KAAK,WAAO;AAC/C,QAAQ,QAAQ,sCAAa;AACpC,uDAAe,cAAc,EAAC;;;ACJvB;AACP;AACA;AACA;AACA;;;ACJuE;AACzB;AACR;AACvB;AACf,oBAAoB,oBAAU,CAAC,kBAAc;AAC7C;AACA;AACA;AACA,qCAAqC,kBAAQ;AAC7C,QAAQ,WAAW;AACnB,QAAQ,yBAAe;AACvB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,sBAAsB,iBAAO;AAC7B,yBAAyB,iBAAO;AAChC,0BAA0B,iBAAO;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;ACxCA;AAEA,qDAAe,UAAClc,MAAD,EAAoF;EAAA;;EAC/F,kBAAkBw0B,UAAU,CAAC,CAAC,gBAAD,CAAD,CAA5B;EAAA;EAAA,IAAOC,OAAP;;EAEA,IAAIC,QAAQ,GAAG,KAAf;EACA,IAAIC,SAAS,GAAG,IAAhB;EACA,IAAIC,aAAa,GAAGx3B,SAApB;;EAEA,IAAMy3B,WAAW,GAAG,SAAdA,WAAc,CAACC,SAAD,EAAgC;IAChD,IAAMjE,MAAM,GAAG,IAAIxuB,MAAJ,CAAY,CACvB,KADuB,EAChB,QADgB,EACN,OADM,EAEvB,aAFuB,EAER,QAFQ,EAEE,WAFF,EAGvB,eAHuB,EAGN,gBAHM,EAIvB,aAJuB,EAIR,mBAJQ,EAKvB,kBALuB,EAKH,gBALG,EAMvB,MANuB,EAMf,QANe,EAML,OANK,EAMI,UANJ,EAMgB,OANhB,EAOvB,QAPuB,EAOb,aAPa,EAQvB,UARuB,EAQX,WARW,EAQE,WARF,EAQe,QARf,EASvB,OATuB,EASd,SATc,EASH,UATG,EASS,SATT,EAUvB,SAVuB,CAAD,CAWXoB,GAXW,CAWP,UAAAsxB,CAAC;MAAA,OAAIA,CAAC,CAACC,MAAN;IAAA,CAXM,EAWQp1B,IAXR,CAWa,GAXb,CAAX,EAW8B,GAX9B,CAAf;IAaA,OAAOixB,MAAM,CAACvP,IAAP,CAAYwT,SAAZ,CAAP;EACH,CAfD;;EAiBA,IAAI,OAAQL,OAAO,CAACQ,cAAhB,KAAoC,WAApC,IAAmD,CAACJ,WAAW,qCAAC94B,MAAD,iEAAC,QAAQm5B,SAAT,sDAAC,kBAAmBJ,SAApB,yEAAiC,EAAjC,CAAnE,EAAyG;IACrGJ,QAAQ,GAAG,IAAX;IACAC,SAAS,GAAG,KAAZ;IACAC,aAAa,GAAG50B,MAAM,GAAGA,MAAM,CAACm1B,SAAV,GAAsB/3B,SAA5C;EACH;;EAED,OAAO;IAAEs3B,QAAQ,EAARA,QAAF;IAAYC,SAAS,EAATA,SAAZ;IAAuBC,aAAa,EAAbA;EAAvB,CAAP;AACH,CA/BD;;ACFgF;;AAEhF,SAAS,0BAAQ;AACjB,EAAE,0BAAQ;AACV,oBAAoB,sBAAsB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,0BAAQ;AACjB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4HAA4H;AAC5H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,cAAc,WAAW,wDAAwD,EAAE,6FAA6F,aAAa,qFAAqF,+BAA+B,OAAO,iEAAiE;AAC9Z;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,uBAAa;AAC3C,sCAAsC,uBAAa;AACnD;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,oBAAU,cAAc,0BAAQ,GAAG;AACvD;AACA;AACA,EAAE,mBAAS;AACX;AACA,sBAAsB,0BAAQ,GAAG;AACjC;AACA,GAAG;AACH,SAAS,mBAAmB;AAC5B;AACA,GAAG,EAAE,mBAAmB;AACxB;AACA,GAAG;AACH;AACA;AACA,gBAAgB,oBAA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;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;;AAGJ;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,MAAM,KAAqC,EAAE,EAE1C;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,UAAU;AACrB;AACA;AACA,WAAW,KAAK;AAChB;AACA;AACA;AACA;AACA;AACA,WAAW,UAAU;AACrB;AACA;AACA;AACA;AACA,aAAa,OAAO;AACpB;AACA;;AAEA;AACA;;AAEA;AACA,oBAAoB,KAAqC,+BAA+B,CAA4Q;AACpW;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,sBAAsB,KAAqC,+BAA+B,CAAuF;AACjL;;AAEA;AACA;;AAEA;AACA,oBAAoB,KAAqC,+BAA+B,CAA0F;AAClL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,KAAK;AACpB;;;AAGA;AACA;AACA,sBAAsB,KAAqC,+BAA+B,CAAgN;AAC1S;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,UAAU;AACvB,eAAe,UAAU;AACzB;;;AAGA;AACA;AACA,sBAAsB,KAAqC,+BAA+B,CAAuF;AACjL;;AAEA;AACA,sBAAsB,KAAqC,+BAA+B,CAAgU;AAC1Z;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,wBAAwB,KAAqC,+BAA+B,CAA2J;AACvP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;;;AAGA;AACA;AACA,sBAAsB,KAAqC,+BAA+B,CAAga;AAC1f;;AAEA;AACA,sBAAsB,KAAqC,+BAA+B,CAA4G;AACtM;;AAEA;AACA,sBAAsB,KAAqC,+BAA+B,CAAoC;AAC9H;;AAEA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;;AAEA,oBAAoB,sBAAsB;AAC1C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,UAAU;AACvB,eAAe;AACf;;;AAGA;AACA;AACA,sBAAsB,KAAqC,gCAAgC,CAAuF;AAClL;;AAEA,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,eAAe,YAAY;AAC3B;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;AACA;AACA;AACA,0BAA0B,KAAqC,gCAAgC,CAAsF;AACrL;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL,IAAI;AACJ;AACA;;;AAGA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,aAAa;AACb;AACA,SAAS,aAAO;AAChB;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA,IAAI,aAAa;;AAEjB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA,sBAAsB,KAAqC,gCAAgC,CAA0U;AACra;;AAEA;AACA;AACA,KAAK;AACL,sBAAsB,KAAqC,gCAAgC,CAAqd;AAChjB;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,UAAU;AACvB;AACA;;;AAGA;AACA;AACA;;AAEA,kBAAkB,wBAAwB;AAC1C;;AAEA,QAAQ,KAAqC,EAAE,EAI1C;;AAEL;AACA;AACA;AACA;;AAEA,qDAAqD;AACrD;;AAEA;;AAEA,MAAM,KAAqC,EAAE,EAE1C;;AAEH;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,QAAQ,KAAqC,EAAE,uBAM1C;;AAEL;AACA;;AAEA,qBAAqB,8BAA8B;AACnD;AACA;AACA;AACA;;AAEA;AACA;AACA,wBAAwB,KAAqC,gCAAgC,CAAkV;AAC/a;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,iBAAiB;AAC5B;AACA;AACA;AACA,WAAW,UAAU;AACrB;AACA;AACA,aAAa,iBAAiB;AAC9B;AACA;AACA;AACA;;;AAGA,SAAS,wBAAkB;AAC3B;AACA;AACA;;AAEA;AACA,oBAAoB,KAAqC,gCAAgC,CAAgN;AACzS;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,aAAa;AACxB,aAAa,UAAU;AACvB;AACA;AACA;AACA;AACA,uEAAuE,aAAa;AACpF;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,aAAa;AACxB,aAAa,UAAU;AACvB;;AAEA;AACA,6EAA6E,aAAa;AAC1F;AACA;;AAEA;AACA;AACA;;AAEA;AACA,wBAAwB,KAAqC,gCAAgC,CAA6H;AAC1N;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,aAAa,cAAa,CAAC,cAAa,GAAG,YAAY;AACv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","sources":["webpack://wls/./node_modules/@babel/runtime/regenerator/index.js","webpack://wls/./node_modules/cookie/index.js","webpack://wls/./node_modules/debug/src/browser.js","webpack://wls/./node_modules/debug/src/common.js","webpack://wls/./node_modules/exenv/index.js","webpack://wls/./node_modules/fast-deep-equal/index.js","webpack://wls/./node_modules/focus-trap-react/dist/focus-trap-react.js","webpack://wls/./node_modules/tabbable/dist/index.esm.js","webpack://wls/./node_modules/focus-trap/dist/focus-trap.esm.js","webpack://wls/./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","webpack://wls/./node_modules/invariant/browser.js","webpack://wls/./node_modules/load-script/index.js","webpack://wls/./node_modules/lz-string/libs/lz-string.js","webpack://wls/./node_modules/moment/locale/af.js","webpack://wls/./node_modules/moment/locale/ar-dz.js","webpack://wls/./node_modules/moment/locale/ar-kw.js","webpack://wls/./node_modules/moment/locale/ar-ly.js","webpack://wls/./node_modules/moment/locale/ar-ma.js","webpack://wls/./node_modules/moment/locale/ar-sa.js","webpack://wls/./node_modules/moment/locale/ar-tn.js","webpack://wls/./node_modules/moment/locale/ar.js","webpack://wls/./node_modules/moment/locale/az.js","webpack://wls/./node_modules/moment/locale/be.js","webpack://wls/./node_modules/moment/locale/bg.js","webpack://wls/./node_modules/moment/locale/bm.js","webpack://wls/./node_modules/moment/locale/bn-bd.js","webpack://wls/./node_modules/moment/locale/bn.js","webpack://wls/./node_modules/moment/locale/bo.js","webpack://wls/./node_modules/moment/locale/br.js","webpack://wls/./node_modules/moment/locale/bs.js","webpack://wls/./node_modules/moment/locale/ca.js","webpack://wls/./node_modules/moment/locale/cs.js","webpack://wls/./node_modules/moment/locale/cv.js","webpack://wls/./node_modules/moment/locale/cy.js","webpack://wls/./node_modules/moment/locale/da.js","webpack://wls/./node_modules/moment/locale/de-at.js","webpack://wls/./node_modules/moment/locale/de-ch.js","webpack://wls/./node_modules/moment/locale/de.js","webpack://wls/./node_modules/moment/locale/dv.js","webpack://wls/./node_modules/moment/locale/el.js","webpack://wls/./node_modules/moment/locale/en-au.js","webpack://wls/./node_modules/moment/locale/en-ca.js","webpack://wls/./node_modules/moment/locale/en-gb.js","webpack://wls/./node_modules/moment/locale/en-ie.js","webpack://wls/./node_modules/moment/locale/en-il.js","webpack://wls/./node_modules/moment/locale/en-in.js","webpack://wls/./node_modules/moment/locale/en-nz.js","webpack://wls/./node_modules/moment/locale/en-sg.js","webpack://wls/./node_modules/moment/locale/eo.js","webpack://wls/./node_modules/moment/locale/es-do.js","webpack://wls/./node_modules/moment/locale/es-mx.js","webpack://wls/./node_modules/moment/locale/es-us.js","webpack://wls/./node_modules/moment/locale/es.js","webpack://wls/./node_modules/moment/locale/et.js","webpack://wls/./node_modules/moment/locale/eu.js","webpack://wls/./node_modules/moment/locale/fa.js","webpack://wls/./node_modules/moment/locale/fi.js","webpack://wls/./node_modules/moment/locale/fil.js","webpack://wls/./node_modules/moment/locale/fo.js","webpack://wls/./node_modules/moment/locale/fr-ca.js","webpack://wls/./node_modules/moment/locale/fr-ch.js","webpack://wls/./node_modules/moment/locale/fr.js","webpack://wls/./node_modules/moment/locale/fy.js","webpack://wls/./node_modules/moment/locale/ga.js","webpack://wls/./node_modules/moment/locale/gd.js","webpack://wls/./node_modules/moment/locale/gl.js","webpack://wls/./node_modules/moment/locale/gom-deva.js","webpack://wls/./node_modules/moment/locale/gom-latn.js","webpack://wls/./node_modules/moment/locale/gu.js","webpack://wls/./node_modules/moment/locale/he.js","webpack://wls/./node_modules/moment/locale/hi.js","webpack://wls/./node_modules/moment/locale/hr.js","webpack://wls/./node_modules/moment/locale/hu.js","webpack://wls/./node_modules/moment/locale/hy-am.js","webpack://wls/./node_modules/moment/locale/id.js","webpack://wls/./node_modules/moment/locale/is.js","webpack://wls/./node_modules/moment/locale/it-ch.js","webpack://wls/./node_modules/moment/locale/it.js","webpack://wls/./node_modules/moment/locale/ja.js","webpack://wls/./node_modules/moment/locale/jv.js","webpack://wls/./node_modules/moment/locale/ka.js","webpack://wls/./node_modules/moment/locale/kk.js","webpack://wls/./node_modules/moment/locale/km.js","webpack://wls/./node_modules/moment/locale/kn.js","webpack://wls/./node_modules/moment/locale/ko.js","webpack://wls/./node_modules/moment/locale/ku.js","webpack://wls/./node_modules/moment/locale/ky.js","webpack://wls/./node_modules/moment/locale/lb.js","webpack://wls/./node_modules/moment/locale/lo.js","webpack://wls/./node_modules/moment/locale/lt.js","webpack://wls/./node_modules/moment/locale/lv.js","webpack://wls/./node_modules/moment/locale/me.js","webpack://wls/./node_modules/moment/locale/mi.js","webpack://wls/./node_modules/moment/locale/mk.js","webpack://wls/./node_modules/moment/locale/ml.js","webpack://wls/./node_modules/moment/locale/mn.js","webpack://wls/./node_modules/moment/locale/mr.js","webpack://wls/./node_modules/moment/locale/ms-my.js","webpack://wls/./node_modules/moment/locale/ms.js","webpack://wls/./node_modules/moment/locale/mt.js","webpack://wls/./node_modules/moment/locale/my.js","webpack://wls/./node_modules/moment/locale/nb.js","webpack://wls/./node_modules/moment/locale/ne.js","webpack://wls/./node_modules/moment/locale/nl-be.js","webpack://wls/./node_modules/moment/locale/nl.js","webpack://wls/./node_modules/moment/locale/nn.js","webpack://wls/./node_modules/moment/locale/oc-lnc.js","webpack://wls/./node_modules/moment/locale/pa-in.js","webpack://wls/./node_modules/moment/locale/pl.js","webpack://wls/./node_modules/moment/locale/pt-br.js","webpack://wls/./node_modules/moment/locale/pt.js","webpack://wls/./node_modules/moment/locale/ro.js","webpack://wls/./node_modules/moment/locale/ru.js","webpack://wls/./node_modules/moment/locale/sd.js","webpack://wls/./node_modules/moment/locale/se.js","webpack://wls/./node_modules/moment/locale/si.js","webpack://wls/./node_modules/moment/locale/sk.js","webpack://wls/./node_modules/moment/locale/sl.js","webpack://wls/./node_modules/moment/locale/sq.js","webpack://wls/./node_modules/moment/locale/sr-cyrl.js","webpack://wls/./node_modules/moment/locale/sr.js","webpack://wls/./node_modules/moment/locale/ss.js","webpack://wls/./node_modules/moment/locale/sv.js","webpack://wls/./node_modules/moment/locale/sw.js","webpack://wls/./node_modules/moment/locale/ta.js","webpack://wls/./node_modules/moment/locale/te.js","webpack://wls/./node_modules/moment/locale/tet.js","webpack://wls/./node_modules/moment/locale/tg.js","webpack://wls/./node_modules/moment/locale/th.js","webpack://wls/./node_modules/moment/locale/tk.js","webpack://wls/./node_modules/moment/locale/tl-ph.js","webpack://wls/./node_modules/moment/locale/tlh.js","webpack://wls/./node_modules/moment/locale/tr.js","webpack://wls/./node_modules/moment/locale/tzl.js","webpack://wls/./node_modules/moment/locale/tzm-latn.js","webpack://wls/./node_modules/moment/locale/tzm.js","webpack://wls/./node_modules/moment/locale/ug-cn.js","webpack://wls/./node_modules/moment/locale/uk.js","webpack://wls/./node_modules/moment/locale/ur.js","webpack://wls/./node_modules/moment/locale/uz-latn.js","webpack://wls/./node_modules/moment/locale/uz.js","webpack://wls/./node_modules/moment/locale/vi.js","webpack://wls/./node_modules/moment/locale/x-pseudo.js","webpack://wls/./node_modules/moment/locale/yo.js","webpack://wls/./node_modules/moment/locale/zh-cn.js","webpack://wls/./node_modules/moment/locale/zh-hk.js","webpack://wls/./node_modules/moment/locale/zh-mo.js","webpack://wls/./node_modules/moment/locale/zh-tw.js","webpack://wls/./node_modules/moment/locale|sync|/^/.*$","webpack://wls/./node_modules/moment/moment.js","webpack://wls/./node_modules/ms/index.js","webpack://wls/./node_modules/object-assign/index.js","webpack://wls/./node_modules/path-to-regexp/index.js","webpack://wls/./node_modules/prop-types/factoryWithThrowingShims.js","webpack://wls/./node_modules/prop-types/index.js","webpack://wls/./node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack://wls/./node_modules/react-dom/cjs/react-dom.production.min.js","webpack://wls/./node_modules/react-dom/index.js","webpack://wls/./node_modules/react-fast-compare/index.js","webpack://wls/./node_modules/react-is/cjs/react-is.production.min.js","webpack://wls/./node_modules/react-is/index.js","webpack://wls/./node_modules/react-moment/dist/index.js","webpack://wls/./node_modules/react-scrolllock/dist/ScrollLock.js","webpack://wls/./node_modules/react-scrolllock/dist/TouchScrollable.js","webpack://wls/./node_modules/react-scrolllock/dist/index.js","webpack://wls/./node_modules/react-scrolllock/dist/utils.js","webpack://wls/./node_modules/react-scrolllock/dist/withLockSheet.js","webpack://wls/./node_modules/react-scrolllock/dist/withTouchListeners.js","webpack://wls/./node_modules/react-use-webp-support-check/dist/index.js","webpack://wls/./node_modules/react/cjs/react.production.min.js","webpack://wls/./node_modules/react/index.js","webpack://wls/./node_modules/regenerator-runtime/runtime.js","webpack://wls/./node_modules/scheduler/cjs/scheduler.production.min.js","webpack://wls/./node_modules/scheduler/index.js","webpack://wls/./node_modules/shallowequal/index.js","webpack://wls/./node_modules/sister/src/sister.js","webpack://wls/./node_modules/supports-webp/dist/supports-webp.common-js.js","webpack://wls/./node_modules/youtube-player/dist/FunctionStateMap.js","webpack://wls/./node_modules/youtube-player/dist/YouTubePlayer.js","webpack://wls/./node_modules/youtube-player/dist/constants/PlayerStates.js","webpack://wls/./node_modules/youtube-player/dist/eventNames.js","webpack://wls/./node_modules/youtube-player/dist/functionNames.js","webpack://wls/./node_modules/youtube-player/dist/index.js","webpack://wls/./node_modules/youtube-player/dist/loadYouTubeIframeApi.js","webpack://wls/webpack/bootstrap","webpack://wls/webpack/runtime/compat get default export","webpack://wls/webpack/runtime/define property getters","webpack://wls/webpack/runtime/ensure chunk","webpack://wls/webpack/runtime/get javascript chunk filename","webpack://wls/webpack/runtime/get mini-css chunk filename","webpack://wls/webpack/runtime/global","webpack://wls/webpack/runtime/hasOwnProperty shorthand","webpack://wls/webpack/runtime/load script","webpack://wls/webpack/runtime/make namespace object","webpack://wls/webpack/runtime/node module decorator","webpack://wls/webpack/runtime/publicPath","webpack://wls/webpack/runtime/jsonp chunk loading","webpack://wls/./src/index.scss?cb76","webpack://wls/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/extends.js","webpack://wls/./node_modules/resolve-pathname/esm/resolve-pathname.js","webpack://wls/./node_modules/tiny-invariant/dist/tiny-invariant.esm.js","webpack://wls/./node_modules/history/esm/history.js","webpack://wls/./node_modules/mini-create-react-context/dist/esm/index.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","webpack://wls/./node_modules/react-router/esm/react-router.js","webpack://wls/./node_modules/react-router-dom/esm/react-router-dom.js","webpack://wls/./node_modules/react-redux/es/components/Context.js","webpack://wls/./node_modules/react-redux/es/utils/batch.js","webpack://wls/./node_modules/react-redux/es/utils/Subscription.js","webpack://wls/./node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js","webpack://wls/./node_modules/react-redux/es/components/Provider.js","webpack://wls/./node_modules/react-redux/es/components/connectAdvanced.js","webpack://wls/./node_modules/react-redux/es/utils/bindActionCreators.js","webpack://wls/./node_modules/react-redux/es/connect/wrapMapToProps.js","webpack://wls/./node_modules/react-redux/es/connect/mapDispatchToProps.js","webpack://wls/./node_modules/react-redux/es/connect/mapStateToProps.js","webpack://wls/./node_modules/react-redux/es/connect/mergeProps.js","webpack://wls/./node_modules/react-redux/es/connect/connect.js","webpack://wls/./node_modules/react-redux/es/hooks/useReduxContext.js","webpack://wls/./node_modules/react-redux/es/hooks/useStore.js","webpack://wls/./node_modules/react-redux/es/hooks/useDispatch.js","webpack://wls/./node_modules/react-redux/es/hooks/useSelector.js","webpack://wls/./node_modules/react-redux/es/exports.js","webpack://wls/./node_modules/react-redux/es/utils/reactBatchedUpdates.js","webpack://wls/./node_modules/react-redux/es/index.js","webpack://wls/./node_modules/react-helmet-async/lib/index.module.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack://wls/./src/app/App.module.scss?3f65","webpack://wls/./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://wls/./src/app/umbraco/helpers/addUrlParams.ts","webpack://wls/./src/helpers/isBrowserContext.ts","webpack://wls/./src/app/umbraco/helpers/UmbracoEndPoint.ts","webpack://wls/./src/app/umbraco/helpers/urlBuilder.ts","webpack://wls/./src/app/umbraco/helpers/fetchContentByRoute.ts","webpack://wls/./src/app/umbraco/redux/page.actions.ts","webpack://wls/./src/app/umbraco/helpers/fetchSiteSettings.ts","webpack://wls/./src/app/umbraco/redux/settings.actions.ts","webpack://wls/./src/app/umbraco/helpers/fetchDictionary.ts","webpack://wls/./src/components/Dictionary/redux/dictionary.actions.ts","webpack://wls/./src/helpers/combine-classes.ts","webpack://wls/./src/layout/Footer/Footer.module.scss?c57f","webpack://wls/./src/components/IconViewer/IconViewer.module.scss?f14a","webpack://wls/./src/components/IconViewer/IconViewer.tsx","webpack://wls/./src/helpers/getRelativeUrl.ts","webpack://wls/./src/components/Anchor/Anchor.tsx","webpack://wls/./src/layout/Footer/Footer.tsx","webpack://wls/./src/layout/Header/Header.module.scss?3add","webpack://wls/./src/layout/redux/overlay.actions.ts","webpack://wls/./node_modules/tslib/tslib.es6.js","webpack://wls/./node_modules/framer-motion/dist/es/motion/features/definitions.mjs","webpack://wls/./node_modules/framer-motion/dist/es/context/LazyContext.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/features/use-features.mjs","webpack://wls/./node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs","webpack://wls/./node_modules/framer-motion/dist/es/context/MotionContext/index.mjs","webpack://wls/./node_modules/framer-motion/dist/es/context/PresenceContext.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/is-browser.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/is-ref-object.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/utils/variants.mjs","webpack://wls/./node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs","webpack://wls/./node_modules/framer-motion/dist/es/context/MotionContext/create.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/use-constant.mjs","webpack://wls/./node_modules/framesync/dist/es/on-next-frame.mjs","webpack://wls/./node_modules/framesync/dist/es/create-render-step.mjs","webpack://wls/./node_modules/framesync/dist/es/index.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/mix.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/velocity-per-second.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/array.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/subscription-manager.mjs","webpack://wls/./node_modules/framer-motion/dist/es/value/index.mjs","webpack://wls/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs","webpack://wls/./node_modules/hey-listen/dist/hey-listen.es.js","webpack://wls/./node_modules/popmotion/dist/es/utils/clamp.mjs","webpack://wls/./node_modules/popmotion/dist/es/animations/utils/find-spring.mjs","webpack://wls/./node_modules/popmotion/dist/es/animations/generators/spring.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/progress.mjs","webpack://wls/./node_modules/style-value-types/dist/es/utils.mjs","webpack://wls/./node_modules/style-value-types/dist/es/numbers/index.mjs","webpack://wls/./node_modules/style-value-types/dist/es/color/utils.mjs","webpack://wls/./node_modules/style-value-types/dist/es/color/rgba.mjs","webpack://wls/./node_modules/style-value-types/dist/es/color/hex.mjs","webpack://wls/./node_modules/style-value-types/dist/es/numbers/units.mjs","webpack://wls/./node_modules/style-value-types/dist/es/color/hsla.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/hsla-to-rgba.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/mix-color.mjs","webpack://wls/./node_modules/style-value-types/dist/es/color/index.mjs","webpack://wls/./node_modules/style-value-types/dist/es/complex/index.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/inc.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/pipe.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/mix-complex.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/interpolate.mjs","webpack://wls/./node_modules/popmotion/dist/es/easing/utils.mjs","webpack://wls/./node_modules/popmotion/dist/es/easing/index.mjs","webpack://wls/./node_modules/popmotion/dist/es/animations/generators/keyframes.mjs","webpack://wls/./node_modules/popmotion/dist/es/animations/generators/decay.mjs","webpack://wls/./node_modules/popmotion/dist/es/animations/utils/detect-animation-from-options.mjs","webpack://wls/./node_modules/popmotion/dist/es/animations/utils/elapsed.mjs","webpack://wls/./node_modules/popmotion/dist/es/animations/index.mjs","webpack://wls/./node_modules/popmotion/dist/es/animations/inertia.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/time-conversion.mjs","webpack://wls/./node_modules/popmotion/dist/es/easing/cubic-bezier.mjs","webpack://wls/./node_modules/framer-motion/dist/es/animation/utils/easing.mjs","webpack://wls/./node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs","webpack://wls/./node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs","webpack://wls/./node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs","webpack://wls/./node_modules/style-value-types/dist/es/complex/filter.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/use-instant-transition-state.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/resolve-value.mjs","webpack://wls/./node_modules/framer-motion/dist/es/animation/utils/transitions.mjs","webpack://wls/./node_modules/framer-motion/dist/es/animation/animate.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/geometry/copy.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/is-point.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/is-point-3d.mjs","webpack://wls/./node_modules/popmotion/dist/es/utils/distance.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/geometry/models.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/geometry/utils.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/shared/stack.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/styles/transform.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs","webpack://wls/./node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/node/id.mjs","webpack://wls/./node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs","webpack://wls/./node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/features/use-projection.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/utils/VisualElementHandler.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/index.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/motion-proxy.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/html/use-props.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/svg/utils/path.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/svg/use-props.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/use-render.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/html/utils/render.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/svg/utils/render.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs","webpack://wls/./node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/svg/config-motion.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/html/config-motion.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/utils/create-config.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/utils/types.mjs","webpack://wls/./node_modules/framer-motion/dist/es/events/use-dom-event.mjs","webpack://wls/./node_modules/framer-motion/dist/es/gestures/use-focus-gesture.mjs","webpack://wls/./node_modules/framer-motion/dist/es/gestures/utils/event-type.mjs","webpack://wls/./node_modules/framer-motion/dist/es/events/event-info.mjs","webpack://wls/./node_modules/framer-motion/dist/es/events/utils.mjs","webpack://wls/./node_modules/framer-motion/dist/es/events/use-pointer-event.mjs","webpack://wls/./node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs","webpack://wls/./node_modules/framer-motion/dist/es/gestures/use-hover-gesture.mjs","webpack://wls/./node_modules/framer-motion/dist/es/gestures/utils/is-node-or-child.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs","webpack://wls/./node_modules/framer-motion/dist/es/gestures/use-tap-gesture.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/features/viewport/use-viewport.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/utils/make-renderless-component.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/features/gestures.mjs","webpack://wls/./node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/shallow-compare.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs","webpack://wls/./node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/utils/setters.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/utils/animation.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/utils/animation-state.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/features/animations.mjs","webpack://wls/./node_modules/framer-motion/dist/es/gestures/PanSession.mjs","webpack://wls/./node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/utils/measure.mjs","webpack://wls/./node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs","webpack://wls/./node_modules/framer-motion/dist/es/gestures/drag/use-drag.mjs","webpack://wls/./node_modules/framer-motion/dist/es/gestures/use-pan-gesture.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/features/drag.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/utils/lifecycles.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/utils/motion-values.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/index.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/utils/parse-dom-variant.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/html/visual-element.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/svg/visual-element.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs","webpack://wls/./node_modules/framer-motion/dist/es/motion/features/layout/index.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs","webpack://wls/./node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs","webpack://wls/./node_modules/framer-motion/dist/es/render/dom/motion.mjs","webpack://wls/./src/layout/Header/components/Logo/Logo.module.scss?0c10","webpack://wls/./src/layout/Header/components/Logo/Logo.tsx","webpack://wls/./node_modules/framer-motion/dist/es/utils/use-force-update.mjs","webpack://wls/./node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs","webpack://wls/./node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs","webpack://wls/./src/layout/Header/components/BreadcrumbLink/BreadcrumbLink.module.scss?101d","webpack://wls/./src/layout/Header/components/BreadcrumbLink/BreadcrumbLink.tsx","webpack://wls/./src/layout/Header/hooks/useIsAppBarVisible.ts","webpack://wls/./src/hooks/useWindowDimensions.ts","webpack://wls/./src/layout/Header/Header.tsx","webpack://wls/./src/layout/Header/components/MobileMenu/MobileMenu.module.scss?4fd5","webpack://wls/./src/components/Dictionary/Dictionary.tsx","webpack://wls/./src/layout/Header/components/MobileMenu/MobileMenu.tsx","webpack://wls/./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://wls/./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://wls/./src/blocks/components/Accordions/Accordions.module.scss?58ae","webpack://wls/./node_modules/framer-motion/dist/es/animation/animation-controls.mjs","webpack://wls/./node_modules/framer-motion/dist/es/animation/use-animation.mjs","webpack://wls/./node_modules/react-intersection-observer/react-intersection-observer.m.js","webpack://wls/./src/blocks/components/Accordions/components/Accordion/Accordion.module.scss?9173","webpack://wls/./src/blocks/helpers/getProcessedRichtext.ts","webpack://wls/./src/blocks/helpers/handleOpenModal.ts","webpack://wls/./src/components/Button/Button.module.scss?e9cb","webpack://wls/./src/components/Button/Button.tsx","webpack://wls/./src/blocks/components/Accordions/components/Accordion/Accordion.tsx","webpack://wls/./src/components/BubbleBackground/BubbleBackground.module.scss?8b2a","webpack://wls/./src/components/BubbleBackground/BubbleBackground.tsx","webpack://wls/./src/components/DynamicHeading/DynamicHeading.module.scss?edae","webpack://wls/./src/components/DynamicHeading/DynamicHeading.tsx","webpack://wls/./src/blocks/helpers/getWrapperClasses.ts","webpack://wls/./src/hooks/useAnchorIdentifier.ts","webpack://wls/./src/blocks/components/Accordions/Accordions.tsx","webpack://wls/./src/blocks/components/Accordions/index.ts","webpack://wls/./src/blocks/components/Banner/Banner.module.scss?48b2","webpack://wls/./src/app/media/helpers/getImageAspectRatio.ts","webpack://wls/./src/app/media/helpers/getImageCrop.ts","webpack://wls/./src/components/ImageViewer/ImageViewer.module.scss?1dc8","webpack://wls/./src/components/ImageViewer/image-loading.enum.ts","webpack://wls/./src/components/ImageViewer/helpers/preload-image.ts","webpack://wls/./src/app/media/helpers/getClosestWidthTier.ts","webpack://wls/./src/app/media/helpers/setImageOptions.ts","webpack://wls/./src/components/ImageViewer/ImageViewer.tsx","webpack://wls/./src/components/Paragraph/Paragraph.module.scss?326f","webpack://wls/./src/components/Paragraph/Paragraph.tsx","webpack://wls/./src/blocks/components/Banner/Banner.tsx","webpack://wls/./src/blocks/components/Banner/index.ts","webpack://wls/./src/blocks/components/Cards/Cards.module.scss?88c6","webpack://wls/./src/blocks/components/Cards/components/Card/Card.module.scss?01be","webpack://wls/./src/blocks/components/Cards/components/Card/helpers/getSpecialLink.ts","webpack://wls/./src/components/Link/Link.tsx","webpack://wls/./src/blocks/components/Cards/components/Card/Card.tsx","webpack://wls/./src/blocks/components/Cards/components/Carousel/Carousel.module.scss?d0cb","webpack://wls/./src/blocks/components/Cards/components/Carousel/helpers/getInViewChildren.ts","webpack://wls/./src/hooks/useDebounce.ts","webpack://wls/./src/blocks/components/Cards/components/Carousel/Carousel.tsx","webpack://wls/./src/blocks/components/Cards/Cards.tsx","webpack://wls/./src/blocks/components/Cards/index.ts","webpack://wls/./src/blocks/components/DownloadLinks/DownloadLinks.module.scss?3e02","webpack://wls/./src/blocks/components/DownloadLinks/components/DownloadLink/DownloadLink.module.scss?b209","webpack://wls/./src/blocks/components/DownloadLinks/components/DownloadLink/DownloadLink.tsx","webpack://wls/./src/blocks/components/DownloadLinks/DownloadLinks.tsx","webpack://wls/./src/blocks/components/DownloadLinks/index.ts","webpack://wls/./src/blocks/components/Embed/Embed.module.scss?08c1","webpack://wls/./src/blocks/components/Embed/Embed.tsx","webpack://wls/./src/blocks/components/Embed/index.ts","webpack://wls/./src/blocks/components/Employees/Employees.module.scss?7918","webpack://wls/./src/blocks/components/Employees/components/Employee/Employee.module.scss?db5e","webpack://wls/./src/blocks/components/Employees/components/Employee/Employee.tsx","webpack://wls/./src/app/umbraco/helpers/fetchContentByType.ts","webpack://wls/./src/blocks/components/Employees/hooks/fetchEmployees.ts","webpack://wls/./src/app/umbraco/helpers/fetchTagsByRoute.ts","webpack://wls/./src/blocks/hooks/useFilter.ts","webpack://wls/./src/blocks/components/Employees/Employees.tsx","webpack://wls/./src/blocks/components/Employees/index.ts","webpack://wls/./src/blocks/components/Events/Events.module.scss?a0d0","webpack://wls/./src/blocks/components/Events/hooks/fetchEvents.ts","webpack://wls/./src/blocks/components/Events/components/Event/Event.module.scss?7d66","webpack://wls/./src/blocks/components/Events/components/Event/Event.tsx","webpack://wls/./src/blocks/components/Events/Events.tsx","webpack://wls/./src/blocks/components/Events/index.ts","webpack://wls/./src/blocks/components/Form/Form.module.scss?a026","webpack://wls/./src/blocks/components/Form/components/Alerts/Alerts.module.scss?8899","webpack://wls/./src/blocks/components/Form/components/Alerts/Alerts.tsx","webpack://wls/./src/blocks/components/Form/components/InputField/InputField.module.scss?a780","webpack://wls/./src/blocks/components/Form/components/InputField/InputField.tsx","webpack://wls/./src/blocks/components/Form/components/TextareaField/TextareaField.module.scss?d34e","webpack://wls/./src/blocks/components/Form/components/TextareaField/TextareaField.tsx","webpack://wls/./src/blocks/components/Form/components/RadioButtons/RadioButtons.module.scss?8783","webpack://wls/./src/blocks/components/Form/components/RadioButtons/RadioButtons.tsx","webpack://wls/./src/blocks/components/Form/components/Checkbox/Checkbox.module.scss?0da4","webpack://wls/./src/blocks/components/Form/components/Checkbox/Checkbox.tsx","webpack://wls/./src/blocks/components/Form/components/Dropdown/Dropdown.module.scss?1265","webpack://wls/./src/blocks/components/Form/components/Dropdown/Dropdown.tsx","webpack://wls/./src/blocks/components/Form/components/FormFields/FormFields.tsx","webpack://wls/./src/blocks/components/Form/Form.tsx","webpack://wls/./src/blocks/components/Form/index.ts","webpack://wls/./src/blocks/components/Image/Image.module.scss?24a4","webpack://wls/./src/blocks/components/Image/Image.tsx","webpack://wls/./src/blocks/components/Image/index.ts","webpack://wls/./src/blocks/components/Logos/Logos.module.scss?606c","webpack://wls/./src/blocks/components/Logos/components/Logo/Logo.module.scss?dd85","webpack://wls/./src/blocks/components/Logos/components/Logo/Logo.tsx","webpack://wls/./src/blocks/components/Logos/Logos.tsx","webpack://wls/./src/blocks/components/Logos/index.ts","webpack://wls/./src/blocks/components/LogosSponsors/LogosSponsors.module.scss?56e8","webpack://wls/./src/blocks/components/LogosSponsors/LogosSponsors.tsx","webpack://wls/./src/blocks/components/LogosSponsors/index.ts","webpack://wls/./src/blocks/components/News/News.module.scss?8f22","webpack://wls/./src/blocks/components/News/hooks/fetchNews.ts","webpack://wls/./src/blocks/components/News/components/NewsCard/NewsCard.module.scss?05df","webpack://wls/./src/blocks/components/News/components/NewsCard/NewsCard.tsx","webpack://wls/./src/blocks/components/News/News.tsx","webpack://wls/./src/blocks/components/News/index.ts","webpack://wls/./src/blocks/components/Quote/Quote.module.scss?2a6b","webpack://wls/./src/blocks/components/Quote/Quote.tsx","webpack://wls/./src/blocks/components/Quote/index.ts","webpack://wls/./src/blocks/components/QuoteSlideshow/QuoteSlideshow.module.scss?8125","webpack://wls/./src/blocks/components/QuoteSlideshow/components/Quote/Quote.module.scss?97d0","webpack://wls/./src/blocks/components/QuoteSlideshow/hooks/useRect.ts","webpack://wls/./src/blocks/components/QuoteSlideshow/components/Quote/Quote.tsx","webpack://wls/./src/blocks/components/QuoteSlideshow/QuoteSlideshow.tsx","webpack://wls/./src/blocks/components/QuoteSlideshow/index.ts","webpack://wls/./src/blocks/components/Spots/Spots.module.scss?7032","webpack://wls/./src/blocks/components/Spots/components/Spot/Spot.module.scss?54e6","webpack://wls/./src/blocks/components/Spots/components/Spot/helpers/getSpecialLink.ts","webpack://wls/./src/blocks/components/Spots/components/Spot/Spot.tsx","webpack://wls/./src/blocks/components/Spots/Spots.tsx","webpack://wls/./src/blocks/components/Spots/index.ts","webpack://wls/./src/blocks/components/Text/Text.module.scss?a9cb","webpack://wls/./src/blocks/components/Text/Text.tsx","webpack://wls/./src/blocks/components/Text/index.ts","webpack://wls/./src/blocks/components/TextImage/TextImage.module.scss?9797","webpack://wls/./src/blocks/components/TextImage/TextImage.tsx","webpack://wls/./src/blocks/components/TextImage/index.ts","webpack://wls/./src/blocks/components/TextVideo/TextVideo.module.scss?8451","webpack://wls/./src/app/media/helpers/getVideoAspectRatio.ts","webpack://wls/./src/components/VideoEmbed/VideoEmbed.module.scss?56f5","webpack://wls/./src/blocks/helpers/parseVideoUrl.ts","webpack://wls/./node_modules/react-youtube/dist/index.esm.js","webpack://wls/./src/components/VideoEmbed/VideoEmbed.tsx","webpack://wls/./src/components/VideoViewer/VideoViewer.module.scss?7145","webpack://wls/./src/app/media/helpers/setFileOptions.ts","webpack://wls/./src/components/VideoViewer/VideoViewer.tsx","webpack://wls/./src/blocks/components/TextVideo/TextVideo.tsx","webpack://wls/./src/blocks/components/TextVideo/index.ts","webpack://wls/./src/blocks/components/Video/Video.module.scss?af11","webpack://wls/./src/blocks/components/Video/Video.tsx","webpack://wls/./src/blocks/components/Video/index.ts","webpack://wls/./src/pages/ContentPage/ContentPage.block.tsx","webpack://wls/./src/pages/ContentPage/ContentPage.tsx","webpack://wls/./src/pages/ErrorPage/ErrorPage.module.scss?2e26","webpack://wls/./src/pages/ErrorPage/ErrorPage.tsx","webpack://wls/./src/pages/EventPage/EventPage.tsx","webpack://wls/./src/app/umbraco/helpers/getPageMeta.ts","webpack://wls/./src/pages/HomePage/HomePage.tsx","webpack://wls/./src/pages/NewsPage/NewsPage.tsx","webpack://wls/./src/pages/NotFoundPage/NotFoundPage.tsx","webpack://wls/./src/pages/OverviewPage/OverviewPage.module.scss?f038","webpack://wls/./src/pages/OverviewPage/OverviewPage.tsx","webpack://wls/./src/pages/SearchPage/SearchPage.module.scss?e6bf","webpack://wls/./src/app/umbraco/helpers/fetchSearchItemsByRoute.ts","webpack://wls/./src/pages/SearchPage/helpers/fetchSearchResults.ts","webpack://wls/./src/pages/SearchPage/components/ResultCard/ResultCard.module.scss?659d","webpack://wls/./src/pages/SearchPage/components/ResultCard/ResultCard.tsx","webpack://wls/./src/pages/SearchPage/hooks/useDebounce.ts","webpack://wls/./src/pages/SearchPage/SearchPage.tsx","webpack://wls/./src/app/umbraco/pages/UmbracoPage.tsx","webpack://wls/./src/app/hooks/useAppLoading.ts","webpack://wls/./node_modules/universal-cookie/es6/utils.js","webpack://wls/./node_modules/universal-cookie/es6/Cookies.js","webpack://wls/./node_modules/universal-cookie/es6/index.js","webpack://wls/./node_modules/react-cookie/es6/Cookies.js","webpack://wls/./node_modules/react-cookie/es6/CookiesContext.js","webpack://wls/./node_modules/react-cookie/es6/utils.js","webpack://wls/./node_modules/react-cookie/es6/useCookies.js","webpack://wls/./src/app/hooks/useClientContext.ts","webpack://wls/./node_modules/@elgorditosalsero/react-gtm-hook/dist/react-gtm-hook.esm.js","webpack://wls/./src/app/hooks/useTagManager.ts","webpack://wls/./src/layout/MegaDropdown/MegaDropdown.module.scss?b800","webpack://wls/./src/layout/MegaDropdown/Animations/LinkSlideLeft/LinkSlideLeft.module.scss?70e9","webpack://wls/./src/layout/MegaDropdown/Animations/LinkSlideLeft/LinkSlideLeft.tsx","webpack://wls/./src/layout/helpers/megaDropdownHandler.ts","webpack://wls/./src/layout/MegaDropdown/MegaDropdown.tsx","webpack://wls/./src/components/Modal/Modal.block.tsx","webpack://wls/./src/components/Modal/Modal.module.scss?1787","webpack://wls/./src/components/Modal/Modal.tsx","webpack://wls/./src/app/App.tsx","webpack://wls/./node_modules/@babel/runtime/helpers/esm/objectSpread2.js","webpack://wls/./node_modules/redux/es/redux.js","webpack://wls/./node_modules/immer/dist/immer.esm.mjs","webpack://wls/./src/app/umbraco/redux/page.reducer.ts","webpack://wls/./src/app/umbraco/redux/settings.reducer.ts","webpack://wls/./src/layout/redux/overlay.reducer.ts","webpack://wls/./src/components/Dictionary/redux/dictionary.reducer.ts","webpack://wls/./node_modules/connected-react-router/esm/actions.js","webpack://wls/./node_modules/connected-react-router/esm/reducer.js","webpack://wls/./node_modules/connected-react-router/esm/selectors.js","webpack://wls/./node_modules/connected-react-router/esm/structure/plain/getIn.js","webpack://wls/./node_modules/connected-react-router/esm/structure/plain/index.js","webpack://wls/./node_modules/connected-react-router/esm/index.js","webpack://wls/./src/app/redux.store.ts","webpack://wls/./node_modules/connected-react-router/esm/middleware.js","webpack://wls/./src/helpers/getEnvironment.ts","webpack://wls/./src/helpers/isDevelopment.ts","webpack://wls/./node_modules/redux-thunk/es/index.js","webpack://wls/./src/app/configure.store.ts","webpack://wls/./src/Index.client.tsx"],"sourcesContent":["module.exports = require(\"regenerator-runtime\");\n","/*!\n * cookie\n * Copyright(c) 2012-2014 Roman Shtylman\n * Copyright(c) 2015 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module exports.\n * @public\n */\n\nexports.parse = parse;\nexports.serialize = serialize;\n\n/**\n * Module variables.\n * @private\n */\n\nvar decode = decodeURIComponent;\nvar encode = encodeURIComponent;\nvar pairSplitRegExp = /; */;\n\n/**\n * RegExp to match field-content in RFC 7230 sec 3.2\n *\n * field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]\n * field-vchar = VCHAR / obs-text\n * obs-text = %x80-FF\n */\n\nvar fieldContentRegExp = /^[\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+$/;\n\n/**\n * Parse a cookie header.\n *\n * Parse the given cookie header string into an object\n * The object has the various cookies as keys(names) => values\n *\n * @param {string} str\n * @param {object} [options]\n * @return {object}\n * @public\n */\n\nfunction parse(str, options) {\n if (typeof str !== 'string') {\n throw new TypeError('argument str must be a string');\n }\n\n var obj = {}\n var opt = options || {};\n var pairs = str.split(pairSplitRegExp);\n var dec = opt.decode || decode;\n\n for (var i = 0; i < pairs.length; i++) {\n var pair = pairs[i];\n var eq_idx = pair.indexOf('=');\n\n // skip things that don't look like key=value\n if (eq_idx < 0) {\n continue;\n }\n\n var key = pair.substr(0, eq_idx).trim()\n var val = pair.substr(++eq_idx, pair.length).trim();\n\n // quoted values\n if ('\"' == val[0]) {\n val = val.slice(1, -1);\n }\n\n // only assign once\n if (undefined == obj[key]) {\n obj[key] = tryDecode(val, dec);\n }\n }\n\n return obj;\n}\n\n/**\n * Serialize data into a cookie header.\n *\n * Serialize the a name value pair into a cookie string suitable for\n * http headers. An optional options object specified cookie parameters.\n *\n * serialize('foo', 'bar', { httpOnly: true })\n * => \"foo=bar; httpOnly\"\n *\n * @param {string} name\n * @param {string} val\n * @param {object} [options]\n * @return {string}\n * @public\n */\n\nfunction serialize(name, val, options) {\n var opt = options || {};\n var enc = opt.encode || encode;\n\n if (typeof enc !== 'function') {\n throw new TypeError('option encode is invalid');\n }\n\n if (!fieldContentRegExp.test(name)) {\n throw new TypeError('argument name is invalid');\n }\n\n var value = enc(val);\n\n if (value && !fieldContentRegExp.test(value)) {\n throw new TypeError('argument val is invalid');\n }\n\n var str = name + '=' + value;\n\n if (null != opt.maxAge) {\n var maxAge = opt.maxAge - 0;\n\n if (isNaN(maxAge) || !isFinite(maxAge)) {\n throw new TypeError('option maxAge is invalid')\n }\n\n str += '; Max-Age=' + Math.floor(maxAge);\n }\n\n if (opt.domain) {\n if (!fieldContentRegExp.test(opt.domain)) {\n throw new TypeError('option domain is invalid');\n }\n\n str += '; Domain=' + opt.domain;\n }\n\n if (opt.path) {\n if (!fieldContentRegExp.test(opt.path)) {\n throw new TypeError('option path is invalid');\n }\n\n str += '; Path=' + opt.path;\n }\n\n if (opt.expires) {\n if (typeof opt.expires.toUTCString !== 'function') {\n throw new TypeError('option expires is invalid');\n }\n\n str += '; Expires=' + opt.expires.toUTCString();\n }\n\n if (opt.httpOnly) {\n str += '; HttpOnly';\n }\n\n if (opt.secure) {\n str += '; Secure';\n }\n\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === 'string'\n ? opt.sameSite.toLowerCase() : opt.sameSite;\n\n switch (sameSite) {\n case true:\n str += '; SameSite=Strict';\n break;\n case 'lax':\n str += '; SameSite=Lax';\n break;\n case 'strict':\n str += '; SameSite=Strict';\n break;\n case 'none':\n str += '; SameSite=None';\n break;\n default:\n throw new TypeError('option sameSite is invalid');\n }\n }\n\n return str;\n}\n\n/**\n * Try decoding a string using a decoding function.\n *\n * @param {string} str\n * @param {function} decode\n * @private\n */\n\nfunction tryDecode(str, decode) {\n try {\n return decode(str);\n } catch (e) {\n return str;\n }\n}\n","/* eslint-env browser */\n\n/**\n * This is the web browser implementation of `debug()`.\n */\n\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.storage = localstorage();\nexports.destroy = (() => {\n\tlet warned = false;\n\n\treturn () => {\n\t\tif (!warned) {\n\t\t\twarned = true;\n\t\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t\t}\n\t};\n})();\n\n/**\n * Colors.\n */\n\nexports.colors = [\n\t'#0000CC',\n\t'#0000FF',\n\t'#0033CC',\n\t'#0033FF',\n\t'#0066CC',\n\t'#0066FF',\n\t'#0099CC',\n\t'#0099FF',\n\t'#00CC00',\n\t'#00CC33',\n\t'#00CC66',\n\t'#00CC99',\n\t'#00CCCC',\n\t'#00CCFF',\n\t'#3300CC',\n\t'#3300FF',\n\t'#3333CC',\n\t'#3333FF',\n\t'#3366CC',\n\t'#3366FF',\n\t'#3399CC',\n\t'#3399FF',\n\t'#33CC00',\n\t'#33CC33',\n\t'#33CC66',\n\t'#33CC99',\n\t'#33CCCC',\n\t'#33CCFF',\n\t'#6600CC',\n\t'#6600FF',\n\t'#6633CC',\n\t'#6633FF',\n\t'#66CC00',\n\t'#66CC33',\n\t'#9900CC',\n\t'#9900FF',\n\t'#9933CC',\n\t'#9933FF',\n\t'#99CC00',\n\t'#99CC33',\n\t'#CC0000',\n\t'#CC0033',\n\t'#CC0066',\n\t'#CC0099',\n\t'#CC00CC',\n\t'#CC00FF',\n\t'#CC3300',\n\t'#CC3333',\n\t'#CC3366',\n\t'#CC3399',\n\t'#CC33CC',\n\t'#CC33FF',\n\t'#CC6600',\n\t'#CC6633',\n\t'#CC9900',\n\t'#CC9933',\n\t'#CCCC00',\n\t'#CCCC33',\n\t'#FF0000',\n\t'#FF0033',\n\t'#FF0066',\n\t'#FF0099',\n\t'#FF00CC',\n\t'#FF00FF',\n\t'#FF3300',\n\t'#FF3333',\n\t'#FF3366',\n\t'#FF3399',\n\t'#FF33CC',\n\t'#FF33FF',\n\t'#FF6600',\n\t'#FF6633',\n\t'#FF9900',\n\t'#FF9933',\n\t'#FFCC00',\n\t'#FFCC33'\n];\n\n/**\n * Currently only WebKit-based Web Inspectors, Firefox >= v31,\n * and the Firebug extension (any Firefox version) are known\n * to support \"%c\" CSS customizations.\n *\n * TODO: add a `localStorage` variable to explicitly enable/disable colors\n */\n\n// eslint-disable-next-line complexity\nfunction useColors() {\n\t// NB: In an Electron preload script, document will be defined but not fully\n\t// initialized. Since we know we're in Chrome, we'll just detect this case\n\t// explicitly\n\tif (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {\n\t\treturn true;\n\t}\n\n\t// Internet Explorer and Edge do not support colors.\n\tif (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)) {\n\t\treturn false;\n\t}\n\n\t// Is webkit? http://stackoverflow.com/a/16459606/376773\n\t// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n\treturn (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||\n\t\t// Is firebug? http://stackoverflow.com/a/398120/376773\n\t\t(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||\n\t\t// Is firefox >= v31?\n\t\t// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||\n\t\t// Double check webkit in userAgent just in case we are in a worker\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/));\n}\n\n/**\n * Colorize log arguments if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\targs[0] = (this.useColors ? '%c' : '') +\n\t\tthis.namespace +\n\t\t(this.useColors ? ' %c' : ' ') +\n\t\targs[0] +\n\t\t(this.useColors ? '%c ' : ' ') +\n\t\t'+' + module.exports.humanize(this.diff);\n\n\tif (!this.useColors) {\n\t\treturn;\n\t}\n\n\tconst c = 'color: ' + this.color;\n\targs.splice(1, 0, c, 'color: inherit');\n\n\t// The final \"%c\" is somewhat tricky, because there could be other\n\t// arguments passed either before or after the %c, so we need to\n\t// figure out the correct index to insert the CSS into\n\tlet index = 0;\n\tlet lastC = 0;\n\targs[0].replace(/%[a-zA-Z%]/g, match => {\n\t\tif (match === '%%') {\n\t\t\treturn;\n\t\t}\n\t\tindex++;\n\t\tif (match === '%c') {\n\t\t\t// We only are interested in the *last* %c\n\t\t\t// (the user may have provided their own)\n\t\t\tlastC = index;\n\t\t}\n\t});\n\n\targs.splice(lastC, 0, c);\n}\n\n/**\n * Invokes `console.debug()` when available.\n * No-op when `console.debug` is not a \"function\".\n * If `console.debug` is not available, falls back\n * to `console.log`.\n *\n * @api public\n */\nexports.log = console.debug || console.log || (() => {});\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\ttry {\n\t\tif (namespaces) {\n\t\t\texports.storage.setItem('debug', namespaces);\n\t\t} else {\n\t\t\texports.storage.removeItem('debug');\n\t\t}\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\nfunction load() {\n\tlet r;\n\ttry {\n\t\tr = exports.storage.getItem('debug');\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n\n\t// If debug isn't set in LS, and we're in Electron, try to load $DEBUG\n\tif (!r && typeof process !== 'undefined' && 'env' in process) {\n\t\tr = process.env.DEBUG;\n\t}\n\n\treturn r;\n}\n\n/**\n * Localstorage attempts to return the localstorage.\n *\n * This is necessary because safari throws\n * when a user disables cookies/localstorage\n * and you attempt to access it.\n *\n * @return {LocalStorage}\n * @api private\n */\n\nfunction localstorage() {\n\ttry {\n\t\t// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context\n\t\t// The Browser also has localStorage in the global context.\n\t\treturn localStorage;\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.\n */\n\nformatters.j = function (v) {\n\ttry {\n\t\treturn JSON.stringify(v);\n\t} catch (error) {\n\t\treturn '[UnexpectedJSONParseError]: ' + error.message;\n\t}\n};\n","\n/**\n * This is the common logic for both the Node.js and web browser\n * implementations of `debug()`.\n */\n\nfunction setup(env) {\n\tcreateDebug.debug = createDebug;\n\tcreateDebug.default = createDebug;\n\tcreateDebug.coerce = coerce;\n\tcreateDebug.disable = disable;\n\tcreateDebug.enable = enable;\n\tcreateDebug.enabled = enabled;\n\tcreateDebug.humanize = require('ms');\n\tcreateDebug.destroy = destroy;\n\n\tObject.keys(env).forEach(key => {\n\t\tcreateDebug[key] = env[key];\n\t});\n\n\t/**\n\t* The currently active debug mode names, and names to skip.\n\t*/\n\n\tcreateDebug.names = [];\n\tcreateDebug.skips = [];\n\n\t/**\n\t* Map of special \"%n\" handling functions, for the debug \"format\" argument.\n\t*\n\t* Valid key names are a single, lower or upper-case letter, i.e. \"n\" and \"N\".\n\t*/\n\tcreateDebug.formatters = {};\n\n\t/**\n\t* Selects a color for a debug namespace\n\t* @param {String} namespace The namespace string for the debug instance to be colored\n\t* @return {Number|String} An ANSI color code for the given namespace\n\t* @api private\n\t*/\n\tfunction selectColor(namespace) {\n\t\tlet hash = 0;\n\n\t\tfor (let i = 0; i < namespace.length; i++) {\n\t\t\thash = ((hash << 5) - hash) + namespace.charCodeAt(i);\n\t\t\thash |= 0; // Convert to 32bit integer\n\t\t}\n\n\t\treturn createDebug.colors[Math.abs(hash) % createDebug.colors.length];\n\t}\n\tcreateDebug.selectColor = selectColor;\n\n\t/**\n\t* Create a debugger with the given `namespace`.\n\t*\n\t* @param {String} namespace\n\t* @return {Function}\n\t* @api public\n\t*/\n\tfunction createDebug(namespace) {\n\t\tlet prevTime;\n\t\tlet enableOverride = null;\n\t\tlet namespacesCache;\n\t\tlet enabledCache;\n\n\t\tfunction debug(...args) {\n\t\t\t// Disabled?\n\t\t\tif (!debug.enabled) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst self = debug;\n\n\t\t\t// Set `diff` timestamp\n\t\t\tconst curr = Number(new Date());\n\t\t\tconst ms = curr - (prevTime || curr);\n\t\t\tself.diff = ms;\n\t\t\tself.prev = prevTime;\n\t\t\tself.curr = curr;\n\t\t\tprevTime = curr;\n\n\t\t\targs[0] = createDebug.coerce(args[0]);\n\n\t\t\tif (typeof args[0] !== 'string') {\n\t\t\t\t// Anything else let's inspect with %O\n\t\t\t\targs.unshift('%O');\n\t\t\t}\n\n\t\t\t// Apply any `formatters` transformations\n\t\t\tlet index = 0;\n\t\t\targs[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {\n\t\t\t\t// If we encounter an escaped % then don't increase the array index\n\t\t\t\tif (match === '%%') {\n\t\t\t\t\treturn '%';\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t\tconst formatter = createDebug.formatters[format];\n\t\t\t\tif (typeof formatter === 'function') {\n\t\t\t\t\tconst val = args[index];\n\t\t\t\t\tmatch = formatter.call(self, val);\n\n\t\t\t\t\t// Now we need to remove `args[index]` since it's inlined in the `format`\n\t\t\t\t\targs.splice(index, 1);\n\t\t\t\t\tindex--;\n\t\t\t\t}\n\t\t\t\treturn match;\n\t\t\t});\n\n\t\t\t// Apply env-specific formatting (colors, etc.)\n\t\t\tcreateDebug.formatArgs.call(self, args);\n\n\t\t\tconst logFn = self.log || createDebug.log;\n\t\t\tlogFn.apply(self, args);\n\t\t}\n\n\t\tdebug.namespace = namespace;\n\t\tdebug.useColors = createDebug.useColors();\n\t\tdebug.color = createDebug.selectColor(namespace);\n\t\tdebug.extend = extend;\n\t\tdebug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.\n\n\t\tObject.defineProperty(debug, 'enabled', {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: false,\n\t\t\tget: () => {\n\t\t\t\tif (enableOverride !== null) {\n\t\t\t\t\treturn enableOverride;\n\t\t\t\t}\n\t\t\t\tif (namespacesCache !== createDebug.namespaces) {\n\t\t\t\t\tnamespacesCache = createDebug.namespaces;\n\t\t\t\t\tenabledCache = createDebug.enabled(namespace);\n\t\t\t\t}\n\n\t\t\t\treturn enabledCache;\n\t\t\t},\n\t\t\tset: v => {\n\t\t\t\tenableOverride = v;\n\t\t\t}\n\t\t});\n\n\t\t// Env-specific initialization logic for debug instances\n\t\tif (typeof createDebug.init === 'function') {\n\t\t\tcreateDebug.init(debug);\n\t\t}\n\n\t\treturn debug;\n\t}\n\n\tfunction extend(namespace, delimiter) {\n\t\tconst newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);\n\t\tnewDebug.log = this.log;\n\t\treturn newDebug;\n\t}\n\n\t/**\n\t* Enables a debug mode by namespaces. This can include modes\n\t* separated by a colon and wildcards.\n\t*\n\t* @param {String} namespaces\n\t* @api public\n\t*/\n\tfunction enable(namespaces) {\n\t\tcreateDebug.save(namespaces);\n\t\tcreateDebug.namespaces = namespaces;\n\n\t\tcreateDebug.names = [];\n\t\tcreateDebug.skips = [];\n\n\t\tlet i;\n\t\tconst split = (typeof namespaces === 'string' ? namespaces : '').split(/[\\s,]+/);\n\t\tconst len = split.length;\n\n\t\tfor (i = 0; i < len; i++) {\n\t\t\tif (!split[i]) {\n\t\t\t\t// ignore empty strings\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tnamespaces = split[i].replace(/\\*/g, '.*?');\n\n\t\t\tif (namespaces[0] === '-') {\n\t\t\t\tcreateDebug.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));\n\t\t\t} else {\n\t\t\t\tcreateDebug.names.push(new RegExp('^' + namespaces + '$'));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t* Disable debug output.\n\t*\n\t* @return {String} namespaces\n\t* @api public\n\t*/\n\tfunction disable() {\n\t\tconst namespaces = [\n\t\t\t...createDebug.names.map(toNamespace),\n\t\t\t...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace)\n\t\t].join(',');\n\t\tcreateDebug.enable('');\n\t\treturn namespaces;\n\t}\n\n\t/**\n\t* Returns true if the given mode name is enabled, false otherwise.\n\t*\n\t* @param {String} name\n\t* @return {Boolean}\n\t* @api public\n\t*/\n\tfunction enabled(name) {\n\t\tif (name[name.length - 1] === '*') {\n\t\t\treturn true;\n\t\t}\n\n\t\tlet i;\n\t\tlet len;\n\n\t\tfor (i = 0, len = createDebug.skips.length; i < len; i++) {\n\t\t\tif (createDebug.skips[i].test(name)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tfor (i = 0, len = createDebug.names.length; i < len; i++) {\n\t\t\tif (createDebug.names[i].test(name)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Convert regexp to namespace\n\t*\n\t* @param {RegExp} regxep\n\t* @return {String} namespace\n\t* @api private\n\t*/\n\tfunction toNamespace(regexp) {\n\t\treturn regexp.toString()\n\t\t\t.substring(2, regexp.toString().length - 2)\n\t\t\t.replace(/\\.\\*\\?$/, '*');\n\t}\n\n\t/**\n\t* Coerce `val`.\n\t*\n\t* @param {Mixed} val\n\t* @return {Mixed}\n\t* @api private\n\t*/\n\tfunction coerce(val) {\n\t\tif (val instanceof Error) {\n\t\t\treturn val.stack || val.message;\n\t\t}\n\t\treturn val;\n\t}\n\n\t/**\n\t* XXX DO NOT USE. This is a temporary stub function.\n\t* XXX It WILL be removed in the next major release.\n\t*/\n\tfunction destroy() {\n\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t}\n\n\tcreateDebug.enable(createDebug.load());\n\n\treturn createDebug;\n}\n\nmodule.exports = setup;\n","/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar canUseDOM = !!(\n\t\ttypeof window !== 'undefined' &&\n\t\twindow.document &&\n\t\twindow.document.createElement\n\t);\n\n\tvar ExecutionEnvironment = {\n\n\t\tcanUseDOM: canUseDOM,\n\n\t\tcanUseWorkers: typeof Worker !== 'undefined',\n\n\t\tcanUseEventListeners:\n\t\t\tcanUseDOM && !!(window.addEventListener || window.attachEvent),\n\n\t\tcanUseViewport: canUseDOM && !!window.screen\n\n\t};\n\n\tif (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn ExecutionEnvironment;\n\t\t});\n\t} else if (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = ExecutionEnvironment;\n\t} else {\n\t\twindow.ExecutionEnvironment = ExecutionEnvironment;\n\t}\n\n}());\n","'use strict';\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nmodule.exports = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nvar React = require('react');\n\nvar ReactDOM = require('react-dom');\n\nvar PropTypes = require('prop-types');\n\nvar _require = require('focus-trap'),\n createFocusTrap = _require.createFocusTrap; // TODO: These issues are related to older React features which we'll likely need\n// to fix in order to move the code forward to the next major version of React.\n// @see https://github.com/davidtheclark/focus-trap-react/issues/77\n\n/* eslint-disable react/no-find-dom-node */\n\n\nvar FocusTrap = /*#__PURE__*/function (_React$Component) {\n _inherits(FocusTrap, _React$Component);\n\n var _super = _createSuper(FocusTrap);\n\n function FocusTrap(props) {\n var _this;\n\n _classCallCheck(this, FocusTrap);\n\n _this = _super.call(this, props); // We need to hijack the returnFocusOnDeactivate option,\n // because React can move focus into the element before we arrived at\n // this lifecycle hook (e.g. with autoFocus inputs). So the component\n // captures the previouslyFocusedElement in componentWillMount,\n // then (optionally) returns focus to it in componentWillUnmount.\n\n _this.tailoredFocusTrapOptions = {\n returnFocusOnDeactivate: false\n }; // because of the above, we maintain our own flag for this option, and\n // default it to `true` because that's focus-trap's default\n\n _this.returnFocusOnDeactivate = true;\n var focusTrapOptions = props.focusTrapOptions;\n\n for (var optionName in focusTrapOptions) {\n if (!Object.prototype.hasOwnProperty.call(focusTrapOptions, optionName)) {\n continue;\n }\n\n if (optionName === 'returnFocusOnDeactivate') {\n _this.returnFocusOnDeactivate = !!focusTrapOptions[optionName];\n continue;\n }\n\n if (optionName === 'onPostDeactivate') {\n _this.onPostDeactivate = focusTrapOptions[optionName];\n continue;\n }\n\n _this.tailoredFocusTrapOptions[optionName] = focusTrapOptions[optionName];\n } // elements from which to create the focus trap on mount; if a child is used\n // instead of the `containerElements` prop, we'll get the child's related\n // element when the trap renders and then is declared 'mounted'\n\n\n _this.focusTrapElements = props.containerElements || []; // now we remember what the currently focused element is, not relying on focus-trap\n\n _this.updatePreviousElement();\n\n return _this;\n }\n /**\n * Gets the configured document.\n * @returns {Document|undefined} Configured document, falling back to the main\n * document, if it exists. During SSR, `undefined` is returned since the\n * document doesn't exist.\n */\n\n\n _createClass(FocusTrap, [{\n key: \"getDocument\",\n value: function getDocument() {\n // SSR: careful to check if `document` exists before accessing it as a variable\n return this.props.focusTrapOptions.document || (typeof document !== 'undefined' ? document : undefined);\n } // TODO: Need more test coverage for this function\n\n }, {\n key: \"getNodeForOption\",\n value: function getNodeForOption(optionName) {\n var optionValue = this.tailoredFocusTrapOptions[optionName];\n\n if (!optionValue) {\n return null;\n }\n\n var node = optionValue;\n\n if (typeof optionValue === 'string') {\n var _this$getDocument;\n\n node = (_this$getDocument = this.getDocument()) === null || _this$getDocument === void 0 ? void 0 : _this$getDocument.querySelector(optionValue);\n\n if (!node) {\n throw new Error(\"`\".concat(optionName, \"` refers to no known node\"));\n }\n }\n\n if (typeof optionValue === 'function') {\n node = optionValue();\n\n if (!node) {\n throw new Error(\"`\".concat(optionName, \"` did not return a node\"));\n }\n }\n\n return node;\n }\n }, {\n key: \"getReturnFocusNode\",\n value: function getReturnFocusNode() {\n var node = this.getNodeForOption('setReturnFocus');\n return node ? node : this.previouslyFocusedElement;\n }\n /** Update the previously focused element with the currently focused element. */\n\n }, {\n key: \"updatePreviousElement\",\n value: function updatePreviousElement() {\n var currentDocument = this.getDocument();\n\n if (currentDocument) {\n this.previouslyFocusedElement = currentDocument.activeElement;\n }\n }\n }, {\n key: \"deactivateTrap\",\n value: function deactivateTrap() {\n var _this2 = this;\n\n var _this$tailoredFocusTr = this.tailoredFocusTrapOptions,\n checkCanReturnFocus = _this$tailoredFocusTr.checkCanReturnFocus,\n _this$tailoredFocusTr2 = _this$tailoredFocusTr.preventScroll,\n preventScroll = _this$tailoredFocusTr2 === void 0 ? false : _this$tailoredFocusTr2;\n\n if (this.focusTrap) {\n // NOTE: we never let the trap return the focus since we do that ourselves\n this.focusTrap.deactivate({\n returnFocus: false\n });\n }\n\n var finishDeactivation = function finishDeactivation() {\n var returnFocusNode = _this2.getReturnFocusNode();\n\n var canReturnFocus = (returnFocusNode === null || returnFocusNode === void 0 ? void 0 : returnFocusNode.focus) && _this2.returnFocusOnDeactivate;\n\n if (canReturnFocus) {\n /** Returns focus to the element that had focus when the trap was activated. */\n returnFocusNode.focus({\n preventScroll: preventScroll\n });\n }\n\n if (_this2.onPostDeactivate) {\n _this2.onPostDeactivate.call(null); // don't call it in context of \"this\"\n\n }\n };\n\n if (checkCanReturnFocus) {\n checkCanReturnFocus(this.getReturnFocusNode()).then(finishDeactivation, finishDeactivation);\n } else {\n finishDeactivation();\n }\n }\n }, {\n key: \"setupFocusTrap\",\n value: function setupFocusTrap() {\n if (!this.focusTrap) {\n var focusTrapElementDOMNodes = this.focusTrapElements.map( // NOTE: `findDOMNode()` does not support CSS selectors; it'll just return\n // a new text node with the text wrapped in it instead of treating the\n // string as a selector and resolving it to a node in the DOM\n ReactDOM.findDOMNode);\n var nodesExist = focusTrapElementDOMNodes.some(Boolean);\n\n if (nodesExist) {\n // eslint-disable-next-line react/prop-types -- _createFocusTrap is an internal prop\n this.focusTrap = this.props._createFocusTrap(focusTrapElementDOMNodes, this.tailoredFocusTrapOptions);\n\n if (this.props.active) {\n this.focusTrap.activate();\n }\n\n if (this.props.paused) {\n this.focusTrap.pause();\n }\n }\n }\n }\n }, {\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.props.active) {\n this.setupFocusTrap();\n } // else, wait for later activation in case the `focusTrapOptions` will be updated\n // again before the trap is activated (e.g. if waiting to know what the document\n // object will be, so the Trap must be rendered, but the consumer is waiting to\n // activate until they have obtained the document from a ref)\n // @see https://github.com/focus-trap/focus-trap-react/issues/539\n\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n if (this.focusTrap) {\n if (prevProps.containerElements !== this.props.containerElements) {\n this.focusTrap.updateContainerElements(this.props.containerElements);\n }\n\n var hasActivated = !prevProps.active && this.props.active;\n var hasDeactivated = prevProps.active && !this.props.active;\n var hasPaused = !prevProps.paused && this.props.paused;\n var hasUnpaused = prevProps.paused && !this.props.paused;\n\n if (hasActivated) {\n this.updatePreviousElement();\n this.focusTrap.activate();\n }\n\n if (hasDeactivated) {\n this.deactivateTrap();\n return; // un/pause does nothing on an inactive trap\n }\n\n if (hasPaused) {\n this.focusTrap.pause();\n }\n\n if (hasUnpaused) {\n this.focusTrap.unpause();\n }\n } else {\n // NOTE: if we're in `componentDidUpdate` and we don't have a trap yet,\n // it either means it shouldn't be active, or it should be but none of\n // of given `containerElements` were present in the DOM the last time\n // we tried to create the trap\n if (prevProps.containerElements !== this.props.containerElements) {\n this.focusTrapElements = this.props.containerElements;\n } // don't create the trap unless it should be active in case the consumer\n // is still updating `focusTrapOptions`\n // @see https://github.com/focus-trap/focus-trap-react/issues/539\n\n\n if (this.props.active) {\n this.updatePreviousElement();\n this.setupFocusTrap();\n }\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.deactivateTrap();\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this3 = this;\n\n var child = this.props.children ? React.Children.only(this.props.children) : undefined;\n\n if (child) {\n if (child.type && child.type === React.Fragment) {\n throw new Error('A focus-trap cannot use a Fragment as its child container. Try replacing it with a <div> element.');\n }\n\n var composedRefCallback = function composedRefCallback(element) {\n var containerElements = _this3.props.containerElements;\n\n if (child) {\n if (typeof child.ref === 'function') {\n child.ref(element);\n } else if (child.ref) {\n child.ref.current = element;\n }\n }\n\n _this3.focusTrapElements = containerElements ? containerElements : [element];\n };\n\n var childWithRef = React.cloneElement(child, {\n ref: composedRefCallback\n });\n return childWithRef;\n }\n\n return null;\n }\n }]);\n\n return FocusTrap;\n}(React.Component); // support server-side rendering where `Element` will not be defined\n\n\nvar ElementType = typeof Element === 'undefined' ? Function : Element;\nFocusTrap.propTypes = {\n active: PropTypes.bool,\n paused: PropTypes.bool,\n focusTrapOptions: PropTypes.shape({\n document: PropTypes.object,\n onActivate: PropTypes.func,\n onPostActivate: PropTypes.func,\n checkCanFocusTrap: PropTypes.func,\n onDeactivate: PropTypes.func,\n onPostDeactivate: PropTypes.func,\n checkCanReturnFocus: PropTypes.func,\n initialFocus: PropTypes.oneOfType([PropTypes.instanceOf(ElementType), PropTypes.string, PropTypes.func, PropTypes.bool]),\n fallbackFocus: PropTypes.oneOfType([PropTypes.instanceOf(ElementType), PropTypes.string, PropTypes.func]),\n escapeDeactivates: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n clickOutsideDeactivates: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n returnFocusOnDeactivate: PropTypes.bool,\n setReturnFocus: PropTypes.oneOfType([PropTypes.instanceOf(ElementType), PropTypes.string, PropTypes.func]),\n allowOutsideClick: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n preventScroll: PropTypes.bool\n }),\n containerElements: PropTypes.arrayOf(PropTypes.instanceOf(ElementType)),\n children: PropTypes.oneOfType([PropTypes.element, // React element\n PropTypes.instanceOf(ElementType) // DOM element\n ]) // NOTE: _createFocusTrap is internal, for testing purposes only, so we don't\n // specify it here. It's expected to be set to the function returned from\n // require('focus-trap'), or one with a compatible interface.\n\n};\nFocusTrap.defaultProps = {\n active: true,\n paused: false,\n focusTrapOptions: {},\n _createFocusTrap: createFocusTrap\n};\nmodule.exports = FocusTrap;","/*!\n* tabbable 5.2.1\n* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE\n*/\nvar candidateSelectors = ['input', 'select', 'textarea', 'a[href]', 'button', '[tabindex]', 'audio[controls]', 'video[controls]', '[contenteditable]:not([contenteditable=\"false\"])', 'details>summary:first-of-type', 'details'];\nvar candidateSelector = /* #__PURE__ */candidateSelectors.join(',');\nvar matches = typeof Element === 'undefined' ? function () {} : Element.prototype.matches || Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;\n\nvar getCandidates = function getCandidates(el, includeContainer, filter) {\n var candidates = Array.prototype.slice.apply(el.querySelectorAll(candidateSelector));\n\n if (includeContainer && matches.call(el, candidateSelector)) {\n candidates.unshift(el);\n }\n\n candidates = candidates.filter(filter);\n return candidates;\n};\n\nvar isContentEditable = function isContentEditable(node) {\n return node.contentEditable === 'true';\n};\n\nvar getTabindex = function getTabindex(node) {\n var tabindexAttr = parseInt(node.getAttribute('tabindex'), 10);\n\n if (!isNaN(tabindexAttr)) {\n return tabindexAttr;\n } // Browsers do not return `tabIndex` correctly for contentEditable nodes;\n // so if they don't have a tabindex attribute specifically set, assume it's 0.\n\n\n if (isContentEditable(node)) {\n return 0;\n } // in Chrome, <details/>, <audio controls/> and <video controls/> elements get a default\n // `tabIndex` of -1 when the 'tabindex' attribute isn't specified in the DOM,\n // yet they are still part of the regular tab order; in FF, they get a default\n // `tabIndex` of 0; since Chrome still puts those elements in the regular tab\n // order, consider their tab index to be 0.\n\n\n if ((node.nodeName === 'AUDIO' || node.nodeName === 'VIDEO' || node.nodeName === 'DETAILS') && node.getAttribute('tabindex') === null) {\n return 0;\n }\n\n return node.tabIndex;\n};\n\nvar sortOrderedTabbables = function sortOrderedTabbables(a, b) {\n return a.tabIndex === b.tabIndex ? a.documentOrder - b.documentOrder : a.tabIndex - b.tabIndex;\n};\n\nvar isInput = function isInput(node) {\n return node.tagName === 'INPUT';\n};\n\nvar isHiddenInput = function isHiddenInput(node) {\n return isInput(node) && node.type === 'hidden';\n};\n\nvar isDetailsWithSummary = function isDetailsWithSummary(node) {\n var r = node.tagName === 'DETAILS' && Array.prototype.slice.apply(node.children).some(function (child) {\n return child.tagName === 'SUMMARY';\n });\n return r;\n};\n\nvar getCheckedRadio = function getCheckedRadio(nodes, form) {\n for (var i = 0; i < nodes.length; i++) {\n if (nodes[i].checked && nodes[i].form === form) {\n return nodes[i];\n }\n }\n};\n\nvar isTabbableRadio = function isTabbableRadio(node) {\n if (!node.name) {\n return true;\n }\n\n var radioScope = node.form || node.ownerDocument;\n\n var queryRadios = function queryRadios(name) {\n return radioScope.querySelectorAll('input[type=\"radio\"][name=\"' + name + '\"]');\n };\n\n var radioSet;\n\n if (typeof window !== 'undefined' && typeof window.CSS !== 'undefined' && typeof window.CSS.escape === 'function') {\n radioSet = queryRadios(window.CSS.escape(node.name));\n } else {\n try {\n radioSet = queryRadios(node.name);\n } catch (err) {\n // eslint-disable-next-line no-console\n console.error('Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s', err.message);\n return false;\n }\n }\n\n var checked = getCheckedRadio(radioSet, node.form);\n return !checked || checked === node;\n};\n\nvar isRadio = function isRadio(node) {\n return isInput(node) && node.type === 'radio';\n};\n\nvar isNonTabbableRadio = function isNonTabbableRadio(node) {\n return isRadio(node) && !isTabbableRadio(node);\n};\n\nvar isHidden = function isHidden(node, displayCheck) {\n if (getComputedStyle(node).visibility === 'hidden') {\n return true;\n }\n\n var isDirectSummary = matches.call(node, 'details>summary:first-of-type');\n var nodeUnderDetails = isDirectSummary ? node.parentElement : node;\n\n if (matches.call(nodeUnderDetails, 'details:not([open]) *')) {\n return true;\n }\n\n if (!displayCheck || displayCheck === 'full') {\n while (node) {\n if (getComputedStyle(node).display === 'none') {\n return true;\n }\n\n node = node.parentElement;\n }\n } else if (displayCheck === 'non-zero-area') {\n var _node$getBoundingClie = node.getBoundingClientRect(),\n width = _node$getBoundingClie.width,\n height = _node$getBoundingClie.height;\n\n return width === 0 && height === 0;\n }\n\n return false;\n}; // form fields (nested) inside a disabled fieldset are not focusable/tabbable\n// unless they are in the _first_ <legend> element of the top-most disabled\n// fieldset\n\n\nvar isDisabledFromFieldset = function isDisabledFromFieldset(node) {\n if (isInput(node) || node.tagName === 'SELECT' || node.tagName === 'TEXTAREA' || node.tagName === 'BUTTON') {\n var parentNode = node.parentElement;\n\n while (parentNode) {\n if (parentNode.tagName === 'FIELDSET' && parentNode.disabled) {\n // look for the first <legend> as an immediate child of the disabled\n // <fieldset>: if the node is in that legend, it'll be enabled even\n // though the fieldset is disabled; otherwise, the node is in a\n // secondary/subsequent legend, or somewhere else within the fieldset\n // (however deep nested) and it'll be disabled\n for (var i = 0; i < parentNode.children.length; i++) {\n var child = parentNode.children.item(i);\n\n if (child.tagName === 'LEGEND') {\n if (child.contains(node)) {\n return false;\n } // the node isn't in the first legend (in doc order), so no matter\n // where it is now, it'll be disabled\n\n\n return true;\n }\n } // the node isn't in a legend, so no matter where it is now, it'll be disabled\n\n\n return true;\n }\n\n parentNode = parentNode.parentElement;\n }\n } // else, node's tabbable/focusable state should not be affected by a fieldset's\n // enabled/disabled state\n\n\n return false;\n};\n\nvar isNodeMatchingSelectorFocusable = function isNodeMatchingSelectorFocusable(options, node) {\n if (node.disabled || isHiddenInput(node) || isHidden(node, options.displayCheck) || // For a details element with a summary, the summary element gets the focus\n isDetailsWithSummary(node) || isDisabledFromFieldset(node)) {\n return false;\n }\n\n return true;\n};\n\nvar isNodeMatchingSelectorTabbable = function isNodeMatchingSelectorTabbable(options, node) {\n if (!isNodeMatchingSelectorFocusable(options, node) || isNonTabbableRadio(node) || getTabindex(node) < 0) {\n return false;\n }\n\n return true;\n};\n\nvar tabbable = function tabbable(el, options) {\n options = options || {};\n var regularTabbables = [];\n var orderedTabbables = [];\n var candidates = getCandidates(el, options.includeContainer, isNodeMatchingSelectorTabbable.bind(null, options));\n candidates.forEach(function (candidate, i) {\n var candidateTabindex = getTabindex(candidate);\n\n if (candidateTabindex === 0) {\n regularTabbables.push(candidate);\n } else {\n orderedTabbables.push({\n documentOrder: i,\n tabIndex: candidateTabindex,\n node: candidate\n });\n }\n });\n var tabbableNodes = orderedTabbables.sort(sortOrderedTabbables).map(function (a) {\n return a.node;\n }).concat(regularTabbables);\n return tabbableNodes;\n};\n\nvar focusable = function focusable(el, options) {\n options = options || {};\n var candidates = getCandidates(el, options.includeContainer, isNodeMatchingSelectorFocusable.bind(null, options));\n return candidates;\n};\n\nvar isTabbable = function isTabbable(node, options) {\n options = options || {};\n\n if (!node) {\n throw new Error('No node provided');\n }\n\n if (matches.call(node, candidateSelector) === false) {\n return false;\n }\n\n return isNodeMatchingSelectorTabbable(options, node);\n};\n\nvar focusableCandidateSelector = /* #__PURE__ */candidateSelectors.concat('iframe').join(',');\n\nvar isFocusable = function isFocusable(node, options) {\n options = options || {};\n\n if (!node) {\n throw new Error('No node provided');\n }\n\n if (matches.call(node, focusableCandidateSelector) === false) {\n return false;\n }\n\n return isNodeMatchingSelectorFocusable(options, node);\n};\n\nexport { focusable, isFocusable, isTabbable, tabbable };\n//# sourceMappingURL=index.esm.js.map\n","/*!\n* focus-trap 6.7.3\n* @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE\n*/\nimport { tabbable, focusable, isTabbable, isFocusable } from 'tabbable';\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar activeFocusTraps = function () {\n var trapQueue = [];\n return {\n activateTrap: function activateTrap(trap) {\n if (trapQueue.length > 0) {\n var activeTrap = trapQueue[trapQueue.length - 1];\n\n if (activeTrap !== trap) {\n activeTrap.pause();\n }\n }\n\n var trapIndex = trapQueue.indexOf(trap);\n\n if (trapIndex === -1) {\n trapQueue.push(trap);\n } else {\n // move this existing trap to the front of the queue\n trapQueue.splice(trapIndex, 1);\n trapQueue.push(trap);\n }\n },\n deactivateTrap: function deactivateTrap(trap) {\n var trapIndex = trapQueue.indexOf(trap);\n\n if (trapIndex !== -1) {\n trapQueue.splice(trapIndex, 1);\n }\n\n if (trapQueue.length > 0) {\n trapQueue[trapQueue.length - 1].unpause();\n }\n }\n };\n}();\n\nvar isSelectableInput = function isSelectableInput(node) {\n return node.tagName && node.tagName.toLowerCase() === 'input' && typeof node.select === 'function';\n};\n\nvar isEscapeEvent = function isEscapeEvent(e) {\n return e.key === 'Escape' || e.key === 'Esc' || e.keyCode === 27;\n};\n\nvar isTabEvent = function isTabEvent(e) {\n return e.key === 'Tab' || e.keyCode === 9;\n};\n\nvar delay = function delay(fn) {\n return setTimeout(fn, 0);\n}; // Array.find/findIndex() are not supported on IE; this replicates enough\n// of Array.findIndex() for our needs\n\n\nvar findIndex = function findIndex(arr, fn) {\n var idx = -1;\n arr.every(function (value, i) {\n if (fn(value)) {\n idx = i;\n return false; // break\n }\n\n return true; // next\n });\n return idx;\n};\n/**\n * Get an option's value when it could be a plain value, or a handler that provides\n * the value.\n * @param {*} value Option's value to check.\n * @param {...*} [params] Any parameters to pass to the handler, if `value` is a function.\n * @returns {*} The `value`, or the handler's returned value.\n */\n\n\nvar valueOrHandler = function valueOrHandler(value) {\n for (var _len = arguments.length, params = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n params[_key - 1] = arguments[_key];\n }\n\n return typeof value === 'function' ? value.apply(void 0, params) : value;\n};\n\nvar getActualTarget = function getActualTarget(event) {\n // NOTE: If the trap is _inside_ a shadow DOM, event.target will always be the\n // shadow host. However, event.target.composedPath() will be an array of\n // nodes \"clicked\" from inner-most (the actual element inside the shadow) to\n // outer-most (the host HTML document). If we have access to composedPath(),\n // then use its first element; otherwise, fall back to event.target (and\n // this only works for an _open_ shadow DOM; otherwise,\n // composedPath()[0] === event.target always).\n return event.target.shadowRoot && typeof event.composedPath === 'function' ? event.composedPath()[0] : event.target;\n};\n\nvar createFocusTrap = function createFocusTrap(elements, userOptions) {\n // SSR: a live trap shouldn't be created in this type of environment so this\n // should be safe code to execute if the `document` option isn't specified\n var doc = (userOptions === null || userOptions === void 0 ? void 0 : userOptions.document) || document;\n\n var config = _objectSpread2({\n returnFocusOnDeactivate: true,\n escapeDeactivates: true,\n delayInitialFocus: true\n }, userOptions);\n\n var state = {\n // @type {Array<HTMLElement>}\n containers: [],\n // list of objects identifying the first and last tabbable nodes in all containers/groups in\n // the trap\n // NOTE: it's possible that a group has no tabbable nodes if nodes get removed while the trap\n // is active, but the trap should never get to a state where there isn't at least one group\n // with at least one tabbable node in it (that would lead to an error condition that would\n // result in an error being thrown)\n // @type {Array<{\n // container: HTMLElement,\n // firstTabbableNode: HTMLElement|null,\n // lastTabbableNode: HTMLElement|null,\n // nextTabbableNode: (node: HTMLElement, forward: boolean) => HTMLElement|undefined\n // }>}\n tabbableGroups: [],\n nodeFocusedBeforeActivation: null,\n mostRecentlyFocusedNode: null,\n active: false,\n paused: false,\n // timer ID for when delayInitialFocus is true and initial focus in this trap\n // has been delayed during activation\n delayInitialFocusTimer: undefined\n };\n var trap; // eslint-disable-line prefer-const -- some private functions reference it, and its methods reference private functions, so we must declare here and define later\n\n var getOption = function getOption(configOverrideOptions, optionName, configOptionName) {\n return configOverrideOptions && configOverrideOptions[optionName] !== undefined ? configOverrideOptions[optionName] : config[configOptionName || optionName];\n };\n\n var containersContain = function containersContain(element) {\n return !!(element && state.containers.some(function (container) {\n return container.contains(element);\n }));\n };\n /**\n * Gets the node for the given option, which is expected to be an option that\n * can be either a DOM node, a string that is a selector to get a node, `false`\n * (if a node is explicitly NOT given), or a function that returns any of these\n * values.\n * @param {string} optionName\n * @returns {undefined | false | HTMLElement | SVGElement} Returns\n * `undefined` if the option is not specified; `false` if the option\n * resolved to `false` (node explicitly not given); otherwise, the resolved\n * DOM node.\n * @throws {Error} If the option is set, not `false`, and is not, or does not\n * resolve to a node.\n */\n\n\n var getNodeForOption = function getNodeForOption(optionName) {\n var optionValue = config[optionName];\n\n if (typeof optionValue === 'function') {\n for (var _len2 = arguments.length, params = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n params[_key2 - 1] = arguments[_key2];\n }\n\n optionValue = optionValue.apply(void 0, params);\n }\n\n if (!optionValue) {\n if (optionValue === undefined || optionValue === false) {\n return optionValue;\n } // else, empty string (invalid), null (invalid), 0 (invalid)\n\n\n throw new Error(\"`\".concat(optionName, \"` was specified but was not a node, or did not return a node\"));\n }\n\n var node = optionValue; // could be HTMLElement, SVGElement, or non-empty string at this point\n\n if (typeof optionValue === 'string') {\n node = doc.querySelector(optionValue); // resolve to node, or null if fails\n\n if (!node) {\n throw new Error(\"`\".concat(optionName, \"` as selector refers to no known node\"));\n }\n }\n\n return node;\n };\n\n var getInitialFocusNode = function getInitialFocusNode() {\n var node = getNodeForOption('initialFocus'); // false explicitly indicates we want no initialFocus at all\n\n if (node === false) {\n return false;\n }\n\n if (node === undefined) {\n // option not specified: use fallback options\n if (containersContain(doc.activeElement)) {\n node = doc.activeElement;\n } else {\n var firstTabbableGroup = state.tabbableGroups[0];\n var firstTabbableNode = firstTabbableGroup && firstTabbableGroup.firstTabbableNode; // NOTE: `fallbackFocus` option function cannot return `false` (not supported)\n\n node = firstTabbableNode || getNodeForOption('fallbackFocus');\n }\n }\n\n if (!node) {\n throw new Error('Your focus-trap needs to have at least one focusable element');\n }\n\n return node;\n };\n\n var updateTabbableNodes = function updateTabbableNodes() {\n state.tabbableGroups = state.containers.map(function (container) {\n var tabbableNodes = tabbable(container); // NOTE: if we have tabbable nodes, we must have focusable nodes; focusable nodes\n // are a superset of tabbable nodes\n\n var focusableNodes = focusable(container);\n\n if (tabbableNodes.length > 0) {\n return {\n container: container,\n firstTabbableNode: tabbableNodes[0],\n lastTabbableNode: tabbableNodes[tabbableNodes.length - 1],\n\n /**\n * Finds the __tabbable__ node that follows the given node in the specified direction,\n * in this container, if any.\n * @param {HTMLElement} node\n * @param {boolean} [forward] True if going in forward tab order; false if going\n * in reverse.\n * @returns {HTMLElement|undefined} The next tabbable node, if any.\n */\n nextTabbableNode: function nextTabbableNode(node) {\n var forward = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n // NOTE: If tabindex is positive (in order to manipulate the tab order separate\n // from the DOM order), this __will not work__ because the list of focusableNodes,\n // while it contains tabbable nodes, does not sort its nodes in any order other\n // than DOM order, because it can't: Where would you place focusable (but not\n // tabbable) nodes in that order? They have no order, because they aren't tabbale...\n // Support for positive tabindex is already broken and hard to manage (possibly\n // not supportable, TBD), so this isn't going to make things worse than they\n // already are, and at least makes things better for the majority of cases where\n // tabindex is either 0/unset or negative.\n // FYI, positive tabindex issue: https://github.com/focus-trap/focus-trap/issues/375\n var nodeIdx = focusableNodes.findIndex(function (n) {\n return n === node;\n });\n\n if (forward) {\n return focusableNodes.slice(nodeIdx + 1).find(function (n) {\n return isTabbable(n);\n });\n }\n\n return focusableNodes.slice(0, nodeIdx).reverse().find(function (n) {\n return isTabbable(n);\n });\n }\n };\n }\n\n return undefined;\n }).filter(function (group) {\n return !!group;\n }); // remove groups with no tabbable nodes\n // throw if no groups have tabbable nodes and we don't have a fallback focus node either\n\n if (state.tabbableGroups.length <= 0 && !getNodeForOption('fallbackFocus') // returning false not supported for this option\n ) {\n throw new Error('Your focus-trap must have at least one container with at least one tabbable node in it at all times');\n }\n };\n\n var tryFocus = function tryFocus(node) {\n if (node === false) {\n return;\n }\n\n if (node === doc.activeElement) {\n return;\n }\n\n if (!node || !node.focus) {\n tryFocus(getInitialFocusNode());\n return;\n }\n\n node.focus({\n preventScroll: !!config.preventScroll\n });\n state.mostRecentlyFocusedNode = node;\n\n if (isSelectableInput(node)) {\n node.select();\n }\n };\n\n var getReturnFocusNode = function getReturnFocusNode(previousActiveElement) {\n var node = getNodeForOption('setReturnFocus', previousActiveElement);\n return node ? node : node === false ? false : previousActiveElement;\n }; // This needs to be done on mousedown and touchstart instead of click\n // so that it precedes the focus event.\n\n\n var checkPointerDown = function checkPointerDown(e) {\n var target = getActualTarget(e);\n\n if (containersContain(target)) {\n // allow the click since it ocurred inside the trap\n return;\n }\n\n if (valueOrHandler(config.clickOutsideDeactivates, e)) {\n // immediately deactivate the trap\n trap.deactivate({\n // if, on deactivation, we should return focus to the node originally-focused\n // when the trap was activated (or the configured `setReturnFocus` node),\n // then assume it's also OK to return focus to the outside node that was\n // just clicked, causing deactivation, as long as that node is focusable;\n // if it isn't focusable, then return focus to the original node focused\n // on activation (or the configured `setReturnFocus` node)\n // NOTE: by setting `returnFocus: false`, deactivate() will do nothing,\n // which will result in the outside click setting focus to the node\n // that was clicked, whether it's focusable or not; by setting\n // `returnFocus: true`, we'll attempt to re-focus the node originally-focused\n // on activation (or the configured `setReturnFocus` node)\n returnFocus: config.returnFocusOnDeactivate && !isFocusable(target)\n });\n return;\n } // This is needed for mobile devices.\n // (If we'll only let `click` events through,\n // then on mobile they will be blocked anyways if `touchstart` is blocked.)\n\n\n if (valueOrHandler(config.allowOutsideClick, e)) {\n // allow the click outside the trap to take place\n return;\n } // otherwise, prevent the click\n\n\n e.preventDefault();\n }; // In case focus escapes the trap for some strange reason, pull it back in.\n\n\n var checkFocusIn = function checkFocusIn(e) {\n var target = getActualTarget(e);\n var targetContained = containersContain(target); // In Firefox when you Tab out of an iframe the Document is briefly focused.\n\n if (targetContained || target instanceof Document) {\n if (targetContained) {\n state.mostRecentlyFocusedNode = target;\n }\n } else {\n // escaped! pull it back in to where it just left\n e.stopImmediatePropagation();\n tryFocus(state.mostRecentlyFocusedNode || getInitialFocusNode());\n }\n }; // Hijack Tab events on the first and last focusable nodes of the trap,\n // in order to prevent focus from escaping. If it escapes for even a\n // moment it can end up scrolling the page and causing confusion so we\n // kind of need to capture the action at the keydown phase.\n\n\n var checkTab = function checkTab(e) {\n var target = getActualTarget(e);\n updateTabbableNodes();\n var destinationNode = null;\n\n if (state.tabbableGroups.length > 0) {\n // make sure the target is actually contained in a group\n // NOTE: the target may also be the container itself if it's focusable\n // with tabIndex='-1' and was given initial focus\n var containerIndex = findIndex(state.tabbableGroups, function (_ref) {\n var container = _ref.container;\n return container.contains(target);\n });\n var containerGroup = containerIndex >= 0 ? state.tabbableGroups[containerIndex] : undefined;\n\n if (containerIndex < 0) {\n // target not found in any group: quite possible focus has escaped the trap,\n // so bring it back in to...\n if (e.shiftKey) {\n // ...the last node in the last group\n destinationNode = state.tabbableGroups[state.tabbableGroups.length - 1].lastTabbableNode;\n } else {\n // ...the first node in the first group\n destinationNode = state.tabbableGroups[0].firstTabbableNode;\n }\n } else if (e.shiftKey) {\n // REVERSE\n // is the target the first tabbable node in a group?\n var startOfGroupIndex = findIndex(state.tabbableGroups, function (_ref2) {\n var firstTabbableNode = _ref2.firstTabbableNode;\n return target === firstTabbableNode;\n });\n\n if (startOfGroupIndex < 0 && (containerGroup.container === target || isFocusable(target) && !isTabbable(target) && !containerGroup.nextTabbableNode(target, false))) {\n // an exception case where the target is either the container itself, or\n // a non-tabbable node that was given focus (i.e. tabindex is negative\n // and user clicked on it or node was programmatically given focus)\n // and is not followed by any other tabbable node, in which\n // case, we should handle shift+tab as if focus were on the container's\n // first tabbable node, and go to the last tabbable node of the LAST group\n startOfGroupIndex = containerIndex;\n }\n\n if (startOfGroupIndex >= 0) {\n // YES: then shift+tab should go to the last tabbable node in the\n // previous group (and wrap around to the last tabbable node of\n // the LAST group if it's the first tabbable node of the FIRST group)\n var destinationGroupIndex = startOfGroupIndex === 0 ? state.tabbableGroups.length - 1 : startOfGroupIndex - 1;\n var destinationGroup = state.tabbableGroups[destinationGroupIndex];\n destinationNode = destinationGroup.lastTabbableNode;\n }\n } else {\n // FORWARD\n // is the target the last tabbable node in a group?\n var lastOfGroupIndex = findIndex(state.tabbableGroups, function (_ref3) {\n var lastTabbableNode = _ref3.lastTabbableNode;\n return target === lastTabbableNode;\n });\n\n if (lastOfGroupIndex < 0 && (containerGroup.container === target || isFocusable(target) && !isTabbable(target) && !containerGroup.nextTabbableNode(target))) {\n // an exception case where the target is the container itself, or\n // a non-tabbable node that was given focus (i.e. tabindex is negative\n // and user clicked on it or node was programmatically given focus)\n // and is not followed by any other tabbable node, in which\n // case, we should handle tab as if focus were on the container's\n // last tabbable node, and go to the first tabbable node of the FIRST group\n lastOfGroupIndex = containerIndex;\n }\n\n if (lastOfGroupIndex >= 0) {\n // YES: then tab should go to the first tabbable node in the next\n // group (and wrap around to the first tabbable node of the FIRST\n // group if it's the last tabbable node of the LAST group)\n var _destinationGroupIndex = lastOfGroupIndex === state.tabbableGroups.length - 1 ? 0 : lastOfGroupIndex + 1;\n\n var _destinationGroup = state.tabbableGroups[_destinationGroupIndex];\n destinationNode = _destinationGroup.firstTabbableNode;\n }\n }\n } else {\n // NOTE: the fallbackFocus option does not support returning false to opt-out\n destinationNode = getNodeForOption('fallbackFocus');\n }\n\n if (destinationNode) {\n e.preventDefault();\n tryFocus(destinationNode);\n } // else, let the browser take care of [shift+]tab and move the focus\n\n };\n\n var checkKey = function checkKey(e) {\n if (isEscapeEvent(e) && valueOrHandler(config.escapeDeactivates, e) !== false) {\n e.preventDefault();\n trap.deactivate();\n return;\n }\n\n if (isTabEvent(e)) {\n checkTab(e);\n return;\n }\n };\n\n var checkClick = function checkClick(e) {\n if (valueOrHandler(config.clickOutsideDeactivates, e)) {\n return;\n }\n\n var target = getActualTarget(e);\n\n if (containersContain(target)) {\n return;\n }\n\n if (valueOrHandler(config.allowOutsideClick, e)) {\n return;\n }\n\n e.preventDefault();\n e.stopImmediatePropagation();\n }; //\n // EVENT LISTENERS\n //\n\n\n var addListeners = function addListeners() {\n if (!state.active) {\n return;\n } // There can be only one listening focus trap at a time\n\n\n activeFocusTraps.activateTrap(trap); // Delay ensures that the focused element doesn't capture the event\n // that caused the focus trap activation.\n\n state.delayInitialFocusTimer = config.delayInitialFocus ? delay(function () {\n tryFocus(getInitialFocusNode());\n }) : tryFocus(getInitialFocusNode());\n doc.addEventListener('focusin', checkFocusIn, true);\n doc.addEventListener('mousedown', checkPointerDown, {\n capture: true,\n passive: false\n });\n doc.addEventListener('touchstart', checkPointerDown, {\n capture: true,\n passive: false\n });\n doc.addEventListener('click', checkClick, {\n capture: true,\n passive: false\n });\n doc.addEventListener('keydown', checkKey, {\n capture: true,\n passive: false\n });\n return trap;\n };\n\n var removeListeners = function removeListeners() {\n if (!state.active) {\n return;\n }\n\n doc.removeEventListener('focusin', checkFocusIn, true);\n doc.removeEventListener('mousedown', checkPointerDown, true);\n doc.removeEventListener('touchstart', checkPointerDown, true);\n doc.removeEventListener('click', checkClick, true);\n doc.removeEventListener('keydown', checkKey, true);\n return trap;\n }; //\n // TRAP DEFINITION\n //\n\n\n trap = {\n activate: function activate(activateOptions) {\n if (state.active) {\n return this;\n }\n\n var onActivate = getOption(activateOptions, 'onActivate');\n var onPostActivate = getOption(activateOptions, 'onPostActivate');\n var checkCanFocusTrap = getOption(activateOptions, 'checkCanFocusTrap');\n\n if (!checkCanFocusTrap) {\n updateTabbableNodes();\n }\n\n state.active = true;\n state.paused = false;\n state.nodeFocusedBeforeActivation = doc.activeElement;\n\n if (onActivate) {\n onActivate();\n }\n\n var finishActivation = function finishActivation() {\n if (checkCanFocusTrap) {\n updateTabbableNodes();\n }\n\n addListeners();\n\n if (onPostActivate) {\n onPostActivate();\n }\n };\n\n if (checkCanFocusTrap) {\n checkCanFocusTrap(state.containers.concat()).then(finishActivation, finishActivation);\n return this;\n }\n\n finishActivation();\n return this;\n },\n deactivate: function deactivate(deactivateOptions) {\n if (!state.active) {\n return this;\n }\n\n clearTimeout(state.delayInitialFocusTimer); // noop if undefined\n\n state.delayInitialFocusTimer = undefined;\n removeListeners();\n state.active = false;\n state.paused = false;\n activeFocusTraps.deactivateTrap(trap);\n var onDeactivate = getOption(deactivateOptions, 'onDeactivate');\n var onPostDeactivate = getOption(deactivateOptions, 'onPostDeactivate');\n var checkCanReturnFocus = getOption(deactivateOptions, 'checkCanReturnFocus');\n\n if (onDeactivate) {\n onDeactivate();\n }\n\n var returnFocus = getOption(deactivateOptions, 'returnFocus', 'returnFocusOnDeactivate');\n\n var finishDeactivation = function finishDeactivation() {\n delay(function () {\n if (returnFocus) {\n tryFocus(getReturnFocusNode(state.nodeFocusedBeforeActivation));\n }\n\n if (onPostDeactivate) {\n onPostDeactivate();\n }\n });\n };\n\n if (returnFocus && checkCanReturnFocus) {\n checkCanReturnFocus(getReturnFocusNode(state.nodeFocusedBeforeActivation)).then(finishDeactivation, finishDeactivation);\n return this;\n }\n\n finishDeactivation();\n return this;\n },\n pause: function pause() {\n if (state.paused || !state.active) {\n return this;\n }\n\n state.paused = true;\n removeListeners();\n return this;\n },\n unpause: function unpause() {\n if (!state.paused || !state.active) {\n return this;\n }\n\n state.paused = false;\n updateTabbableNodes();\n addListeners();\n return this;\n },\n updateContainerElements: function updateContainerElements(containerElements) {\n var elementsAsArray = [].concat(containerElements).filter(Boolean);\n state.containers = elementsAsArray.map(function (element) {\n return typeof element === 'string' ? doc.querySelector(element) : element;\n });\n\n if (state.active) {\n updateTabbableNodes();\n }\n\n return this;\n }\n }; // initialize container elements\n\n trap.updateContainerElements(elements);\n return trap;\n};\n\nexport { createFocusTrap };\n//# sourceMappingURL=focus-trap.esm.js.map\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n","\nmodule.exports = function load (src, opts, cb) {\n var head = document.head || document.getElementsByTagName('head')[0]\n var script = document.createElement('script')\n\n if (typeof opts === 'function') {\n cb = opts\n opts = {}\n }\n\n opts = opts || {}\n cb = cb || function() {}\n\n script.type = opts.type || 'text/javascript'\n script.charset = opts.charset || 'utf8';\n script.async = 'async' in opts ? !!opts.async : true\n script.src = src\n\n if (opts.attrs) {\n setAttributes(script, opts.attrs)\n }\n\n if (opts.text) {\n script.text = '' + opts.text\n }\n\n var onend = 'onload' in script ? stdOnEnd : ieOnEnd\n onend(script, cb)\n\n // some good legacy browsers (firefox) fail the 'in' detection above\n // so as a fallback we always set onload\n // old IE will ignore this and new IE will set onload\n if (!script.onload) {\n stdOnEnd(script, cb);\n }\n\n head.appendChild(script)\n}\n\nfunction setAttributes(script, attrs) {\n for (var attr in attrs) {\n script.setAttribute(attr, attrs[attr]);\n }\n}\n\nfunction stdOnEnd (script, cb) {\n script.onload = function () {\n this.onerror = this.onload = null\n cb(null, script)\n }\n script.onerror = function () {\n // this.onload = null here is necessary\n // because even IE9 works not like others\n this.onerror = this.onload = null\n cb(new Error('Failed to load ' + this.src), script)\n }\n}\n\nfunction ieOnEnd (script, cb) {\n script.onreadystatechange = function () {\n if (this.readyState != 'complete' && this.readyState != 'loaded') return\n this.onreadystatechange = null\n cb(null, script) // there is no way to catch loading errors in IE8\n }\n}\n","// Copyright (c) 2013 Pieroxy <pieroxy@pieroxy.net>\n// This work is free. You can redistribute it and/or modify it\n// under the terms of the WTFPL, Version 2\n// For more information see LICENSE.txt or http://www.wtfpl.net/\n//\n// For more information, the home page:\n// http://pieroxy.net/blog/pages/lz-string/testing.html\n//\n// LZ-based compression algorithm, version 1.4.4\nvar LZString = (function() {\n\n// private property\nvar f = String.fromCharCode;\nvar keyStrBase64 = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\nvar keyStrUriSafe = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$\";\nvar baseReverseDic = {};\n\nfunction getBaseValue(alphabet, character) {\n if (!baseReverseDic[alphabet]) {\n baseReverseDic[alphabet] = {};\n for (var i=0 ; i<alphabet.length ; i++) {\n baseReverseDic[alphabet][alphabet.charAt(i)] = i;\n }\n }\n return baseReverseDic[alphabet][character];\n}\n\nvar LZString = {\n compressToBase64 : function (input) {\n if (input == null) return \"\";\n var res = LZString._compress(input, 6, function(a){return keyStrBase64.charAt(a);});\n switch (res.length % 4) { // To produce valid Base64\n default: // When could this happen ?\n case 0 : return res;\n case 1 : return res+\"===\";\n case 2 : return res+\"==\";\n case 3 : return res+\"=\";\n }\n },\n\n decompressFromBase64 : function (input) {\n if (input == null) return \"\";\n if (input == \"\") return null;\n return LZString._decompress(input.length, 32, function(index) { return getBaseValue(keyStrBase64, input.charAt(index)); });\n },\n\n compressToUTF16 : function (input) {\n if (input == null) return \"\";\n return LZString._compress(input, 15, function(a){return f(a+32);}) + \" \";\n },\n\n decompressFromUTF16: function (compressed) {\n if (compressed == null) return \"\";\n if (compressed == \"\") return null;\n return LZString._decompress(compressed.length, 16384, function(index) { return compressed.charCodeAt(index) - 32; });\n },\n\n //compress into uint8array (UCS-2 big endian format)\n compressToUint8Array: function (uncompressed) {\n var compressed = LZString.compress(uncompressed);\n var buf=new Uint8Array(compressed.length*2); // 2 bytes per character\n\n for (var i=0, TotalLen=compressed.length; i<TotalLen; i++) {\n var current_value = compressed.charCodeAt(i);\n buf[i*2] = current_value >>> 8;\n buf[i*2+1] = current_value % 256;\n }\n return buf;\n },\n\n //decompress from uint8array (UCS-2 big endian format)\n decompressFromUint8Array:function (compressed) {\n if (compressed===null || compressed===undefined){\n return LZString.decompress(compressed);\n } else {\n var buf=new Array(compressed.length/2); // 2 bytes per character\n for (var i=0, TotalLen=buf.length; i<TotalLen; i++) {\n buf[i]=compressed[i*2]*256+compressed[i*2+1];\n }\n\n var result = [];\n buf.forEach(function (c) {\n result.push(f(c));\n });\n return LZString.decompress(result.join(''));\n\n }\n\n },\n\n\n //compress into a string that is already URI encoded\n compressToEncodedURIComponent: function (input) {\n if (input == null) return \"\";\n return LZString._compress(input, 6, function(a){return keyStrUriSafe.charAt(a);});\n },\n\n //decompress from an output of compressToEncodedURIComponent\n decompressFromEncodedURIComponent:function (input) {\n if (input == null) return \"\";\n if (input == \"\") return null;\n input = input.replace(/ /g, \"+\");\n return LZString._decompress(input.length, 32, function(index) { return getBaseValue(keyStrUriSafe, input.charAt(index)); });\n },\n\n compress: function (uncompressed) {\n return LZString._compress(uncompressed, 16, function(a){return f(a);});\n },\n _compress: function (uncompressed, bitsPerChar, getCharFromInt) {\n if (uncompressed == null) return \"\";\n var i, value,\n context_dictionary= {},\n context_dictionaryToCreate= {},\n context_c=\"\",\n context_wc=\"\",\n context_w=\"\",\n context_enlargeIn= 2, // Compensate for the first entry which should not count\n context_dictSize= 3,\n context_numBits= 2,\n context_data=[],\n context_data_val=0,\n context_data_position=0,\n ii;\n\n for (ii = 0; ii < uncompressed.length; ii += 1) {\n context_c = uncompressed.charAt(ii);\n if (!Object.prototype.hasOwnProperty.call(context_dictionary,context_c)) {\n context_dictionary[context_c] = context_dictSize++;\n context_dictionaryToCreate[context_c] = true;\n }\n\n context_wc = context_w + context_c;\n if (Object.prototype.hasOwnProperty.call(context_dictionary,context_wc)) {\n context_w = context_wc;\n } else {\n if (Object.prototype.hasOwnProperty.call(context_dictionaryToCreate,context_w)) {\n if (context_w.charCodeAt(0)<256) {\n for (i=0 ; i<context_numBits ; i++) {\n context_data_val = (context_data_val << 1);\n if (context_data_position == bitsPerChar-1) {\n context_data_position = 0;\n context_data.push(getCharFromInt(context_data_val));\n context_data_val = 0;\n } else {\n context_data_position++;\n }\n }\n value = context_w.charCodeAt(0);\n for (i=0 ; i<8 ; i++) {\n context_data_val = (context_data_val << 1) | (value&1);\n if (context_data_position == bitsPerChar-1) {\n context_data_position = 0;\n context_data.push(getCharFromInt(context_data_val));\n context_data_val = 0;\n } else {\n context_data_position++;\n }\n value = value >> 1;\n }\n } else {\n value = 1;\n for (i=0 ; i<context_numBits ; i++) {\n context_data_val = (context_data_val << 1) | value;\n if (context_data_position ==bitsPerChar-1) {\n context_data_position = 0;\n context_data.push(getCharFromInt(context_data_val));\n context_data_val = 0;\n } else {\n context_data_position++;\n }\n value = 0;\n }\n value = context_w.charCodeAt(0);\n for (i=0 ; i<16 ; i++) {\n context_data_val = (context_data_val << 1) | (value&1);\n if (context_data_position == bitsPerChar-1) {\n context_data_position = 0;\n context_data.push(getCharFromInt(context_data_val));\n context_data_val = 0;\n } else {\n context_data_position++;\n }\n value = value >> 1;\n }\n }\n context_enlargeIn--;\n if (context_enlargeIn == 0) {\n context_enlargeIn = Math.pow(2, context_numBits);\n context_numBits++;\n }\n delete context_dictionaryToCreate[context_w];\n } else {\n value = context_dictionary[context_w];\n for (i=0 ; i<context_numBits ; i++) {\n context_data_val = (context_data_val << 1) | (value&1);\n if (context_data_position == bitsPerChar-1) {\n context_data_position = 0;\n context_data.push(getCharFromInt(context_data_val));\n context_data_val = 0;\n } else {\n context_data_position++;\n }\n value = value >> 1;\n }\n\n\n }\n context_enlargeIn--;\n if (context_enlargeIn == 0) {\n context_enlargeIn = Math.pow(2, context_numBits);\n context_numBits++;\n }\n // Add wc to the dictionary.\n context_dictionary[context_wc] = context_dictSize++;\n context_w = String(context_c);\n }\n }\n\n // Output the code for w.\n if (context_w !== \"\") {\n if (Object.prototype.hasOwnProperty.call(context_dictionaryToCreate,context_w)) {\n if (context_w.charCodeAt(0)<256) {\n for (i=0 ; i<context_numBits ; i++) {\n context_data_val = (context_data_val << 1);\n if (context_data_position == bitsPerChar-1) {\n context_data_position = 0;\n context_data.push(getCharFromInt(context_data_val));\n context_data_val = 0;\n } else {\n context_data_position++;\n }\n }\n value = context_w.charCodeAt(0);\n for (i=0 ; i<8 ; i++) {\n context_data_val = (context_data_val << 1) | (value&1);\n if (context_data_position == bitsPerChar-1) {\n context_data_position = 0;\n context_data.push(getCharFromInt(context_data_val));\n context_data_val = 0;\n } else {\n context_data_position++;\n }\n value = value >> 1;\n }\n } else {\n value = 1;\n for (i=0 ; i<context_numBits ; i++) {\n context_data_val = (context_data_val << 1) | value;\n if (context_data_position == bitsPerChar-1) {\n context_data_position = 0;\n context_data.push(getCharFromInt(context_data_val));\n context_data_val = 0;\n } else {\n context_data_position++;\n }\n value = 0;\n }\n value = context_w.charCodeAt(0);\n for (i=0 ; i<16 ; i++) {\n context_data_val = (context_data_val << 1) | (value&1);\n if (context_data_position == bitsPerChar-1) {\n context_data_position = 0;\n context_data.push(getCharFromInt(context_data_val));\n context_data_val = 0;\n } else {\n context_data_position++;\n }\n value = value >> 1;\n }\n }\n context_enlargeIn--;\n if (context_enlargeIn == 0) {\n context_enlargeIn = Math.pow(2, context_numBits);\n context_numBits++;\n }\n delete context_dictionaryToCreate[context_w];\n } else {\n value = context_dictionary[context_w];\n for (i=0 ; i<context_numBits ; i++) {\n context_data_val = (context_data_val << 1) | (value&1);\n if (context_data_position == bitsPerChar-1) {\n context_data_position = 0;\n context_data.push(getCharFromInt(context_data_val));\n context_data_val = 0;\n } else {\n context_data_position++;\n }\n value = value >> 1;\n }\n\n\n }\n context_enlargeIn--;\n if (context_enlargeIn == 0) {\n context_enlargeIn = Math.pow(2, context_numBits);\n context_numBits++;\n }\n }\n\n // Mark the end of the stream\n value = 2;\n for (i=0 ; i<context_numBits ; i++) {\n context_data_val = (context_data_val << 1) | (value&1);\n if (context_data_position == bitsPerChar-1) {\n context_data_position = 0;\n context_data.push(getCharFromInt(context_data_val));\n context_data_val = 0;\n } else {\n context_data_position++;\n }\n value = value >> 1;\n }\n\n // Flush the last char\n while (true) {\n context_data_val = (context_data_val << 1);\n if (context_data_position == bitsPerChar-1) {\n context_data.push(getCharFromInt(context_data_val));\n break;\n }\n else context_data_position++;\n }\n return context_data.join('');\n },\n\n decompress: function (compressed) {\n if (compressed == null) return \"\";\n if (compressed == \"\") return null;\n return LZString._decompress(compressed.length, 32768, function(index) { return compressed.charCodeAt(index); });\n },\n\n _decompress: function (length, resetValue, getNextValue) {\n var dictionary = [],\n next,\n enlargeIn = 4,\n dictSize = 4,\n numBits = 3,\n entry = \"\",\n result = [],\n i,\n w,\n bits, resb, maxpower, power,\n c,\n data = {val:getNextValue(0), position:resetValue, index:1};\n\n for (i = 0; i < 3; i += 1) {\n dictionary[i] = i;\n }\n\n bits = 0;\n maxpower = Math.pow(2,2);\n power=1;\n while (power!=maxpower) {\n resb = data.val & data.position;\n data.position >>= 1;\n if (data.position == 0) {\n data.position = resetValue;\n data.val = getNextValue(data.index++);\n }\n bits |= (resb>0 ? 1 : 0) * power;\n power <<= 1;\n }\n\n switch (next = bits) {\n case 0:\n bits = 0;\n maxpower = Math.pow(2,8);\n power=1;\n while (power!=maxpower) {\n resb = data.val & data.position;\n data.position >>= 1;\n if (data.position == 0) {\n data.position = resetValue;\n data.val = getNextValue(data.index++);\n }\n bits |= (resb>0 ? 1 : 0) * power;\n power <<= 1;\n }\n c = f(bits);\n break;\n case 1:\n bits = 0;\n maxpower = Math.pow(2,16);\n power=1;\n while (power!=maxpower) {\n resb = data.val & data.position;\n data.position >>= 1;\n if (data.position == 0) {\n data.position = resetValue;\n data.val = getNextValue(data.index++);\n }\n bits |= (resb>0 ? 1 : 0) * power;\n power <<= 1;\n }\n c = f(bits);\n break;\n case 2:\n return \"\";\n }\n dictionary[3] = c;\n w = c;\n result.push(c);\n while (true) {\n if (data.index > length) {\n return \"\";\n }\n\n bits = 0;\n maxpower = Math.pow(2,numBits);\n power=1;\n while (power!=maxpower) {\n resb = data.val & data.position;\n data.position >>= 1;\n if (data.position == 0) {\n data.position = resetValue;\n data.val = getNextValue(data.index++);\n }\n bits |= (resb>0 ? 1 : 0) * power;\n power <<= 1;\n }\n\n switch (c = bits) {\n case 0:\n bits = 0;\n maxpower = Math.pow(2,8);\n power=1;\n while (power!=maxpower) {\n resb = data.val & data.position;\n data.position >>= 1;\n if (data.position == 0) {\n data.position = resetValue;\n data.val = getNextValue(data.index++);\n }\n bits |= (resb>0 ? 1 : 0) * power;\n power <<= 1;\n }\n\n dictionary[dictSize++] = f(bits);\n c = dictSize-1;\n enlargeIn--;\n break;\n case 1:\n bits = 0;\n maxpower = Math.pow(2,16);\n power=1;\n while (power!=maxpower) {\n resb = data.val & data.position;\n data.position >>= 1;\n if (data.position == 0) {\n data.position = resetValue;\n data.val = getNextValue(data.index++);\n }\n bits |= (resb>0 ? 1 : 0) * power;\n power <<= 1;\n }\n dictionary[dictSize++] = f(bits);\n c = dictSize-1;\n enlargeIn--;\n break;\n case 2:\n return result.join('');\n }\n\n if (enlargeIn == 0) {\n enlargeIn = Math.pow(2, numBits);\n numBits++;\n }\n\n if (dictionary[c]) {\n entry = dictionary[c];\n } else {\n if (c === dictSize) {\n entry = w + w.charAt(0);\n } else {\n return null;\n }\n }\n result.push(entry);\n\n // Add w+entry[0] to the dictionary.\n dictionary[dictSize++] = w + entry.charAt(0);\n enlargeIn--;\n\n w = entry;\n\n if (enlargeIn == 0) {\n enlargeIn = Math.pow(2, numBits);\n numBits++;\n }\n\n }\n }\n};\n return LZString;\n})();\n\nif (typeof define === 'function' && define.amd) {\n define(function () { return LZString; });\n} else if( typeof module !== 'undefined' && module != null ) {\n module.exports = LZString\n}\n","//! moment.js locale configuration\n//! locale : Afrikaans [af]\n//! author : Werner Mollentze : https://github.com/wernerm\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var af = moment.defineLocale('af', {\n months: 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'),\n weekdays: 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split(\n '_'\n ),\n weekdaysShort: 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),\n weekdaysMin: 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),\n meridiemParse: /vm|nm/i,\n isPM: function (input) {\n return /^nm$/i.test(input);\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'vm' : 'VM';\n } else {\n return isLower ? 'nm' : 'NM';\n }\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Vandag om] LT',\n nextDay: '[Môre om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[Gister om] LT',\n lastWeek: '[Laas] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'oor %s',\n past: '%s gelede',\n s: \"'n paar sekondes\",\n ss: '%d sekondes',\n m: \"'n minuut\",\n mm: '%d minute',\n h: \"'n uur\",\n hh: '%d ure',\n d: \"'n dag\",\n dd: '%d dae',\n M: \"'n maand\",\n MM: '%d maande',\n y: \"'n jaar\",\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n ); // Thanks to Joris Röling : https://github.com/jjupiter\n },\n week: {\n dow: 1, // Maandag is die eerste dag van die week.\n doy: 4, // Die week wat die 4de Januarie bevat is die eerste week van die jaar.\n },\n });\n\n return af;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Algeria) [ar-dz]\n//! author : Amine Roukh: https://github.com/Amine27\n//! author : Abdel Said: https://github.com/abdelsaid\n//! author : Ahmed Elkhatib\n//! author : forabi https://github.com/forabi\n//! author : Noureddine LOUAHEDJ : https://github.com/noureddinem\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واØدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واØدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واØدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واØد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واØد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واØد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'جانÙÙŠ',\n 'ÙÙŠÙري',\n 'مارس',\n 'Ø£Ùريل',\n 'ماي',\n 'جوان',\n 'جويلية',\n 'أوت',\n 'سبتمبر',\n 'أكتوبر',\n 'نوÙمبر',\n 'ديسمبر',\n ];\n\n var arDz = moment.defineLocale('ar-dz', {\n months: months,\n monthsShort: months,\n weekdays: 'الأØد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'Ø£Øد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'Ø_Ù†_Ø«_ر_Ø®_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|Ù…/,\n isPM: function (input) {\n return 'Ù…' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'Ù…';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n postformat: function (string) {\n return string.replace(/,/g, 'ØŒ');\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arDz;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Kuwait) [ar-kw]\n//! author : Nusret Parlak: https://github.com/nusretparlak\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arKw = moment.defineLocale('ar-kw', {\n months: 'يناير_Ùبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_Ùبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n weekdays: 'الأØد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'اØد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'Ø_Ù†_Ø«_ر_Ø®_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ÙÙŠ %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return arKw;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Libya) [ar-ly]\n//! author : Ali Hmer: https://github.com/kikoanis\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '1',\n 2: '2',\n 3: '3',\n 4: '4',\n 5: '5',\n 6: '6',\n 7: '7',\n 8: '8',\n 9: '9',\n 0: '0',\n },\n pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واØدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واØدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واØدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واØد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واØد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واØد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'يناير',\n 'Ùبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوÙمبر',\n 'ديسمبر',\n ];\n\n var arLy = moment.defineLocale('ar-ly', {\n months: months,\n monthsShort: months,\n weekdays: 'الأØد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'Ø£Øد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'Ø_Ù†_Ø«_ر_Ø®_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|Ù…/,\n isPM: function (input) {\n return 'Ù…' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'Ù…';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n preparse: function (string) {\n return string.replace(/ØŒ/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, 'ØŒ');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return arLy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Morocco) [ar-ma]\n//! author : ElFadili Yassine : https://github.com/ElFadiliY\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arMa = moment.defineLocale('ar-ma', {\n months: 'يناير_Ùبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_Ùبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n weekdays: 'الأØد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'اØد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'Ø_Ù†_Ø«_ر_Ø®_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ÙÙŠ %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arMa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Saudi Arabia) [ar-sa]\n//! author : Suhail Alkowaileet : https://github.com/xsoh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: 'Ù¡',\n 2: 'Ù¢',\n 3: 'Ù£',\n 4: 'Ù¤',\n 5: 'Ù¥',\n 6: 'Ù¦',\n 7: 'Ù§',\n 8: 'Ù¨',\n 9: 'Ù©',\n 0: 'Ù ',\n },\n numberMap = {\n 'Ù¡': '1',\n 'Ù¢': '2',\n 'Ù£': '3',\n 'Ù¤': '4',\n 'Ù¥': '5',\n 'Ù¦': '6',\n 'Ù§': '7',\n 'Ù¨': '8',\n 'Ù©': '9',\n 'Ù ': '0',\n };\n\n var arSa = moment.defineLocale('ar-sa', {\n months: 'يناير_Ùبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوÙمبر_ديسمبر'.split(\n '_'\n ),\n monthsShort:\n 'يناير_Ùبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوÙمبر_ديسمبر'.split(\n '_'\n ),\n weekdays: 'الأØد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'Ø£Øد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'Ø_Ù†_Ø«_ر_Ø®_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|Ù…/,\n isPM: function (input) {\n return 'Ù…' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'Ù…';\n }\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ÙÙŠ %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/ØŒ/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, 'ØŒ');\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return arSa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic (Tunisia) [ar-tn]\n//! author : Nader Toukabri : https://github.com/naderio\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var arTn = moment.defineLocale('ar-tn', {\n months: 'جانÙÙŠ_ÙÙŠÙري_مارس_Ø£Ùريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوÙمبر_ديسمبر'.split(\n '_'\n ),\n monthsShort:\n 'جانÙÙŠ_ÙÙŠÙري_مارس_Ø£Ùريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوÙمبر_ديسمبر'.split(\n '_'\n ),\n weekdays: 'الأØد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'Ø£Øد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'Ø_Ù†_Ø«_ر_Ø®_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ÙÙŠ %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return arTn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Arabic [ar]\n//! author : Abdel Said: https://github.com/abdelsaid\n//! author : Ahmed Elkhatib\n//! author : forabi https://github.com/forabi\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: 'Ù¡',\n 2: 'Ù¢',\n 3: 'Ù£',\n 4: 'Ù¤',\n 5: 'Ù¥',\n 6: 'Ù¦',\n 7: 'Ù§',\n 8: 'Ù¨',\n 9: 'Ù©',\n 0: 'Ù ',\n },\n numberMap = {\n 'Ù¡': '1',\n 'Ù¢': '2',\n 'Ù£': '3',\n 'Ù¤': '4',\n 'Ù¥': '5',\n 'Ù¦': '6',\n 'Ù§': '7',\n 'Ù¨': '8',\n 'Ù©': '9',\n 'Ù ': '0',\n },\n pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واØدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واØدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واØدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واØد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واØد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واØد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'يناير',\n 'Ùبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوÙمبر',\n 'ديسمبر',\n ];\n\n var ar = moment.defineLocale('ar', {\n months: months,\n monthsShort: months,\n weekdays: 'الأØد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'Ø£Øد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'Ø_Ù†_Ø«_ر_Ø®_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|Ù…/,\n isPM: function (input) {\n return 'Ù…' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'Ù…';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/ØŒ/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, 'ØŒ');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return ar;\n\n})));\n","//! moment.js locale configuration\n//! locale : Azerbaijani [az]\n//! author : topchiyev : https://github.com/topchiyev\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: '-inci',\n 5: '-inci',\n 8: '-inci',\n 70: '-inci',\n 80: '-inci',\n 2: '-nci',\n 7: '-nci',\n 20: '-nci',\n 50: '-nci',\n 3: '-üncü',\n 4: '-üncü',\n 100: '-üncü',\n 6: '-ncı',\n 9: '-uncu',\n 10: '-uncu',\n 30: '-uncu',\n 60: '-ıncı',\n 90: '-ıncı',\n };\n\n var az = moment.defineLocale('az', {\n months: 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split(\n '_'\n ),\n monthsShort: 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'),\n weekdays:\n 'Bazar_Bazar ertÉ™si_ÇərÅŸÉ™nbÉ™ axÅŸamı_ÇərÅŸÉ™nbÉ™_CümÉ™ axÅŸamı_CümÉ™_ŞənbÉ™'.split(\n '_'\n ),\n weekdaysShort: 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'),\n weekdaysMin: 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün saat] LT',\n nextDay: '[sabah saat] LT',\n nextWeek: '[gÉ™lÉ™n hÉ™ftÉ™] dddd [saat] LT',\n lastDay: '[dünÉ™n] LT',\n lastWeek: '[keçən hÉ™ftÉ™] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s sonra',\n past: '%s É™vvÉ™l',\n s: 'bir neçə saniyÉ™',\n ss: '%d saniyÉ™',\n m: 'bir dÉ™qiqÉ™',\n mm: '%d dÉ™qiqÉ™',\n h: 'bir saat',\n hh: '%d saat',\n d: 'bir gün',\n dd: '%d gün',\n M: 'bir ay',\n MM: '%d ay',\n y: 'bir il',\n yy: '%d il',\n },\n meridiemParse: /gecÉ™|sÉ™hÉ™r|gündüz|axÅŸam/,\n isPM: function (input) {\n return /^(gündüz|axÅŸam)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'gecÉ™';\n } else if (hour < 12) {\n return 'sÉ™hÉ™r';\n } else if (hour < 17) {\n return 'gündüz';\n } else {\n return 'axÅŸam';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,\n ordinal: function (number) {\n if (number === 0) {\n // special case for zero\n return number + '-ıncı';\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return az;\n\n})));\n","//! moment.js locale configuration\n//! locale : Belarusian [be]\n//! author : Dmitry Demidov : https://github.com/demidov91\n//! author: Praleska: http://praleska.pro/\n//! Author : Menelion Elensúle : https://github.com/Oire\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'Ñекунда_Ñекунды_Ñекунд' : 'Ñекунду_Ñекунды_Ñекунд',\n mm: withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін',\n hh: withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін',\n dd: 'дзень_дні_дзён',\n MM: 'меÑÑц_меÑÑцы_меÑÑцаў',\n yy: 'год_гады_гадоў',\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвіліна' : 'хвіліну';\n } else if (key === 'h') {\n return withoutSuffix ? 'гадзіна' : 'гадзіну';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n\n var be = moment.defineLocale('be', {\n months: {\n format: 'ÑтудзенÑ_лютага_Ñакавіка_краÑавіка_траўнÑ_чÑрвенÑ_ліпенÑ_жніўнÑ_вераÑнÑ_каÑтрычніка_ліÑтапада_ÑнежнÑ'.split(\n '_'\n ),\n standalone:\n 'Ñтудзень_люты_Ñакавік_краÑавік_травень_чÑрвень_ліпень_жнівень_вераÑень_каÑтрычнік_ліÑтапад_Ñнежань'.split(\n '_'\n ),\n },\n monthsShort:\n 'Ñтуд_лют_Ñак_краÑ_трав_чÑрв_ліп_жнів_вер_каÑÑ‚_ліÑÑ‚_Ñнеж'.split('_'),\n weekdays: {\n format: 'нÑдзелю_панÑдзелак_аўторак_Ñераду_чацвер_пÑтніцу_Ñуботу'.split(\n '_'\n ),\n standalone:\n 'нÑдзелÑ_панÑдзелак_аўторак_Ñерада_чацвер_пÑтніца_Ñубота'.split(\n '_'\n ),\n isFormat: /\\[ ?[Ууў] ?(?:мінулую|наÑтупную)? ?\\] ?dddd/,\n },\n weekdaysShort: 'нд_пн_ат_ÑÑ€_чц_пт_Ñб'.split('_'),\n weekdaysMin: 'нд_пн_ат_ÑÑ€_чц_пт_Ñб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY г.',\n LLL: 'D MMMM YYYY г., HH:mm',\n LLLL: 'dddd, D MMMM YYYY г., HH:mm',\n },\n calendar: {\n sameDay: '[Ð¡Ñ‘Ð½Ð½Ñ Ñž] LT',\n nextDay: '[Заўтра Ñž] LT',\n lastDay: '[Учора Ñž] LT',\n nextWeek: function () {\n return '[У] dddd [Ñž] LT';\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return '[У мінулую] dddd [Ñž] LT';\n case 1:\n case 2:\n case 4:\n return '[У мінулы] dddd [Ñž] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'праз %s',\n past: '%s таму',\n s: 'некалькі Ñекунд',\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: relativeTimeWithPlural,\n hh: relativeTimeWithPlural,\n d: 'дзень',\n dd: relativeTimeWithPlural,\n M: 'меÑÑц',\n MM: relativeTimeWithPlural,\n y: 'год',\n yy: relativeTimeWithPlural,\n },\n meridiemParse: /ночы|раніцы|днÑ|вечара/,\n isPM: function (input) {\n return /^(днÑ|вечара)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночы';\n } else if (hour < 12) {\n return 'раніцы';\n } else if (hour < 17) {\n return 'днÑ';\n } else {\n return 'вечара';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(Ñ–|Ñ‹|га)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return (number % 10 === 2 || number % 10 === 3) &&\n number % 100 !== 12 &&\n number % 100 !== 13\n ? number + '-Ñ–'\n : number + '-Ñ‹';\n case 'D':\n return number + '-га';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return be;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bulgarian [bg]\n//! author : Krasen Borisov : https://github.com/kraz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var bg = moment.defineLocale('bg', {\n months: 'Ñнуари_февруари_март_април_май_юни_юли_авгуÑÑ‚_Ñептември_октомври_ноември_декември'.split(\n '_'\n ),\n monthsShort: 'Ñну_фев_мар_апр_май_юни_юли_авг_Ñеп_окт_ное_дек'.split('_'),\n weekdays: 'неделÑ_понеделник_вторник_ÑÑ€Ñда_четвъртък_петък_Ñъбота'.split(\n '_'\n ),\n weekdaysShort: 'нед_пон_вто_ÑÑ€Ñ_чет_пет_Ñъб'.split('_'),\n weekdaysMin: 'нд_пн_вт_ÑÑ€_чт_пт_Ñб'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Ð”Ð½ÐµÑ Ð²] LT',\n nextDay: '[Утре в] LT',\n nextWeek: 'dddd [в] LT',\n lastDay: '[Вчера в] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[Миналата] dddd [в] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[МиналиÑ] dddd [в] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Ñлед %s',\n past: 'преди %s',\n s: 'нÑколко Ñекунди',\n ss: '%d Ñекунди',\n m: 'минута',\n mm: '%d минути',\n h: 'чаÑ',\n hh: '%d чаÑа',\n d: 'ден',\n dd: '%d дена',\n w: 'Ñедмица',\n ww: '%d Ñедмици',\n M: 'меÑец',\n MM: '%d меÑеца',\n y: 'година',\n yy: '%d години',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal: function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return bg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bambara [bm]\n//! author : Estelle Comment : https://github.com/estellecomment\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var bm = moment.defineLocale('bm', {\n months: 'Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_MÉ›kalo_ZuwÉ›nkalo_Zuluyekalo_Utikalo_SÉ›tanburukalo_É”kutÉ”burukalo_Nowanburukalo_Desanburukalo'.split(\n '_'\n ),\n monthsShort: 'Zan_Few_Mar_Awi_MÉ›_Zuw_Zul_Uti_SÉ›t_É”ku_Now_Des'.split('_'),\n weekdays: 'Kari_NtÉ›nÉ›n_Tarata_Araba_Alamisa_Juma_Sibiri'.split('_'),\n weekdaysShort: 'Kar_NtÉ›_Tar_Ara_Ala_Jum_Sib'.split('_'),\n weekdaysMin: 'Ka_Nt_Ta_Ar_Al_Ju_Si'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'MMMM [tile] D [san] YYYY',\n LLL: 'MMMM [tile] D [san] YYYY [lÉ›rÉ›] HH:mm',\n LLLL: 'dddd MMMM [tile] D [san] YYYY [lÉ›rÉ›] HH:mm',\n },\n calendar: {\n sameDay: '[Bi lÉ›rÉ›] LT',\n nextDay: '[Sini lÉ›rÉ›] LT',\n nextWeek: 'dddd [don lÉ›rÉ›] LT',\n lastDay: '[Kunu lÉ›rÉ›] LT',\n lastWeek: 'dddd [tÉ›mÉ›nen lÉ›rÉ›] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s kÉ”nÉ”',\n past: 'a bÉ› %s bÉ”',\n s: 'sanga dama dama',\n ss: 'sekondi %d',\n m: 'miniti kelen',\n mm: 'miniti %d',\n h: 'lÉ›rÉ› kelen',\n hh: 'lÉ›rÉ› %d',\n d: 'tile kelen',\n dd: 'tile %d',\n M: 'kalo kelen',\n MM: 'kalo %d',\n y: 'san kelen',\n yy: 'san %d',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return bm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bengali (Bangladesh) [bn-bd]\n//! author : Asraf Hossain Patoary : https://github.com/ashwoolford\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '১',\n 2: '২',\n 3: '৩',\n 4: '৪',\n 5: '৫',\n 6: '৬',\n 7: 'à§',\n 8: '৮',\n 9: '৯',\n 0: '০',\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n 'à§': '7',\n '৮': '8',\n '৯': '9',\n '০': '0',\n };\n\n var bnBd = moment.defineLocale('bn-bd', {\n months: 'জানà§à§Ÿà¦¾à¦°à¦¿_ফেবà§à¦°à§à§Ÿà¦¾à¦°à¦¿_মারà§à¦š_à¦à¦ªà§à¦°à¦¿à¦²_মে_জà§à¦¨_জà§à¦²à¦¾à¦‡_আগসà§à¦Ÿ_সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°_অকà§à¦Ÿà§‹à¦¬à¦°_নà¦à§‡à¦®à§à¦¬à¦°_ডিসেমà§à¦¬à¦°'.split(\n '_'\n ),\n monthsShort:\n 'জানà§_ফেবà§à¦°à§_মারà§à¦š_à¦à¦ªà§à¦°à¦¿à¦²_মে_জà§à¦¨_জà§à¦²à¦¾à¦‡_আগসà§à¦Ÿ_সেপà§à¦Ÿ_অকà§à¦Ÿà§‹_নà¦à§‡_ডিসে'.split(\n '_'\n ),\n weekdays: 'রবিবার_সোমবার_মঙà§à¦—লবার_বà§à¦§à¦¬à¦¾à¦°_বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°_শà§à¦•à§à¦°à¦¬à¦¾à¦°_শনিবার'.split(\n '_'\n ),\n weekdaysShort: 'রবি_সোম_মঙà§à¦—ল_বà§à¦§_বৃহসà§à¦ªà¦¤à¦¿_শà§à¦•à§à¦°_শনি'.split('_'),\n weekdaysMin: 'রবি_সোম_মঙà§à¦—ল_বà§à¦§_বৃহ_শà§à¦•à§à¦°_শনি'.split('_'),\n longDateFormat: {\n LT: 'A h:mm সময়',\n LTS: 'A h:mm:ss সময়',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm সময়',\n LLLL: 'dddd, D MMMM YYYY, A h:mm সময়',\n },\n calendar: {\n sameDay: '[আজ] LT',\n nextDay: '[আগামীকাল] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[গতকাল] LT',\n lastWeek: '[গত] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s পরে',\n past: '%s আগে',\n s: 'কয়েক সেকেনà§à¦¡',\n ss: '%d সেকেনà§à¦¡',\n m: 'à¦à¦• মিনিট',\n mm: '%d মিনিট',\n h: 'à¦à¦• ঘনà§à¦Ÿà¦¾',\n hh: '%d ঘনà§à¦Ÿà¦¾',\n d: 'à¦à¦• দিন',\n dd: '%d দিন',\n M: 'à¦à¦• মাস',\n MM: '%d মাস',\n y: 'à¦à¦• বছর',\n yy: '%d বছর',\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬à§à§®à§¯à§¦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n\n meridiemParse: /রাত|à¦à§‹à¦°|সকাল|দà§à¦ªà§à¦°|বিকাল|সনà§à¦§à§à¦¯à¦¾|রাত/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'রাত') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'à¦à§‹à¦°') {\n return hour;\n } else if (meridiem === 'সকাল') {\n return hour;\n } else if (meridiem === 'দà§à¦ªà§à¦°') {\n return hour >= 3 ? hour : hour + 12;\n } else if (meridiem === 'বিকাল') {\n return hour + 12;\n } else if (meridiem === 'সনà§à¦§à§à¦¯à¦¾') {\n return hour + 12;\n }\n },\n\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 6) {\n return 'à¦à§‹à¦°';\n } else if (hour < 12) {\n return 'সকাল';\n } else if (hour < 15) {\n return 'দà§à¦ªà§à¦°';\n } else if (hour < 18) {\n return 'বিকাল';\n } else if (hour < 20) {\n return 'সনà§à¦§à§à¦¯à¦¾';\n } else {\n return 'রাত';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bnBd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bengali [bn]\n//! author : Kaushik Gandhi : https://github.com/kaushikgandhi\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '১',\n 2: '২',\n 3: '৩',\n 4: '৪',\n 5: '৫',\n 6: '৬',\n 7: 'à§',\n 8: '৮',\n 9: '৯',\n 0: '০',\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n 'à§': '7',\n '৮': '8',\n '৯': '9',\n '০': '0',\n };\n\n var bn = moment.defineLocale('bn', {\n months: 'জানà§à§Ÿà¦¾à¦°à¦¿_ফেবà§à¦°à§à§Ÿà¦¾à¦°à¦¿_মারà§à¦š_à¦à¦ªà§à¦°à¦¿à¦²_মে_জà§à¦¨_জà§à¦²à¦¾à¦‡_আগসà§à¦Ÿ_সেপà§à¦Ÿà§‡à¦®à§à¦¬à¦°_অকà§à¦Ÿà§‹à¦¬à¦°_নà¦à§‡à¦®à§à¦¬à¦°_ডিসেমà§à¦¬à¦°'.split(\n '_'\n ),\n monthsShort:\n 'জানà§_ফেবà§à¦°à§_মারà§à¦š_à¦à¦ªà§à¦°à¦¿à¦²_মে_জà§à¦¨_জà§à¦²à¦¾à¦‡_আগসà§à¦Ÿ_সেপà§à¦Ÿ_অকà§à¦Ÿà§‹_নà¦à§‡_ডিসে'.split(\n '_'\n ),\n weekdays: 'রবিবার_সোমবার_মঙà§à¦—লবার_বà§à¦§à¦¬à¦¾à¦°_বৃহসà§à¦ªà¦¤à¦¿à¦¬à¦¾à¦°_শà§à¦•à§à¦°à¦¬à¦¾à¦°_শনিবার'.split(\n '_'\n ),\n weekdaysShort: 'রবি_সোম_মঙà§à¦—ল_বà§à¦§_বৃহসà§à¦ªà¦¤à¦¿_শà§à¦•à§à¦°_শনি'.split('_'),\n weekdaysMin: 'রবি_সোম_মঙà§à¦—ল_বà§à¦§_বৃহ_শà§à¦•à§à¦°_শনি'.split('_'),\n longDateFormat: {\n LT: 'A h:mm সময়',\n LTS: 'A h:mm:ss সময়',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm সময়',\n LLLL: 'dddd, D MMMM YYYY, A h:mm সময়',\n },\n calendar: {\n sameDay: '[আজ] LT',\n nextDay: '[আগামীকাল] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[গতকাল] LT',\n lastWeek: '[গত] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s পরে',\n past: '%s আগে',\n s: 'কয়েক সেকেনà§à¦¡',\n ss: '%d সেকেনà§à¦¡',\n m: 'à¦à¦• মিনিট',\n mm: '%d মিনিট',\n h: 'à¦à¦• ঘনà§à¦Ÿà¦¾',\n hh: '%d ঘনà§à¦Ÿà¦¾',\n d: 'à¦à¦• দিন',\n dd: '%d দিন',\n M: 'à¦à¦• মাস',\n MM: '%d মাস',\n y: 'à¦à¦• বছর',\n yy: '%d বছর',\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬à§à§®à§¯à§¦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /রাত|সকাল|দà§à¦ªà§à¦°|বিকাল|রাত/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'রাত' && hour >= 4) ||\n (meridiem === 'দà§à¦ªà§à¦°' && hour < 5) ||\n meridiem === 'বিকাল'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 10) {\n return 'সকাল';\n } else if (hour < 17) {\n return 'দà§à¦ªà§à¦°';\n } else if (hour < 20) {\n return 'বিকাল';\n } else {\n return 'রাত';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tibetan [bo]\n//! author : Thupten N. Chakrishar : https://github.com/vajradog\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '༡',\n 2: '༢',\n 3: '༣',\n 4: '༤',\n 5: '༥',\n 6: '༦',\n 7: '༧',\n 8: '༨',\n 9: '༩',\n 0: '༠',\n },\n numberMap = {\n '༡': '1',\n '༢': '2',\n '༣': '3',\n '༤': '4',\n '༥': '5',\n '༦': '6',\n '༧': '7',\n '༨': '8',\n '༩': '9',\n '༠': '0',\n };\n\n var bo = moment.defineLocale('bo', {\n months: 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split(\n '_'\n ),\n monthsShort:\n 'ཟླ་1_ཟླ་2_ཟླ་3_ཟླ་4_ཟླ་5_ཟླ་6_ཟླ་7_ཟླ་8_ཟླ་9_ཟླ་10_ཟླ་11_ཟླ་12'.split(\n '_'\n ),\n monthsShortRegex: /^(ཟླ་\\d{1,2})/,\n monthsParseExact: true,\n weekdays:\n 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split(\n '_'\n ),\n weekdaysShort: 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split(\n '_'\n ),\n weekdaysMin: 'ཉི_ཟླ_མིག_ལྷག_ཕུར_སངས_སྤེན'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[དི་རིང] LT',\n nextDay: '[སང་ཉིན] LT',\n nextWeek: '[བདུན་ཕྲག་རྗེས་མ], LT',\n lastDay: '[à½à¼‹à½¦à½„] LT',\n lastWeek: '[བདུན་ཕྲག་མà½à½ ་མ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ལ་',\n past: '%s སྔན་ལ',\n s: 'ལམ་སང',\n ss: '%d སà¾à½¢à¼‹à½†à¼',\n m: 'སà¾à½¢à¼‹à½˜à¼‹à½‚ཅིག',\n mm: '%d སà¾à½¢à¼‹à½˜',\n h: 'ཆུ་ཚོད་གཅིག',\n hh: '%d ཆུ་ཚོད',\n d: 'ཉིན་གཅིག',\n dd: '%d ཉིན་',\n M: 'ཟླ་བ་གཅིག',\n MM: '%d ཟླ་བ',\n y: 'ལོ་གཅིག',\n yy: '%d ལོ',\n },\n preparse: function (string) {\n return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'མཚན་མོ' && hour >= 4) ||\n (meridiem === 'ཉིན་གུང' && hour < 5) ||\n meridiem === 'དགོང་དག'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'མཚན་མོ';\n } else if (hour < 10) {\n return 'ཞོགས་ཀས';\n } else if (hour < 17) {\n return 'ཉིན་གུང';\n } else if (hour < 20) {\n return 'དགོང་དག';\n } else {\n return 'མཚན་མོ';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return bo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Breton [br]\n//! author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function relativeTimeWithMutation(number, withoutSuffix, key) {\n var format = {\n mm: 'munutenn',\n MM: 'miz',\n dd: 'devezh',\n };\n return number + ' ' + mutation(format[key], number);\n }\n function specialMutationForYears(number) {\n switch (lastNumber(number)) {\n case 1:\n case 3:\n case 4:\n case 5:\n case 9:\n return number + ' bloaz';\n default:\n return number + ' vloaz';\n }\n }\n function lastNumber(number) {\n if (number > 9) {\n return lastNumber(number % 10);\n }\n return number;\n }\n function mutation(text, number) {\n if (number === 2) {\n return softMutation(text);\n }\n return text;\n }\n function softMutation(text) {\n var mutationTable = {\n m: 'v',\n b: 'v',\n d: 'z',\n };\n if (mutationTable[text.charAt(0)] === undefined) {\n return text;\n }\n return mutationTable[text.charAt(0)] + text.substring(1);\n }\n\n var monthsParse = [\n /^gen/i,\n /^c[ʼ\\']hwe/i,\n /^meu/i,\n /^ebr/i,\n /^mae/i,\n /^(mez|eve)/i,\n /^gou/i,\n /^eos/i,\n /^gwe/i,\n /^her/i,\n /^du/i,\n /^ker/i,\n ],\n monthsRegex =\n /^(genver|c[ʼ\\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,\n monthsStrictRegex =\n /^(genver|c[ʼ\\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,\n monthsShortStrictRegex =\n /^(gen|c[ʼ\\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,\n fullWeekdaysParse = [\n /^sul/i,\n /^lun/i,\n /^meurzh/i,\n /^merc[ʼ\\']her/i,\n /^yaou/i,\n /^gwener/i,\n /^sadorn/i,\n ],\n shortWeekdaysParse = [\n /^Sul/i,\n /^Lun/i,\n /^Meu/i,\n /^Mer/i,\n /^Yao/i,\n /^Gwe/i,\n /^Sad/i,\n ],\n minWeekdaysParse = [\n /^Su/i,\n /^Lu/i,\n /^Me([^r]|$)/i,\n /^Mer/i,\n /^Ya/i,\n /^Gw/i,\n /^Sa/i,\n ];\n\n var br = moment.defineLocale('br', {\n months: 'Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split(\n '_'\n ),\n monthsShort: 'Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'),\n weekdays: 'Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn'.split('_'),\n weekdaysShort: 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'),\n weekdaysParse: minWeekdaysParse,\n fullWeekdaysParse: fullWeekdaysParse,\n shortWeekdaysParse: shortWeekdaysParse,\n minWeekdaysParse: minWeekdaysParse,\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: monthsStrictRegex,\n monthsShortStrictRegex: monthsShortStrictRegex,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [a viz] MMMM YYYY',\n LLL: 'D [a viz] MMMM YYYY HH:mm',\n LLLL: 'dddd, D [a viz] MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hiziv da] LT',\n nextDay: '[Warcʼhoazh da] LT',\n nextWeek: 'dddd [da] LT',\n lastDay: '[Decʼh da] LT',\n lastWeek: 'dddd [paset da] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'a-benn %s',\n past: '%s ʼzo',\n s: 'un nebeud segondennoù',\n ss: '%d eilenn',\n m: 'ur vunutenn',\n mm: relativeTimeWithMutation,\n h: 'un eur',\n hh: '%d eur',\n d: 'un devezh',\n dd: relativeTimeWithMutation,\n M: 'ur miz',\n MM: relativeTimeWithMutation,\n y: 'ur bloaz',\n yy: specialMutationForYears,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(añ|vet)/,\n ordinal: function (number) {\n var output = number === 1 ? 'añ' : 'vet';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n meridiemParse: /a.m.|g.m./, // goude merenn | a-raok merenn\n isPM: function (token) {\n return token === 'g.m.';\n },\n meridiem: function (hour, minute, isLower) {\n return hour < 12 ? 'a.m.' : 'g.m.';\n },\n });\n\n return br;\n\n})));\n","//! moment.js locale configuration\n//! locale : Bosnian [bs]\n//! author : Nedim Cholich : https://github.com/frontyard\n//! based on (hr) translation by Bojan Marković\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var bs = moment.defineLocale('bs', {\n months: 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_Äetvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._Äet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_Äe_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juÄer u] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n return '[proÅ¡lu] dddd [u] LT';\n case 6:\n return '[proÅ¡le] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[proÅ¡li] dddd [u] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'par sekundi',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: 'dan',\n dd: translate,\n M: 'mjesec',\n MM: translate,\n y: 'godinu',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return bs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Catalan [ca]\n//! author : Juan G. Hurtado : https://github.com/juanghurtado\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ca = moment.defineLocale('ca', {\n months: {\n standalone:\n 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split(\n '_'\n ),\n format: \"de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre\".split(\n '_'\n ),\n isFormat: /D[oD]?(\\s)+MMMM/,\n },\n monthsShort:\n 'gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split(\n '_'\n ),\n weekdaysShort: 'dg._dl._dt._dc._dj._dv._ds.'.split('_'),\n weekdaysMin: 'dg_dl_dt_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [de] YYYY',\n ll: 'D MMM YYYY',\n LLL: 'D MMMM [de] YYYY [a les] H:mm',\n lll: 'D MMM YYYY, H:mm',\n LLLL: 'dddd D MMMM [de] YYYY [a les] H:mm',\n llll: 'ddd D MMM YYYY, H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[avui a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n nextDay: function () {\n return '[demà a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n lastDay: function () {\n return '[ahir a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [passat a ' +\n (this.hours() !== 1 ? 'les' : 'la') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: \"d'aquà %s\",\n past: 'fa %s',\n s: 'uns segons',\n ss: '%d segons',\n m: 'un minut',\n mm: '%d minuts',\n h: 'una hora',\n hh: '%d hores',\n d: 'un dia',\n dd: '%d dies',\n M: 'un mes',\n MM: '%d mesos',\n y: 'un any',\n yy: '%d anys',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal: function (number, period) {\n var output =\n number === 1\n ? 'r'\n : number === 2\n ? 'n'\n : number === 3\n ? 'r'\n : number === 4\n ? 't'\n : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ca;\n\n})));\n","//! moment.js locale configuration\n//! locale : Czech [cs]\n//! author : petrbela : https://github.com/petrbela\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = {\n format: 'leden_únor_bÅ™ezen_duben_kvÄ›ten_Äerven_Äervenec_srpen_zářÃ_Å™Ãjen_listopad_prosinec'.split(\n '_'\n ),\n standalone:\n 'ledna_února_bÅ™ezna_dubna_kvÄ›tna_Äervna_Äervence_srpna_zářÃ_Å™Ãjna_listopadu_prosince'.split(\n '_'\n ),\n },\n monthsShort = 'led_úno_bÅ™e_dub_kvÄ›_Ävn_Ävc_srp_zář_Å™Ãj_lis_pro'.split('_'),\n monthsParse = [\n /^led/i,\n /^úno/i,\n /^bÅ™e/i,\n /^dub/i,\n /^kvÄ›/i,\n /^(Ävn|Äerven$|Äervna)/i,\n /^(Ävc|Äervenec|Äervence)/i,\n /^srp/i,\n /^zář/i,\n /^Å™Ãj/i,\n /^lis/i,\n /^pro/i,\n ],\n // NOTE: 'Äerven' is substring of 'Äervenec'; therefore 'Äervenec' must precede 'Äerven' in the regex to be fully matched.\n // Otherwise parser matches '1. Äervenec' as '1. Äerven' + 'ec'.\n monthsRegex =\n /^(leden|únor|bÅ™ezen|duben|kvÄ›ten|Äervenec|Äervence|Äerven|Äervna|srpen|zářÃ|Å™Ãjen|listopad|prosinec|led|úno|bÅ™e|dub|kvÄ›|Ävn|Ävc|srp|zář|Å™Ãj|lis|pro)/i;\n\n function plural(n) {\n return n > 1 && n < 5 && ~~(n / 10) !== 1;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return withoutSuffix || isFuture ? 'pár sekund' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekund');\n } else {\n return result + 'sekundami';\n }\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minuta' : isFuture ? 'minutu' : 'minutou';\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minuty' : 'minut');\n } else {\n return result + 'minutami';\n }\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodin');\n } else {\n return result + 'hodinami';\n }\n case 'd': // a day / in a day / a day ago\n return withoutSuffix || isFuture ? 'den' : 'dnem';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dny' : 'dnÃ');\n } else {\n return result + 'dny';\n }\n case 'M': // a month / in a month / a month ago\n return withoutSuffix || isFuture ? 'mÄ›sÃc' : 'mÄ›sÃcem';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'mÄ›sÃce' : 'mÄ›sÃců');\n } else {\n return result + 'mÄ›sÃci';\n }\n case 'y': // a year / in a year / a year ago\n return withoutSuffix || isFuture ? 'rok' : 'rokem';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'let');\n } else {\n return result + 'lety';\n }\n }\n }\n\n var cs = moment.defineLocale('cs', {\n months: months,\n monthsShort: monthsShort,\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n // NOTE: 'Äerven' is substring of 'Äervenec'; therefore 'Äervenec' must precede 'Äerven' in the regex to be fully matched.\n // Otherwise parser matches '1. Äervenec' as '1. Äerven' + 'ec'.\n monthsStrictRegex:\n /^(leden|ledna|února|únor|bÅ™ezen|bÅ™ezna|duben|dubna|kvÄ›ten|kvÄ›tna|Äervenec|Äervence|Äerven|Äervna|srpen|srpna|zářÃ|Å™Ãjen|Å™Ãjna|listopadu|listopad|prosinec|prosince)/i,\n monthsShortStrictRegex:\n /^(led|úno|bÅ™e|dub|kvÄ›|Ävn|Ävc|srp|zář|Å™Ãj|lis|pro)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'nedÄ›le_pondÄ›lÃ_úterý_stÅ™eda_Ätvrtek_pátek_sobota'.split('_'),\n weekdaysShort: 'ne_po_út_st_Ät_pá_so'.split('_'),\n weekdaysMin: 'ne_po_út_st_Ät_pá_so'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd D. MMMM YYYY H:mm',\n l: 'D. M. YYYY',\n },\n calendar: {\n sameDay: '[dnes v] LT',\n nextDay: '[zÃtra v] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v nedÄ›li v] LT';\n case 1:\n case 2:\n return '[v] dddd [v] LT';\n case 3:\n return '[ve stÅ™edu v] LT';\n case 4:\n return '[ve Ätvrtek v] LT';\n case 5:\n return '[v pátek v] LT';\n case 6:\n return '[v sobotu v] LT';\n }\n },\n lastDay: '[vÄera v] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulou nedÄ›li v] LT';\n case 1:\n case 2:\n return '[minulé] dddd [v] LT';\n case 3:\n return '[minulou stÅ™edu v] LT';\n case 4:\n case 5:\n return '[minulý] dddd [v] LT';\n case 6:\n return '[minulou sobotu v] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'pÅ™ed %s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return cs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chuvash [cv]\n//! author : Anatoly Mironov : https://github.com/mirontoli\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var cv = moment.defineLocale('cv', {\n months: 'кӑрлач_нарӑÑ_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав'.split(\n '_'\n ),\n monthsShort: 'кӑр_нар_пуш_ака_май_Ò«Ó—Ñ€_утӑ_ҫур_авн_юпа_чӳк_раш'.split('_'),\n weekdays:\n 'вырÑарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_Ñрнекун_шӑматкун'.split(\n '_'\n ),\n weekdaysShort: 'выр_тун_ытл_юн_кӗҫ_Ñрн_шӑм'.split('_'),\n weekdaysMin: 'вр_тн_Ñ‹Ñ‚_юн_кҫ_ÑÑ€_шм'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]',\n LLL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',\n LLLL: 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',\n },\n calendar: {\n sameDay: '[ПаÑн] LT [Ñехетре]',\n nextDay: '[Ыран] LT [Ñехетре]',\n lastDay: '[Ӗнер] LT [Ñехетре]',\n nextWeek: '[ҪитеÑ] dddd LT [Ñехетре]',\n lastWeek: '[Иртнӗ] dddd LT [Ñехетре]',\n sameElse: 'L',\n },\n relativeTime: {\n future: function (output) {\n var affix = /Ñехет$/i.exec(output)\n ? 'рен'\n : /ҫул$/i.exec(output)\n ? 'тан'\n : 'ран';\n return output + affix;\n },\n past: '%s каÑлла',\n s: 'пӗр-ик ҫеккунт',\n ss: '%d ҫеккунт',\n m: 'пӗр минут',\n mm: '%d минут',\n h: 'пӗр Ñехет',\n hh: '%d Ñехет',\n d: 'пӗр кун',\n dd: '%d кун',\n M: 'пӗр уйӑх',\n MM: '%d уйӑх',\n y: 'пӗр ҫул',\n yy: '%d ҫул',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-мӗш/,\n ordinal: '%d-мӗш',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return cv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Welsh [cy]\n//! author : Robert Allen : https://github.com/robgallen\n//! author : https://github.com/ryangreaves\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var cy = moment.defineLocale('cy', {\n months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split(\n '_'\n ),\n monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split(\n '_'\n ),\n weekdays:\n 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split(\n '_'\n ),\n weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'),\n weekdaysParseExact: true,\n // time formats are the same as en-gb\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Heddiw am] LT',\n nextDay: '[Yfory am] LT',\n nextWeek: 'dddd [am] LT',\n lastDay: '[Ddoe am] LT',\n lastWeek: 'dddd [diwethaf am] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'mewn %s',\n past: '%s yn ôl',\n s: 'ychydig eiliadau',\n ss: '%d eiliad',\n m: 'munud',\n mm: '%d munud',\n h: 'awr',\n hh: '%d awr',\n d: 'diwrnod',\n dd: '%d diwrnod',\n M: 'mis',\n MM: '%d mis',\n y: 'blwyddyn',\n yy: '%d flynedd',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,\n // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh\n ordinal: function (number) {\n var b = number,\n output = '',\n lookup = [\n '',\n 'af',\n 'il',\n 'ydd',\n 'ydd',\n 'ed',\n 'ed',\n 'ed',\n 'fed',\n 'fed',\n 'fed', // 1af to 10fed\n 'eg',\n 'fed',\n 'eg',\n 'eg',\n 'fed',\n 'eg',\n 'eg',\n 'fed',\n 'eg',\n 'fed', // 11eg to 20fed\n ];\n if (b > 20) {\n if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) {\n output = 'fed'; // not 30ain, 70ain or 90ain\n } else {\n output = 'ain';\n }\n } else if (b > 0) {\n output = lookup[b];\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return cy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Danish [da]\n//! author : Ulrik Nielsen : https://github.com/mrbase\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var da = moment.defineLocale('da', {\n months: 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort: 'søn_man_tir_ons_tor_fre_lør'.split('_'),\n weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd [d.] D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'pÃ¥ dddd [kl.] LT',\n lastDay: '[i gÃ¥r kl.] LT',\n lastWeek: '[i] dddd[s kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s siden',\n s: 'fÃ¥ sekunder',\n ss: '%d sekunder',\n m: 'et minut',\n mm: '%d minutter',\n h: 'en time',\n hh: '%d timer',\n d: 'en dag',\n dd: '%d dage',\n M: 'en mÃ¥ned',\n MM: '%d mÃ¥neder',\n y: 'et Ã¥r',\n yy: '%d Ã¥r',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return da;\n\n})));\n","//! moment.js locale configuration\n//! locale : German (Austria) [de-at]\n//! author : lluchs : https://github.com/lluchs\n//! author: Menelion Elensúle: https://github.com/Oire\n//! author : Martin Groller : https://github.com/MadMG\n//! author : Mikolaj Dadela : https://github.com/mik01aj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deAt = moment.defineLocale('de-at', {\n months: 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return deAt;\n\n})));\n","//! moment.js locale configuration\n//! locale : German (Switzerland) [de-ch]\n//! author : sschueller : https://github.com/sschueller\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var deCh = moment.defineLocale('de-ch', {\n months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return deCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : German [de]\n//! author : lluchs : https://github.com/lluchs\n//! author: Menelion Elensúle: https://github.com/Oire\n//! author : Mikolaj Dadela : https://github.com/mik01aj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n\n var de = moment.defineLocale('de', {\n months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays:\n 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return de;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maldivian [dv]\n//! author : Jawish Hameed : https://github.com/jawish\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'Þ–Þ¬Þ‚ÞªÞ‡Þ¦ÞƒÞ©',\n 'ÞŠÞ¬Þ„Þ°ÞƒÞªÞ‡Þ¦ÞƒÞ©',\n 'Þ‰Þ§ÞƒÞ¨Þ—Þª',\n 'Þ‡ÞÞ•Þ°ÞƒÞ©ÞÞª',\n 'Þ‰Þ',\n 'Þ–Þ«Þ‚Þ°',\n 'Þ–ÞªÞÞ¦Þ‡Þ¨',\n 'Þ‡Þ¯ÞŽÞ¦ÞÞ°Þ“Þª',\n 'ÞÞ¬Þ•Þ°Þ“Þ¬Þ‰Þ°Þ„Þ¦ÞƒÞª',\n 'Þ‡Þ®Þ†Þ°Þ“Þ¯Þ„Þ¦ÞƒÞª',\n 'Þ‚Þ®ÞˆÞ¬Þ‰Þ°Þ„Þ¦ÞƒÞª',\n 'Þ‘Þ¨ÞÞ¬Þ‰Þ°Þ„Þ¦ÞƒÞª',\n ],\n weekdays = [\n 'އާދިއްތަ',\n 'Þ€Þ¯Þ‰Þ¦',\n 'Þ‡Þ¦Þ‚Þ°ÞŽÞ§ÞƒÞ¦',\n 'Þ„ÞªÞ‹Þ¦',\n 'Þ„ÞªÞƒÞ§Þްފަތި',\n 'Þ€ÞªÞ†ÞªÞƒÞª',\n 'Þ€Þ®Þ‚Þ¨Þ€Þ¨ÞƒÞª',\n ];\n\n var dv = moment.defineLocale('dv', {\n months: months,\n monthsShort: months,\n weekdays: weekdays,\n weekdaysShort: weekdays,\n weekdaysMin: 'Þ‡Þ§Þ‹Þ¨_Þ€Þ¯Þ‰Þ¦_Þ‡Þ¦Þ‚Þ°_Þ„ÞªÞ‹Þ¦_Þ„ÞªÞƒÞ§_Þ€ÞªÞ†Þª_Þ€Þ®Þ‚Þ¨'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/M/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /Þ‰Þ†|Þ‰ÞŠ/,\n isPM: function (input) {\n return 'Þ‰ÞŠ' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'Þ‰Þ†';\n } else {\n return 'Þ‰ÞŠ';\n }\n },\n calendar: {\n sameDay: '[Þ‰Þ¨Þ‡Þ¦Þ‹Þª] LT',\n nextDay: '[Þ‰Þ§Þ‹Þ¦Þ‰Þ§] LT',\n nextWeek: 'dddd LT',\n lastDay: '[Þ‡Þ¨Þ‡Þ°Þ”Þ¬] LT',\n lastWeek: '[ފާއިތުވި] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ތެރÞÞŽÞ¦Þ‡Þ¨ %s',\n past: 'Þ†ÞªÞƒÞ¨Þ‚Þ° %s',\n s: 'Þިކުންތުކޮޅެއް',\n ss: 'd% Þިކުންތު',\n m: 'Þ‰Þ¨Þ‚Þ¨Þ“Þ¬Þ‡Þ°',\n mm: 'Þ‰Þ¨Þ‚Þ¨Þ“Þª %d',\n h: 'ÞŽÞ¦Þ‘Þ¨Þ‡Þ¨ÞƒÞ¬Þ‡Þ°',\n hh: 'ÞŽÞ¦Þ‘Þ¨Þ‡Þ¨ÞƒÞª %d',\n d: 'Þ‹ÞªÞˆÞ¦Þ€Þ¬Þ‡Þ°',\n dd: 'Þ‹ÞªÞˆÞ¦ÞÞ° %d',\n M: 'Þ‰Þ¦Þ€Þ¬Þ‡Þ°',\n MM: 'Þ‰Þ¦ÞÞ° %d',\n y: 'Þ‡Þ¦Þ€Þ¦ÞƒÞ¬Þ‡Þ°',\n yy: 'Þ‡Þ¦Þ€Þ¦ÞƒÞª %d',\n },\n preparse: function (string) {\n return string.replace(/ØŒ/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, 'ØŒ');\n },\n week: {\n dow: 7, // Sunday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return dv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Greek [el]\n//! author : Aggelos Karalias : https://github.com/mehiel\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function isFunction(input) {\n return (\n (typeof Function !== 'undefined' && input instanceof Function) ||\n Object.prototype.toString.call(input) === '[object Function]'\n );\n }\n\n var el = moment.defineLocale('el', {\n monthsNominativeEl:\n 'ΙανουάÏιος_ΦεβÏουάÏιος_ΜάÏτιος_ΑπÏίλιος_Μάιος_ΙοÏνιος_ΙοÏλιος_ΑÏγουστος_ΣεπτÎμβÏιος_ΟκτώβÏιος_ÎοÎμβÏιος_ΔεκÎμβÏιος'.split(\n '_'\n ),\n monthsGenitiveEl:\n 'ΙανουαÏίου_ΦεβÏουαÏίου_ΜαÏτίου_ΑπÏιλίου_ΜαÎου_Ιουνίου_Ιουλίου_ΑυγοÏστου_ΣεπτεμβÏίου_ΟκτωβÏίου_ÎοεμβÏίου_ΔεκεμβÏίου'.split(\n '_'\n ),\n months: function (momentToFormat, format) {\n if (!momentToFormat) {\n return this._monthsNominativeEl;\n } else if (\n typeof format === 'string' &&\n /D/.test(format.substring(0, format.indexOf('MMMM')))\n ) {\n // if there is a day number before 'MMMM'\n return this._monthsGenitiveEl[momentToFormat.month()];\n } else {\n return this._monthsNominativeEl[momentToFormat.month()];\n }\n },\n monthsShort: 'Ιαν_Φεβ_ΜαÏ_ΑπÏ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Îοε_Δεκ'.split('_'),\n weekdays: 'ΚυÏιακή_ΔευτÎÏα_ΤÏίτη_ΤετάÏτη_Î Îμπτη_ΠαÏασκευή_Σάββατο'.split(\n '_'\n ),\n weekdaysShort: 'ΚυÏ_Δευ_ΤÏι_Τετ_Πεμ_ΠαÏ_Σαβ'.split('_'),\n weekdaysMin: 'Κυ_Δε_ΤÏ_Τε_Πε_Πα_Σα'.split('_'),\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'μμ' : 'ΜΜ';\n } else {\n return isLower ? 'πμ' : 'Î Îœ';\n }\n },\n isPM: function (input) {\n return (input + '').toLowerCase()[0] === 'μ';\n },\n meridiemParse: /[Î Îœ]\\.?Îœ?\\.?/i,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendarEl: {\n sameDay: '[ΣήμεÏα {}] LT',\n nextDay: '[ΑÏÏιο {}] LT',\n nextWeek: 'dddd [{}] LT',\n lastDay: '[Χθες {}] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 6:\n return '[το Ï€ÏοηγοÏμενο] dddd [{}] LT';\n default:\n return '[την Ï€ÏοηγοÏμενη] dddd [{}] LT';\n }\n },\n sameElse: 'L',\n },\n calendar: function (key, mom) {\n var output = this._calendarEl[key],\n hours = mom && mom.hours();\n if (isFunction(output)) {\n output = output.apply(mom);\n }\n return output.replace('{}', hours % 12 === 1 ? 'στη' : 'στις');\n },\n relativeTime: {\n future: 'σε %s',\n past: '%s Ï€Ïιν',\n s: 'λίγα δευτεÏόλεπτα',\n ss: '%d δευτεÏόλεπτα',\n m: 'Îνα λεπτό',\n mm: '%d λεπτά',\n h: 'μία ÏŽÏα',\n hh: '%d ÏŽÏες',\n d: 'μία μÎÏα',\n dd: '%d μÎÏες',\n M: 'Îνας μήνας',\n MM: '%d μήνες',\n y: 'Îνας χÏόνος',\n yy: '%d χÏόνια',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}η/,\n ordinal: '%dη',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4st is the first week of the year.\n },\n });\n\n return el;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Australia) [en-au]\n//! author : Jared Morse : https://github.com/jarcoal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enAu = moment.defineLocale('en-au', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enAu;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Canada) [en-ca]\n//! author : Jonathan Abourbih : https://github.com/jonbca\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enCa = moment.defineLocale('en-ca', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'YYYY-MM-DD',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n return enCa;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (United Kingdom) [en-gb]\n//! author : Chris Gedrim : https://github.com/chrisgedrim\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enGb = moment.defineLocale('en-gb', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enGb;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Ireland) [en-ie]\n//! author : Chris Cartlidge : https://github.com/chriscartlidge\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIe = moment.defineLocale('en-ie', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enIe;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Israel) [en-il]\n//! author : Chris Gedrim : https://github.com/chrisgedrim\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIl = moment.defineLocale('en-il', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n return enIl;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (India) [en-in]\n//! author : Jatin Agrawal : https://github.com/jatinag22\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enIn = moment.defineLocale('en-in', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return enIn;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (New Zealand) [en-nz]\n//! author : Luke McGregor : https://github.com/lukemcgregor\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enNz = moment.defineLocale('en-nz', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enNz;\n\n})));\n","//! moment.js locale configuration\n//! locale : English (Singapore) [en-sg]\n//! author : Matthew Castrillon-Madrigal : https://github.com/techdimension\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var enSg = moment.defineLocale('en-sg', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return enSg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Esperanto [eo]\n//! author : Colin Dean : https://github.com/colindean\n//! author : Mia Nordentoft Imperatori : https://github.com/miestasmia\n//! comment : miestasmia corrected the translation by colindean\n//! comment : Vivakvo corrected the translation by colindean and miestasmia\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var eo = moment.defineLocale('eo', {\n months: 'januaro_februaro_marto_aprilo_majo_junio_julio_aÅgusto_septembro_oktobro_novembro_decembro'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mart_apr_maj_jun_jul_aÅg_sept_okt_nov_dec'.split('_'),\n weekdays: 'dimanĉo_lundo_mardo_merkredo_ĵaÅdo_vendredo_sabato'.split('_'),\n weekdaysShort: 'dim_lun_mard_merk_ĵaÅ_ven_sab'.split('_'),\n weekdaysMin: 'di_lu_ma_me_ĵa_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: '[la] D[-an de] MMMM, YYYY',\n LLL: '[la] D[-an de] MMMM, YYYY HH:mm',\n LLLL: 'dddd[n], [la] D[-an de] MMMM, YYYY HH:mm',\n llll: 'ddd, [la] D[-an de] MMM, YYYY HH:mm',\n },\n meridiemParse: /[ap]\\.t\\.m/i,\n isPM: function (input) {\n return input.charAt(0).toLowerCase() === 'p';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'p.t.m.' : 'P.T.M.';\n } else {\n return isLower ? 'a.t.m.' : 'A.T.M.';\n }\n },\n calendar: {\n sameDay: '[HodiaÅ je] LT',\n nextDay: '[MorgaÅ je] LT',\n nextWeek: 'dddd[n je] LT',\n lastDay: '[HieraÅ je] LT',\n lastWeek: '[pasintan] dddd[n je] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'post %s',\n past: 'antaÅ %s',\n s: 'kelkaj sekundoj',\n ss: '%d sekundoj',\n m: 'unu minuto',\n mm: '%d minutoj',\n h: 'unu horo',\n hh: '%d horoj',\n d: 'unu tago', //ne 'diurno', ĉar estas uzita por proksimumo\n dd: '%d tagoj',\n M: 'unu monato',\n MM: '%d monatoj',\n y: 'unu jaro',\n yy: '%d jaroj',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}a/,\n ordinal: '%da',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return eo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (Dominican Republic) [es-do]\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esDo = moment.defineLocale('es-do', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY h:mm A',\n LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un dÃa',\n dd: '%d dÃas',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return esDo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (Mexico) [es-mx]\n//! author : JC Franco : https://github.com/jcfranco\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esMx = moment.defineLocale('es-mx', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un dÃa',\n dd: '%d dÃas',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n invalidDate: 'Fecha inválida',\n });\n\n return esMx;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish (United States) [es-us]\n//! author : bustta : https://github.com/bustta\n//! author : chrisrodz : https://github.com/chrisrodz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var esUs = moment.defineLocale('es-us', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'MM/DD/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY h:mm A',\n LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un dÃa',\n dd: '%d dÃas',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return esUs;\n\n})));\n","//! moment.js locale configuration\n//! locale : Spanish [es]\n//! author : Julio Napurà : https://github.com/julionc\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortDot =\n 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex =\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\n var es = moment.defineLocale('es', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex:\n /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un dÃa',\n dd: '%d dÃas',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n invalidDate: 'Fecha inválida',\n });\n\n return es;\n\n})));\n","//! moment.js locale configuration\n//! locale : Estonian [et]\n//! author : Henry Kehlmann : https://github.com/madhenry\n//! improvements : Illimar Tambek : https://github.com/ragulka\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['mõne sekundi', 'mõni sekund', 'paar sekundit'],\n ss: [number + 'sekundi', number + 'sekundit'],\n m: ['ühe minuti', 'üks minut'],\n mm: [number + ' minuti', number + ' minutit'],\n h: ['ühe tunni', 'tund aega', 'üks tund'],\n hh: [number + ' tunni', number + ' tundi'],\n d: ['ühe päeva', 'üks päev'],\n M: ['kuu aja', 'kuu aega', 'üks kuu'],\n MM: [number + ' kuu', number + ' kuud'],\n y: ['ühe aasta', 'aasta', 'üks aasta'],\n yy: [number + ' aasta', number + ' aastat'],\n };\n if (withoutSuffix) {\n return format[key][2] ? format[key][2] : format[key][1];\n }\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var et = moment.defineLocale('et', {\n months: 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split(\n '_'\n ),\n monthsShort:\n 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'),\n weekdays:\n 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split(\n '_'\n ),\n weekdaysShort: 'P_E_T_K_N_R_L'.split('_'),\n weekdaysMin: 'P_E_T_K_N_R_L'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Täna,] LT',\n nextDay: '[Homme,] LT',\n nextWeek: '[Järgmine] dddd LT',\n lastDay: '[Eile,] LT',\n lastWeek: '[Eelmine] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s pärast',\n past: '%s tagasi',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: '%d päeva',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return et;\n\n})));\n","//! moment.js locale configuration\n//! locale : Basque [eu]\n//! author : Eneko Illarramendi : https://github.com/eillarra\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var eu = moment.defineLocale('eu', {\n months: 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split(\n '_'\n ),\n monthsShort:\n 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split(\n '_'\n ),\n weekdaysShort: 'ig._al._ar._az._og._ol._lr.'.split('_'),\n weekdaysMin: 'ig_al_ar_az_og_ol_lr'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY[ko] MMMM[ren] D[a]',\n LLL: 'YYYY[ko] MMMM[ren] D[a] HH:mm',\n LLLL: 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm',\n l: 'YYYY-M-D',\n ll: 'YYYY[ko] MMM D[a]',\n lll: 'YYYY[ko] MMM D[a] HH:mm',\n llll: 'ddd, YYYY[ko] MMM D[a] HH:mm',\n },\n calendar: {\n sameDay: '[gaur] LT[etan]',\n nextDay: '[bihar] LT[etan]',\n nextWeek: 'dddd LT[etan]',\n lastDay: '[atzo] LT[etan]',\n lastWeek: '[aurreko] dddd LT[etan]',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s barru',\n past: 'duela %s',\n s: 'segundo batzuk',\n ss: '%d segundo',\n m: 'minutu bat',\n mm: '%d minutu',\n h: 'ordu bat',\n hh: '%d ordu',\n d: 'egun bat',\n dd: '%d egun',\n M: 'hilabete bat',\n MM: '%d hilabete',\n y: 'urte bat',\n yy: '%d urte',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return eu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Persian [fa]\n//! author : Ebrahim Byagowi : https://github.com/ebraminio\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: 'Û±',\n 2: 'Û²',\n 3: 'Û³',\n 4: 'Û´',\n 5: 'Ûµ',\n 6: 'Û¶',\n 7: 'Û·',\n 8: 'Û¸',\n 9: 'Û¹',\n 0: 'Û°',\n },\n numberMap = {\n 'Û±': '1',\n 'Û²': '2',\n 'Û³': '3',\n 'Û´': '4',\n 'Ûµ': '5',\n 'Û¶': '6',\n 'Û·': '7',\n 'Û¸': '8',\n 'Û¹': '9',\n 'Û°': '0',\n };\n\n var fa = moment.defineLocale('fa', {\n months: 'ژانویه_Ùوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split(\n '_'\n ),\n monthsShort:\n 'ژانویه_Ùوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split(\n '_'\n ),\n weekdays:\n 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split(\n '_'\n ),\n weekdaysShort:\n 'یک\\u200cشنبه_دوشنبه_سه\\u200cشنبه_چهارشنبه_پنج\\u200cشنبه_جمعه_شنبه'.split(\n '_'\n ),\n weekdaysMin: 'ÛŒ_د_س_Ú†_Ù¾_ج_Ø´'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /قبل از ظهر|بعد از ظهر/,\n isPM: function (input) {\n return /بعد از ظهر/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'قبل از ظهر';\n } else {\n return 'بعد از ظهر';\n }\n },\n calendar: {\n sameDay: '[امروز ساعت] LT',\n nextDay: '[Ùردا ساعت] LT',\n nextWeek: 'dddd [ساعت] LT',\n lastDay: '[دیروز ساعت] LT',\n lastWeek: 'dddd [پیش] [ساعت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'در %s',\n past: '%s پیش',\n s: 'چند ثانیه',\n ss: '%d ثانیه',\n m: 'یک دقیقه',\n mm: '%d دقیقه',\n h: 'یک ساعت',\n hh: '%d ساعت',\n d: 'یک روز',\n dd: '%d روز',\n M: 'یک ماه',\n MM: '%d ماه',\n y: 'یک سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string\n .replace(/[Û°-Û¹]/g, function (match) {\n return numberMap[match];\n })\n .replace(/ØŒ/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, 'ØŒ');\n },\n dayOfMonthOrdinalParse: /\\d{1,2}Ù…/,\n ordinal: '%dÙ…',\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return fa;\n\n})));\n","//! moment.js locale configuration\n//! locale : Finnish [fi]\n//! author : Tarmo Aidantausta : https://github.com/bleadof\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var numbersPast =\n 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(\n ' '\n ),\n numbersFuture = [\n 'nolla',\n 'yhden',\n 'kahden',\n 'kolmen',\n 'neljän',\n 'viiden',\n 'kuuden',\n numbersPast[7],\n numbersPast[8],\n numbersPast[9],\n ];\n function translate(number, withoutSuffix, key, isFuture) {\n var result = '';\n switch (key) {\n case 's':\n return isFuture ? 'muutaman sekunnin' : 'muutama sekunti';\n case 'ss':\n result = isFuture ? 'sekunnin' : 'sekuntia';\n break;\n case 'm':\n return isFuture ? 'minuutin' : 'minuutti';\n case 'mm':\n result = isFuture ? 'minuutin' : 'minuuttia';\n break;\n case 'h':\n return isFuture ? 'tunnin' : 'tunti';\n case 'hh':\n result = isFuture ? 'tunnin' : 'tuntia';\n break;\n case 'd':\n return isFuture ? 'päivän' : 'päivä';\n case 'dd':\n result = isFuture ? 'päivän' : 'päivää';\n break;\n case 'M':\n return isFuture ? 'kuukauden' : 'kuukausi';\n case 'MM':\n result = isFuture ? 'kuukauden' : 'kuukautta';\n break;\n case 'y':\n return isFuture ? 'vuoden' : 'vuosi';\n case 'yy':\n result = isFuture ? 'vuoden' : 'vuotta';\n break;\n }\n result = verbalNumber(number, isFuture) + ' ' + result;\n return result;\n }\n function verbalNumber(number, isFuture) {\n return number < 10\n ? isFuture\n ? numbersFuture[number]\n : numbersPast[number]\n : number;\n }\n\n var fi = moment.defineLocale('fi', {\n months: 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split(\n '_'\n ),\n monthsShort:\n 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split(\n '_'\n ),\n weekdays:\n 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split(\n '_'\n ),\n weekdaysShort: 'su_ma_ti_ke_to_pe_la'.split('_'),\n weekdaysMin: 'su_ma_ti_ke_to_pe_la'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD.MM.YYYY',\n LL: 'Do MMMM[ta] YYYY',\n LLL: 'Do MMMM[ta] YYYY, [klo] HH.mm',\n LLLL: 'dddd, Do MMMM[ta] YYYY, [klo] HH.mm',\n l: 'D.M.YYYY',\n ll: 'Do MMM YYYY',\n lll: 'Do MMM YYYY, [klo] HH.mm',\n llll: 'ddd, Do MMM YYYY, [klo] HH.mm',\n },\n calendar: {\n sameDay: '[tänään] [klo] LT',\n nextDay: '[huomenna] [klo] LT',\n nextWeek: 'dddd [klo] LT',\n lastDay: '[eilen] [klo] LT',\n lastWeek: '[viime] dddd[na] [klo] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s päästä',\n past: '%s sitten',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Filipino [fil]\n//! author : Dan Hagman : https://github.com/hagmandan\n//! author : Matthew Co : https://github.com/matthewdeeco\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var fil = moment.defineLocale('fil', {\n months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split(\n '_'\n ),\n monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split(\n '_'\n ),\n weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'MM/D/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY HH:mm',\n LLLL: 'dddd, MMMM DD, YYYY HH:mm',\n },\n calendar: {\n sameDay: 'LT [ngayong araw]',\n nextDay: '[Bukas ng] LT',\n nextWeek: 'LT [sa susunod na] dddd',\n lastDay: 'LT [kahapon]',\n lastWeek: 'LT [noong nakaraang] dddd',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'sa loob ng %s',\n past: '%s ang nakalipas',\n s: 'ilang segundo',\n ss: '%d segundo',\n m: 'isang minuto',\n mm: '%d minuto',\n h: 'isang oras',\n hh: '%d oras',\n d: 'isang araw',\n dd: '%d araw',\n M: 'isang buwan',\n MM: '%d buwan',\n y: 'isang taon',\n yy: '%d taon',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fil;\n\n})));\n","//! moment.js locale configuration\n//! locale : Faroese [fo]\n//! author : Ragnar Johannesen : https://github.com/ragnar123\n//! author : Kristian Sakarisson : https://github.com/sakarisson\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var fo = moment.defineLocale('fo', {\n months: 'januar_februar_mars_aprÃl_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n weekdays:\n 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_frÃggjadagur_leygardagur'.split(\n '_'\n ),\n weekdaysShort: 'sun_mán_týs_mik_hós_frÃ_ley'.split('_'),\n weekdaysMin: 'su_má_tý_mi_hó_fr_le'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D. MMMM, YYYY HH:mm',\n },\n calendar: {\n sameDay: '[à dag kl.] LT',\n nextDay: '[à morgin kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[à gjár kl.] LT',\n lastWeek: '[sÃðstu] dddd [kl] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'um %s',\n past: '%s sÃðani',\n s: 'fá sekund',\n ss: '%d sekundir',\n m: 'ein minuttur',\n mm: '%d minuttir',\n h: 'ein tÃmi',\n hh: '%d tÃmar',\n d: 'ein dagur',\n dd: '%d dagar',\n M: 'ein mánaður',\n MM: '%d mánaðir',\n y: 'eitt ár',\n yy: '%d ár',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fo;\n\n})));\n","//! moment.js locale configuration\n//! locale : French (Canada) [fr-ca]\n//! author : Jonathan Abourbih : https://github.com/jonbca\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var frCa = moment.defineLocale('fr-ca', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à ] LT',\n nextDay: '[Demain à ] LT',\n nextWeek: 'dddd [à ] LT',\n lastDay: '[Hier à ] LT',\n lastWeek: 'dddd [dernier à ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal: function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n });\n\n return frCa;\n\n})));\n","//! moment.js locale configuration\n//! locale : French (Switzerland) [fr-ch]\n//! author : Gaspard Bucher : https://github.com/gaspard\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var frCh = moment.defineLocale('fr-ch', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à ] LT',\n nextDay: '[Demain à ] LT',\n nextWeek: 'dddd [à ] LT',\n lastDay: '[Hier à ] LT',\n lastWeek: 'dddd [dernier à ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal: function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return frCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : French [fr]\n//! author : John Fischer : https://github.com/jfroffice\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsStrictRegex =\n /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,\n monthsShortStrictRegex =\n /(janv\\.?|févr\\.?|mars|avr\\.?|mai|juin|juil\\.?|août|sept\\.?|oct\\.?|nov\\.?|déc\\.?)/i,\n monthsRegex =\n /(janv\\.?|févr\\.?|mars|avr\\.?|mai|juin|juil\\.?|août|sept\\.?|oct\\.?|nov\\.?|déc\\.?|janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,\n monthsParse = [\n /^janv/i,\n /^févr/i,\n /^mars/i,\n /^avr/i,\n /^mai/i,\n /^juin/i,\n /^juil/i,\n /^août/i,\n /^sept/i,\n /^oct/i,\n /^nov/i,\n /^déc/i,\n ];\n\n var fr = moment.defineLocale('fr', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort:\n 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: monthsStrictRegex,\n monthsShortStrictRegex: monthsShortStrictRegex,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à ] LT',\n nextDay: '[Demain à ] LT',\n nextWeek: 'dddd [à ] LT',\n lastDay: '[Hier à ] LT',\n lastWeek: 'dddd [dernier à ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n w: 'une semaine',\n ww: '%d semaines',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|)/,\n ordinal: function (number, period) {\n switch (period) {\n // TODO: Return 'e' when day of month > 1. Move this case inside\n // block for masculine words below.\n // See https://github.com/moment/moment/issues/3375\n case 'D':\n return number + (number === 1 ? 'er' : '');\n\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Frisian [fy]\n//! author : Robin van der Vliet : https://github.com/robin0van0der0v\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_');\n\n var fy = moment.defineLocale('fy', {\n months: 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n monthsParseExact: true,\n weekdays: 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split(\n '_'\n ),\n weekdaysShort: 'si._mo._ti._wo._to._fr._so.'.split('_'),\n weekdaysMin: 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[hjoed om] LT',\n nextDay: '[moarn om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[juster om] LT',\n lastWeek: '[ôfrûne] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'oer %s',\n past: '%s lyn',\n s: 'in pear sekonden',\n ss: '%d sekonden',\n m: 'ien minút',\n mm: '%d minuten',\n h: 'ien oere',\n hh: '%d oeren',\n d: 'ien dei',\n dd: '%d dagen',\n M: 'ien moanne',\n MM: '%d moannen',\n y: 'ien jier',\n yy: '%d jierren',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return fy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Irish or Irish Gaelic [ga]\n//! author : André Silva : https://github.com/askpt\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'Eanáir',\n 'Feabhra',\n 'Márta',\n 'Aibreán',\n 'Bealtaine',\n 'Meitheamh',\n 'Iúil',\n 'Lúnasa',\n 'Meán Fómhair',\n 'Deireadh Fómhair',\n 'Samhain',\n 'Nollaig',\n ],\n monthsShort = [\n 'Ean',\n 'Feabh',\n 'Márt',\n 'Aib',\n 'Beal',\n 'Meith',\n 'Iúil',\n 'Lún',\n 'M.F.',\n 'D.F.',\n 'Samh',\n 'Noll',\n ],\n weekdays = [\n 'Dé Domhnaigh',\n 'Dé Luain',\n 'Dé Máirt',\n 'Dé Céadaoin',\n 'Déardaoin',\n 'Dé hAoine',\n 'Dé Sathairn',\n ],\n weekdaysShort = ['Domh', 'Luan', 'Máirt', 'Céad', 'Déar', 'Aoine', 'Sath'],\n weekdaysMin = ['Do', 'Lu', 'Má', 'Cé', 'Dé', 'A', 'Sa'];\n\n var ga = moment.defineLocale('ga', {\n months: months,\n monthsShort: monthsShort,\n monthsParseExact: true,\n weekdays: weekdays,\n weekdaysShort: weekdaysShort,\n weekdaysMin: weekdaysMin,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Inniu ag] LT',\n nextDay: '[Amárach ag] LT',\n nextWeek: 'dddd [ag] LT',\n lastDay: '[Inné ag] LT',\n lastWeek: 'dddd [seo caite] [ag] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'i %s',\n past: '%s ó shin',\n s: 'cúpla soicind',\n ss: '%d soicind',\n m: 'nóiméad',\n mm: '%d nóiméad',\n h: 'uair an chloig',\n hh: '%d uair an chloig',\n d: 'lá',\n dd: '%d lá',\n M: 'mÃ',\n MM: '%d mÃonna',\n y: 'bliain',\n yy: '%d bliain',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(d|na|mh)/,\n ordinal: function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ga;\n\n})));\n","//! moment.js locale configuration\n//! locale : Scottish Gaelic [gd]\n//! author : Jon Ashdown : https://github.com/jonashdown\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'Am Faoilleach',\n 'An Gearran',\n 'Am Mà rt',\n 'An Giblean',\n 'An Cèitean',\n 'An t-Ã’gmhios',\n 'An t-Iuchar',\n 'An Lùnastal',\n 'An t-Sultain',\n 'An Dà mhair',\n 'An t-Samhain',\n 'An Dùbhlachd',\n ],\n monthsShort = [\n 'Faoi',\n 'Gear',\n 'Mà rt',\n 'Gibl',\n 'Cèit',\n 'Ã’gmh',\n 'Iuch',\n 'Lùn',\n 'Sult',\n 'Dà mh',\n 'Samh',\n 'Dùbh',\n ],\n weekdays = [\n 'Didòmhnaich',\n 'Diluain',\n 'Dimà irt',\n 'Diciadain',\n 'Diardaoin',\n 'Dihaoine',\n 'Disathairne',\n ],\n weekdaysShort = ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'],\n weekdaysMin = ['Dò', 'Lu', 'Mà ', 'Ci', 'Ar', 'Ha', 'Sa'];\n\n var gd = moment.defineLocale('gd', {\n months: months,\n monthsShort: monthsShort,\n monthsParseExact: true,\n weekdays: weekdays,\n weekdaysShort: weekdaysShort,\n weekdaysMin: weekdaysMin,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[An-diugh aig] LT',\n nextDay: '[A-mà ireach aig] LT',\n nextWeek: 'dddd [aig] LT',\n lastDay: '[An-dè aig] LT',\n lastWeek: 'dddd [seo chaidh] [aig] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ann an %s',\n past: 'bho chionn %s',\n s: 'beagan diogan',\n ss: '%d diogan',\n m: 'mionaid',\n mm: '%d mionaidean',\n h: 'uair',\n hh: '%d uairean',\n d: 'latha',\n dd: '%d latha',\n M: 'mìos',\n MM: '%d mìosan',\n y: 'bliadhna',\n yy: '%d bliadhna',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(d|na|mh)/,\n ordinal: function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return gd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Galician [gl]\n//! author : Juan G. Hurtado : https://github.com/juanghurtado\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var gl = moment.defineLocale('gl', {\n months: 'xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro'.split(\n '_'\n ),\n monthsShort:\n 'xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'domingo_luns_martes_mércores_xoves_venres_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mér._xov._ven._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mé_xo_ve_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoxe ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';\n },\n nextDay: function () {\n return '[mañá ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT';\n },\n lastDay: function () {\n return '[onte ' + (this.hours() !== 1 ? 'á' : 'a') + '] LT';\n },\n lastWeek: function () {\n return (\n '[o] dddd [pasado ' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: function (str) {\n if (str.indexOf('un') === 0) {\n return 'n' + str;\n }\n return 'en ' + str;\n },\n past: 'hai %s',\n s: 'uns segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'unha hora',\n hh: '%d horas',\n d: 'un dÃa',\n dd: '%d dÃas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return gl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Konkani Devanagari script [gom-deva]\n//! author : The Discoverer : https://github.com/WikiDiscoverer\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['थोडया सॅकंडांनी', 'थोडे सॅकंड'],\n ss: [number + ' सॅकंडांनी', number + ' सॅकंड'],\n m: ['à¤à¤•à¤¾ मिणटान', 'à¤à¤• मिनूट'],\n mm: [number + ' मिणटांनी', number + ' मिणटां'],\n h: ['à¤à¤•à¤¾ वरान', 'à¤à¤• वर'],\n hh: [number + ' वरांनी', number + ' वरां'],\n d: ['à¤à¤•à¤¾ दिसान', 'à¤à¤• दीस'],\n dd: [number + ' दिसांनी', number + ' दीस'],\n M: ['à¤à¤•à¤¾ मà¥à¤¹à¤¯à¤¨à¥à¤¯à¤¾à¤¨', 'à¤à¤• मà¥à¤¹à¤¯à¤¨à¥‹'],\n MM: [number + ' मà¥à¤¹à¤¯à¤¨à¥à¤¯à¤¾à¤¨à¥€', number + ' मà¥à¤¹à¤¯à¤¨à¥‡'],\n y: ['à¤à¤•à¤¾ वरà¥à¤¸à¤¾à¤¨', 'à¤à¤• वरà¥à¤¸'],\n yy: [number + ' वरà¥à¤¸à¤¾à¤‚नी', number + ' वरà¥à¤¸à¤¾à¤‚'],\n };\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var gomDeva = moment.defineLocale('gom-deva', {\n months: {\n standalone:\n 'जानेवारी_फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€_मारà¥à¤š_à¤à¤ªà¥à¤°à¥€à¤²_मे_जून_जà¥à¤²à¤¯_ऑगसà¥à¤Ÿ_सपà¥à¤Ÿà¥‡à¤‚बर_ऑकà¥à¤Ÿà¥‹à¤¬à¤°_नोवà¥à¤¹à¥‡à¤‚बर_डिसेंबर'.split(\n '_'\n ),\n format: 'जानेवारीचà¥à¤¯à¤¾_फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€à¤šà¥à¤¯à¤¾_मारà¥à¤šà¤¾à¤šà¥à¤¯à¤¾_à¤à¤ªà¥à¤°à¥€à¤²à¤¾à¤šà¥à¤¯à¤¾_मेयाचà¥à¤¯à¤¾_जूनाचà¥à¤¯à¤¾_जà¥à¤²à¤¯à¤¾à¤šà¥à¤¯à¤¾_ऑगसà¥à¤Ÿà¤¾à¤šà¥à¤¯à¤¾_सपà¥à¤Ÿà¥‡à¤‚बराचà¥à¤¯à¤¾_ऑकà¥à¤Ÿà¥‹à¤¬à¤°à¤¾à¤šà¥à¤¯à¤¾_नोवà¥à¤¹à¥‡à¤‚बराचà¥à¤¯à¤¾_डिसेंबराचà¥à¤¯à¤¾'.split(\n '_'\n ),\n isFormat: /MMMM(\\s)+D[oD]?/,\n },\n monthsShort:\n 'जाने._फेबà¥à¤°à¥._मारà¥à¤š_à¤à¤ªà¥à¤°à¥€._मे_जून_जà¥à¤²._ऑग._सपà¥à¤Ÿà¥‡à¤‚._ऑकà¥à¤Ÿà¥‹._नोवà¥à¤¹à¥‡à¤‚._डिसें.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'आयतार_सोमार_मंगळार_बà¥à¤§à¤µà¤¾à¤°_बिरेसà¥à¤¤à¤¾à¤°_सà¥à¤•à¥à¤°à¤¾à¤°_शेनवार'.split('_'),\n weekdaysShort: 'आयत._सोम._मंगळ._बà¥à¤§._बà¥à¤°à¥‡à¤¸à¥à¤¤._सà¥à¤•à¥à¤°._शेन.'.split('_'),\n weekdaysMin: 'आ_सो_मं_बà¥_बà¥à¤°à¥‡_सà¥_शे'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'A h:mm [वाजतां]',\n LTS: 'A h:mm:ss [वाजतां]',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY A h:mm [वाजतां]',\n LLLL: 'dddd, MMMM Do, YYYY, A h:mm [वाजतां]',\n llll: 'ddd, D MMM YYYY, A h:mm [वाजतां]',\n },\n calendar: {\n sameDay: '[आयज] LT',\n nextDay: '[फालà¥à¤¯à¤¾à¤‚] LT',\n nextWeek: '[फà¥à¤¡à¤²à¥‹] dddd[,] LT',\n lastDay: '[काल] LT',\n lastWeek: '[फाटलो] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s',\n past: '%s आदीं',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(वेर)/,\n ordinal: function (number, period) {\n switch (period) {\n // the ordinal 'वेर' only applies to day of the month\n case 'D':\n return number + 'वेर';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week\n doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)\n },\n meridiemParse: /राती|सकाळीं|दनपारां|सांजे/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'राती') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सकाळीं') {\n return hour;\n } else if (meridiem === 'दनपारां') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'सांजे') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'राती';\n } else if (hour < 12) {\n return 'सकाळीं';\n } else if (hour < 16) {\n return 'दनपारां';\n } else if (hour < 20) {\n return 'सांजे';\n } else {\n return 'राती';\n }\n },\n });\n\n return gomDeva;\n\n})));\n","//! moment.js locale configuration\n//! locale : Konkani Latin script [gom-latn]\n//! author : The Discoverer : https://github.com/WikiDiscoverer\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['thoddea sekondamni', 'thodde sekond'],\n ss: [number + ' sekondamni', number + ' sekond'],\n m: ['eka mintan', 'ek minut'],\n mm: [number + ' mintamni', number + ' mintam'],\n h: ['eka voran', 'ek vor'],\n hh: [number + ' voramni', number + ' voram'],\n d: ['eka disan', 'ek dis'],\n dd: [number + ' disamni', number + ' dis'],\n M: ['eka mhoinean', 'ek mhoino'],\n MM: [number + ' mhoineamni', number + ' mhoine'],\n y: ['eka vorsan', 'ek voros'],\n yy: [number + ' vorsamni', number + ' vorsam'],\n };\n return isFuture ? format[key][0] : format[key][1];\n }\n\n var gomLatn = moment.defineLocale('gom-latn', {\n months: {\n standalone:\n 'Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr'.split(\n '_'\n ),\n format: 'Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea'.split(\n '_'\n ),\n isFormat: /MMMM(\\s)+D[oD]?/,\n },\n monthsShort:\n 'Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.'.split('_'),\n monthsParseExact: true,\n weekdays: \"Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var\".split('_'),\n weekdaysShort: 'Ait._Som._Mon._Bud._Bre._Suk._Son.'.split('_'),\n weekdaysMin: 'Ai_Sm_Mo_Bu_Br_Su_Sn'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'A h:mm [vazta]',\n LTS: 'A h:mm:ss [vazta]',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY A h:mm [vazta]',\n LLLL: 'dddd, MMMM Do, YYYY, A h:mm [vazta]',\n llll: 'ddd, D MMM YYYY, A h:mm [vazta]',\n },\n calendar: {\n sameDay: '[Aiz] LT',\n nextDay: '[Faleam] LT',\n nextWeek: '[Fuddlo] dddd[,] LT',\n lastDay: '[Kal] LT',\n lastWeek: '[Fattlo] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s',\n past: '%s adim',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er)/,\n ordinal: function (number, period) {\n switch (period) {\n // the ordinal 'er' only applies to day of the month\n case 'D':\n return number + 'er';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week\n doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)\n },\n meridiemParse: /rati|sokallim|donparam|sanje/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'rati') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'sokallim') {\n return hour;\n } else if (meridiem === 'donparam') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'sanje') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'rati';\n } else if (hour < 12) {\n return 'sokallim';\n } else if (hour < 16) {\n return 'donparam';\n } else if (hour < 20) {\n return 'sanje';\n } else {\n return 'rati';\n }\n },\n });\n\n return gomLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Gujarati [gu]\n//! author : Kaushik Thanki : https://github.com/Kaushik1987\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '૧',\n 2: '૨',\n 3: 'à«©',\n 4: '૪',\n 5: 'à««',\n 6: '૬',\n 7: 'à«',\n 8: 'à«®',\n 9: '૯',\n 0: '૦',\n },\n numberMap = {\n '૧': '1',\n '૨': '2',\n 'à«©': '3',\n '૪': '4',\n 'à««': '5',\n '૬': '6',\n 'à«': '7',\n 'à«®': '8',\n '૯': '9',\n '૦': '0',\n };\n\n var gu = moment.defineLocale('gu', {\n months: 'જાનà«àª¯à«àª†àª°à«€_ફેબà«àª°à«àª†àª°à«€_મારà«àªš_àªàªªà«àª°àª¿àª²_મે_જૂન_જà«àª²àª¾àªˆ_ઑગસà«àªŸ_સપà«àªŸà«‡àª®à«àª¬àª°_ઑકà«àªŸà«àª¬àª°_નવેમà«àª¬àª°_ડિસેમà«àª¬àª°'.split(\n '_'\n ),\n monthsShort:\n 'જાનà«àª¯à«._ફેબà«àª°à«._મારà«àªš_àªàªªà«àª°àª¿._મે_જૂન_જà«àª²àª¾._ઑગ._સપà«àªŸà«‡._ઑકà«àªŸà«._નવે._ડિસે.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બà«àª§à«àªµàª¾àª°_ગà«àª°à«àªµàª¾àª°_શà«àª•à«àª°àªµàª¾àª°_શનિવાર'.split(\n '_'\n ),\n weekdaysShort: 'રવિ_સોમ_મંગળ_બà«àª§à«_ગà«àª°à«_શà«àª•à«àª°_શનિ'.split('_'),\n weekdaysMin: 'ર_સો_મં_બà«_ગà«_શà«_શ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm વાગà«àª¯à«‡',\n LTS: 'A h:mm:ss વાગà«àª¯à«‡',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm વાગà«àª¯à«‡',\n LLLL: 'dddd, D MMMM YYYY, A h:mm વાગà«àª¯à«‡',\n },\n calendar: {\n sameDay: '[આજ] LT',\n nextDay: '[કાલે] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ગઇકાલે] LT',\n lastWeek: '[પાછલા] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s મા',\n past: '%s પહેલા',\n s: 'અમà«àª• પળો',\n ss: '%d સેકંડ',\n m: 'àªàª• મિનિટ',\n mm: '%d મિનિટ',\n h: 'àªàª• કલાક',\n hh: '%d કલાક',\n d: 'àªàª• દિવસ',\n dd: '%d દિવસ',\n M: 'àªàª• મહિનો',\n MM: '%d મહિનો',\n y: 'àªàª• વરà«àª·',\n yy: '%d વરà«àª·',\n },\n preparse: function (string) {\n return string.replace(/[૧૨૩૪૫૬à«à«®à«¯à«¦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Gujarati notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati.\n meridiemParse: /રાત|બપોર|સવાર|સાંજ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'રાત') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'સવાર') {\n return hour;\n } else if (meridiem === 'બપોર') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'સાંજ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'રાત';\n } else if (hour < 10) {\n return 'સવાર';\n } else if (hour < 17) {\n return 'બપોર';\n } else if (hour < 20) {\n return 'સાંજ';\n } else {\n return 'રાત';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return gu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hebrew [he]\n//! author : Tomer Cohen : https://github.com/tomer\n//! author : Moshe Simantov : https://github.com/DevelopmentIL\n//! author : Tal Ater : https://github.com/TalAter\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var he = moment.defineLocale('he', {\n months: '×™× ×•×ר_פברו×ר_מרץ_×פריל_מ××™_×™×•× ×™_יולי_×וגוסט_ספטמבר_×וקטובר_× ×•×‘×ž×‘×¨_דצמבר'.split(\n '_'\n ),\n monthsShort:\n '×™× ×•×³_פבר׳_מרץ_×פר׳_מ××™_×™×•× ×™_יולי_×וג׳_ספט׳_×וק׳_× ×•×‘×³_דצמ׳'.split('_'),\n weekdays: 'ר×שון_×©× ×™_שלישי_רביעי_חמישי_שישי_שבת'.split('_'),\n weekdaysShort: '×׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'),\n weekdaysMin: '×_ב_×’_ד_×”_ו_ש'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [ב]MMMM YYYY',\n LLL: 'D [ב]MMMM YYYY HH:mm',\n LLLL: 'dddd, D [ב]MMMM YYYY HH:mm',\n l: 'D/M/YYYY',\n ll: 'D MMM YYYY',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd, D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[×”×™×•× ×‘Ö¾]LT',\n nextDay: '[מחר ב־]LT',\n nextWeek: 'dddd [בשעה] LT',\n lastDay: '[×תמול ב־]LT',\n lastWeek: '[ביו×] dddd [×”×חרון בשעה] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'בעוד %s',\n past: '×œ×¤× ×™ %s',\n s: 'מספר ×©× ×™×•×ª',\n ss: '%d ×©× ×™×•×ª',\n m: 'דקה',\n mm: '%d דקות',\n h: 'שעה',\n hh: function (number) {\n if (number === 2) {\n return 'שעתיי×';\n }\n return number + ' שעות';\n },\n d: 'יו×',\n dd: function (number) {\n if (number === 2) {\n return 'יומיי×';\n }\n return number + ' ימי×';\n },\n M: 'חודש',\n MM: function (number) {\n if (number === 2) {\n return 'חודשיי×';\n }\n return number + ' חודשי×';\n },\n y: '×©× ×”',\n yy: function (number) {\n if (number === 2) {\n return '×©× ×ª×™×™×';\n } else if (number % 10 === 0 && number !== 10) {\n return number + ' ×©× ×”';\n }\n return number + ' ×©× ×™×';\n },\n },\n meridiemParse:\n /××—×”\"צ|×œ×¤× ×”\"צ|×חרי הצהריי×|×œ×¤× ×™ הצהריי×|×œ×¤× ×•×ª בוקר|בבוקר|בערב/i,\n isPM: function (input) {\n return /^(××—×”\"צ|×חרי הצהריי×|בערב)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 5) {\n return '×œ×¤× ×•×ª בוקר';\n } else if (hour < 10) {\n return 'בבוקר';\n } else if (hour < 12) {\n return isLower ? '×œ×¤× ×”\"צ' : '×œ×¤× ×™ הצהריי×';\n } else if (hour < 18) {\n return isLower ? '××—×”\"צ' : '×חרי הצהריי×';\n } else {\n return 'בערב';\n }\n },\n });\n\n return he;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hindi [hi]\n//! author : Mayank Singhal : https://github.com/mayanksinghal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: 'à¥',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n 'à¥': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n },\n monthsParse = [\n /^जन/i,\n /^फ़र|फर/i,\n /^मारà¥à¤š/i,\n /^अपà¥à¤°à¥ˆ/i,\n /^मई/i,\n /^जून/i,\n /^जà¥à¤²/i,\n /^अग/i,\n /^सितं|सित/i,\n /^अकà¥à¤Ÿà¥‚/i,\n /^नव|नवं/i,\n /^दिसं|दिस/i,\n ],\n shortMonthsParse = [\n /^जन/i,\n /^फ़र/i,\n /^मारà¥à¤š/i,\n /^अपà¥à¤°à¥ˆ/i,\n /^मई/i,\n /^जून/i,\n /^जà¥à¤²/i,\n /^अग/i,\n /^सित/i,\n /^अकà¥à¤Ÿà¥‚/i,\n /^नव/i,\n /^दिस/i,\n ];\n\n var hi = moment.defineLocale('hi', {\n months: {\n format: 'जनवरी_फ़रवरी_मारà¥à¤š_अपà¥à¤°à¥ˆà¤²_मई_जून_जà¥à¤²à¤¾à¤ˆ_अगसà¥à¤¤_सितमà¥à¤¬à¤°_अकà¥à¤Ÿà¥‚बर_नवमà¥à¤¬à¤°_दिसमà¥à¤¬à¤°'.split(\n '_'\n ),\n standalone:\n 'जनवरी_फरवरी_मारà¥à¤š_अपà¥à¤°à¥ˆà¤²_मई_जून_जà¥à¤²à¤¾à¤ˆ_अगसà¥à¤¤_सितंबर_अकà¥à¤Ÿà¥‚बर_नवंबर_दिसंबर'.split(\n '_'\n ),\n },\n monthsShort:\n 'जन._फ़र._मारà¥à¤š_अपà¥à¤°à¥ˆ._मई_जून_जà¥à¤²._अग._सित._अकà¥à¤Ÿà¥‚._नव._दिस.'.split('_'),\n weekdays: 'रविवार_सोमवार_मंगलवार_बà¥à¤§à¤µà¤¾à¤°_गà¥à¤°à¥‚वार_शà¥à¤•à¥à¤°à¤µà¤¾à¤°_शनिवार'.split('_'),\n weekdaysShort: 'रवि_सोम_मंगल_बà¥à¤§_गà¥à¤°à¥‚_शà¥à¤•à¥à¤°_शनि'.split('_'),\n weekdaysMin: 'र_सो_मं_बà¥_गà¥_शà¥_श'.split('_'),\n longDateFormat: {\n LT: 'A h:mm बजे',\n LTS: 'A h:mm:ss बजे',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm बजे',\n LLLL: 'dddd, D MMMM YYYY, A h:mm बजे',\n },\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: shortMonthsParse,\n\n monthsRegex:\n /^(जनवरी|जन\\.?|फ़रवरी|फरवरी|फ़र\\.?|मारà¥à¤š?|अपà¥à¤°à¥ˆà¤²|अपà¥à¤°à¥ˆ\\.?|मई?|जून?|जà¥à¤²à¤¾à¤ˆ|जà¥à¤²\\.?|अगसà¥à¤¤|अग\\.?|सितमà¥à¤¬à¤°|सितंबर|सित\\.?|अकà¥à¤Ÿà¥‚बर|अकà¥à¤Ÿà¥‚\\.?|नवमà¥à¤¬à¤°|नवंबर|नव\\.?|दिसमà¥à¤¬à¤°|दिसंबर|दिस\\.?)/i,\n\n monthsShortRegex:\n /^(जनवरी|जन\\.?|फ़रवरी|फरवरी|फ़र\\.?|मारà¥à¤š?|अपà¥à¤°à¥ˆà¤²|अपà¥à¤°à¥ˆ\\.?|मई?|जून?|जà¥à¤²à¤¾à¤ˆ|जà¥à¤²\\.?|अगसà¥à¤¤|अग\\.?|सितमà¥à¤¬à¤°|सितंबर|सित\\.?|अकà¥à¤Ÿà¥‚बर|अकà¥à¤Ÿà¥‚\\.?|नवमà¥à¤¬à¤°|नवंबर|नव\\.?|दिसमà¥à¤¬à¤°|दिसंबर|दिस\\.?)/i,\n\n monthsStrictRegex:\n /^(जनवरी?|फ़रवरी|फरवरी?|मारà¥à¤š?|अपà¥à¤°à¥ˆà¤²?|मई?|जून?|जà¥à¤²à¤¾à¤ˆ?|अगसà¥à¤¤?|सितमà¥à¤¬à¤°|सितंबर|सित?\\.?|अकà¥à¤Ÿà¥‚बर|अकà¥à¤Ÿà¥‚\\.?|नवमà¥à¤¬à¤°|नवंबर?|दिसमà¥à¤¬à¤°|दिसंबर?)/i,\n\n monthsShortStrictRegex:\n /^(जन\\.?|फ़र\\.?|मारà¥à¤š?|अपà¥à¤°à¥ˆ\\.?|मई?|जून?|जà¥à¤²\\.?|अग\\.?|सित\\.?|अकà¥à¤Ÿà¥‚\\.?|नव\\.?|दिस\\.?)/i,\n\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[कल] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[कल] LT',\n lastWeek: '[पिछले] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s में',\n past: '%s पहले',\n s: 'कà¥à¤› ही कà¥à¤·à¤£',\n ss: '%d सेकंड',\n m: 'à¤à¤• मिनट',\n mm: '%d मिनट',\n h: 'à¤à¤• घंटा',\n hh: '%d घंटे',\n d: 'à¤à¤• दिन',\n dd: '%d दिन',\n M: 'à¤à¤• महीने',\n MM: '%d महीने',\n y: 'à¤à¤• वरà¥à¤·',\n yy: '%d वरà¥à¤·',\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६à¥à¥®à¥¯à¥¦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Hindi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi.\n meridiemParse: /रात|सà¥à¤¬à¤¹|दोपहर|शाम/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'रात') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सà¥à¤¬à¤¹') {\n return hour;\n } else if (meridiem === 'दोपहर') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'शाम') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'रात';\n } else if (hour < 10) {\n return 'सà¥à¤¬à¤¹';\n } else if (hour < 17) {\n return 'दोपहर';\n } else if (hour < 20) {\n return 'शाम';\n } else {\n return 'रात';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return hi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Croatian [hr]\n//! author : Bojan Marković : https://github.com/bmarkovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n }\n\n var hr = moment.defineLocale('hr', {\n months: {\n format: 'sijeÄnja_veljaÄe_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca'.split(\n '_'\n ),\n standalone:\n 'sijeÄanj_veljaÄa_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split(\n '_'\n ),\n },\n monthsShort:\n 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_Äetvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._Äet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_Äe_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'Do MMMM YYYY',\n LLL: 'Do MMMM YYYY H:mm',\n LLLL: 'dddd, Do MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juÄer u] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[proÅ¡lu] [nedjelju] [u] LT';\n case 3:\n return '[proÅ¡lu] [srijedu] [u] LT';\n case 6:\n return '[proÅ¡le] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[proÅ¡li] dddd [u] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'par sekundi',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: 'dan',\n dd: translate,\n M: 'mjesec',\n MM: translate,\n y: 'godinu',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return hr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Hungarian [hu]\n//! author : Adam Brunner : https://github.com/adambrunner\n//! author : Peter Viszt : https://github.com/passatgt\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var weekEndings =\n 'vasárnap hétfÅ‘n kedden szerdán csütörtökön pénteken szombaton'.split(' ');\n function translate(number, withoutSuffix, key, isFuture) {\n var num = number;\n switch (key) {\n case 's':\n return isFuture || withoutSuffix\n ? 'néhány másodperc'\n : 'néhány másodperce';\n case 'ss':\n return num + (isFuture || withoutSuffix)\n ? ' másodperc'\n : ' másodperce';\n case 'm':\n return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'mm':\n return num + (isFuture || withoutSuffix ? ' perc' : ' perce');\n case 'h':\n return 'egy' + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'hh':\n return num + (isFuture || withoutSuffix ? ' óra' : ' órája');\n case 'd':\n return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'dd':\n return num + (isFuture || withoutSuffix ? ' nap' : ' napja');\n case 'M':\n return 'egy' + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'MM':\n return num + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');\n case 'y':\n return 'egy' + (isFuture || withoutSuffix ? ' év' : ' éve');\n case 'yy':\n return num + (isFuture || withoutSuffix ? ' év' : ' éve');\n }\n return '';\n }\n function week(isFuture) {\n return (\n (isFuture ? '' : '[múlt] ') +\n '[' +\n weekEndings[this.day()] +\n '] LT[-kor]'\n );\n }\n\n var hu = moment.defineLocale('hu', {\n months: 'január_február_március_április_május_június_július_augusztus_szeptember_október_november_december'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._márc._ápr._máj._jún._júl._aug._szept._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'vasárnap_hétfÅ‘_kedd_szerda_csütörtök_péntek_szombat'.split('_'),\n weekdaysShort: 'vas_hét_kedd_sze_csüt_pén_szo'.split('_'),\n weekdaysMin: 'v_h_k_sze_cs_p_szo'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'YYYY.MM.DD.',\n LL: 'YYYY. MMMM D.',\n LLL: 'YYYY. MMMM D. H:mm',\n LLLL: 'YYYY. MMMM D., dddd H:mm',\n },\n meridiemParse: /de|du/i,\n isPM: function (input) {\n return input.charAt(1).toLowerCase() === 'u';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower === true ? 'de' : 'DE';\n } else {\n return isLower === true ? 'du' : 'DU';\n }\n },\n calendar: {\n sameDay: '[ma] LT[-kor]',\n nextDay: '[holnap] LT[-kor]',\n nextWeek: function () {\n return week.call(this, true);\n },\n lastDay: '[tegnap] LT[-kor]',\n lastWeek: function () {\n return week.call(this, false);\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s múlva',\n past: '%s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return hu;\n\n})));\n","//! moment.js locale configuration\n//! locale : Armenian [hy-am]\n//! author : Armendarabyan : https://github.com/armendarabyan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var hyAm = moment.defineLocale('hy-am', {\n months: {\n format: 'Õ°Õ¸Ö‚Õ¶Õ¾Õ¡Ö€Õ«_ÖƒÕ¥Õ¿Ö€Õ¾Õ¡Ö€Õ«_Õ´Õ¡Ö€Õ¿Õ«_Õ¡ÕºÖ€Õ«Õ¬Õ«_Õ´Õ¡ÕµÕ«Õ½Õ«_Õ°Õ¸Ö‚Õ¶Õ«Õ½Õ«_Õ°Õ¸Ö‚Õ¬Õ«Õ½Õ«_Ö…Õ£Õ¸Õ½Õ¿Õ¸Õ½Õ«_Õ½Õ¥ÕºÕ¿Õ¥Õ´Õ¢Õ¥Ö€Õ«_Õ°Õ¸Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€Õ«_Õ¶Õ¸ÕµÕ¥Õ´Õ¢Õ¥Ö€Õ«_Õ¤Õ¥Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€Õ«'.split(\n '_'\n ),\n standalone:\n 'Õ°Õ¸Ö‚Õ¶Õ¾Õ¡Ö€_ÖƒÕ¥Õ¿Ö€Õ¾Õ¡Ö€_Õ´Õ¡Ö€Õ¿_Õ¡ÕºÖ€Õ«Õ¬_Õ´Õ¡ÕµÕ«Õ½_Õ°Õ¸Ö‚Õ¶Õ«Õ½_Õ°Õ¸Ö‚Õ¬Õ«Õ½_Ö…Õ£Õ¸Õ½Õ¿Õ¸Õ½_Õ½Õ¥ÕºÕ¿Õ¥Õ´Õ¢Õ¥Ö€_Õ°Õ¸Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€_Õ¶Õ¸ÕµÕ¥Õ´Õ¢Õ¥Ö€_Õ¤Õ¥Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€'.split(\n '_'\n ),\n },\n monthsShort: 'Õ°Õ¶Õ¾_ÖƒÕ¿Ö€_Õ´Ö€Õ¿_Õ¡ÕºÖ€_Õ´ÕµÕ½_Õ°Õ¶Õ½_Õ°Õ¬Õ½_Ö…Õ£Õ½_Õ½ÕºÕ¿_Õ°Õ¯Õ¿_Õ¶Õ´Õ¢_Õ¤Õ¯Õ¿'.split('_'),\n weekdays:\n 'Õ¯Õ«Ö€Õ¡Õ¯Õ«_Õ¥Ö€Õ¯Õ¸Ö‚Õ·Õ¡Õ¢Õ©Õ«_Õ¥Ö€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«_Õ¹Õ¸Ö€Õ¥Ö„Õ·Õ¡Õ¢Õ©Õ«_Õ°Õ«Õ¶Õ£Õ·Õ¡Õ¢Õ©Õ«_Õ¸Ö‚Ö€Õ¢Õ¡Õ©_Õ·Õ¡Õ¢Õ¡Õ©'.split(\n '_'\n ),\n weekdaysShort: 'Õ¯Ö€Õ¯_Õ¥Ö€Õ¯_Õ¥Ö€Ö„_Õ¹Ö€Ö„_Õ°Õ¶Õ£_Õ¸Ö‚Ö€Õ¢_Õ·Õ¢Õ©'.split('_'),\n weekdaysMin: 'Õ¯Ö€Õ¯_Õ¥Ö€Õ¯_Õ¥Ö€Ö„_Õ¹Ö€Ö„_Õ°Õ¶Õ£_Õ¸Ö‚Ö€Õ¢_Õ·Õ¢Õ©'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY Õ©.',\n LLL: 'D MMMM YYYY Õ©., HH:mm',\n LLLL: 'dddd, D MMMM YYYY Õ©., HH:mm',\n },\n calendar: {\n sameDay: '[Õ¡ÕµÕ½Ö…Ö€] LT',\n nextDay: '[Õ¾Õ¡Õ²Õ¨] LT',\n lastDay: '[Õ¥Ö€Õ¥Õ¯] LT',\n nextWeek: function () {\n return 'dddd [Ö…Ö€Õ¨ ÕªÕ¡Õ´Õ¨] LT';\n },\n lastWeek: function () {\n return '[Õ¡Õ¶ÖÕ¡Õ®] dddd [Ö…Ö€Õ¨ ÕªÕ¡Õ´Õ¨] LT';\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s Õ°Õ¥Õ¿Õ¸',\n past: '%s Õ¡Õ¼Õ¡Õ»',\n s: 'Õ´Õ« Ö„Õ¡Õ¶Õ« Õ¾Õ¡ÕµÖ€Õ¯ÕµÕ¡Õ¶',\n ss: '%d Õ¾Õ¡ÕµÖ€Õ¯ÕµÕ¡Õ¶',\n m: 'Ö€Õ¸ÕºÕ¥',\n mm: '%d Ö€Õ¸ÕºÕ¥',\n h: 'ÕªÕ¡Õ´',\n hh: '%d ÕªÕ¡Õ´',\n d: 'Ö…Ö€',\n dd: '%d Ö…Ö€',\n M: 'Õ¡Õ´Õ«Õ½',\n MM: '%d Õ¡Õ´Õ«Õ½',\n y: 'Õ¿Õ¡Ö€Õ«',\n yy: '%d Õ¿Õ¡Ö€Õ«',\n },\n meridiemParse: /Õ£Õ«Õ·Õ¥Ö€Õ¾Õ¡|Õ¡Õ¼Õ¡Õ¾Õ¸Õ¿Õ¾Õ¡|ÖÕ¥Ö€Õ¥Õ¯Õ¾Õ¡|Õ¥Ö€Õ¥Õ¯Õ¸ÕµÕ¡Õ¶/,\n isPM: function (input) {\n return /^(ÖÕ¥Ö€Õ¥Õ¯Õ¾Õ¡|Õ¥Ö€Õ¥Õ¯Õ¸ÕµÕ¡Õ¶)$/.test(input);\n },\n meridiem: function (hour) {\n if (hour < 4) {\n return 'Õ£Õ«Õ·Õ¥Ö€Õ¾Õ¡';\n } else if (hour < 12) {\n return 'Õ¡Õ¼Õ¡Õ¾Õ¸Õ¿Õ¾Õ¡';\n } else if (hour < 17) {\n return 'ÖÕ¥Ö€Õ¥Õ¯Õ¾Õ¡';\n } else {\n return 'Õ¥Ö€Õ¥Õ¯Õ¸ÕµÕ¡Õ¶';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}|\\d{1,2}-(Õ«Õ¶|Ö€Õ¤)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'DDD':\n case 'w':\n case 'W':\n case 'DDDo':\n if (number === 1) {\n return number + '-Õ«Õ¶';\n }\n return number + '-Ö€Õ¤';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return hyAm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Indonesian [id]\n//! author : Mohammad Satrio Utomo : https://github.com/tyok\n//! reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var id = moment.defineLocale('id', {\n months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des'.split('_'),\n weekdays: 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),\n weekdaysShort: 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),\n weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|siang|sore|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'siang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sore' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'siang';\n } else if (hours < 19) {\n return 'sore';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Besok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kemarin pukul] LT',\n lastWeek: 'dddd [lalu pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lalu',\n s: 'beberapa detik',\n ss: '%d detik',\n m: 'semenit',\n mm: '%d menit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return id;\n\n})));\n","//! moment.js locale configuration\n//! locale : Icelandic [is]\n//! author : Hinrik Örn Sigurðsson : https://github.com/hinrik\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(n) {\n if (n % 100 === 11) {\n return true;\n } else if (n % 10 === 1) {\n return false;\n }\n return true;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture\n ? 'nokkrar sekúndur'\n : 'nokkrum sekúndum';\n case 'ss':\n if (plural(number)) {\n return (\n result +\n (withoutSuffix || isFuture ? 'sekúndur' : 'sekúndum')\n );\n }\n return result + 'sekúnda';\n case 'm':\n return withoutSuffix ? 'mÃnúta' : 'mÃnútu';\n case 'mm':\n if (plural(number)) {\n return (\n result + (withoutSuffix || isFuture ? 'mÃnútur' : 'mÃnútum')\n );\n } else if (withoutSuffix) {\n return result + 'mÃnúta';\n }\n return result + 'mÃnútu';\n case 'hh':\n if (plural(number)) {\n return (\n result +\n (withoutSuffix || isFuture\n ? 'klukkustundir'\n : 'klukkustundum')\n );\n }\n return result + 'klukkustund';\n case 'd':\n if (withoutSuffix) {\n return 'dagur';\n }\n return isFuture ? 'dag' : 'degi';\n case 'dd':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'dagar';\n }\n return result + (isFuture ? 'daga' : 'dögum');\n } else if (withoutSuffix) {\n return result + 'dagur';\n }\n return result + (isFuture ? 'dag' : 'degi');\n case 'M':\n if (withoutSuffix) {\n return 'mánuður';\n }\n return isFuture ? 'mánuð' : 'mánuði';\n case 'MM':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'mánuðir';\n }\n return result + (isFuture ? 'mánuði' : 'mánuðum');\n } else if (withoutSuffix) {\n return result + 'mánuður';\n }\n return result + (isFuture ? 'mánuð' : 'mánuði');\n case 'y':\n return withoutSuffix || isFuture ? 'ár' : 'ári';\n case 'yy':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'ár' : 'árum');\n }\n return result + (withoutSuffix || isFuture ? 'ár' : 'ári');\n }\n }\n\n var is = moment.defineLocale('is', {\n months: 'janúar_febrúar_mars_aprÃl_maÃ_júnÃ_júlÃ_ágúst_september_október_nóvember_desember'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maÃ_jún_júl_ágú_sep_okt_nóv_des'.split('_'),\n weekdays:\n 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split(\n '_'\n ),\n weekdaysShort: 'sun_mán_þri_mið_fim_fös_lau'.split('_'),\n weekdaysMin: 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] H:mm',\n LLLL: 'dddd, D. MMMM YYYY [kl.] H:mm',\n },\n calendar: {\n sameDay: '[à dag kl.] LT',\n nextDay: '[á morgun kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[à gær kl.] LT',\n lastWeek: '[sÃðasta] dddd [kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'eftir %s',\n past: 'fyrir %s sÃðan',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: 'klukkustund',\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return is;\n\n})));\n","//! moment.js locale configuration\n//! locale : Italian (Switzerland) [it-ch]\n//! author : xfh : https://github.com/xfh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var itCh = moment.defineLocale('it-ch', {\n months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(\n '_'\n ),\n monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(\n '_'\n ),\n weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Oggi alle] LT',\n nextDay: '[Domani alle] LT',\n nextWeek: 'dddd [alle] LT',\n lastDay: '[Ieri alle] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[la scorsa] dddd [alle] LT';\n default:\n return '[lo scorso] dddd [alle] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: function (s) {\n return (/^[0-9].+$/.test(s) ? 'tra' : 'in') + ' ' + s;\n },\n past: '%s fa',\n s: 'alcuni secondi',\n ss: '%d secondi',\n m: 'un minuto',\n mm: '%d minuti',\n h: \"un'ora\",\n hh: '%d ore',\n d: 'un giorno',\n dd: '%d giorni',\n M: 'un mese',\n MM: '%d mesi',\n y: 'un anno',\n yy: '%d anni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return itCh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Italian [it]\n//! author : Lorenzo : https://github.com/aliem\n//! author: Mattia Larentis: https://github.com/nostalgiaz\n//! author: Marco : https://github.com/Manfre98\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var it = moment.defineLocale('it', {\n months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(\n '_'\n ),\n monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(\n '_'\n ),\n weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: function () {\n return (\n '[Oggi a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n nextDay: function () {\n return (\n '[Domani a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n nextWeek: function () {\n return (\n 'dddd [a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n lastDay: function () {\n return (\n '[Ieri a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return (\n '[La scorsa] dddd [a' +\n (this.hours() > 1\n ? 'lle '\n : this.hours() === 0\n ? ' '\n : \"ll'\") +\n ']LT'\n );\n default:\n return (\n '[Lo scorso] dddd [a' +\n (this.hours() > 1\n ? 'lle '\n : this.hours() === 0\n ? ' '\n : \"ll'\") +\n ']LT'\n );\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'tra %s',\n past: '%s fa',\n s: 'alcuni secondi',\n ss: '%d secondi',\n m: 'un minuto',\n mm: '%d minuti',\n h: \"un'ora\",\n hh: '%d ore',\n d: 'un giorno',\n dd: '%d giorni',\n w: 'una settimana',\n ww: '%d settimane',\n M: 'un mese',\n MM: '%d mesi',\n y: 'un anno',\n yy: '%d anni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return it;\n\n})));\n","//! moment.js locale configuration\n//! locale : Japanese [ja]\n//! author : LI Long : https://github.com/baryon\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ja = moment.defineLocale('ja', {\n eras: [\n {\n since: '2019-05-01',\n offset: 1,\n name: '令和',\n narrow: 'ã‹¿',\n abbr: 'R',\n },\n {\n since: '1989-01-08',\n until: '2019-04-30',\n offset: 1,\n name: 'å¹³æˆ',\n narrow: 'ã»',\n abbr: 'H',\n },\n {\n since: '1926-12-25',\n until: '1989-01-07',\n offset: 1,\n name: 'æ˜å’Œ',\n narrow: 'ã¼',\n abbr: 'S',\n },\n {\n since: '1912-07-30',\n until: '1926-12-24',\n offset: 1,\n name: '大æ£',\n narrow: 'ã½',\n abbr: 'T',\n },\n {\n since: '1873-01-01',\n until: '1912-07-29',\n offset: 6,\n name: '明治',\n narrow: 'ã¾',\n abbr: 'M',\n },\n {\n since: '0001-01-01',\n until: '1873-12-31',\n offset: 1,\n name: '西暦',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: '紀元å‰',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n eraYearOrdinalRegex: /(å…ƒ|\\d+)å¹´/,\n eraYearOrdinalParse: function (input, match) {\n return match[1] === 'å…ƒ' ? 1 : parseInt(match[1] || input, 10);\n },\n months: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '日曜日_月曜日_ç«æ›œæ—¥_水曜日_木曜日_金曜日_土曜日'.split('_'),\n weekdaysShort: 'æ—¥_月_ç«_æ°´_木_金_土'.split('_'),\n weekdaysMin: 'æ—¥_月_ç«_æ°´_木_金_土'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYYå¹´M月Dæ—¥',\n LLL: 'YYYYå¹´M月Dæ—¥ HH:mm',\n LLLL: 'YYYYå¹´M月Dæ—¥ dddd HH:mm',\n l: 'YYYY/MM/DD',\n ll: 'YYYYå¹´M月Dæ—¥',\n lll: 'YYYYå¹´M月Dæ—¥ HH:mm',\n llll: 'YYYYå¹´M月Dæ—¥(ddd) HH:mm',\n },\n meridiemParse: /åˆå‰|åˆå¾Œ/i,\n isPM: function (input) {\n return input === 'åˆå¾Œ';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'åˆå‰';\n } else {\n return 'åˆå¾Œ';\n }\n },\n calendar: {\n sameDay: '[今日] LT',\n nextDay: '[明日] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n return '[æ¥é€±]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n lastDay: '[昨日] LT',\n lastWeek: function (now) {\n if (this.week() !== now.week()) {\n return '[先週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}æ—¥/,\n ordinal: function (number, period) {\n switch (period) {\n case 'y':\n return number === 1 ? '元年' : number + 'å¹´';\n case 'd':\n case 'D':\n case 'DDD':\n return number + 'æ—¥';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%så‰',\n s: '数秒',\n ss: '%d秒',\n m: '1分',\n mm: '%d分',\n h: '1時間',\n hh: '%d時間',\n d: '1æ—¥',\n dd: '%dæ—¥',\n M: '1ヶ月',\n MM: '%dヶ月',\n y: '1å¹´',\n yy: '%då¹´',\n },\n });\n\n return ja;\n\n})));\n","//! moment.js locale configuration\n//! locale : Javanese [jv]\n//! author : Rony Lantip : https://github.com/lantip\n//! reference: http://jv.wikipedia.org/wiki/Basa_Jawa\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var jv = moment.defineLocale('jv', {\n months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des'.split('_'),\n weekdays: 'Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu'.split('_'),\n weekdaysShort: 'Min_Sen_Sel_Reb_Kem_Jem_Sep'.split('_'),\n weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sp'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /enjing|siyang|sonten|ndalu/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'enjing') {\n return hour;\n } else if (meridiem === 'siyang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sonten' || meridiem === 'ndalu') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'enjing';\n } else if (hours < 15) {\n return 'siyang';\n } else if (hours < 19) {\n return 'sonten';\n } else {\n return 'ndalu';\n }\n },\n calendar: {\n sameDay: '[Dinten puniko pukul] LT',\n nextDay: '[Mbenjang pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kala wingi pukul] LT',\n lastWeek: 'dddd [kepengker pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'wonten ing %s',\n past: '%s ingkang kepengker',\n s: 'sawetawis detik',\n ss: '%d detik',\n m: 'setunggal menit',\n mm: '%d menit',\n h: 'setunggal jam',\n hh: '%d jam',\n d: 'sedinten',\n dd: '%d dinten',\n M: 'sewulan',\n MM: '%d wulan',\n y: 'setaun',\n yy: '%d taun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return jv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Georgian [ka]\n//! author : Irakli Janiashvili : https://github.com/IrakliJani\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ka = moment.defineLocale('ka', {\n months: 'იáƒáƒœáƒ•áƒáƒ ი_თებერვáƒáƒšáƒ˜_მáƒáƒ ტი_áƒáƒžáƒ ილი_მáƒáƒ˜áƒ¡áƒ˜_ივნისი_ივლისი_áƒáƒ’ვისტáƒ_სექტემბერი_áƒáƒ¥áƒ¢áƒáƒ›áƒ‘ერი_ნáƒáƒ”მბერი_დეკემბერი'.split(\n '_'\n ),\n monthsShort: 'იáƒáƒœ_თებ_მáƒáƒ _áƒáƒžáƒ _მáƒáƒ˜_ივნ_ივლ_áƒáƒ’ვ_სექ_áƒáƒ¥áƒ¢_ნáƒáƒ”_დეკ'.split('_'),\n weekdays: {\n standalone:\n 'კვირáƒ_áƒáƒ შáƒáƒ‘áƒáƒ—ი_სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი_áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი_ხუთშáƒáƒ‘áƒáƒ—ი_პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი_შáƒáƒ‘áƒáƒ—ი'.split(\n '_'\n ),\n format: 'კვირáƒáƒ¡_áƒáƒ შáƒáƒ‘áƒáƒ—ს_სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ს_áƒáƒ—ხშáƒáƒ‘áƒáƒ—ს_ხუთშáƒáƒ‘áƒáƒ—ს_პáƒáƒ áƒáƒ¡áƒ™áƒ”ვს_შáƒáƒ‘áƒáƒ—ს'.split(\n '_'\n ),\n isFormat: /(წინáƒ|შემდეგ)/,\n },\n weekdaysShort: 'კვი_áƒáƒ შ_სáƒáƒ›_áƒáƒ—ხ_ხუთ_პáƒáƒ _შáƒáƒ‘'.split('_'),\n weekdaysMin: 'კვ_áƒáƒ _სáƒ_áƒáƒ—_ხუ_პáƒ_შáƒ'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[დღეს] LT[-ზე]',\n nextDay: '[ხვáƒáƒš] LT[-ზე]',\n lastDay: '[გუშინ] LT[-ზე]',\n nextWeek: '[შემდეგ] dddd LT[-ზე]',\n lastWeek: '[წინáƒ] dddd LT-ზე',\n sameElse: 'L',\n },\n relativeTime: {\n future: function (s) {\n return s.replace(\n /(წáƒáƒ›|წუთ|სáƒáƒáƒ—|წელ|დღ|თვ)(ი|ე)/,\n function ($0, $1, $2) {\n return $2 === 'ი' ? $1 + 'ში' : $1 + $2 + 'ში';\n }\n );\n },\n past: function (s) {\n if (/(წáƒáƒ›áƒ˜|წუთი|სáƒáƒáƒ—ი|დღე|თვე)/.test(s)) {\n return s.replace(/(ი|ე)$/, 'ის წინ');\n }\n if (/წელი/.test(s)) {\n return s.replace(/წელი$/, 'წლის წინ');\n }\n return s;\n },\n s: 'რáƒáƒ›áƒ“ენიმე წáƒáƒ›áƒ˜',\n ss: '%d წáƒáƒ›áƒ˜',\n m: 'წუთი',\n mm: '%d წუთი',\n h: 'სáƒáƒáƒ—ი',\n hh: '%d სáƒáƒáƒ—ი',\n d: 'დღე',\n dd: '%d დღე',\n M: 'თვე',\n MM: '%d თვე',\n y: 'წელი',\n yy: '%d წელი',\n },\n dayOfMonthOrdinalParse: /0|1-ლი|მე-\\d{1,2}|\\d{1,2}-ე/,\n ordinal: function (number) {\n if (number === 0) {\n return number;\n }\n if (number === 1) {\n return number + '-ლი';\n }\n if (\n number < 20 ||\n (number <= 100 && number % 20 === 0) ||\n number % 100 === 0\n ) {\n return 'მე-' + number;\n }\n return number + '-ე';\n },\n week: {\n dow: 1,\n doy: 7,\n },\n });\n\n return ka;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kazakh [kk]\n//! authors : Nurlan Rakhimzhanov : https://github.com/nurlan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-ші',\n 1: '-ші',\n 2: '-ші',\n 3: '-ші',\n 4: '-ші',\n 5: '-ші',\n 6: '-шы',\n 7: '-ші',\n 8: '-ші',\n 9: '-шы',\n 10: '-шы',\n 20: '-шы',\n 30: '-шы',\n 40: '-шы',\n 50: '-ші',\n 60: '-шы',\n 70: '-ші',\n 80: '-ші',\n 90: '-шы',\n 100: '-ші',\n };\n\n var kk = moment.defineLocale('kk', {\n months: 'қаңтар_ақпан_наурыз_Ñәуір_мамыр_мауÑым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқÑан'.split(\n '_'\n ),\n monthsShort: 'қаң_ақп_нау_Ñәу_мам_мау_шіл_там_қыр_қаз_қар_жел'.split('_'),\n weekdays: 'жекÑенбі_дүйÑенбі_ÑейÑенбі_ÑәрÑенбі_бейÑенбі_жұма_Ñенбі'.split(\n '_'\n ),\n weekdaysShort: 'жек_дүй_Ñей_Ñәр_бей_жұм_Ñен'.split('_'),\n weekdaysMin: 'жк_дй_Ñй_ÑÑ€_бй_жм_Ñн'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Бүгін Ñағат] LT',\n nextDay: '[Ертең Ñағат] LT',\n nextWeek: 'dddd [Ñағат] LT',\n lastDay: '[Кеше Ñағат] LT',\n lastWeek: '[Өткен аптаның] dddd [Ñағат] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ішінде',\n past: '%s бұрын',\n s: 'бірнеше Ñекунд',\n ss: '%d Ñекунд',\n m: 'бір минут',\n mm: '%d минут',\n h: 'бір Ñағат',\n hh: '%d Ñағат',\n d: 'бір күн',\n dd: '%d күн',\n M: 'бір ай',\n MM: '%d ай',\n y: 'бір жыл',\n yy: '%d жыл',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ші|шы)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return kk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Cambodian [km]\n//! author : Kruy Vanna : https://github.com/kruyvanna\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '១',\n 2: '២',\n 3: '៣',\n 4: '៤',\n 5: '៥',\n 6: '៦',\n 7: '៧',\n 8: '៨',\n 9: '៩',\n 0: '០',\n },\n numberMap = {\n '១': '1',\n '២': '2',\n '៣': '3',\n '៤': '4',\n '៥': '5',\n '៦': '6',\n '៧': '7',\n '៨': '8',\n '៩': '9',\n '០': '0',\n };\n\n var km = moment.defineLocale('km', {\n months: 'មករា_កុម្ភៈ_មីនា_មáŸážŸáž¶_ឧសភា_មិážáž»áž“ា_កក្កដា_សីហា_កញ្ញា_ážáž»áž›áž¶_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n monthsShort:\n 'មករា_កុម្ភៈ_មីនា_មáŸážŸáž¶_ឧសភា_មិážáž»áž“ា_កក្កដា_សីហា_កញ្ញា_ážáž»áž›áž¶_វិច្ឆិកា_ធ្នូ'.split(\n '_'\n ),\n weekdays: 'អាទិážáŸ’áž™_áž…áŸáž“្ទ_អង្គារ_ពុធ_ព្រហស្បážáž·áŸ_សុក្រ_សៅរáŸ'.split('_'),\n weekdaysShort: 'អា_áž…_អ_áž–_ព្រ_សុ_ស'.split('_'),\n weekdaysMin: 'អា_áž…_អ_áž–_ព្រ_សុ_ស'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /ព្រឹក|ល្ងាច/,\n isPM: function (input) {\n return input === 'ល្ងាច';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ព្រឹក';\n } else {\n return 'ល្ងាច';\n }\n },\n calendar: {\n sameDay: '[ážáŸ’ងៃនáŸáŸ‡ ម៉ោង] LT',\n nextDay: '[ស្អែក ម៉ោង] LT',\n nextWeek: 'dddd [ម៉ោង] LT',\n lastDay: '[ម្សិលមិញ ម៉ោង] LT',\n lastWeek: 'dddd [សប្ážáž¶áž áŸáž˜áž»áž“] [ម៉ោង] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sទៀáž',\n past: '%sមុន',\n s: 'ប៉ុន្មានវិនាទី',\n ss: '%d វិនាទី',\n m: 'មួយនាទី',\n mm: '%d នាទី',\n h: 'មួយម៉ោង',\n hh: '%d ម៉ោង',\n d: 'មួយážáŸ’ងៃ',\n dd: '%d ážáŸ’ងៃ',\n M: 'មួយážáŸ‚',\n MM: '%d ážáŸ‚',\n y: 'មួយឆ្នាំ',\n yy: '%d ឆ្នាំ',\n },\n dayOfMonthOrdinalParse: /ទី\\d{1,2}/,\n ordinal: 'ទី%d',\n preparse: function (string) {\n return string.replace(/[១២៣៤៥៦៧៨៩០]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return km;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kannada [kn]\n//! author : Rajeev Naik : https://github.com/rajeevnaikte\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '೧',\n 2: '೨',\n 3: '೩',\n 4: '೪',\n 5: '೫',\n 6: '೬',\n 7: 'à³',\n 8: 'à³®',\n 9: '೯',\n 0: '೦',\n },\n numberMap = {\n '೧': '1',\n '೨': '2',\n '೩': '3',\n '೪': '4',\n '೫': '5',\n '೬': '6',\n 'à³': '7',\n 'à³®': '8',\n '೯': '9',\n '೦': '0',\n };\n\n var kn = moment.defineLocale('kn', {\n months: 'ಜನವರಿ_ಫೆಬà³à²°à²µà²°à²¿_ಮಾರà³à²šà³_à²à²ªà³à²°à²¿à²²à³_ಮೇ_ಜೂನà³_ಜà³à²²à³†à³–_ಆಗಸà³à²Ÿà³_ಸೆಪà³à²Ÿà³†à²‚ಬರà³_ಅಕà³à²Ÿà³†à³‚ೕಬರà³_ನವೆಂಬರà³_ಡಿಸೆಂಬರà³'.split(\n '_'\n ),\n monthsShort:\n 'ಜನ_ಫೆಬà³à²°_ಮಾರà³à²šà³_à²à²ªà³à²°à²¿à²²à³_ಮೇ_ಜೂನà³_ಜà³à²²à³†à³–_ಆಗಸà³à²Ÿà³_ಸೆಪà³à²Ÿà³†à²‚_ಅಕà³à²Ÿà³†à³‚ೕ_ನವೆಂ_ಡಿಸೆಂ'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'à²à²¾à²¨à³à²µà²¾à²°_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬà³à²§à²µà²¾à²°_ಗà³à²°à³à²µà²¾à²°_ಶà³à²•à³à²°à²µà²¾à²°_ಶನಿವಾರ'.split(\n '_'\n ),\n weekdaysShort: 'à²à²¾à²¨à³_ಸೋಮ_ಮಂಗಳ_ಬà³à²§_ಗà³à²°à³_ಶà³à²•à³à²°_ಶನಿ'.split('_'),\n weekdaysMin: 'à²à²¾_ಸೋ_ಮಂ_ಬà³_ಗà³_ಶà³_ಶ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[ಇಂದà³] LT',\n nextDay: '[ನಾಳೆ] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ನಿನà³à²¨à³†] LT',\n lastWeek: '[ಕೊನೆಯ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ನಂತರ',\n past: '%s ಹಿಂದೆ',\n s: 'ಕೆಲವೠಕà³à²·à²£à²—ಳà³',\n ss: '%d ಸೆಕೆಂಡà³à²—ಳà³',\n m: 'ಒಂದೠನಿಮಿಷ',\n mm: '%d ನಿಮಿಷ',\n h: 'ಒಂದೠಗಂಟೆ',\n hh: '%d ಗಂಟೆ',\n d: 'ಒಂದೠದಿನ',\n dd: '%d ದಿನ',\n M: 'ಒಂದೠತಿಂಗಳà³',\n MM: '%d ತಿಂಗಳà³',\n y: 'ಒಂದೠವರà³à²·',\n yy: '%d ವರà³à²·',\n },\n preparse: function (string) {\n return string.replace(/[೧೨೩೪೫೬à³à³®à³¯à³¦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /ರಾತà³à²°à²¿|ಬೆಳಿಗà³à²—ೆ|ಮಧà³à²¯à²¾à²¹à³à²¨|ಸಂಜೆ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ರಾತà³à²°à²¿') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ಬೆಳಿಗà³à²—ೆ') {\n return hour;\n } else if (meridiem === 'ಮಧà³à²¯à²¾à²¹à³à²¨') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ಸಂಜೆ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ರಾತà³à²°à²¿';\n } else if (hour < 10) {\n return 'ಬೆಳಿಗà³à²—ೆ';\n } else if (hour < 17) {\n return 'ಮಧà³à²¯à²¾à²¹à³à²¨';\n } else if (hour < 20) {\n return 'ಸಂಜೆ';\n } else {\n return 'ರಾತà³à²°à²¿';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ನೇ)/,\n ordinal: function (number) {\n return number + 'ನೇ';\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return kn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Korean [ko]\n//! author : Kyungwook, Park : https://github.com/kyungw00k\n//! author : Jeeeyul Lee <jeeeyul@gmail.com>\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ko = moment.defineLocale('ko', {\n months: '1ì›”_2ì›”_3ì›”_4ì›”_5ì›”_6ì›”_7ì›”_8ì›”_9ì›”_10ì›”_11ì›”_12ì›”'.split('_'),\n monthsShort: '1ì›”_2ì›”_3ì›”_4ì›”_5ì›”_6ì›”_7ì›”_8ì›”_9ì›”_10ì›”_11ì›”_12ì›”'.split(\n '_'\n ),\n weekdays: 'ì¼ìš”ì¼_월요ì¼_화요ì¼_수요ì¼_목요ì¼_금요ì¼_í† ìš”ì¼'.split('_'),\n weekdaysShort: 'ì¼_ì›”_í™”_수_목_금_í† '.split('_'),\n weekdaysMin: 'ì¼_ì›”_í™”_수_목_금_í† '.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'YYYY.MM.DD.',\n LL: 'YYYYë…„ MMMM Dì¼',\n LLL: 'YYYYë…„ MMMM Dì¼ A h:mm',\n LLLL: 'YYYYë…„ MMMM Dì¼ dddd A h:mm',\n l: 'YYYY.MM.DD.',\n ll: 'YYYYë…„ MMMM Dì¼',\n lll: 'YYYYë…„ MMMM Dì¼ A h:mm',\n llll: 'YYYYë…„ MMMM Dì¼ dddd A h:mm',\n },\n calendar: {\n sameDay: '오늘 LT',\n nextDay: 'ë‚´ì¼ LT',\n nextWeek: 'dddd LT',\n lastDay: 'ì–´ì œ LT',\n lastWeek: '지난주 dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s 후',\n past: '%s ì „',\n s: '몇 ì´ˆ',\n ss: '%dì´ˆ',\n m: '1분',\n mm: '%d분',\n h: 'í•œ 시간',\n hh: '%d시간',\n d: '하루',\n dd: '%dì¼',\n M: 'í•œ 달',\n MM: '%d달',\n y: 'ì¼ ë…„',\n yy: '%dë…„',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ì¼|ì›”|주)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + 'ì¼';\n case 'M':\n return number + 'ì›”';\n case 'w':\n case 'W':\n return number + '주';\n default:\n return number;\n }\n },\n meridiemParse: /ì˜¤ì „|오후/,\n isPM: function (token) {\n return token === '오후';\n },\n meridiem: function (hour, minute, isUpper) {\n return hour < 12 ? 'ì˜¤ì „' : '오후';\n },\n });\n\n return ko;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kurdish [ku]\n//! author : Shahram Mebashar : https://github.com/ShahramMebashar\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: 'Ù¡',\n 2: 'Ù¢',\n 3: 'Ù£',\n 4: 'Ù¤',\n 5: 'Ù¥',\n 6: 'Ù¦',\n 7: 'Ù§',\n 8: 'Ù¨',\n 9: 'Ù©',\n 0: 'Ù ',\n },\n numberMap = {\n 'Ù¡': '1',\n 'Ù¢': '2',\n 'Ù£': '3',\n 'Ù¤': '4',\n 'Ù¥': '5',\n 'Ù¦': '6',\n 'Ù§': '7',\n 'Ù¨': '8',\n 'Ù©': '9',\n 'Ù ': '0',\n },\n months = [\n 'کانونی دووەم',\n 'شوبات',\n 'ئازار',\n 'نیسان',\n 'ئایار',\n 'Øوزەیران',\n 'تەمموز',\n 'ئاب',\n 'ئەیلوول',\n 'تشرینی یەكەم',\n 'تشرینی دووەم',\n 'كانونی یەکەم',\n ];\n\n var ku = moment.defineLocale('ku', {\n months: months,\n monthsShort: months,\n weekdays:\n 'یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌'.split(\n '_'\n ),\n weekdaysShort:\n 'یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌'.split('_'),\n weekdaysMin: 'ÛŒ_د_س_Ú†_Ù¾_Ù‡_Ø´'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /ئێواره‌|به‌یانی/,\n isPM: function (input) {\n return /ئێواره‌/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'به‌یانی';\n } else {\n return 'ئێواره‌';\n }\n },\n calendar: {\n sameDay: '[ئه‌مرۆ كاتژمێر] LT',\n nextDay: '[به‌یانی كاتژمێر] LT',\n nextWeek: 'dddd [كاتژمێر] LT',\n lastDay: '[دوێنێ كاتژمێر] LT',\n lastWeek: 'dddd [كاتژمێر] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'له‌ %s',\n past: '%s',\n s: 'چه‌ند چركه‌یه‌ك',\n ss: 'چركه‌ %d',\n m: 'یه‌ك خوله‌ك',\n mm: '%d خوله‌ك',\n h: 'یه‌ك كاتژمێر',\n hh: '%d كاتژمێر',\n d: 'یه‌ك Ú•Û†Ú˜',\n dd: '%d Ú•Û†Ú˜',\n M: 'یه‌ك مانگ',\n MM: '%d مانگ',\n y: 'یه‌ك ساڵ',\n yy: '%d ساڵ',\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/ØŒ/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, 'ØŒ');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return ku;\n\n})));\n","//! moment.js locale configuration\n//! locale : Kyrgyz [ky]\n//! author : Chyngyz Arystan uulu : https://github.com/chyngyz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-чү',\n 1: '-чи',\n 2: '-чи',\n 3: '-чү',\n 4: '-чү',\n 5: '-чи',\n 6: '-чы',\n 7: '-чи',\n 8: '-чи',\n 9: '-чу',\n 10: '-чу',\n 20: '-чы',\n 30: '-чу',\n 40: '-чы',\n 50: '-чү',\n 60: '-чы',\n 70: '-чи',\n 80: '-чи',\n 90: '-чу',\n 100: '-чү',\n };\n\n var ky = moment.defineLocale('ky', {\n months: 'Ñнварь_февраль_март_апрель_май_июнь_июль_авгуÑÑ‚_ÑентÑбрь_октÑбрь_ноÑбрь_декабрь'.split(\n '_'\n ),\n monthsShort: 'Ñнв_фев_март_апр_май_июнь_июль_авг_Ñен_окт_ноÑ_дек'.split(\n '_'\n ),\n weekdays: 'Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби'.split(\n '_'\n ),\n weekdaysShort: 'Жек_Дүй_Шей_Шар_Бей_Жум_Ише'.split('_'),\n weekdaysMin: 'Жк_Дй_Шй_Шр_Бй_Жм_Иш'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Бүгүн Ñаат] LT',\n nextDay: '[Ðртең Ñаат] LT',\n nextWeek: 'dddd [Ñаат] LT',\n lastDay: '[КечÑÑ Ñаат] LT',\n lastWeek: '[Өткөн аптанын] dddd [күнү] [Ñаат] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ичинде',\n past: '%s мурун',\n s: 'бирнече Ñекунд',\n ss: '%d Ñекунд',\n m: 'бир мүнөт',\n mm: '%d мүнөт',\n h: 'бир Ñаат',\n hh: '%d Ñаат',\n d: 'бир күн',\n dd: '%d күн',\n M: 'бир ай',\n MM: '%d ай',\n y: 'бир жыл',\n yy: '%d жыл',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(чи|чы|чү|чу)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ky;\n\n})));\n","//! moment.js locale configuration\n//! locale : Luxembourgish [lb]\n//! author : mweimerskirch : https://github.com/mweimerskirch\n//! author : David Raison : https://github.com/kwisatz\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eng Minutt', 'enger Minutt'],\n h: ['eng Stonn', 'enger Stonn'],\n d: ['een Dag', 'engem Dag'],\n M: ['ee Mount', 'engem Mount'],\n y: ['ee Joer', 'engem Joer'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n }\n function processFutureTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'a ' + string;\n }\n return 'an ' + string;\n }\n function processPastTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'viru ' + string;\n }\n return 'virun ' + string;\n }\n /**\n * Returns true if the word before the given number loses the '-n' ending.\n * e.g. 'an 10 Deeg' but 'a 5 Deeg'\n *\n * @param number {integer}\n * @returns {boolean}\n */\n function eifelerRegelAppliesToNumber(number) {\n number = parseInt(number, 10);\n if (isNaN(number)) {\n return false;\n }\n if (number < 0) {\n // Negative Number --> always true\n return true;\n } else if (number < 10) {\n // Only 1 digit\n if (4 <= number && number <= 7) {\n return true;\n }\n return false;\n } else if (number < 100) {\n // 2 digits\n var lastDigit = number % 10,\n firstDigit = number / 10;\n if (lastDigit === 0) {\n return eifelerRegelAppliesToNumber(firstDigit);\n }\n return eifelerRegelAppliesToNumber(lastDigit);\n } else if (number < 10000) {\n // 3 or 4 digits --> recursively check first digit\n while (number >= 10) {\n number = number / 10;\n }\n return eifelerRegelAppliesToNumber(number);\n } else {\n // Anything larger than 4 digits: recursively check first n-3 digits\n number = number / 1000;\n return eifelerRegelAppliesToNumber(number);\n }\n }\n\n var lb = moment.defineLocale('lb', {\n months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort:\n 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split(\n '_'\n ),\n weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm [Auer]',\n LTS: 'H:mm:ss [Auer]',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm [Auer]',\n LLLL: 'dddd, D. MMMM YYYY H:mm [Auer]',\n },\n calendar: {\n sameDay: '[Haut um] LT',\n sameElse: 'L',\n nextDay: '[Muer um] LT',\n nextWeek: 'dddd [um] LT',\n lastDay: '[Gëschter um] LT',\n lastWeek: function () {\n // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule\n switch (this.day()) {\n case 2:\n case 4:\n return '[Leschten] dddd [um] LT';\n default:\n return '[Leschte] dddd [um] LT';\n }\n },\n },\n relativeTime: {\n future: processFutureTime,\n past: processPastTime,\n s: 'e puer Sekonnen',\n ss: '%d Sekonnen',\n m: processRelativeTime,\n mm: '%d Minutten',\n h: processRelativeTime,\n hh: '%d Stonnen',\n d: processRelativeTime,\n dd: '%d Deeg',\n M: processRelativeTime,\n MM: '%d Méint',\n y: processRelativeTime,\n yy: '%d Joer',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lb;\n\n})));\n","//! moment.js locale configuration\n//! locale : Lao [lo]\n//! author : Ryan Hart : https://github.com/ryanhart2\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var lo = moment.defineLocale('lo', {\n months: 'ມັງàºàºàº™_àºàº¸àº¡àºžàº²_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_àºà»àº¥àº°àºàº»àº”_ສິງຫາ_àºàº±àº™àºàº²_ຕຸລາ_ພະຈິàº_ທັນວາ'.split(\n '_'\n ),\n monthsShort:\n 'ມັງàºàºàº™_àºàº¸àº¡àºžàº²_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_àºà»àº¥àº°àºàº»àº”_ສິງຫາ_àºàº±àº™àºàº²_ຕຸລາ_ພະຈິàº_ທັນວາ'.split(\n '_'\n ),\n weekdays: 'àºàº²àº—ິດ_ຈັນ_àºàº±àº‡àº„ານ_ພຸດ_ພະຫັດ_ສຸàº_ເສົາ'.split('_'),\n weekdaysShort: 'ທິດ_ຈັນ_àºàº±àº‡àº„ານ_ພຸດ_ພະຫັດ_ສຸàº_ເສົາ'.split('_'),\n weekdaysMin: 'ທ_ຈ_àºàº„_ພ_ພຫ_ສàº_ສ'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'ວັນdddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ຕàºàº™à»€àºŠàº»à»‰àº²|ຕàºàº™à»àº¥àº‡/,\n isPM: function (input) {\n return input === 'ຕàºàº™à»àº¥àº‡';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ຕàºàº™à»€àºŠàº»à»‰àº²';\n } else {\n return 'ຕàºàº™à»àº¥àº‡';\n }\n },\n calendar: {\n sameDay: '[ມື້ນີ້ເວລາ] LT',\n nextDay: '[ມື້àºàº·à»ˆàº™à»€àº§àº¥àº²] LT',\n nextWeek: '[ວັນ]dddd[ໜ້າເວລາ] LT',\n lastDay: '[ມື້ວານນີ້ເວລາ] LT',\n lastWeek: '[ວັນ]dddd[à»àº¥à»‰àº§àº™àºµà»‰à»€àº§àº¥àº²] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'àºàºµàº %s',\n past: '%sຜ່ານມາ',\n s: 'ບà»à»ˆà»€àº—ົ່າໃດວິນາທີ',\n ss: '%d ວິນາທີ',\n m: '1 ນາທີ',\n mm: '%d ນາທີ',\n h: '1 ຊົ່ວໂມງ',\n hh: '%d ຊົ່ວໂມງ',\n d: '1 ມື້',\n dd: '%d ມື້',\n M: '1 ເດືàºàº™',\n MM: '%d ເດືàºàº™',\n y: '1 ປີ',\n yy: '%d ປີ',\n },\n dayOfMonthOrdinalParse: /(ທີ່)\\d{1,2}/,\n ordinal: function (number) {\n return 'ທີ່' + number;\n },\n });\n\n return lo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Lithuanian [lt]\n//! author : Mindaugas MozÅ«ras : https://github.com/mmozuras\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var units = {\n ss: 'sekundÄ—_sekundžių_sekundes',\n m: 'minutÄ—_minutÄ—s_minutÄ™',\n mm: 'minutÄ—s_minuÄių_minutes',\n h: 'valanda_valandos_valandÄ…',\n hh: 'valandos_valandų_valandas',\n d: 'diena_dienos_dienÄ…',\n dd: 'dienos_dienų_dienas',\n M: 'mÄ—nuo_mÄ—nesio_mÄ—nesį',\n MM: 'mÄ—nesiai_mÄ—nesių_mÄ—nesius',\n y: 'metai_metų_metus',\n yy: 'metai_metų_metus',\n };\n function translateSeconds(number, withoutSuffix, key, isFuture) {\n if (withoutSuffix) {\n return 'kelios sekundÄ—s';\n } else {\n return isFuture ? 'kelių sekundžių' : 'kelias sekundes';\n }\n }\n function translateSingular(number, withoutSuffix, key, isFuture) {\n return withoutSuffix\n ? forms(key)[0]\n : isFuture\n ? forms(key)[1]\n : forms(key)[2];\n }\n function special(number) {\n return number % 10 === 0 || (number > 10 && number < 20);\n }\n function forms(key) {\n return units[key].split('_');\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n if (number === 1) {\n return (\n result + translateSingular(number, withoutSuffix, key[0], isFuture)\n );\n } else if (withoutSuffix) {\n return result + (special(number) ? forms(key)[1] : forms(key)[0]);\n } else {\n if (isFuture) {\n return result + forms(key)[1];\n } else {\n return result + (special(number) ? forms(key)[1] : forms(key)[2]);\n }\n }\n }\n var lt = moment.defineLocale('lt', {\n months: {\n format: 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjÅ«Äio_rugsÄ—jo_spalio_lapkriÄio_gruodžio'.split(\n '_'\n ),\n standalone:\n 'sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjÅ«tis_rugsÄ—jis_spalis_lapkritis_gruodis'.split(\n '_'\n ),\n isFormat: /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?|MMMM?(\\[[^\\[\\]]*\\]|\\s)+D[oD]?/,\n },\n monthsShort: 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'),\n weekdays: {\n format: 'sekmadienį_pirmadienį_antradienį_treÄiadienį_ketvirtadienį_penktadienį_Å¡eÅ¡tadienį'.split(\n '_'\n ),\n standalone:\n 'sekmadienis_pirmadienis_antradienis_treÄiadienis_ketvirtadienis_penktadienis_Å¡eÅ¡tadienis'.split(\n '_'\n ),\n isFormat: /dddd HH:mm/,\n },\n weekdaysShort: 'Sek_Pir_Ant_Tre_Ket_Pen_Å eÅ¡'.split('_'),\n weekdaysMin: 'S_P_A_T_K_Pn_Å '.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY [m.] MMMM D [d.]',\n LLL: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n LLLL: 'YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]',\n l: 'YYYY-MM-DD',\n ll: 'YYYY [m.] MMMM D [d.]',\n lll: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n llll: 'YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]',\n },\n calendar: {\n sameDay: '[Å iandien] LT',\n nextDay: '[Rytoj] LT',\n nextWeek: 'dddd LT',\n lastDay: '[Vakar] LT',\n lastWeek: '[PraÄ—jusį] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'po %s',\n past: 'prieÅ¡ %s',\n s: translateSeconds,\n ss: translate,\n m: translateSingular,\n mm: translate,\n h: translateSingular,\n hh: translate,\n d: translateSingular,\n dd: translate,\n M: translateSingular,\n MM: translate,\n y: translateSingular,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-oji/,\n ordinal: function (number) {\n return number + '-oji';\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Latvian [lv]\n//! author : Kristaps Karlsons : https://github.com/skakri\n//! author : JÄnis Elmeris : https://github.com/JanisE\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var units = {\n ss: 'sekundes_sekundÄ“m_sekunde_sekundes'.split('_'),\n m: 'minÅ«tes_minÅ«tÄ“m_minÅ«te_minÅ«tes'.split('_'),\n mm: 'minÅ«tes_minÅ«tÄ“m_minÅ«te_minÅ«tes'.split('_'),\n h: 'stundas_stundÄm_stunda_stundas'.split('_'),\n hh: 'stundas_stundÄm_stunda_stundas'.split('_'),\n d: 'dienas_dienÄm_diena_dienas'.split('_'),\n dd: 'dienas_dienÄm_diena_dienas'.split('_'),\n M: 'mÄ“neÅ¡a_mÄ“neÅ¡iem_mÄ“nesis_mÄ“neÅ¡i'.split('_'),\n MM: 'mÄ“neÅ¡a_mÄ“neÅ¡iem_mÄ“nesis_mÄ“neÅ¡i'.split('_'),\n y: 'gada_gadiem_gads_gadi'.split('_'),\n yy: 'gada_gadiem_gads_gadi'.split('_'),\n };\n /**\n * @param withoutSuffix boolean true = a length of time; false = before/after a period of time.\n */\n function format(forms, number, withoutSuffix) {\n if (withoutSuffix) {\n // E.g. \"21 minÅ«te\", \"3 minÅ«tes\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[2] : forms[3];\n } else {\n // E.g. \"21 minÅ«tes\" as in \"pÄ“c 21 minÅ«tes\".\n // E.g. \"3 minÅ«tÄ“m\" as in \"pÄ“c 3 minÅ«tÄ“m\".\n return number % 10 === 1 && number % 100 !== 11 ? forms[0] : forms[1];\n }\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n return number + ' ' + format(units[key], number, withoutSuffix);\n }\n function relativeTimeWithSingular(number, withoutSuffix, key) {\n return format(units[key], number, withoutSuffix);\n }\n function relativeSeconds(number, withoutSuffix) {\n return withoutSuffix ? 'dažas sekundes' : 'dažÄm sekundÄ“m';\n }\n\n var lv = moment.defineLocale('lv', {\n months: 'janvÄris_februÄris_marts_aprÄ«lis_maijs_jÅ«nijs_jÅ«lijs_augusts_septembris_oktobris_novembris_decembris'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_mai_jÅ«n_jÅ«l_aug_sep_okt_nov_dec'.split('_'),\n weekdays:\n 'svÄ“tdiena_pirmdiena_otrdiena_treÅ¡diena_ceturtdiena_piektdiena_sestdiena'.split(\n '_'\n ),\n weekdaysShort: 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysMin: 'Sv_P_O_T_C_Pk_S'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY.',\n LL: 'YYYY. [gada] D. MMMM',\n LLL: 'YYYY. [gada] D. MMMM, HH:mm',\n LLLL: 'YYYY. [gada] D. MMMM, dddd, HH:mm',\n },\n calendar: {\n sameDay: '[Å odien pulksten] LT',\n nextDay: '[RÄ«t pulksten] LT',\n nextWeek: 'dddd [pulksten] LT',\n lastDay: '[Vakar pulksten] LT',\n lastWeek: '[PagÄjuÅ¡Ä] dddd [pulksten] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'pÄ“c %s',\n past: 'pirms %s',\n s: relativeSeconds,\n ss: relativeTimeWithPlural,\n m: relativeTimeWithSingular,\n mm: relativeTimeWithPlural,\n h: relativeTimeWithSingular,\n hh: relativeTimeWithPlural,\n d: relativeTimeWithSingular,\n dd: relativeTimeWithPlural,\n M: relativeTimeWithSingular,\n MM: relativeTimeWithPlural,\n y: relativeTimeWithSingular,\n yy: relativeTimeWithPlural,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return lv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Montenegrin [me]\n//! author : Miodrag NikaÄ <miodrag@restartit.me> : https://github.com/miodragnikac\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['sekund', 'sekunda', 'sekundi'],\n m: ['jedan minut', 'jednog minuta'],\n mm: ['minut', 'minuta', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n dd: ['dan', 'dana', 'dana'],\n MM: ['mjesec', 'mjeseca', 'mjeseci'],\n yy: ['godina', 'godine', 'godina'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1\n ? wordKey[0]\n : number >= 2 && number <= 4\n ? wordKey[1]\n : wordKey[2];\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return (\n number +\n ' ' +\n translator.correctGrammaticalCase(number, wordKey)\n );\n }\n },\n };\n\n var me = moment.defineLocale('me', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_Äetvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._Äet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_Äe_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sjutra u] LT',\n\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juÄe u] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[proÅ¡le] [nedjelje] [u] LT',\n '[proÅ¡log] [ponedjeljka] [u] LT',\n '[proÅ¡log] [utorka] [u] LT',\n '[proÅ¡le] [srijede] [u] LT',\n '[proÅ¡log] [Äetvrtka] [u] LT',\n '[proÅ¡log] [petka] [u] LT',\n '[proÅ¡le] [subote] [u] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'nekoliko sekundi',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: 'dan',\n dd: translator.translate,\n M: 'mjesec',\n MM: translator.translate,\n y: 'godinu',\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return me;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maori [mi]\n//! author : John Corrigan <robbiecloset@gmail.com> : https://github.com/johnideal\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mi = moment.defineLocale('mi', {\n months: 'Kohi-tÄte_Hui-tanguru_PoutÅ«-te-rangi_Paenga-whÄwhÄ_Haratua_Pipiri_HÅngoingoi_Here-turi-kÅkÄ_Mahuru_Whiringa-Ä-nuku_Whiringa-Ä-rangi_Hakihea'.split(\n '_'\n ),\n monthsShort:\n 'Kohi_Hui_Pou_Pae_Hara_Pipi_HÅngoi_Here_Mahu_Whi-nu_Whi-ra_Haki'.split(\n '_'\n ),\n monthsRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,2}/i,\n weekdays: 'RÄtapu_Mane_TÅ«rei_Wenerei_TÄite_Paraire_HÄtarei'.split('_'),\n weekdaysShort: 'Ta_Ma_TÅ«_We_TÄi_Pa_HÄ'.split('_'),\n weekdaysMin: 'Ta_Ma_TÅ«_We_TÄi_Pa_HÄ'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [i] HH:mm',\n LLLL: 'dddd, D MMMM YYYY [i] HH:mm',\n },\n calendar: {\n sameDay: '[i teie mahana, i] LT',\n nextDay: '[apopo i] LT',\n nextWeek: 'dddd [i] LT',\n lastDay: '[inanahi i] LT',\n lastWeek: 'dddd [whakamutunga i] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'i roto i %s',\n past: '%s i mua',\n s: 'te hÄ“kona ruarua',\n ss: '%d hÄ“kona',\n m: 'he meneti',\n mm: '%d meneti',\n h: 'te haora',\n hh: '%d haora',\n d: 'he ra',\n dd: '%d ra',\n M: 'he marama',\n MM: '%d marama',\n y: 'he tau',\n yy: '%d tau',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return mi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Macedonian [mk]\n//! author : Borislav Mickov : https://github.com/B0k0\n//! author : Sashko Todorov : https://github.com/bkyceh\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mk = moment.defineLocale('mk', {\n months: 'јануари_февруари_март_април_мај_јуни_јули_авгуÑÑ‚_Ñептември_октомври_ноември_декември'.split(\n '_'\n ),\n monthsShort: 'јан_фев_мар_апр_мај_јун_јул_авг_Ñеп_окт_ное_дек'.split('_'),\n weekdays: 'недела_понеделник_вторник_Ñреда_четврток_петок_Ñабота'.split(\n '_'\n ),\n weekdaysShort: 'нед_пон_вто_Ñре_чет_пет_Ñаб'.split('_'),\n weekdaysMin: 'нe_пo_вт_ÑÑ€_че_пе_Ña'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Ð”ÐµÐ½ÐµÑ Ð²Ð¾] LT',\n nextDay: '[Утре во] LT',\n nextWeek: '[Во] dddd [во] LT',\n lastDay: '[Вчера во] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 6:\n return '[Изминатата] dddd [во] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[Изминатиот] dddd [во] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: 'пред %s',\n s: 'неколку Ñекунди',\n ss: '%d Ñекунди',\n m: 'една минута',\n mm: '%d минути',\n h: 'еден чаÑ',\n hh: '%d чаÑа',\n d: 'еден ден',\n dd: '%d дена',\n M: 'еден меÑец',\n MM: '%d меÑеци',\n y: 'една година',\n yy: '%d години',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ев|ен|ти|ви|ри|ми)/,\n ordinal: function (number) {\n var lastDigit = number % 10,\n last2Digits = number % 100;\n if (number === 0) {\n return number + '-ев';\n } else if (last2Digits === 0) {\n return number + '-ен';\n } else if (last2Digits > 10 && last2Digits < 20) {\n return number + '-ти';\n } else if (lastDigit === 1) {\n return number + '-ви';\n } else if (lastDigit === 2) {\n return number + '-ри';\n } else if (lastDigit === 7 || lastDigit === 8) {\n return number + '-ми';\n } else {\n return number + '-ти';\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return mk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malayalam [ml]\n//! author : Floyd Pink : https://github.com/floydpink\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ml = moment.defineLocale('ml', {\n months: 'ജനàµà´µà´°à´¿_ഫെബàµà´°àµà´µà´°à´¿_മാർചàµà´šàµ_à´à´ªàµà´°à´¿àµ½_മേയàµ_ജൂൺ_ജൂലൈ_à´“à´—à´¸àµà´±àµà´±àµ_സെപàµà´±àµà´±à´‚ബർ_à´’à´•àµà´Ÿàµ‹à´¬àµ¼_നവംബർ_ഡിസംബർ'.split(\n '_'\n ),\n monthsShort:\n 'ജനàµ._ഫെബàµà´°àµ._മാർ._à´à´ªàµà´°à´¿._മേയàµ_ജൂൺ_ജൂലൈ._à´“à´—._സെപàµà´±àµà´±._à´’à´•àµà´Ÿàµ‹._നവം._ഡിസം.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'ഞായറാഴàµà´š_തിങàµà´•à´³à´¾à´´àµà´š_ചൊവàµà´µà´¾à´´àµà´š_à´¬àµà´§à´¨à´¾à´´àµà´š_à´µàµà´¯à´¾à´´à´¾à´´àµà´š_വെളàµà´³à´¿à´¯à´¾à´´àµà´š_ശനിയാഴàµà´š'.split(\n '_'\n ),\n weekdaysShort: 'ഞായർ_തിങàµà´•àµ¾_ചൊവàµà´µ_à´¬àµà´§àµ»_à´µàµà´¯à´¾à´´à´‚_വെളàµà´³à´¿_ശനി'.split('_'),\n weekdaysMin: 'à´žà´¾_തി_ചൊ_à´¬àµ_à´µàµà´¯à´¾_വെ_à´¶'.split('_'),\n longDateFormat: {\n LT: 'A h:mm -à´¨àµ',\n LTS: 'A h:mm:ss -à´¨àµ',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm -à´¨àµ',\n LLLL: 'dddd, D MMMM YYYY, A h:mm -à´¨àµ',\n },\n calendar: {\n sameDay: '[ഇനàµà´¨àµ] LT',\n nextDay: '[നാളെ] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ഇനàµà´¨à´²àµ†] LT',\n lastWeek: '[à´•à´´à´¿à´žàµà´ž] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s à´•à´´à´¿à´žàµà´žàµ',\n past: '%s à´®àµàµ»à´ªàµ',\n s: 'അൽപ നിമിഷങàµà´™àµ¾',\n ss: '%d സെകàµà´•àµ»à´¡àµ',\n m: 'ഒരൠമിനിറàµà´±àµ',\n mm: '%d മിനിറàµà´±àµ',\n h: 'ഒരൠമണികàµà´•àµ‚ർ',\n hh: '%d മണികàµà´•àµ‚ർ',\n d: 'ഒരൠദിവസം',\n dd: '%d ദിവസം',\n M: 'ഒരൠമാസം',\n MM: '%d മാസം',\n y: 'ഒരൠവർഷം',\n yy: '%d വർഷം',\n },\n meridiemParse: /രാതàµà´°à´¿|രാവിലെ|ഉചàµà´š à´•à´´à´¿à´žàµà´žàµ|വൈകàµà´¨àµà´¨àµ‡à´°à´‚|രാതàµà´°à´¿/i,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'രാതàµà´°à´¿' && hour >= 4) ||\n meridiem === 'ഉചàµà´š à´•à´´à´¿à´žàµà´žàµ' ||\n meridiem === 'വൈകàµà´¨àµà´¨àµ‡à´°à´‚'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'രാതàµà´°à´¿';\n } else if (hour < 12) {\n return 'രാവിലെ';\n } else if (hour < 17) {\n return 'ഉചàµà´š à´•à´´à´¿à´žàµà´žàµ';\n } else if (hour < 20) {\n return 'വൈകàµà´¨àµà´¨àµ‡à´°à´‚';\n } else {\n return 'രാതàµà´°à´¿';\n }\n },\n });\n\n return ml;\n\n})));\n","//! moment.js locale configuration\n//! locale : Mongolian [mn]\n//! author : Javkhlantugs Nyamdorj : https://github.com/javkhaanj7\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function translate(number, withoutSuffix, key, isFuture) {\n switch (key) {\n case 's':\n return withoutSuffix ? 'Ñ…ÑдхÑн Ñекунд' : 'Ñ…ÑдхÑн Ñекундын';\n case 'ss':\n return number + (withoutSuffix ? ' Ñекунд' : ' Ñекундын');\n case 'm':\n case 'mm':\n return number + (withoutSuffix ? ' минут' : ' минутын');\n case 'h':\n case 'hh':\n return number + (withoutSuffix ? ' цаг' : ' цагийн');\n case 'd':\n case 'dd':\n return number + (withoutSuffix ? ' өдөр' : ' өдрийн');\n case 'M':\n case 'MM':\n return number + (withoutSuffix ? ' Ñар' : ' Ñарын');\n case 'y':\n case 'yy':\n return number + (withoutSuffix ? ' жил' : ' жилийн');\n default:\n return number;\n }\n }\n\n var mn = moment.defineLocale('mn', {\n months: 'ÐÑгдүгÑÑÑ€ Ñар_Хоёрдугаар Ñар_Гуравдугаар Ñар_ДөрөвдүгÑÑÑ€ Ñар_Тавдугаар Ñар_Зургадугаар Ñар_Долдугаар Ñар_Ðаймдугаар Ñар_ЕÑдүгÑÑÑ€ Ñар_Ðравдугаар Ñар_Ðрван нÑгдүгÑÑÑ€ Ñар_Ðрван хоёрдугаар Ñар'.split(\n '_'\n ),\n monthsShort:\n '1 Ñар_2 Ñар_3 Ñар_4 Ñар_5 Ñар_6 Ñар_7 Ñар_8 Ñар_9 Ñар_10 Ñар_11 Ñар_12 Ñар'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'ÐÑм_Даваа_ÐœÑгмар_Лхагва_ПүрÑв_БааÑан_БÑмба'.split('_'),\n weekdaysShort: 'ÐÑм_Дав_ÐœÑг_Лха_Пүр_Баа_БÑм'.split('_'),\n weekdaysMin: 'ÐÑ_Да_ÐœÑ_Лх_Пү_Ба_БÑ'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY оны MMMMын D',\n LLL: 'YYYY оны MMMMын D HH:mm',\n LLLL: 'dddd, YYYY оны MMMMын D HH:mm',\n },\n meridiemParse: /Ò®Ó¨|ҮХ/i,\n isPM: function (input) {\n return input === 'ҮХ';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'Ò®Ó¨';\n } else {\n return 'ҮХ';\n }\n },\n calendar: {\n sameDay: '[Өнөөдөр] LT',\n nextDay: '[Маргааш] LT',\n nextWeek: '[ИрÑÑ…] dddd LT',\n lastDay: '[Өчигдөр] LT',\n lastWeek: '[ӨнгөрÑөн] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s дараа',\n past: '%s өмнө',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2} өдөр/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + ' өдөр';\n default:\n return number;\n }\n },\n });\n\n return mn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Marathi [mr]\n//! author : Harshad Kale : https://github.com/kalehv\n//! author : Vivek Athalye : https://github.com/vnathalye\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: 'à¥',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n 'à¥': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n };\n\n function relativeTimeMr(number, withoutSuffix, string, isFuture) {\n var output = '';\n if (withoutSuffix) {\n switch (string) {\n case 's':\n output = 'काही सेकंद';\n break;\n case 'ss':\n output = '%d सेकंद';\n break;\n case 'm':\n output = 'à¤à¤• मिनिट';\n break;\n case 'mm':\n output = '%d मिनिटे';\n break;\n case 'h':\n output = 'à¤à¤• तास';\n break;\n case 'hh':\n output = '%d तास';\n break;\n case 'd':\n output = 'à¤à¤• दिवस';\n break;\n case 'dd':\n output = '%d दिवस';\n break;\n case 'M':\n output = 'à¤à¤• महिना';\n break;\n case 'MM':\n output = '%d महिने';\n break;\n case 'y':\n output = 'à¤à¤• वरà¥à¤·';\n break;\n case 'yy':\n output = '%d वरà¥à¤·à¥‡';\n break;\n }\n } else {\n switch (string) {\n case 's':\n output = 'काही सेकंदां';\n break;\n case 'ss':\n output = '%d सेकंदां';\n break;\n case 'm':\n output = 'à¤à¤•à¤¾ मिनिटा';\n break;\n case 'mm':\n output = '%d मिनिटां';\n break;\n case 'h':\n output = 'à¤à¤•à¤¾ तासा';\n break;\n case 'hh':\n output = '%d तासां';\n break;\n case 'd':\n output = 'à¤à¤•à¤¾ दिवसा';\n break;\n case 'dd':\n output = '%d दिवसां';\n break;\n case 'M':\n output = 'à¤à¤•à¤¾ महिनà¥à¤¯à¤¾';\n break;\n case 'MM':\n output = '%d महिनà¥à¤¯à¤¾à¤‚';\n break;\n case 'y':\n output = 'à¤à¤•à¤¾ वरà¥à¤·à¤¾';\n break;\n case 'yy':\n output = '%d वरà¥à¤·à¤¾à¤‚';\n break;\n }\n }\n return output.replace(/%d/i, number);\n }\n\n var mr = moment.defineLocale('mr', {\n months: 'जानेवारी_फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€_मारà¥à¤š_à¤à¤ªà¥à¤°à¤¿à¤²_मे_जून_जà¥à¤²à¥ˆ_ऑगसà¥à¤Ÿ_सपà¥à¤Ÿà¥‡à¤‚बर_ऑकà¥à¤Ÿà¥‹à¤¬à¤°_नोवà¥à¤¹à¥‡à¤‚बर_डिसेंबर'.split(\n '_'\n ),\n monthsShort:\n 'जाने._फेबà¥à¤°à¥._मारà¥à¤š._à¤à¤ªà¥à¤°à¤¿._मे._जून._जà¥à¤²à¥ˆ._ऑग._सपà¥à¤Ÿà¥‡à¤‚._ऑकà¥à¤Ÿà¥‹._नोवà¥à¤¹à¥‡à¤‚._डिसें.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'रविवार_सोमवार_मंगळवार_बà¥à¤§à¤µà¤¾à¤°_गà¥à¤°à¥‚वार_शà¥à¤•à¥à¤°à¤µà¤¾à¤°_शनिवार'.split('_'),\n weekdaysShort: 'रवि_सोम_मंगळ_बà¥à¤§_गà¥à¤°à¥‚_शà¥à¤•à¥à¤°_शनि'.split('_'),\n weekdaysMin: 'र_सो_मं_बà¥_गà¥_शà¥_श'.split('_'),\n longDateFormat: {\n LT: 'A h:mm वाजता',\n LTS: 'A h:mm:ss वाजता',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm वाजता',\n LLLL: 'dddd, D MMMM YYYY, A h:mm वाजता',\n },\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[उदà¥à¤¯à¤¾] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[काल] LT',\n lastWeek: '[मागील] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sमधà¥à¤¯à¥‡',\n past: '%sपूरà¥à¤µà¥€',\n s: relativeTimeMr,\n ss: relativeTimeMr,\n m: relativeTimeMr,\n mm: relativeTimeMr,\n h: relativeTimeMr,\n hh: relativeTimeMr,\n d: relativeTimeMr,\n dd: relativeTimeMr,\n M: relativeTimeMr,\n MM: relativeTimeMr,\n y: relativeTimeMr,\n yy: relativeTimeMr,\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६à¥à¥®à¥¯à¥¦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /पहाटे|सकाळी|दà¥à¤ªà¤¾à¤°à¥€|सायंकाळी|रातà¥à¤°à¥€/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'पहाटे' || meridiem === 'सकाळी') {\n return hour;\n } else if (\n meridiem === 'दà¥à¤ªà¤¾à¤°à¥€' ||\n meridiem === 'सायंकाळी' ||\n meridiem === 'रातà¥à¤°à¥€'\n ) {\n return hour >= 12 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour >= 0 && hour < 6) {\n return 'पहाटे';\n } else if (hour < 12) {\n return 'सकाळी';\n } else if (hour < 17) {\n return 'दà¥à¤ªà¤¾à¤°à¥€';\n } else if (hour < 20) {\n return 'सायंकाळी';\n } else {\n return 'रातà¥à¤°à¥€';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return mr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malay [ms-my]\n//! note : DEPRECATED, the correct one is [ms]\n//! author : Weldan Jamili : https://github.com/weldan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var msMy = moment.defineLocale('ms-my', {\n months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Esok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kelmarin pukul] LT',\n lastWeek: 'dddd [lepas pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lepas',\n s: 'beberapa saat',\n ss: '%d saat',\n m: 'seminit',\n mm: '%d minit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return msMy;\n\n})));\n","//! moment.js locale configuration\n//! locale : Malay [ms]\n//! author : Weldan Jamili : https://github.com/weldan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ms = moment.defineLocale('ms', {\n months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Esok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kelmarin pukul] LT',\n lastWeek: 'dddd [lepas pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lepas',\n s: 'beberapa saat',\n ss: '%d saat',\n m: 'seminit',\n mm: '%d minit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ms;\n\n})));\n","//! moment.js locale configuration\n//! locale : Maltese (Malta) [mt]\n//! author : Alessandro Maruccia : https://github.com/alesma\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var mt = moment.defineLocale('mt', {\n months: 'Jannar_Frar_Marzu_April_Mejju_Ä unju_Lulju_Awwissu_Settembru_Ottubru_Novembru_DiÄ‹embru'.split(\n '_'\n ),\n monthsShort: 'Jan_Fra_Mar_Apr_Mej_Ä un_Lul_Aww_Set_Ott_Nov_DiÄ‹'.split('_'),\n weekdays:\n 'Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ä imgħa_Is-Sibt'.split(\n '_'\n ),\n weekdaysShort: 'Ħad_Tne_Tli_Erb_Ħam_Ä im_Sib'.split('_'),\n weekdaysMin: 'Ħa_Tn_Tl_Er_Ħa_Ä i_Si'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Illum fil-]LT',\n nextDay: '[Għada fil-]LT',\n nextWeek: 'dddd [fil-]LT',\n lastDay: '[Il-bieraħ fil-]LT',\n lastWeek: 'dddd [li għadda] [fil-]LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'f’ %s',\n past: '%s ilu',\n s: 'ftit sekondi',\n ss: '%d sekondi',\n m: 'minuta',\n mm: '%d minuti',\n h: 'siegħa',\n hh: '%d siegħat',\n d: 'Ä¡urnata',\n dd: '%d Ä¡ranet',\n M: 'xahar',\n MM: '%d xhur',\n y: 'sena',\n yy: '%d sni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return mt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Burmese [my]\n//! author : Squar team, mysquar.com\n//! author : David Rossellat : https://github.com/gholadr\n//! author : Tin Aung Lin : https://github.com/thanyawzinmin\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: 'á',\n 2: 'á‚',\n 3: 'áƒ',\n 4: 'á„',\n 5: 'á…',\n 6: 'á†',\n 7: 'á‡',\n 8: 'áˆ',\n 9: 'á‰',\n 0: 'á€',\n },\n numberMap = {\n 'á': '1',\n 'á‚': '2',\n 'áƒ': '3',\n 'á„': '4',\n 'á…': '5',\n 'á†': '6',\n 'á‡': '7',\n 'áˆ': '8',\n 'á‰': '9',\n 'á€': '0',\n };\n\n var my = moment.defineLocale('my', {\n months: 'ဇန်နá€á€«á€›á€®_ဖေဖော်á€á€«á€›á€®_မá€á€º_ဧပြီ_မေ_ဇွန်_ဇူလá€á€¯á€„်_သြဂုá€á€º_စက်á€á€„်ဘာ_အောက်á€á€á€¯á€˜á€¬_နá€á€¯á€á€„်ဘာ_ဒီဇင်ဘာ'.split(\n '_'\n ),\n monthsShort: 'ဇန်_ဖေ_မá€á€º_ပြီ_မေ_ဇွန်_လá€á€¯á€„်_သြ_စက်_အောက်_နá€á€¯_ဒီ'.split('_'),\n weekdays: 'á€á€”င်္ဂနွေ_á€á€”င်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပá€á€±á€¸_သောကြာ_စနေ'.split(\n '_'\n ),\n weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[ယနေ.] LT [မှာ]',\n nextDay: '[မနက်ဖြန်] LT [မှာ]',\n nextWeek: 'dddd LT [မှာ]',\n lastDay: '[မနေ.က] LT [မှာ]',\n lastWeek: '[ပြီးá€á€²á€·á€žá€±á€¬] dddd LT [မှာ]',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'လာမည့် %s မှာ',\n past: 'လွန်á€á€²á€·á€žá€±á€¬ %s က',\n s: 'စက္ကန်.အနည်းငယ်',\n ss: '%d စက္ကန့်',\n m: 'á€á€…်မá€á€”စ်',\n mm: '%d မá€á€”စ်',\n h: 'á€á€…်နာရီ',\n hh: '%d နာရီ',\n d: 'á€á€…်ရက်',\n dd: '%d ရက်',\n M: 'á€á€…်လ',\n MM: '%d လ',\n y: 'á€á€…်နှစ်',\n yy: '%d နှစ်',\n },\n preparse: function (string) {\n return string.replace(/[áá‚áƒá„á…á†á‡áˆá‰á€]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return my;\n\n})));\n","//! moment.js locale configuration\n//! locale : Norwegian BokmÃ¥l [nb]\n//! authors : Espen Hovlandsdal : https://github.com/rexxars\n//! Sigurd Gartmann : https://github.com/sigurdga\n//! Stephen Ramthun : https://github.com/stephenramthun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var nb = moment.defineLocale('nb', {\n months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),\n monthsParseExact: true,\n weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort: 'sø._ma._ti._on._to._fr._lø.'.split('_'),\n weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] HH:mm',\n LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[i gÃ¥r kl.] LT',\n lastWeek: '[forrige] dddd [kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s siden',\n s: 'noen sekunder',\n ss: '%d sekunder',\n m: 'ett minutt',\n mm: '%d minutter',\n h: 'en time',\n hh: '%d timer',\n d: 'en dag',\n dd: '%d dager',\n w: 'en uke',\n ww: '%d uker',\n M: 'en mÃ¥ned',\n MM: '%d mÃ¥neder',\n y: 'ett Ã¥r',\n yy: '%d Ã¥r',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nb;\n\n})));\n","//! moment.js locale configuration\n//! locale : Nepalese [ne]\n//! author : suvash : https://github.com/suvash\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '१',\n 2: '२',\n 3: '३',\n 4: '४',\n 5: '५',\n 6: '६',\n 7: 'à¥',\n 8: '८',\n 9: '९',\n 0: '०',\n },\n numberMap = {\n '१': '1',\n '२': '2',\n '३': '3',\n '४': '4',\n '५': '5',\n '६': '6',\n 'à¥': '7',\n '८': '8',\n '९': '9',\n '०': '0',\n };\n\n var ne = moment.defineLocale('ne', {\n months: 'जनवरी_फेबà¥à¤°à¥à¤µà¤°à¥€_मारà¥à¤š_अपà¥à¤°à¤¿à¤²_मई_जà¥à¤¨_जà¥à¤²à¤¾à¤ˆ_अगषà¥à¤Ÿ_सेपà¥à¤Ÿà¥‡à¤®à¥à¤¬à¤°_अकà¥à¤Ÿà¥‹à¤¬à¤°_नोà¤à¥‡à¤®à¥à¤¬à¤°_डिसेमà¥à¤¬à¤°'.split(\n '_'\n ),\n monthsShort:\n 'जन._फेबà¥à¤°à¥._मारà¥à¤š_अपà¥à¤°à¤¿._मई_जà¥à¤¨_जà¥à¤²à¤¾à¤ˆ._अग._सेपà¥à¤Ÿ._अकà¥à¤Ÿà¥‹._नोà¤à¥‡._डिसे.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'आइतबार_सोमबार_मङà¥à¤—लबार_बà¥à¤§à¤¬à¤¾à¤°_बिहिबार_शà¥à¤•à¥à¤°à¤¬à¤¾à¤°_शनिबार'.split(\n '_'\n ),\n weekdaysShort: 'आइत._सोम._मङà¥à¤—ल._बà¥à¤§._बिहि._शà¥à¤•à¥à¤°._शनि.'.split('_'),\n weekdaysMin: 'आ._सो._मं._बà¥._बि._शà¥._श.'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'Aको h:mm बजे',\n LTS: 'Aको h:mm:ss बजे',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, Aको h:mm बजे',\n LLLL: 'dddd, D MMMM YYYY, Aको h:mm बजे',\n },\n preparse: function (string) {\n return string.replace(/[१२३४५६à¥à¥®à¥¯à¥¦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /राति|बिहान|दिउà¤à¤¸à¥‹|साà¤à¤/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'राति') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'बिहान') {\n return hour;\n } else if (meridiem === 'दिउà¤à¤¸à¥‹') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'साà¤à¤') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 3) {\n return 'राति';\n } else if (hour < 12) {\n return 'बिहान';\n } else if (hour < 16) {\n return 'दिउà¤à¤¸à¥‹';\n } else if (hour < 20) {\n return 'साà¤à¤';\n } else {\n return 'राति';\n }\n },\n calendar: {\n sameDay: '[आज] LT',\n nextDay: '[à¤à¥‹à¤²à¤¿] LT',\n nextWeek: '[आउà¤à¤¦à¥‹] dddd[,] LT',\n lastDay: '[हिजो] LT',\n lastWeek: '[गà¤à¤•à¥‹] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sमा',\n past: '%s अगाडि',\n s: 'केही कà¥à¤·à¤£',\n ss: '%d सेकेणà¥à¤¡',\n m: 'à¤à¤• मिनेट',\n mm: '%d मिनेट',\n h: 'à¤à¤• घणà¥à¤Ÿà¤¾',\n hh: '%d घणà¥à¤Ÿà¤¾',\n d: 'à¤à¤• दिन',\n dd: '%d दिन',\n M: 'à¤à¤• महिना',\n MM: '%d महिना',\n y: 'à¤à¤• बरà¥à¤·',\n yy: '%d बरà¥à¤·',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return ne;\n\n})));\n","//! moment.js locale configuration\n//! locale : Dutch (Belgium) [nl-be]\n//! author : Joris Röling : https://github.com/jorisroling\n//! author : Jacob Middag : https://github.com/middagj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n monthsParse = [\n /^jan/i,\n /^feb/i,\n /^maart|mrt.?$/i,\n /^apr/i,\n /^mei$/i,\n /^jun[i.]?$/i,\n /^jul[i.]?$/i,\n /^aug/i,\n /^sep/i,\n /^okt/i,\n /^nov/i,\n /^dec/i,\n ],\n monthsRegex =\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\\.?|feb\\.?|mrt\\.?|apr\\.?|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i;\n\n var nlBe = moment.defineLocale('nl-be', {\n months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex:\n /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n weekdays:\n 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'over %s',\n past: '%s geleden',\n s: 'een paar seconden',\n ss: '%d seconden',\n m: 'één minuut',\n mm: '%d minuten',\n h: 'één uur',\n hh: '%d uur',\n d: 'één dag',\n dd: '%d dagen',\n M: 'één maand',\n MM: '%d maanden',\n y: 'één jaar',\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nlBe;\n\n})));\n","//! moment.js locale configuration\n//! locale : Dutch [nl]\n//! author : Joris Röling : https://github.com/jorisroling\n//! author : Jacob Middag : https://github.com/middagj\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsShortWithDots =\n 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n monthsShortWithoutDots =\n 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n monthsParse = [\n /^jan/i,\n /^feb/i,\n /^maart|mrt.?$/i,\n /^apr/i,\n /^mei$/i,\n /^jun[i.]?$/i,\n /^jul[i.]?$/i,\n /^aug/i,\n /^sep/i,\n /^okt/i,\n /^nov/i,\n /^dec/i,\n ],\n monthsRegex =\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\\.?|feb\\.?|mrt\\.?|apr\\.?|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i;\n\n var nl = moment.defineLocale('nl', {\n months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex:\n /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex:\n /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n weekdays:\n 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'over %s',\n past: '%s geleden',\n s: 'een paar seconden',\n ss: '%d seconden',\n m: 'één minuut',\n mm: '%d minuten',\n h: 'één uur',\n hh: '%d uur',\n d: 'één dag',\n dd: '%d dagen',\n w: 'één week',\n ww: '%d weken',\n M: 'één maand',\n MM: '%d maanden',\n y: 'één jaar',\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Nynorsk [nn]\n//! authors : https://github.com/mechuwind\n//! Stephen Ramthun : https://github.com/stephenramthun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var nn = moment.defineLocale('nn', {\n months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'),\n monthsParseExact: true,\n weekdays: 'sundag_mÃ¥ndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'),\n weekdaysShort: 'su._mÃ¥._ty._on._to._fr._lau.'.split('_'),\n weekdaysMin: 'su_mÃ¥_ty_on_to_fr_la'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] H:mm',\n LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[I dag klokka] LT',\n nextDay: '[I morgon klokka] LT',\n nextWeek: 'dddd [klokka] LT',\n lastDay: '[I gÃ¥r klokka] LT',\n lastWeek: '[FøregÃ¥ande] dddd [klokka] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s sidan',\n s: 'nokre sekund',\n ss: '%d sekund',\n m: 'eit minutt',\n mm: '%d minutt',\n h: 'ein time',\n hh: '%d timar',\n d: 'ein dag',\n dd: '%d dagar',\n w: 'ei veke',\n ww: '%d veker',\n M: 'ein mÃ¥nad',\n MM: '%d mÃ¥nader',\n y: 'eit Ã¥r',\n yy: '%d Ã¥r',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return nn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Occitan, lengadocian dialecte [oc-lnc]\n//! author : Quentin PAGÈS : https://github.com/Quenty31\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ocLnc = moment.defineLocale('oc-lnc', {\n months: {\n standalone:\n 'genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre'.split(\n '_'\n ),\n format: \"de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre\".split(\n '_'\n ),\n isFormat: /D[oD]?(\\s)+MMMM/,\n },\n monthsShort:\n 'gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte'.split(\n '_'\n ),\n weekdaysShort: 'dg._dl._dm._dc._dj._dv._ds.'.split('_'),\n weekdaysMin: 'dg_dl_dm_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [de] YYYY',\n ll: 'D MMM YYYY',\n LLL: 'D MMMM [de] YYYY [a] H:mm',\n lll: 'D MMM YYYY, H:mm',\n LLLL: 'dddd D MMMM [de] YYYY [a] H:mm',\n llll: 'ddd D MMM YYYY, H:mm',\n },\n calendar: {\n sameDay: '[uèi a] LT',\n nextDay: '[deman a] LT',\n nextWeek: 'dddd [a] LT',\n lastDay: '[ièr a] LT',\n lastWeek: 'dddd [passat a] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: \"d'aquà %s\",\n past: 'fa %s',\n s: 'unas segondas',\n ss: '%d segondas',\n m: 'una minuta',\n mm: '%d minutas',\n h: 'una ora',\n hh: '%d oras',\n d: 'un jorn',\n dd: '%d jorns',\n M: 'un mes',\n MM: '%d meses',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal: function (number, period) {\n var output =\n number === 1\n ? 'r'\n : number === 2\n ? 'n'\n : number === 3\n ? 'r'\n : number === 4\n ? 't'\n : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4,\n },\n });\n\n return ocLnc;\n\n})));\n","//! moment.js locale configuration\n//! locale : Punjabi (India) [pa-in]\n//! author : Harpreet Singh : https://github.com/harpreetkhalsagtbit\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '੧',\n 2: '੨',\n 3: 'à©©',\n 4: '੪',\n 5: 'à©«',\n 6: '੬',\n 7: 'à©',\n 8: 'à©®',\n 9: '੯',\n 0: '੦',\n },\n numberMap = {\n '੧': '1',\n '੨': '2',\n 'à©©': '3',\n '੪': '4',\n 'à©«': '5',\n '੬': '6',\n 'à©': '7',\n 'à©®': '8',\n '੯': '9',\n '੦': '0',\n };\n\n var paIn = moment.defineLocale('pa-in', {\n // There are months name as per Nanakshahi Calendar but they are not used as rigidly in modern Punjabi.\n months: 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪà©à¨°à©ˆà¨²_ਮਈ_ਜੂਨ_ਜà©à¨²à¨¾à¨ˆ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(\n '_'\n ),\n monthsShort:\n 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪà©à¨°à©ˆà¨²_ਮਈ_ਜੂਨ_ਜà©à¨²à¨¾à¨ˆ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(\n '_'\n ),\n weekdays: 'à¨à¨¤à¨µà¨¾à¨°_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬà©à¨§à¨µà¨¾à¨°_ਵੀਰਵਾਰ_ਸ਼à©à©±à¨•à¨°à¨µà¨¾à¨°_ਸ਼ਨੀਚਰਵਾਰ'.split(\n '_'\n ),\n weekdaysShort: 'à¨à¨¤_ਸੋਮ_ਮੰਗਲ_ਬà©à¨§_ਵੀਰ_ਸ਼à©à¨•à¨°_ਸ਼ਨੀ'.split('_'),\n weekdaysMin: 'à¨à¨¤_ਸੋਮ_ਮੰਗਲ_ਬà©à¨§_ਵੀਰ_ਸ਼à©à¨•à¨°_ਸ਼ਨੀ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm ਵਜੇ',\n LTS: 'A h:mm:ss ਵਜੇ',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm ਵਜੇ',\n LLLL: 'dddd, D MMMM YYYY, A h:mm ਵਜੇ',\n },\n calendar: {\n sameDay: '[ਅਜ] LT',\n nextDay: '[ਕਲ] LT',\n nextWeek: '[ਅਗਲਾ] dddd, LT',\n lastDay: '[ਕਲ] LT',\n lastWeek: '[ਪਿਛਲੇ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ਵਿੱਚ',\n past: '%s ਪਿਛਲੇ',\n s: 'ਕà©à¨ ਸਕਿੰਟ',\n ss: '%d ਸਕਿੰਟ',\n m: 'ਇਕ ਮਿੰਟ',\n mm: '%d ਮਿੰਟ',\n h: 'ਇੱਕ ਘੰਟਾ',\n hh: '%d ਘੰਟੇ',\n d: 'ਇੱਕ ਦਿਨ',\n dd: '%d ਦਿਨ',\n M: 'ਇੱਕ ਮਹੀਨਾ',\n MM: '%d ਮਹੀਨੇ',\n y: 'ਇੱਕ ਸਾਲ',\n yy: '%d ਸਾਲ',\n },\n preparse: function (string) {\n return string.replace(/[੧੨੩੪੫੬à©à©®à©¯à©¦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Punjabi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi.\n meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦà©à¨ªà¨¹à¨¿à¨°|ਸ਼ਾਮ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ਰਾਤ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ਸਵੇਰ') {\n return hour;\n } else if (meridiem === 'ਦà©à¨ªà¨¹à¨¿à¨°') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ਸ਼ਾਮ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ਰਾਤ';\n } else if (hour < 10) {\n return 'ਸਵੇਰ';\n } else if (hour < 17) {\n return 'ਦà©à¨ªà¨¹à¨¿à¨°';\n } else if (hour < 20) {\n return 'ਸ਼ਾਮ';\n } else {\n return 'ਰਾਤ';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return paIn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Polish [pl]\n//! author : Rafal Hirsz : https://github.com/evoL\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var monthsNominative =\n 'styczeÅ„_luty_marzec_kwiecieÅ„_maj_czerwiec_lipiec_sierpieÅ„_wrzesieÅ„_październik_listopad_grudzieÅ„'.split(\n '_'\n ),\n monthsSubjective =\n 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_wrzeÅ›nia_października_listopada_grudnia'.split(\n '_'\n ),\n monthsParse = [\n /^sty/i,\n /^lut/i,\n /^mar/i,\n /^kwi/i,\n /^maj/i,\n /^cze/i,\n /^lip/i,\n /^sie/i,\n /^wrz/i,\n /^paź/i,\n /^lis/i,\n /^gru/i,\n ];\n function plural(n) {\n return n % 10 < 5 && n % 10 > 1 && ~~(n / 10) % 10 !== 1;\n }\n function translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n return result + (plural(number) ? 'sekundy' : 'sekund');\n case 'm':\n return withoutSuffix ? 'minuta' : 'minutÄ™';\n case 'mm':\n return result + (plural(number) ? 'minuty' : 'minut');\n case 'h':\n return withoutSuffix ? 'godzina' : 'godzinÄ™';\n case 'hh':\n return result + (plural(number) ? 'godziny' : 'godzin');\n case 'ww':\n return result + (plural(number) ? 'tygodnie' : 'tygodni');\n case 'MM':\n return result + (plural(number) ? 'miesiÄ…ce' : 'miesiÄ™cy');\n case 'yy':\n return result + (plural(number) ? 'lata' : 'lat');\n }\n }\n\n var pl = moment.defineLocale('pl', {\n months: function (momentToFormat, format) {\n if (!momentToFormat) {\n return monthsNominative;\n } else if (/D MMMM/.test(format)) {\n return monthsSubjective[momentToFormat.month()];\n } else {\n return monthsNominative[momentToFormat.month()];\n }\n },\n monthsShort: 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'),\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays:\n 'niedziela_poniedziaÅ‚ek_wtorek_Å›roda_czwartek_piÄ…tek_sobota'.split('_'),\n weekdaysShort: 'ndz_pon_wt_Å›r_czw_pt_sob'.split('_'),\n weekdaysMin: 'Nd_Pn_Wt_Åšr_Cz_Pt_So'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[DziÅ› o] LT',\n nextDay: '[Jutro o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W niedzielÄ™ o] LT';\n\n case 2:\n return '[We wtorek o] LT';\n\n case 3:\n return '[W Å›rodÄ™ o] LT';\n\n case 6:\n return '[W sobotÄ™ o] LT';\n\n default:\n return '[W] dddd [o] LT';\n }\n },\n lastDay: '[Wczoraj o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[W zeszÅ‚Ä… niedzielÄ™ o] LT';\n case 3:\n return '[W zeszÅ‚Ä… Å›rodÄ™ o] LT';\n case 6:\n return '[W zeszÅ‚Ä… sobotÄ™ o] LT';\n default:\n return '[W zeszÅ‚y] dddd [o] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: '%s temu',\n s: 'kilka sekund',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: '1 dzieÅ„',\n dd: '%d dni',\n w: 'tydzieÅ„',\n ww: translate,\n M: 'miesiÄ…c',\n MM: translate,\n y: 'rok',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return pl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Portuguese (Brazil) [pt-br]\n//! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ptBr = moment.defineLocale('pt-br', {\n months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(\n '_'\n ),\n monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n weekdays:\n 'domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado'.split(\n '_'\n ),\n weekdaysShort: 'dom_seg_ter_qua_qui_sex_sáb'.split('_'),\n weekdaysMin: 'do_2ª_3ª_4ª_5ª_6ª_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY [à s] HH:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY [à s] HH:mm',\n },\n calendar: {\n sameDay: '[Hoje à s] LT',\n nextDay: '[Amanhã à s] LT',\n nextWeek: 'dddd [à s] LT',\n lastDay: '[Ontem à s] LT',\n lastWeek: function () {\n return this.day() === 0 || this.day() === 6\n ? '[Último] dddd [à s] LT' // Saturday + Sunday\n : '[Última] dddd [à s] LT'; // Monday - Friday\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'em %s',\n past: 'há %s',\n s: 'poucos segundos',\n ss: '%d segundos',\n m: 'um minuto',\n mm: '%d minutos',\n h: 'uma hora',\n hh: '%d horas',\n d: 'um dia',\n dd: '%d dias',\n M: 'um mês',\n MM: '%d meses',\n y: 'um ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n invalidDate: 'Data inválida',\n });\n\n return ptBr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Portuguese [pt]\n//! author : Jefferson : https://github.com/jalex79\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var pt = moment.defineLocale('pt', {\n months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(\n '_'\n ),\n monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n weekdays:\n 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split(\n '_'\n ),\n weekdaysShort: 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),\n weekdaysMin: 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY HH:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hoje à s] LT',\n nextDay: '[Amanhã à s] LT',\n nextWeek: 'dddd [à s] LT',\n lastDay: '[Ontem à s] LT',\n lastWeek: function () {\n return this.day() === 0 || this.day() === 6\n ? '[Último] dddd [à s] LT' // Saturday + Sunday\n : '[Última] dddd [à s] LT'; // Monday - Friday\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'em %s',\n past: 'há %s',\n s: 'segundos',\n ss: '%d segundos',\n m: 'um minuto',\n mm: '%d minutos',\n h: 'uma hora',\n hh: '%d horas',\n d: 'um dia',\n dd: '%d dias',\n w: 'uma semana',\n ww: '%d semanas',\n M: 'um mês',\n MM: '%d meses',\n y: 'um ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return pt;\n\n})));\n","//! moment.js locale configuration\n//! locale : Romanian [ro]\n//! author : Vlad Gurdiga : https://github.com/gurdiga\n//! author : Valentin Agachi : https://github.com/avaly\n//! author : Emanuel Cepoi : https://github.com/cepem\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: 'secunde',\n mm: 'minute',\n hh: 'ore',\n dd: 'zile',\n ww: 'săptămâni',\n MM: 'luni',\n yy: 'ani',\n },\n separator = ' ';\n if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) {\n separator = ' de ';\n }\n return number + separator + format[key];\n }\n\n var ro = moment.defineLocale('ro', {\n months: 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split(\n '_'\n ),\n monthsShort:\n 'ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'duminică_luni_marÈ›i_miercuri_joi_vineri_sâmbătă'.split('_'),\n weekdaysShort: 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'),\n weekdaysMin: 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[azi la] LT',\n nextDay: '[mâine la] LT',\n nextWeek: 'dddd [la] LT',\n lastDay: '[ieri la] LT',\n lastWeek: '[fosta] dddd [la] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'peste %s',\n past: '%s în urmă',\n s: 'câteva secunde',\n ss: relativeTimeWithPlural,\n m: 'un minut',\n mm: relativeTimeWithPlural,\n h: 'o oră',\n hh: relativeTimeWithPlural,\n d: 'o zi',\n dd: relativeTimeWithPlural,\n w: 'o săptămână',\n ww: relativeTimeWithPlural,\n M: 'o lună',\n MM: relativeTimeWithPlural,\n y: 'un an',\n yy: relativeTimeWithPlural,\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return ro;\n\n})));\n","//! moment.js locale configuration\n//! locale : Russian [ru]\n//! author : Viktorminator : https://github.com/Viktorminator\n//! author : Menelion Elensúle : https://github.com/Oire\n//! author : Коренберг Марк : https://github.com/socketpair\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'Ñекунда_Ñекунды_Ñекунд' : 'Ñекунду_Ñекунды_Ñекунд',\n mm: withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут',\n hh: 'чаÑ_чаÑа_чаÑов',\n dd: 'день_днÑ_дней',\n ww: 'неделÑ_недели_недель',\n MM: 'меÑÑц_меÑÑца_меÑÑцев',\n yy: 'год_года_лет',\n };\n if (key === 'm') {\n return withoutSuffix ? 'минута' : 'минуту';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n var monthsParse = [\n /^Ñнв/i,\n /^фев/i,\n /^мар/i,\n /^апр/i,\n /^ма[йÑ]/i,\n /^июн/i,\n /^июл/i,\n /^авг/i,\n /^Ñен/i,\n /^окт/i,\n /^ноÑ/i,\n /^дек/i,\n ];\n\n // http://new.gramota.ru/spravka/rules/139-prop : § 103\n // Ð¡Ð¾ÐºÑ€Ð°Ñ‰ÐµÐ½Ð¸Ñ Ð¼ÐµÑÑцев: http://new.gramota.ru/spravka/buro/search-answer?s=242637\n // CLDR data: http://www.unicode.org/cldr/charts/28/summary/ru.html#1753\n var ru = moment.defineLocale('ru', {\n months: {\n format: 'ÑнварÑ_февралÑ_марта_апрелÑ_маÑ_июнÑ_июлÑ_авгуÑта_ÑентÑбрÑ_октÑбрÑ_ноÑбрÑ_декабрÑ'.split(\n '_'\n ),\n standalone:\n 'Ñнварь_февраль_март_апрель_май_июнь_июль_авгуÑÑ‚_ÑентÑбрь_октÑбрь_ноÑбрь_декабрь'.split(\n '_'\n ),\n },\n monthsShort: {\n // по CLDR именно \"июл.\" и \"июн.\", но какой ÑмыÑл менÑÑ‚ÑŒ букву на точку?\n format: 'Ñнв._февр._мар._апр._маÑ_июнÑ_июлÑ_авг._Ñент._окт._ноÑб._дек.'.split(\n '_'\n ),\n standalone:\n 'Ñнв._февр._март_апр._май_июнь_июль_авг._Ñент._окт._ноÑб._дек.'.split(\n '_'\n ),\n },\n weekdays: {\n standalone:\n 'воÑкреÑенье_понедельник_вторник_Ñреда_четверг_пÑтница_Ñуббота'.split(\n '_'\n ),\n format: 'воÑкреÑенье_понедельник_вторник_Ñреду_четверг_пÑтницу_Ñубботу'.split(\n '_'\n ),\n isFormat: /\\[ ?[Вв] ?(?:прошлую|Ñледующую|Ñту)? ?] ?dddd/,\n },\n weekdaysShort: 'вÑ_пн_вт_ÑÑ€_чт_пт_Ñб'.split('_'),\n weekdaysMin: 'вÑ_пн_вт_ÑÑ€_чт_пт_Ñб'.split('_'),\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n // полные Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ñ Ñ Ð¿Ð°Ð´ÐµÐ¶Ð°Ð¼Ð¸, по три буквы, Ð´Ð»Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ…, по 4 буквы, ÑÐ¾ÐºÑ€Ð°Ñ‰ÐµÐ½Ð¸Ñ Ñ Ñ‚Ð¾Ñ‡ÐºÐ¾Ð¹ и без точки\n monthsRegex:\n /^(Ñнвар[ÑŒÑ]|Ñнв\\.?|феврал[ÑŒÑ]|февр?\\.?|марта?|мар\\.?|апрел[ÑŒÑ]|апр\\.?|ма[йÑ]|июн[ÑŒÑ]|июн\\.?|июл[ÑŒÑ]|июл\\.?|авгуÑта?|авг\\.?|ÑентÑбр[ÑŒÑ]|Ñент?\\.?|октÑбр[ÑŒÑ]|окт\\.?|ноÑбр[ÑŒÑ]|ноÑб?\\.?|декабр[ÑŒÑ]|дек\\.?)/i,\n\n // ÐºÐ¾Ð¿Ð¸Ñ Ð¿Ñ€ÐµÐ´Ñ‹Ð´ÑƒÑ‰ÐµÐ³Ð¾\n monthsShortRegex:\n /^(Ñнвар[ÑŒÑ]|Ñнв\\.?|феврал[ÑŒÑ]|февр?\\.?|марта?|мар\\.?|апрел[ÑŒÑ]|апр\\.?|ма[йÑ]|июн[ÑŒÑ]|июн\\.?|июл[ÑŒÑ]|июл\\.?|авгуÑта?|авг\\.?|ÑентÑбр[ÑŒÑ]|Ñент?\\.?|октÑбр[ÑŒÑ]|окт\\.?|ноÑбр[ÑŒÑ]|ноÑб?\\.?|декабр[ÑŒÑ]|дек\\.?)/i,\n\n // полные Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ñ Ñ Ð¿Ð°Ð´ÐµÐ¶Ð°Ð¼Ð¸\n monthsStrictRegex:\n /^(Ñнвар[ÑÑŒ]|феврал[ÑÑŒ]|марта?|апрел[ÑÑŒ]|ма[Ñй]|июн[ÑÑŒ]|июл[ÑÑŒ]|авгуÑта?|ÑентÑбр[ÑÑŒ]|октÑбр[ÑÑŒ]|ноÑбр[ÑÑŒ]|декабр[ÑÑŒ])/i,\n\n // Выражение, которое ÑоответÑтвует только Ñокращённым формам\n monthsShortStrictRegex:\n /^(Ñнв\\.|февр?\\.|мар[Ñ‚.]|апр\\.|ма[Ñй]|июн[ÑŒÑ.]|июл[ÑŒÑ.]|авг\\.|Ñент?\\.|окт\\.|ноÑб?\\.|дек\\.)/i,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY г.',\n LLL: 'D MMMM YYYY г., H:mm',\n LLLL: 'dddd, D MMMM YYYY г., H:mm',\n },\n calendar: {\n sameDay: '[СегоднÑ, в] LT',\n nextDay: '[Завтра, в] LT',\n lastDay: '[Вчера, в] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[Ð’ Ñледующее] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[Ð’ Ñледующий] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[Ð’ Ñледующую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[Ð’] dddd, [в] LT';\n }\n }\n },\n lastWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[Ð’ прошлое] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[Ð’ прошлый] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[Ð’ прошлую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[Ð’] dddd, [в] LT';\n }\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'через %s',\n past: '%s назад',\n s: 'неÑколько Ñекунд',\n ss: relativeTimeWithPlural,\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: 'чаÑ',\n hh: relativeTimeWithPlural,\n d: 'день',\n dd: relativeTimeWithPlural,\n w: 'неделÑ',\n ww: relativeTimeWithPlural,\n M: 'меÑÑц',\n MM: relativeTimeWithPlural,\n y: 'год',\n yy: relativeTimeWithPlural,\n },\n meridiemParse: /ночи|утра|днÑ|вечера/i,\n isPM: function (input) {\n return /^(днÑ|вечера)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночи';\n } else if (hour < 12) {\n return 'утра';\n } else if (hour < 17) {\n return 'днÑ';\n } else {\n return 'вечера';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го|Ñ)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n return number + '-й';\n case 'D':\n return number + '-го';\n case 'w':\n case 'W':\n return number + '-Ñ';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ru;\n\n})));\n","//! moment.js locale configuration\n//! locale : Sindhi [sd]\n//! author : Narain Sagar : https://github.com/narainsagar\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'جنوري',\n 'Ùيبروري',\n 'مارچ',\n 'اپريل',\n 'مئي',\n 'جون',\n 'جولاءÙ',\n 'آگسٽ',\n 'سيپٽمبر',\n 'آڪٽوبر',\n 'نومبر',\n 'ڊسمبر',\n ],\n days = ['آچر', 'سومر', 'اڱارو', 'اربع', 'خميس', 'جمع', 'ڇنڇر'];\n\n var sd = moment.defineLocale('sd', {\n months: months,\n monthsShort: months,\n weekdays: days,\n weekdaysShort: days,\n weekdaysMin: days,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'ddddØŒ D MMMM YYYY HH:mm',\n },\n meridiemParse: /صبØ|شام/,\n isPM: function (input) {\n return 'شام' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبØ';\n }\n return 'شام';\n },\n calendar: {\n sameDay: '[اڄ] LT',\n nextDay: '[سڀاڻي] LT',\n nextWeek: 'dddd [اڳين Ù‡Ùتي تي] LT',\n lastDay: '[ڪالهه] LT',\n lastWeek: '[گزريل Ù‡Ùتي] dddd [تي] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s پوء',\n past: '%s اڳ',\n s: 'چند سيڪنڊ',\n ss: '%d سيڪنڊ',\n m: 'Ù‡Úª منٽ',\n mm: '%d منٽ',\n h: 'Ù‡Úª ڪلاڪ',\n hh: '%d ڪلاڪ',\n d: 'Ù‡Úª Úينهن',\n dd: '%d Úينهن',\n M: 'Ù‡Úª مهينو',\n MM: '%d مهينا',\n y: 'Ù‡Úª سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string.replace(/ØŒ/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, 'ØŒ');\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sd;\n\n})));\n","//! moment.js locale configuration\n//! locale : Northern Sami [se]\n//! authors : BÃ¥rd Rolstad Henriksen : https://github.com/karamell\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var se = moment.defineLocale('se', {\n months: 'oÄ‘Ä‘ajagemánnu_guovvamánnu_njukÄamánnu_cuoÅ‹ománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_ÄakÄamánnu_golggotmánnu_skábmamánnu_juovlamánnu'.split(\n '_'\n ),\n monthsShort:\n 'oÄ‘Ä‘j_guov_njuk_cuo_mies_geas_suoi_borg_ÄakÄ_golg_skáb_juov'.split('_'),\n weekdays:\n 'sotnabeaivi_vuossárga_maÅ‹Å‹ebárga_gaskavahkku_duorastat_bearjadat_lávvardat'.split(\n '_'\n ),\n weekdaysShort: 'sotn_vuos_maÅ‹_gask_duor_bear_láv'.split('_'),\n weekdaysMin: 's_v_m_g_d_b_L'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'MMMM D. [b.] YYYY',\n LLL: 'MMMM D. [b.] YYYY [ti.] HH:mm',\n LLLL: 'dddd, MMMM D. [b.] YYYY [ti.] HH:mm',\n },\n calendar: {\n sameDay: '[otne ti] LT',\n nextDay: '[ihttin ti] LT',\n nextWeek: 'dddd [ti] LT',\n lastDay: '[ikte ti] LT',\n lastWeek: '[ovddit] dddd [ti] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s geažes',\n past: 'maÅ‹it %s',\n s: 'moadde sekunddat',\n ss: '%d sekunddat',\n m: 'okta minuhta',\n mm: '%d minuhtat',\n h: 'okta diimmu',\n hh: '%d diimmut',\n d: 'okta beaivi',\n dd: '%d beaivvit',\n M: 'okta mánnu',\n MM: '%d mánut',\n y: 'okta jahki',\n yy: '%d jagit',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return se;\n\n})));\n","//! moment.js locale configuration\n//! locale : Sinhalese [si]\n//! author : Sampath Sitinamaluwa : https://github.com/sampathsris\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n /*jshint -W100*/\n var si = moment.defineLocale('si', {\n months: 'ජනවà·à¶»à·’_පෙබරවà·à¶»à·’_මà·à¶»à·Šà¶à·”_අප්â€à¶»à·šà¶½à·Š_මà·à¶ºà·’_ජූනි_ජූලි_අගà·à·ƒà·Šà¶à·”_à·ƒà·à¶´à·Šà¶à·à¶¸à·Šà¶¶à¶»à·Š_ඔක්à¶à·à¶¶à¶»à·Š_නොවà·à¶¸à·Šà¶¶à¶»à·Š_දෙසà·à¶¸à·Šà¶¶à¶»à·Š'.split(\n '_'\n ),\n monthsShort: 'ජන_පෙබ_මà·à¶»à·Š_අප්_මà·à¶ºà·’_ජූනි_ජූලි_අගà·_à·ƒà·à¶´à·Š_ඔක්_නොවà·_දෙසà·'.split(\n '_'\n ),\n weekdays:\n 'ඉරිදà·_සඳුදà·_අඟහරුවà·à¶¯à·_බදà·à¶¯à·_බ්â€à¶»à·„ස්පà¶à·’න්දà·_සිකුරà·à¶¯à·_සෙනසුරà·à¶¯à·'.split(\n '_'\n ),\n weekdaysShort: 'ඉරි_සඳු_අඟ_බදà·_බ්â€à¶»à·„_සිකු_සෙන'.split('_'),\n weekdaysMin: 'ඉ_à·ƒ_අ_බ_බ්â€à¶»_සි_සෙ'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'a h:mm',\n LTS: 'a h:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY MMMM D',\n LLL: 'YYYY MMMM D, a h:mm',\n LLLL: 'YYYY MMMM D [à·€à·à¶±à·’] dddd, a h:mm:ss',\n },\n calendar: {\n sameDay: '[අද] LT[ට]',\n nextDay: '[හෙට] LT[ට]',\n nextWeek: 'dddd LT[ට]',\n lastDay: '[ඊයේ] LT[ට]',\n lastWeek: '[පසුගිය] dddd LT[ට]',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sකින්',\n past: '%sකට පෙර',\n s: 'à¶à¶à·Šà¶´à¶» කිහිපය',\n ss: 'à¶à¶à·Šà¶´à¶» %d',\n m: 'මිනිà¶à·Šà¶à·”à·€',\n mm: 'මිනිà¶à·Šà¶à·” %d',\n h: 'පà·à¶º',\n hh: 'පà·à¶º %d',\n d: 'දිනය',\n dd: 'දින %d',\n M: 'මà·à·ƒà¶º',\n MM: 'මà·à·ƒ %d',\n y: 'වසර',\n yy: 'වසර %d',\n },\n dayOfMonthOrdinalParse: /\\d{1,2} à·€à·à¶±à·’/,\n ordinal: function (number) {\n return number + ' à·€à·à¶±à·’';\n },\n meridiemParse: /පෙර වරු|පස් වරු|පෙ.à·€|ප.à·€./,\n isPM: function (input) {\n return input === 'ප.à·€.' || input === 'පස් වරු';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'ප.à·€.' : 'පස් වරු';\n } else {\n return isLower ? 'පෙ.à·€.' : 'පෙර වරු';\n }\n },\n });\n\n return si;\n\n})));\n","//! moment.js locale configuration\n//! locale : Slovak [sk]\n//! author : Martin Minka : https://github.com/k2s\n//! based on work of petrbela : https://github.com/petrbela\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months =\n 'január_február_marec_aprÃl_máj_jún_júl_august_september_október_november_december'.split(\n '_'\n ),\n monthsShort = 'jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec'.split('_');\n function plural(n) {\n return n > 1 && n < 5;\n }\n function translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return withoutSuffix || isFuture ? 'pár sekúnd' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekúnd');\n } else {\n return result + 'sekundami';\n }\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minúta' : isFuture ? 'minútu' : 'minútou';\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minúty' : 'minút');\n } else {\n return result + 'minútami';\n }\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodÃn');\n } else {\n return result + 'hodinami';\n }\n case 'd': // a day / in a day / a day ago\n return withoutSuffix || isFuture ? 'deň' : 'dňom';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dni' : 'dnÃ');\n } else {\n return result + 'dňami';\n }\n case 'M': // a month / in a month / a month ago\n return withoutSuffix || isFuture ? 'mesiac' : 'mesiacom';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'mesiace' : 'mesiacov');\n } else {\n return result + 'mesiacmi';\n }\n case 'y': // a year / in a year / a year ago\n return withoutSuffix || isFuture ? 'rok' : 'rokom';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'rokov');\n } else {\n return result + 'rokmi';\n }\n }\n }\n\n var sk = moment.defineLocale('sk', {\n months: months,\n monthsShort: monthsShort,\n weekdays: 'nedeľa_pondelok_utorok_streda_Å¡tvrtok_piatok_sobota'.split('_'),\n weekdaysShort: 'ne_po_ut_st_Å¡t_pi_so'.split('_'),\n weekdaysMin: 'ne_po_ut_st_Å¡t_pi_so'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[dnes o] LT',\n nextDay: '[zajtra o] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v nedeľu o] LT';\n case 1:\n case 2:\n return '[v] dddd [o] LT';\n case 3:\n return '[v stredu o] LT';\n case 4:\n return '[vo Å¡tvrtok o] LT';\n case 5:\n return '[v piatok o] LT';\n case 6:\n return '[v sobotu o] LT';\n }\n },\n lastDay: '[vÄera o] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulú nedeľu o] LT';\n case 1:\n case 2:\n return '[minulý] dddd [o] LT';\n case 3:\n return '[minulú stredu o] LT';\n case 4:\n case 5:\n return '[minulý] dddd [o] LT';\n case 6:\n return '[minulú sobotu o] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'pred %s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Slovenian [sl]\n//! author : Robert SedovÅ¡ek : https://github.com/sedovsek\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture\n ? 'nekaj sekund'\n : 'nekaj sekundami';\n case 'ss':\n if (number === 1) {\n result += withoutSuffix ? 'sekundo' : 'sekundi';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'sekundi' : 'sekundah';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'sekunde' : 'sekundah';\n } else {\n result += 'sekund';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'ena minuta' : 'eno minuto';\n case 'mm':\n if (number === 1) {\n result += withoutSuffix ? 'minuta' : 'minuto';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'minuti' : 'minutama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'minute' : 'minutami';\n } else {\n result += withoutSuffix || isFuture ? 'minut' : 'minutami';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'ena ura' : 'eno uro';\n case 'hh':\n if (number === 1) {\n result += withoutSuffix ? 'ura' : 'uro';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'uri' : 'urama';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'ure' : 'urami';\n } else {\n result += withoutSuffix || isFuture ? 'ur' : 'urami';\n }\n return result;\n case 'd':\n return withoutSuffix || isFuture ? 'en dan' : 'enim dnem';\n case 'dd':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'dan' : 'dnem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevoma';\n } else {\n result += withoutSuffix || isFuture ? 'dni' : 'dnevi';\n }\n return result;\n case 'M':\n return withoutSuffix || isFuture ? 'en mesec' : 'enim mesecem';\n case 'MM':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'mesec' : 'mesecem';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'meseca' : 'mesecema';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'mesece' : 'meseci';\n } else {\n result += withoutSuffix || isFuture ? 'mesecev' : 'meseci';\n }\n return result;\n case 'y':\n return withoutSuffix || isFuture ? 'eno leto' : 'enim letom';\n case 'yy':\n if (number === 1) {\n result += withoutSuffix || isFuture ? 'leto' : 'letom';\n } else if (number === 2) {\n result += withoutSuffix || isFuture ? 'leti' : 'letoma';\n } else if (number < 5) {\n result += withoutSuffix || isFuture ? 'leta' : 'leti';\n } else {\n result += withoutSuffix || isFuture ? 'let' : 'leti';\n }\n return result;\n }\n }\n\n var sl = moment.defineLocale('sl', {\n months: 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedelja_ponedeljek_torek_sreda_Äetrtek_petek_sobota'.split('_'),\n weekdaysShort: 'ned._pon._tor._sre._Äet._pet._sob.'.split('_'),\n weekdaysMin: 'ne_po_to_sr_Äe_pe_so'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD. MM. YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danes ob] LT',\n nextDay: '[jutri ob] LT',\n\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v] [nedeljo] [ob] LT';\n case 3:\n return '[v] [sredo] [ob] LT';\n case 6:\n return '[v] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[v] dddd [ob] LT';\n }\n },\n lastDay: '[vÄeraj ob] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[prejÅ¡njo] [nedeljo] [ob] LT';\n case 3:\n return '[prejÅ¡njo] [sredo] [ob] LT';\n case 6:\n return '[prejÅ¡njo] [soboto] [ob] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prejÅ¡nji] dddd [ob] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Äez %s',\n past: 'pred %s',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Albanian [sq]\n//! author : Flakërim Ismani : https://github.com/flakerimi\n//! author : Menelion Elensúle : https://github.com/Oire\n//! author : Oerd Cukalla : https://github.com/oerd\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sq = moment.defineLocale('sq', {\n months: 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor'.split(\n '_'\n ),\n monthsShort: 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj'.split('_'),\n weekdays: 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split(\n '_'\n ),\n weekdaysShort: 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'),\n weekdaysMin: 'D_H_Ma_Më_E_P_Sh'.split('_'),\n weekdaysParseExact: true,\n meridiemParse: /PD|MD/,\n isPM: function (input) {\n return input.charAt(0) === 'M';\n },\n meridiem: function (hours, minutes, isLower) {\n return hours < 12 ? 'PD' : 'MD';\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Sot në] LT',\n nextDay: '[Nesër në] LT',\n nextWeek: 'dddd [në] LT',\n lastDay: '[Dje në] LT',\n lastWeek: 'dddd [e kaluar në] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'në %s',\n past: '%s më parë',\n s: 'disa sekonda',\n ss: '%d sekonda',\n m: 'një minutë',\n mm: '%d minuta',\n h: 'një orë',\n hh: '%d orë',\n d: 'një ditë',\n dd: '%d ditë',\n M: 'një muaj',\n MM: '%d muaj',\n y: 'një vit',\n yy: '%d vite',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sq;\n\n})));\n","//! moment.js locale configuration\n//! locale : Serbian Cyrillic [sr-cyrl]\n//! author : Milan JanaÄković<milanjanackovic@gmail.com> : https://github.com/milan-j\n//! author : Stefan Crnjaković <stefan@hotmail.rs> : https://github.com/crnjakovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['Ñекунда', 'Ñекунде', 'Ñекунди'],\n m: ['један минут', 'једног минута'],\n mm: ['минут', 'минута', 'минута'],\n h: ['један Ñат', 'једног Ñата'],\n hh: ['Ñат', 'Ñата', 'Ñати'],\n d: ['један дан', 'једног дана'],\n dd: ['дан', 'дана', 'дана'],\n M: ['један меÑец', 'једног меÑеца'],\n MM: ['меÑец', 'меÑеца', 'меÑеци'],\n y: ['једну годину', 'једне године'],\n yy: ['годину', 'године', 'година'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n if (\n number % 10 >= 1 &&\n number % 10 <= 4 &&\n (number % 100 < 10 || number % 100 >= 20)\n ) {\n return number % 10 === 1 ? wordKey[0] : wordKey[1];\n }\n return wordKey[2];\n },\n translate: function (number, withoutSuffix, key, isFuture) {\n var wordKey = translator.words[key],\n word;\n\n if (key.length === 1) {\n // Nominativ\n if (key === 'y' && withoutSuffix) return 'једна година';\n return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];\n }\n\n word = translator.correctGrammaticalCase(number, wordKey);\n // Nominativ\n if (key === 'yy' && withoutSuffix && word === 'годину') {\n return number + ' година';\n }\n\n return number + ' ' + word;\n },\n };\n\n var srCyrl = moment.defineLocale('sr-cyrl', {\n months: 'јануар_фебруар_март_април_мај_јун_јул_авгуÑÑ‚_Ñептембар_октобар_новембар_децембар'.split(\n '_'\n ),\n monthsShort:\n 'јан._феб._мар._апр._мај_јун_јул_авг._Ñеп._окт._нов._дец.'.split('_'),\n monthsParseExact: true,\n weekdays: 'недеља_понедељак_уторак_Ñреда_четвртак_петак_Ñубота'.split('_'),\n weekdaysShort: 'нед._пон._уто._Ñре._чет._пет._Ñуб.'.split('_'),\n weekdaysMin: 'не_по_ут_ÑÑ€_че_пе_Ñу'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D. M. YYYY.',\n LL: 'D. MMMM YYYY.',\n LLL: 'D. MMMM YYYY. H:mm',\n LLLL: 'dddd, D. MMMM YYYY. H:mm',\n },\n calendar: {\n sameDay: '[Ð´Ð°Ð½Ð°Ñ Ñƒ] LT',\n nextDay: '[Ñутра у] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[у] [недељу] [у] LT';\n case 3:\n return '[у] [Ñреду] [у] LT';\n case 6:\n return '[у] [Ñуботу] [у] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[у] dddd [у] LT';\n }\n },\n lastDay: '[јуче у] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[прошле] [недеље] [у] LT',\n '[прошлог] [понедељка] [у] LT',\n '[прошлог] [уторка] [у] LT',\n '[прошле] [Ñреде] [у] LT',\n '[прошлог] [четвртка] [у] LT',\n '[прошлог] [петка] [у] LT',\n '[прошле] [Ñуботе] [у] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: 'пре %s',\n s: 'неколико Ñекунди',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: translator.translate,\n dd: translator.translate,\n M: translator.translate,\n MM: translator.translate,\n y: translator.translate,\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return srCyrl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Serbian [sr]\n//! author : Milan JanaÄković<milanjanackovic@gmail.com> : https://github.com/milan-j\n//! author : Stefan Crnjaković <stefan@hotmail.rs> : https://github.com/crnjakovic\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var translator = {\n words: {\n //Different grammatical cases\n ss: ['sekunda', 'sekunde', 'sekundi'],\n m: ['jedan minut', 'jednog minuta'],\n mm: ['minut', 'minuta', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n d: ['jedan dan', 'jednog dana'],\n dd: ['dan', 'dana', 'dana'],\n M: ['jedan mesec', 'jednog meseca'],\n MM: ['mesec', 'meseca', 'meseci'],\n y: ['jednu godinu', 'jedne godine'],\n yy: ['godinu', 'godine', 'godina'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n if (\n number % 10 >= 1 &&\n number % 10 <= 4 &&\n (number % 100 < 10 || number % 100 >= 20)\n ) {\n return number % 10 === 1 ? wordKey[0] : wordKey[1];\n }\n return wordKey[2];\n },\n translate: function (number, withoutSuffix, key, isFuture) {\n var wordKey = translator.words[key],\n word;\n\n if (key.length === 1) {\n // Nominativ\n if (key === 'y' && withoutSuffix) return 'jedna godina';\n return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];\n }\n\n word = translator.correctGrammaticalCase(number, wordKey);\n // Nominativ\n if (key === 'yy' && withoutSuffix && word === 'godinu') {\n return number + ' godina';\n }\n\n return number + ' ' + word;\n },\n };\n\n var sr = moment.defineLocale('sr', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort:\n 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),\n monthsParseExact: true,\n weekdays: 'nedelja_ponedeljak_utorak_sreda_Äetvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sre._Äet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_Äe_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D. M. YYYY.',\n LL: 'D. MMMM YYYY.',\n LLL: 'D. MMMM YYYY. H:mm',\n LLLL: 'dddd, D. MMMM YYYY. H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedelju] [u] LT';\n case 3:\n return '[u] [sredu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juÄe u] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[proÅ¡le] [nedelje] [u] LT',\n '[proÅ¡log] [ponedeljka] [u] LT',\n '[proÅ¡log] [utorka] [u] LT',\n '[proÅ¡le] [srede] [u] LT',\n '[proÅ¡log] [Äetvrtka] [u] LT',\n '[proÅ¡log] [petka] [u] LT',\n '[proÅ¡le] [subote] [u] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'pre %s',\n s: 'nekoliko sekundi',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: translator.translate,\n dd: translator.translate,\n M: translator.translate,\n MM: translator.translate,\n y: translator.translate,\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sr;\n\n})));\n","//! moment.js locale configuration\n//! locale : siSwati [ss]\n//! author : Nicolai Davies<mail@nicolai.io> : https://github.com/nicolaidavies\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ss = moment.defineLocale('ss', {\n months: \"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni\".split(\n '_'\n ),\n monthsShort: 'Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo'.split('_'),\n weekdays:\n 'Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo'.split(\n '_'\n ),\n weekdaysShort: 'Lis_Umb_Lsb_Les_Lsi_Lsh_Umg'.split('_'),\n weekdaysMin: 'Li_Us_Lb_Lt_Ls_Lh_Ug'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Namuhla nga] LT',\n nextDay: '[Kusasa nga] LT',\n nextWeek: 'dddd [nga] LT',\n lastDay: '[Itolo nga] LT',\n lastWeek: 'dddd [leliphelile] [nga] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'nga %s',\n past: 'wenteka nga %s',\n s: 'emizuzwana lomcane',\n ss: '%d mzuzwana',\n m: 'umzuzu',\n mm: '%d emizuzu',\n h: 'lihora',\n hh: '%d emahora',\n d: 'lilanga',\n dd: '%d emalanga',\n M: 'inyanga',\n MM: '%d tinyanga',\n y: 'umnyaka',\n yy: '%d iminyaka',\n },\n meridiemParse: /ekuseni|emini|entsambama|ebusuku/,\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'ekuseni';\n } else if (hours < 15) {\n return 'emini';\n } else if (hours < 19) {\n return 'entsambama';\n } else {\n return 'ebusuku';\n }\n },\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ekuseni') {\n return hour;\n } else if (meridiem === 'emini') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'entsambama' || meridiem === 'ebusuku') {\n if (hour === 0) {\n return 0;\n }\n return hour + 12;\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: '%d',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ss;\n\n})));\n","//! moment.js locale configuration\n//! locale : Swedish [sv]\n//! author : Jens Alm : https://github.com/ulmus\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sv = moment.defineLocale('sv', {\n months: 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays: 'söndag_mÃ¥ndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'),\n weekdaysShort: 'sön_mÃ¥n_tis_ons_tor_fre_lör'.split('_'),\n weekdaysMin: 'sö_mÃ¥_ti_on_to_fr_lö'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [kl.] HH:mm',\n LLLL: 'dddd D MMMM YYYY [kl.] HH:mm',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Idag] LT',\n nextDay: '[Imorgon] LT',\n lastDay: '[IgÃ¥r] LT',\n nextWeek: '[PÃ¥] dddd LT',\n lastWeek: '[I] dddd[s] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: 'för %s sedan',\n s: 'nÃ¥gra sekunder',\n ss: '%d sekunder',\n m: 'en minut',\n mm: '%d minuter',\n h: 'en timme',\n hh: '%d timmar',\n d: 'en dag',\n dd: '%d dagar',\n M: 'en mÃ¥nad',\n MM: '%d mÃ¥nader',\n y: 'ett Ã¥r',\n yy: '%d Ã¥r',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(\\:e|\\:a)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? ':e'\n : b === 1\n ? ':a'\n : b === 2\n ? ':a'\n : b === 3\n ? ':e'\n : ':e';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return sv;\n\n})));\n","//! moment.js locale configuration\n//! locale : Swahili [sw]\n//! author : Fahad Kassim : https://github.com/fadsel\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var sw = moment.defineLocale('sw', {\n months: 'Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des'.split('_'),\n weekdays:\n 'Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi'.split(\n '_'\n ),\n weekdaysShort: 'Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos'.split('_'),\n weekdaysMin: 'J2_J3_J4_J5_Al_Ij_J1'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'hh:mm A',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[leo saa] LT',\n nextDay: '[kesho saa] LT',\n nextWeek: '[wiki ijayo] dddd [saat] LT',\n lastDay: '[jana] LT',\n lastWeek: '[wiki iliyopita] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s baadaye',\n past: 'tokea %s',\n s: 'hivi punde',\n ss: 'sekunde %d',\n m: 'dakika moja',\n mm: 'dakika %d',\n h: 'saa limoja',\n hh: 'masaa %d',\n d: 'siku moja',\n dd: 'siku %d',\n M: 'mwezi mmoja',\n MM: 'miezi %d',\n y: 'mwaka mmoja',\n yy: 'miaka %d',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return sw;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tamil [ta]\n//! author : Arjunkumar Krishnamoorthy : https://github.com/tk120404\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var symbolMap = {\n 1: '௧',\n 2: '௨',\n 3: '௩',\n 4: '௪',\n 5: '௫',\n 6: '௬',\n 7: 'à¯',\n 8: '௮',\n 9: '௯',\n 0: '௦',\n },\n numberMap = {\n '௧': '1',\n '௨': '2',\n '௩': '3',\n '௪': '4',\n '௫': '5',\n '௬': '6',\n 'à¯': '7',\n '௮': '8',\n '௯': '9',\n '௦': '0',\n };\n\n var ta = moment.defineLocale('ta', {\n months: 'ஜனவரி_பிபà¯à®°à®µà®°à®¿_மாரà¯à®šà¯_à®à®ªà¯à®°à®²à¯_மே_ஜூனà¯_ஜூலை_ஆகஸà¯à®Ÿà¯_செபà¯à®Ÿà¯†à®®à¯à®ªà®°à¯_அகà¯à®Ÿà¯‡à®¾à®ªà®°à¯_நவமà¯à®ªà®°à¯_டிசமà¯à®ªà®°à¯'.split(\n '_'\n ),\n monthsShort:\n 'ஜனவரி_பிபà¯à®°à®µà®°à®¿_மாரà¯à®šà¯_à®à®ªà¯à®°à®²à¯_மே_ஜூனà¯_ஜூலை_ஆகஸà¯à®Ÿà¯_செபà¯à®Ÿà¯†à®®à¯à®ªà®°à¯_அகà¯à®Ÿà¯‡à®¾à®ªà®°à¯_நவமà¯à®ªà®°à¯_டிசமà¯à®ªà®°à¯'.split(\n '_'\n ),\n weekdays:\n 'ஞாயிறà¯à®±à¯à®•à¯à®•à®¿à®´à®®à¯ˆ_திஙà¯à®•à®Ÿà¯à®•à®¿à®´à®®à¯ˆ_செவà¯à®µà®¾à®¯à¯à®•à®¿à®´à®®à¯ˆ_பà¯à®¤à®©à¯à®•à®¿à®´à®®à¯ˆ_வியாழகà¯à®•à®¿à®´à®®à¯ˆ_வெளà¯à®³à®¿à®•à¯à®•à®¿à®´à®®à¯ˆ_சனிகà¯à®•à®¿à®´à®®à¯ˆ'.split(\n '_'\n ),\n weekdaysShort: 'ஞாயிறà¯_திஙà¯à®•à®³à¯_செவà¯à®µà®¾à®¯à¯_பà¯à®¤à®©à¯_வியாழனà¯_வெளà¯à®³à®¿_சனி'.split(\n '_'\n ),\n weekdaysMin: 'ஞா_தி_செ_பà¯_வி_வெ_ச'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, HH:mm',\n LLLL: 'dddd, D MMMM YYYY, HH:mm',\n },\n calendar: {\n sameDay: '[இனà¯à®±à¯] LT',\n nextDay: '[நாளை] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[நேறà¯à®±à¯] LT',\n lastWeek: '[கடநà¯à®¤ வாரமà¯] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s இலà¯',\n past: '%s à®®à¯à®©à¯',\n s: 'ஒர௠சில விநாடிகளà¯',\n ss: '%d விநாடிகளà¯',\n m: 'ஒர௠நிமிடமà¯',\n mm: '%d நிமிடஙà¯à®•à®³à¯',\n h: 'ஒர௠மணி நேரமà¯',\n hh: '%d மணி நேரமà¯',\n d: 'ஒர௠நாளà¯',\n dd: '%d நாடà¯à®•à®³à¯',\n M: 'ஒர௠மாதமà¯',\n MM: '%d மாதஙà¯à®•à®³à¯',\n y: 'ஒர௠வரà¯à®Ÿà®®à¯',\n yy: '%d ஆணà¯à®Ÿà¯à®•à®³à¯',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}வதà¯/,\n ordinal: function (number) {\n return number + 'வதà¯';\n },\n preparse: function (string) {\n return string.replace(/[௧௨௩௪௫௬à¯à¯®à¯¯à¯¦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // refer http://ta.wikipedia.org/s/1er1\n meridiemParse: /யாமமà¯|வைகறை|காலை|நணà¯à®ªà®•à®²à¯|எறà¯à®ªà®¾à®Ÿà¯|மாலை/,\n meridiem: function (hour, minute, isLower) {\n if (hour < 2) {\n return ' யாமமà¯';\n } else if (hour < 6) {\n return ' வைகறை'; // வைகறை\n } else if (hour < 10) {\n return ' காலை'; // காலை\n } else if (hour < 14) {\n return ' நணà¯à®ªà®•à®²à¯'; // நணà¯à®ªà®•à®²à¯\n } else if (hour < 18) {\n return ' எறà¯à®ªà®¾à®Ÿà¯'; // எறà¯à®ªà®¾à®Ÿà¯\n } else if (hour < 22) {\n return ' மாலை'; // மாலை\n } else {\n return ' யாமமà¯';\n }\n },\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'யாமமà¯') {\n return hour < 2 ? hour : hour + 12;\n } else if (meridiem === 'வைகறை' || meridiem === 'காலை') {\n return hour;\n } else if (meridiem === 'நணà¯à®ªà®•à®²à¯') {\n return hour >= 10 ? hour : hour + 12;\n } else {\n return hour + 12;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return ta;\n\n})));\n","//! moment.js locale configuration\n//! locale : Telugu [te]\n//! author : Krishna Chaitanya Thota : https://github.com/kcthota\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var te = moment.defineLocale('te', {\n months: 'జనవరి_à°«à°¿à°¬à±à°°à°µà°°à°¿_మారà±à°šà°¿_à°à°ªà±à°°à°¿à°²à±_మే_జూనà±_à°œà±à°²à±ˆ_ఆగసà±à°Ÿà±_సెపà±à°Ÿà±†à°‚బరà±_à°…à°•à±à°Ÿà±‹à°¬à°°à±_నవంబరà±_డిసెంబరà±'.split(\n '_'\n ),\n monthsShort:\n 'జన._à°«à°¿à°¬à±à°°._మారà±à°šà°¿_à°à°ªà±à°°à°¿._మే_జూనà±_à°œà±à°²à±ˆ_ఆగ._సెపà±._à°…à°•à±à°Ÿà±‹._నవ._డిసె.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'ఆదివారం_సోమవారం_మంగళవారం_à°¬à±à°§à°µà°¾à°°à°‚_à°—à±à°°à±à°µà°¾à°°à°‚_à°¶à±à°•à±à°°à°µà°¾à°°à°‚_శనివారం'.split(\n '_'\n ),\n weekdaysShort: 'ఆది_సోమ_మంగళ_à°¬à±à°§_à°—à±à°°à±_à°¶à±à°•à±à°°_శని'.split('_'),\n weekdaysMin: 'à°†_సో_మం_à°¬à±_à°—à±_à°¶à±_à°¶'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[నేడà±] LT',\n nextDay: '[రేపà±] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[నినà±à°¨] LT',\n lastWeek: '[à°—à°¤] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s లో',\n past: '%s à°•à±à°°à°¿à°¤à°‚',\n s: 'కొనà±à°¨à°¿ à°•à±à°·à°£à°¾à°²à±',\n ss: '%d సెకనà±à°²à±',\n m: 'à°’à°• నిమిషం',\n mm: '%d నిమిషాలà±',\n h: 'à°’à°• à°—à°‚à°Ÿ',\n hh: '%d à°—à°‚à°Ÿà°²à±',\n d: 'à°’à°• రోజà±',\n dd: '%d రోజà±à°²à±',\n M: 'à°’à°• నెల',\n MM: '%d నెలలà±',\n y: 'à°’à°• సంవతà±à°¸à°°à°‚',\n yy: '%d సంవతà±à°¸à°°à°¾à°²à±',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}à°µ/,\n ordinal: '%dà°µ',\n meridiemParse: /రాతà±à°°à°¿|ఉదయం|మధà±à°¯à°¾à°¹à±à°¨à°‚|సాయంతà±à°°à°‚/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'రాతà±à°°à°¿') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ఉదయం') {\n return hour;\n } else if (meridiem === 'మధà±à°¯à°¾à°¹à±à°¨à°‚') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'సాయంతà±à°°à°‚') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'రాతà±à°°à°¿';\n } else if (hour < 10) {\n return 'ఉదయం';\n } else if (hour < 17) {\n return 'మధà±à°¯à°¾à°¹à±à°¨à°‚';\n } else if (hour < 20) {\n return 'సాయంతà±à°°à°‚';\n } else {\n return 'రాతà±à°°à°¿';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n });\n\n return te;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tetun Dili (East Timor) [tet]\n//! author : Joshua Brooks : https://github.com/joshbrooks\n//! author : Onorio De J. Afonso : https://github.com/marobo\n//! author : Sonia Simoes : https://github.com/soniasimoes\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tet = moment.defineLocale('tet', {\n months: 'Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru'.split(\n '_'\n ),\n monthsShort: 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),\n weekdays: 'Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu'.split('_'),\n weekdaysShort: 'Dom_Seg_Ters_Kua_Kint_Sest_Sab'.split('_'),\n weekdaysMin: 'Do_Seg_Te_Ku_Ki_Ses_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Ohin iha] LT',\n nextDay: '[Aban iha] LT',\n nextWeek: 'dddd [iha] LT',\n lastDay: '[Horiseik iha] LT',\n lastWeek: 'dddd [semana kotuk] [iha] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'iha %s',\n past: '%s liuba',\n s: 'segundu balun',\n ss: 'segundu %d',\n m: 'minutu ida',\n mm: 'minutu %d',\n h: 'oras ida',\n hh: 'oras %d',\n d: 'loron ida',\n dd: 'loron %d',\n M: 'fulan ida',\n MM: 'fulan %d',\n y: 'tinan ida',\n yy: 'tinan %d',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tet;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tajik [tg]\n//! author : Orif N. Jr. : https://github.com/orif-jr\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 0: '-ум',\n 1: '-ум',\n 2: '-юм',\n 3: '-юм',\n 4: '-ум',\n 5: '-ум',\n 6: '-ум',\n 7: '-ум',\n 8: '-ум',\n 9: '-ум',\n 10: '-ум',\n 12: '-ум',\n 13: '-ум',\n 20: '-ум',\n 30: '-юм',\n 40: '-ум',\n 50: '-ум',\n 60: '-ум',\n 70: '-ум',\n 80: '-ум',\n 90: '-ум',\n 100: '-ум',\n };\n\n var tg = moment.defineLocale('tg', {\n months: {\n format: 'Ñнвари_феврали_марти_апрели_майи_июни_июли_авгуÑти_ÑентÑбри_октÑбри_ноÑбри_декабри'.split(\n '_'\n ),\n standalone:\n 'Ñнвар_феврал_март_апрел_май_июн_июл_авгуÑÑ‚_ÑентÑбр_октÑбр_ноÑбр_декабр'.split(\n '_'\n ),\n },\n monthsShort: 'Ñнв_фев_мар_апр_май_июн_июл_авг_Ñен_окт_ноÑ_дек'.split('_'),\n weekdays: 'Ñкшанбе_душанбе_Ñешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе'.split(\n '_'\n ),\n weekdaysShort: 'Ñшб_дшб_Ñшб_чшб_пшб_ҷум_шнб'.split('_'),\n weekdaysMin: 'Ñш_дш_Ñш_чш_пш_ҷм_шб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Имрӯз Ñоати] LT',\n nextDay: '[Фардо Ñоати] LT',\n lastDay: '[Дирӯз Ñоати] LT',\n nextWeek: 'dddd[и] [ҳафтаи оÑнда Ñоати] LT',\n lastWeek: 'dddd[и] [ҳафтаи гузашта Ñоати] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'баъди %s',\n past: '%s пеш',\n s: 'Ñкчанд ÑониÑ',\n m: 'Ñк дақиқа',\n mm: '%d дақиқа',\n h: 'Ñк Ñоат',\n hh: '%d Ñоат',\n d: 'Ñк рӯз',\n dd: '%d рӯз',\n M: 'Ñк моҳ',\n MM: '%d моҳ',\n y: 'Ñк Ñол',\n yy: '%d Ñол',\n },\n meridiemParse: /шаб|Ñубҳ|рӯз|бегоҳ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'шаб') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'Ñубҳ') {\n return hour;\n } else if (meridiem === 'рӯз') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'бегоҳ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'шаб';\n } else if (hour < 11) {\n return 'Ñубҳ';\n } else if (hour < 16) {\n return 'рӯз';\n } else if (hour < 19) {\n return 'бегоҳ';\n } else {\n return 'шаб';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ум|юм)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1th is the first week of the year.\n },\n });\n\n return tg;\n\n})));\n","//! moment.js locale configuration\n//! locale : Thai [th]\n//! author : Kridsada Thanabulpong : https://github.com/sirn\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var th = moment.defineLocale('th', {\n months: 'มà¸à¸£à¸²à¸„ม_à¸à¸¸à¸¡à¸ าพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_à¸à¸£à¸à¸Žà¸²à¸„ม_สิงหาคม_à¸à¸±à¸™à¸¢à¸²à¸¢à¸™_ตุลาคม_พฤศจิà¸à¸²à¸¢à¸™_ธันวาคม'.split(\n '_'\n ),\n monthsShort:\n 'ม.ค._à¸.พ._มี.ค._เม.ย._พ.ค._มิ.ย._à¸.ค._ส.ค._à¸.ย._ต.ค._พ.ย._ธ.ค.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'à¸à¸²à¸—ิตย์_จันทร์_à¸à¸±à¸‡à¸„าร_พุธ_พฤหัสบดี_ศุà¸à¸£à¹Œ_เสาร์'.split('_'),\n weekdaysShort: 'à¸à¸²à¸—ิตย์_จันทร์_à¸à¸±à¸‡à¸„าร_พุธ_พฤหัส_ศุà¸à¸£à¹Œ_เสาร์'.split('_'), // yes, three characters difference\n weekdaysMin: 'à¸à¸²._จ._à¸._พ._พฤ._ศ._ส.'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY เวลา H:mm',\n LLLL: 'วันddddที่ D MMMM YYYY เวลา H:mm',\n },\n meridiemParse: /à¸à¹ˆà¸à¸™à¹€à¸—ี่ยง|หลังเที่ยง/,\n isPM: function (input) {\n return input === 'หลังเที่ยง';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'à¸à¹ˆà¸à¸™à¹€à¸—ี่ยง';\n } else {\n return 'หลังเที่ยง';\n }\n },\n calendar: {\n sameDay: '[วันนี้ เวลา] LT',\n nextDay: '[พรุ่งนี้ เวลา] LT',\n nextWeek: 'dddd[หน้า เวลา] LT',\n lastDay: '[เมื่à¸à¸§à¸²à¸™à¸™à¸µà¹‰ เวลา] LT',\n lastWeek: '[วัน]dddd[ที่à¹à¸¥à¹‰à¸§ เวลา] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'à¸à¸µà¸ %s',\n past: '%sที่à¹à¸¥à¹‰à¸§',\n s: 'ไม่à¸à¸µà¹ˆà¸§à¸´à¸™à¸²à¸—ี',\n ss: '%d วินาที',\n m: '1 นาที',\n mm: '%d นาที',\n h: '1 ชั่วโมง',\n hh: '%d ชั่วโมง',\n d: '1 วัน',\n dd: '%d วัน',\n w: '1 สัปดาห์',\n ww: '%d สัปดาห์',\n M: '1 เดืà¸à¸™',\n MM: '%d เดืà¸à¸™',\n y: '1 ปี',\n yy: '%d ปี',\n },\n });\n\n return th;\n\n})));\n","//! moment.js locale configuration\n//! locale : Turkmen [tk]\n//! author : Atamyrat Abdyrahmanov : https://github.com/atamyratabdy\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: \"'inji\",\n 5: \"'inji\",\n 8: \"'inji\",\n 70: \"'inji\",\n 80: \"'inji\",\n 2: \"'nji\",\n 7: \"'nji\",\n 20: \"'nji\",\n 50: \"'nji\",\n 3: \"'ünji\",\n 4: \"'ünji\",\n 100: \"'ünji\",\n 6: \"'njy\",\n 9: \"'unjy\",\n 10: \"'unjy\",\n 30: \"'unjy\",\n 60: \"'ynjy\",\n 90: \"'ynjy\",\n };\n\n var tk = moment.defineLocale('tk', {\n months: 'Ãanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr'.split(\n '_'\n ),\n monthsShort: 'Ãan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek'.split('_'),\n weekdays: 'ÃekÅŸenbe_DuÅŸenbe_SiÅŸenbe_ÇarÅŸenbe_PenÅŸenbe_Anna_Åženbe'.split(\n '_'\n ),\n weekdaysShort: 'Ãek_DuÅŸ_SiÅŸ_Çar_Pen_Ann_Åžen'.split('_'),\n weekdaysMin: 'Ãk_DÅŸ_SÅŸ_Çr_Pn_An_Åžn'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün sagat] LT',\n nextDay: '[ertir sagat] LT',\n nextWeek: '[indiki] dddd [sagat] LT',\n lastDay: '[düýn] LT',\n lastWeek: '[geçen] dddd [sagat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s soň',\n past: '%s öň',\n s: 'birnäçe sekunt',\n m: 'bir minut',\n mm: '%d minut',\n h: 'bir sagat',\n hh: '%d sagat',\n d: 'bir gün',\n dd: '%d gün',\n M: 'bir aý',\n MM: '%d aý',\n y: 'bir ýyl',\n yy: '%d ýyl',\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) {\n // special case for zero\n return number + \"'unjy\";\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return tk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Tagalog (Philippines) [tl-ph]\n//! author : Dan Hagman : https://github.com/hagmandan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tlPh = moment.defineLocale('tl-ph', {\n months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split(\n '_'\n ),\n monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split(\n '_'\n ),\n weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'MM/D/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY HH:mm',\n LLLL: 'dddd, MMMM DD, YYYY HH:mm',\n },\n calendar: {\n sameDay: 'LT [ngayong araw]',\n nextDay: '[Bukas ng] LT',\n nextWeek: 'LT [sa susunod na] dddd',\n lastDay: 'LT [kahapon]',\n lastWeek: 'LT [noong nakaraang] dddd',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'sa loob ng %s',\n past: '%s ang nakalipas',\n s: 'ilang segundo',\n ss: '%d segundo',\n m: 'isang minuto',\n mm: '%d minuto',\n h: 'isang oras',\n hh: '%d oras',\n d: 'isang araw',\n dd: '%d araw',\n M: 'isang buwan',\n MM: '%d buwan',\n y: 'isang taon',\n yy: '%d taon',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tlPh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Klingon [tlh]\n//! author : Dominika Kruk : https://github.com/amaranthrose\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var numbersNouns = 'pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut'.split('_');\n\n function translateFuture(output) {\n var time = output;\n time =\n output.indexOf('jaj') !== -1\n ? time.slice(0, -3) + 'leS'\n : output.indexOf('jar') !== -1\n ? time.slice(0, -3) + 'waQ'\n : output.indexOf('DIS') !== -1\n ? time.slice(0, -3) + 'nem'\n : time + ' pIq';\n return time;\n }\n\n function translatePast(output) {\n var time = output;\n time =\n output.indexOf('jaj') !== -1\n ? time.slice(0, -3) + 'Hu’'\n : output.indexOf('jar') !== -1\n ? time.slice(0, -3) + 'wen'\n : output.indexOf('DIS') !== -1\n ? time.slice(0, -3) + 'ben'\n : time + ' ret';\n return time;\n }\n\n function translate(number, withoutSuffix, string, isFuture) {\n var numberNoun = numberAsNoun(number);\n switch (string) {\n case 'ss':\n return numberNoun + ' lup';\n case 'mm':\n return numberNoun + ' tup';\n case 'hh':\n return numberNoun + ' rep';\n case 'dd':\n return numberNoun + ' jaj';\n case 'MM':\n return numberNoun + ' jar';\n case 'yy':\n return numberNoun + ' DIS';\n }\n }\n\n function numberAsNoun(number) {\n var hundred = Math.floor((number % 1000) / 100),\n ten = Math.floor((number % 100) / 10),\n one = number % 10,\n word = '';\n if (hundred > 0) {\n word += numbersNouns[hundred] + 'vatlh';\n }\n if (ten > 0) {\n word += (word !== '' ? ' ' : '') + numbersNouns[ten] + 'maH';\n }\n if (one > 0) {\n word += (word !== '' ? ' ' : '') + numbersNouns[one];\n }\n return word === '' ? 'pagh' : word;\n }\n\n var tlh = moment.defineLocale('tlh', {\n months: 'tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’'.split(\n '_'\n ),\n monthsShort:\n 'jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split(\n '_'\n ),\n weekdaysShort:\n 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n weekdaysMin:\n 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[DaHjaj] LT',\n nextDay: '[wa’leS] LT',\n nextWeek: 'LLL',\n lastDay: '[wa’Hu’] LT',\n lastWeek: 'LLL',\n sameElse: 'L',\n },\n relativeTime: {\n future: translateFuture,\n past: translatePast,\n s: 'puS lup',\n ss: translate,\n m: 'wa’ tup',\n mm: translate,\n h: 'wa’ rep',\n hh: translate,\n d: 'wa’ jaj',\n dd: translate,\n M: 'wa’ jar',\n MM: translate,\n y: 'wa’ DIS',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return tlh;\n\n})));\n","//! moment.js locale configuration\n//! locale : Turkish [tr]\n//! authors : Erhan Gundogan : https://github.com/erhangundogan,\n//! Burak YiÄŸit Kaya: https://github.com/BYK\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var suffixes = {\n 1: \"'inci\",\n 5: \"'inci\",\n 8: \"'inci\",\n 70: \"'inci\",\n 80: \"'inci\",\n 2: \"'nci\",\n 7: \"'nci\",\n 20: \"'nci\",\n 50: \"'nci\",\n 3: \"'üncü\",\n 4: \"'üncü\",\n 100: \"'üncü\",\n 6: \"'ncı\",\n 9: \"'uncu\",\n 10: \"'uncu\",\n 30: \"'uncu\",\n 60: \"'ıncı\",\n 90: \"'ıncı\",\n };\n\n var tr = moment.defineLocale('tr', {\n months: 'Ocak_Åžubat_Mart_Nisan_Mayıs_Haziran_Temmuz_AÄŸustos_Eylül_Ekim_Kasım_Aralık'.split(\n '_'\n ),\n monthsShort: 'Oca_Åžub_Mar_Nis_May_Haz_Tem_AÄŸu_Eyl_Eki_Kas_Ara'.split('_'),\n weekdays: 'Pazar_Pazartesi_Salı_ÇarÅŸamba_PerÅŸembe_Cuma_Cumartesi'.split(\n '_'\n ),\n weekdaysShort: 'Paz_Pzt_Sal_Çar_Per_Cum_Cmt'.split('_'),\n weekdaysMin: 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'),\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'öö' : 'ÖÖ';\n } else {\n return isLower ? 'ös' : 'ÖS';\n }\n },\n meridiemParse: /öö|ÖÖ|ös|ÖS/,\n isPM: function (input) {\n return input === 'ös' || input === 'ÖS';\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün saat] LT',\n nextDay: '[yarın saat] LT',\n nextWeek: '[gelecek] dddd [saat] LT',\n lastDay: '[dün] LT',\n lastWeek: '[geçen] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s sonra',\n past: '%s önce',\n s: 'birkaç saniye',\n ss: '%d saniye',\n m: 'bir dakika',\n mm: '%d dakika',\n h: 'bir saat',\n hh: '%d saat',\n d: 'bir gün',\n dd: '%d gün',\n w: 'bir hafta',\n ww: '%d hafta',\n M: 'bir ay',\n MM: '%d ay',\n y: 'bir yıl',\n yy: '%d yıl',\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) {\n // special case for zero\n return number + \"'ıncı\";\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return tr;\n\n})));\n","//! moment.js locale configuration\n//! locale : Talossan [tzl]\n//! author : Robin van der Vliet : https://github.com/robin0van0der0v\n//! author : Iustì Canun\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n // After the year there should be a slash and the amount of years since December 26, 1979 in Roman numerals.\n // This is currently too difficult (maybe even impossible) to add.\n var tzl = moment.defineLocale('tzl', {\n months: 'Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar'.split(\n '_'\n ),\n monthsShort: 'Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec'.split('_'),\n weekdays: 'Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi'.split('_'),\n weekdaysShort: 'Súl_Lún_Mai_Már_Xhú_Vié_Sát'.split('_'),\n weekdaysMin: 'Sú_Lú_Ma_Má_Xh_Vi_Sá'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM [dallas] YYYY',\n LLL: 'D. MMMM [dallas] YYYY HH.mm',\n LLLL: 'dddd, [li] D. MMMM [dallas] YYYY HH.mm',\n },\n meridiemParse: /d\\'o|d\\'a/i,\n isPM: function (input) {\n return \"d'o\" === input.toLowerCase();\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? \"d'o\" : \"D'O\";\n } else {\n return isLower ? \"d'a\" : \"D'A\";\n }\n },\n calendar: {\n sameDay: '[oxhi à ] LT',\n nextDay: '[demà à ] LT',\n nextWeek: 'dddd [à ] LT',\n lastDay: '[ieiri à ] LT',\n lastWeek: '[sür el] dddd [lasteu à ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'osprei %s',\n past: 'ja%s',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n function processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['viensas secunds', \"'iensas secunds\"],\n ss: [number + ' secunds', '' + number + ' secunds'],\n m: [\"'n mÃut\", \"'iens mÃut\"],\n mm: [number + ' mÃuts', '' + number + ' mÃuts'],\n h: [\"'n þora\", \"'iensa þora\"],\n hh: [number + ' þoras', '' + number + ' þoras'],\n d: [\"'n ziua\", \"'iensa ziua\"],\n dd: [number + ' ziuas', '' + number + ' ziuas'],\n M: [\"'n mes\", \"'iens mes\"],\n MM: [number + ' mesen', '' + number + ' mesen'],\n y: [\"'n ar\", \"'iens ar\"],\n yy: [number + ' ars', '' + number + ' ars'],\n };\n return isFuture\n ? format[key][0]\n : withoutSuffix\n ? format[key][0]\n : format[key][1];\n }\n\n return tzl;\n\n})));\n","//! moment.js locale configuration\n//! locale : Central Atlas Tamazight Latin [tzm-latn]\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tzmLatn = moment.defineLocale('tzm-latn', {\n months: 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_É£wÅ¡t_Å¡wtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split(\n '_'\n ),\n monthsShort:\n 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_É£wÅ¡t_Å¡wtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split(\n '_'\n ),\n weekdays: 'asamas_aynas_asinas_akras_akwas_asimwas_asiá¸yas'.split('_'),\n weekdaysShort: 'asamas_aynas_asinas_akras_akwas_asimwas_asiá¸yas'.split('_'),\n weekdaysMin: 'asamas_aynas_asinas_akras_akwas_asimwas_asiá¸yas'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[asdkh g] LT',\n nextDay: '[aska g] LT',\n nextWeek: 'dddd [g] LT',\n lastDay: '[assant g] LT',\n lastWeek: 'dddd [g] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dadkh s yan %s',\n past: 'yan %s',\n s: 'imik',\n ss: '%d imik',\n m: 'minuá¸',\n mm: '%d minuá¸',\n h: 'saÉ›a',\n hh: '%d tassaÉ›in',\n d: 'ass',\n dd: '%d ossan',\n M: 'ayowr',\n MM: '%d iyyirn',\n y: 'asgas',\n yy: '%d isgasn',\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return tzmLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Central Atlas Tamazight [tzm]\n//! author : Abdel Said : https://github.com/abdelsaid\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var tzm = moment.defineLocale('tzm', {\n months: 'ⵉâµâµâ´°âµ¢âµ”_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓâµâµ¢âµ“_ⵢⵓâµâµ¢âµ“âµ£_ⵖⵓⵛⵜ_ⵛⵓⵜⴰâµâ´±âµ‰âµ”_ⴽⵟⵓⴱⵕ_âµâµ“ⵡⴰâµâ´±âµ‰âµ”_ⴷⵓⵊâµâ´±âµ‰âµ”'.split(\n '_'\n ),\n monthsShort:\n 'ⵉâµâµâ´°âµ¢âµ”_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓâµâµ¢âµ“_ⵢⵓâµâµ¢âµ“âµ£_ⵖⵓⵛⵜ_ⵛⵓⵜⴰâµâ´±âµ‰âµ”_ⴽⵟⵓⴱⵕ_âµâµ“ⵡⴰâµâ´±âµ‰âµ”_ⴷⵓⵊâµâ´±âµ‰âµ”'.split(\n '_'\n ),\n weekdays: 'ⴰⵙⴰⵎⴰⵙ_â´°âµ¢âµâ´°âµ™_ⴰⵙⵉâµâ´°âµ™_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysShort: 'ⴰⵙⴰⵎⴰⵙ_â´°âµ¢âµâ´°âµ™_ⴰⵙⵉâµâ´°âµ™_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysMin: 'ⴰⵙⴰⵎⴰⵙ_â´°âµ¢âµâ´°âµ™_ⴰⵙⵉâµâ´°âµ™_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[ⴰⵙⴷⵅ â´´] LT',\n nextDay: '[ⴰⵙⴽⴰ â´´] LT',\n nextWeek: 'dddd [â´´] LT',\n lastDay: '[ⴰⵚⴰâµâµœ â´´] LT',\n lastWeek: 'dddd [â´´] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'â´·â´°â´·âµ… âµ™ ⵢⴰⵠ%s',\n past: 'ⵢⴰⵠ%s',\n s: 'ⵉⵎⵉⴽ',\n ss: '%d ⵉⵎⵉⴽ',\n m: 'ⵎⵉâµâµ“â´º',\n mm: '%d ⵎⵉâµâµ“â´º',\n h: 'ⵙⴰⵄⴰ',\n hh: '%d ⵜⴰⵙⵙⴰⵄⵉâµ',\n d: 'ⴰⵙⵙ',\n dd: '%d oⵙⵙⴰâµ',\n M: 'â´°âµ¢oⵓⵔ',\n MM: '%d ⵉⵢⵢⵉⵔâµ',\n y: 'ⴰⵙⴳⴰⵙ',\n yy: '%d ⵉⵙⴳⴰⵙâµ',\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n });\n\n return tzm;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uyghur (China) [ug-cn]\n//! author: boyaq : https://github.com/boyaq\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var ugCn = moment.defineLocale('ug-cn', {\n months: 'يانۋار_ÙÛۋرال_مارت_ئاپرÛÙ„_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سÛنتەبىر_ئۆكتەبىر_نويابىر_دÛكابىر'.split(\n '_'\n ),\n monthsShort:\n 'يانۋار_ÙÛۋرال_مارت_ئاپرÛÙ„_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سÛنتەبىر_ئۆكتەبىر_نويابىر_دÛكابىر'.split(\n '_'\n ),\n weekdays: 'يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە'.split(\n '_'\n ),\n weekdaysShort: 'ÙŠÛ•_دۈ_سە_چا_Ù¾Û•_جۈ_Ø´Û•'.split('_'),\n weekdaysMin: 'ÙŠÛ•_دۈ_سە_چا_Ù¾Û•_جۈ_Ø´Û•'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY-يىلىM-ئاينىÚD-كۈنى',\n LLL: 'YYYY-يىلىM-ئاينىÚD-كۈنى، HH:mm',\n LLLL: 'ddddØŒ YYYY-يىلىM-ئاينىÚD-كۈنى، HH:mm',\n },\n meridiemParse: /ÙŠÛرىم ÙƒÛÚ†Û•|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن ÙƒÛيىن|ÙƒÛ•Ú†/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n meridiem === 'ÙŠÛرىم ÙƒÛÚ†Û•' ||\n meridiem === 'سەھەر' ||\n meridiem === 'چۈشتىن بۇرۇن'\n ) {\n return hour;\n } else if (meridiem === 'چۈشتىن ÙƒÛيىن' || meridiem === 'ÙƒÛ•Ú†') {\n return hour + 12;\n } else {\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return 'ÙŠÛرىم ÙƒÛÚ†Û•';\n } else if (hm < 900) {\n return 'سەھەر';\n } else if (hm < 1130) {\n return 'چۈشتىن بۇرۇن';\n } else if (hm < 1230) {\n return 'چۈش';\n } else if (hm < 1800) {\n return 'چۈشتىن ÙƒÛيىن';\n } else {\n return 'ÙƒÛ•Ú†';\n }\n },\n calendar: {\n sameDay: '[بۈگۈن سائەت] LT',\n nextDay: '[ئەتە سائەت] LT',\n nextWeek: '[ÙƒÛلەركى] dddd [سائەت] LT',\n lastDay: '[تۆنۈگۈن] LT',\n lastWeek: '[ئالدىنقى] dddd [سائەت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ÙƒÛيىن',\n past: '%s بۇرۇن',\n s: 'Ù†Û•Ú†Ú†Û• سÛكونت',\n ss: '%d سÛكونت',\n m: 'بىر مىنۇت',\n mm: '%d مىنۇت',\n h: 'بىر سائەت',\n hh: '%d سائەت',\n d: 'بىر ÙƒÛˆÙ†',\n dd: '%d ÙƒÛˆÙ†',\n M: 'بىر ئاي',\n MM: '%d ئاي',\n y: 'بىر يىل',\n yy: '%d يىل',\n },\n\n dayOfMonthOrdinalParse: /\\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '-كۈنى';\n case 'w':\n case 'W':\n return number + '-ھەپتە';\n default:\n return number;\n }\n },\n preparse: function (string) {\n return string.replace(/ØŒ/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, 'ØŒ');\n },\n week: {\n // GB/T 7408-1994《数æ®å…ƒå’Œäº¤æ¢æ ¼å¼Â·ä¿¡æ¯äº¤æ¢Â·æ—¥æœŸå’Œæ—¶é—´è¡¨ç¤ºæ³•ã€‹ä¸ŽISO 8601:1988ç‰æ•ˆ\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1st is the first week of the year.\n },\n });\n\n return ugCn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Ukrainian [uk]\n//! author : zemlanin : https://github.com/zemlanin\n//! Author : Menelion Elensúle : https://github.com/Oire\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n function plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n }\n function relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'Ñекунда_Ñекунди_Ñекунд' : 'Ñекунду_Ñекунди_Ñекунд',\n mm: withoutSuffix ? 'хвилина_хвилини_хвилин' : 'хвилину_хвилини_хвилин',\n hh: withoutSuffix ? 'година_години_годин' : 'годину_години_годин',\n dd: 'день_дні_днів',\n MM: 'міÑÑць_міÑÑці_міÑÑців',\n yy: 'рік_роки_років',\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвилина' : 'хвилину';\n } else if (key === 'h') {\n return withoutSuffix ? 'година' : 'годину';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n }\n function weekdaysCaseReplace(m, format) {\n var weekdays = {\n nominative:\n 'неділÑ_понеділок_вівторок_Ñереда_четвер_п’ÑтницÑ_Ñубота'.split(\n '_'\n ),\n accusative:\n 'неділю_понеділок_вівторок_Ñереду_четвер_п’Ñтницю_Ñуботу'.split(\n '_'\n ),\n genitive:\n 'неділі_понеділка_вівторка_Ñереди_четверга_п’Ñтниці_Ñуботи'.split(\n '_'\n ),\n },\n nounCase;\n\n if (m === true) {\n return weekdays['nominative']\n .slice(1, 7)\n .concat(weekdays['nominative'].slice(0, 1));\n }\n if (!m) {\n return weekdays['nominative'];\n }\n\n nounCase = /(\\[[ВвУу]\\]) ?dddd/.test(format)\n ? 'accusative'\n : /\\[?(?:минулої|наÑтупної)? ?\\] ?dddd/.test(format)\n ? 'genitive'\n : 'nominative';\n return weekdays[nounCase][m.day()];\n }\n function processHoursFunction(str) {\n return function () {\n return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT';\n };\n }\n\n var uk = moment.defineLocale('uk', {\n months: {\n format: 'ÑічнÑ_лютого_березнÑ_квітнÑ_травнÑ_червнÑ_липнÑ_ÑерпнÑ_вереÑнÑ_жовтнÑ_лиÑтопада_груднÑ'.split(\n '_'\n ),\n standalone:\n 'Ñічень_лютий_березень_квітень_травень_червень_липень_Ñерпень_вереÑень_жовтень_лиÑтопад_грудень'.split(\n '_'\n ),\n },\n monthsShort: 'Ñіч_лют_бер_квіт_трав_черв_лип_Ñерп_вер_жовт_лиÑÑ‚_груд'.split(\n '_'\n ),\n weekdays: weekdaysCaseReplace,\n weekdaysShort: 'нд_пн_вт_ÑÑ€_чт_пт_Ñб'.split('_'),\n weekdaysMin: 'нд_пн_вт_ÑÑ€_чт_пт_Ñб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY Ñ€.',\n LLL: 'D MMMM YYYY Ñ€., HH:mm',\n LLLL: 'dddd, D MMMM YYYY Ñ€., HH:mm',\n },\n calendar: {\n sameDay: processHoursFunction('[Сьогодні '),\n nextDay: processHoursFunction('[Завтра '),\n lastDay: processHoursFunction('[Вчора '),\n nextWeek: processHoursFunction('[У] dddd ['),\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return processHoursFunction('[Минулої] dddd [').call(this);\n case 1:\n case 2:\n case 4:\n return processHoursFunction('[Минулого] dddd [').call(this);\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: '%s тому',\n s: 'декілька Ñекунд',\n ss: relativeTimeWithPlural,\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: 'годину',\n hh: relativeTimeWithPlural,\n d: 'день',\n dd: relativeTimeWithPlural,\n M: 'міÑÑць',\n MM: relativeTimeWithPlural,\n y: 'рік',\n yy: relativeTimeWithPlural,\n },\n // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason\n meridiemParse: /ночі|ранку|днÑ|вечора/,\n isPM: function (input) {\n return /^(днÑ|вечора)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночі';\n } else if (hour < 12) {\n return 'ранку';\n } else if (hour < 17) {\n return 'днÑ';\n } else {\n return 'вечора';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return number + '-й';\n case 'D':\n return number + '-го';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return uk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Urdu [ur]\n//! author : Sawood Alam : https://github.com/ibnesayeed\n//! author : Zack : https://github.com/ZackVision\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var months = [\n 'جنوری',\n 'Ùروری',\n 'مارچ',\n 'اپریل',\n 'مئی',\n 'جون',\n 'جولائی',\n 'اگست',\n 'ستمبر',\n 'اکتوبر',\n 'نومبر',\n 'دسمبر',\n ],\n days = ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعÛ', 'ÛÙتÛ'];\n\n var ur = moment.defineLocale('ur', {\n months: months,\n monthsShort: months,\n weekdays: days,\n weekdaysShort: days,\n weekdaysMin: days,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'ddddØŒ D MMMM YYYY HH:mm',\n },\n meridiemParse: /صبØ|شام/,\n isPM: function (input) {\n return 'شام' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبØ';\n }\n return 'شام';\n },\n calendar: {\n sameDay: '[آج بوقت] LT',\n nextDay: '[Ú©Ù„ بوقت] LT',\n nextWeek: 'dddd [بوقت] LT',\n lastDay: '[Ú¯Ø°Ø´ØªÛ Ø±ÙˆØ² بوقت] LT',\n lastWeek: '[گذشتÛ] dddd [بوقت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s بعد',\n past: '%s قبل',\n s: 'چند سیکنڈ',\n ss: '%d سیکنڈ',\n m: 'ایک منٹ',\n mm: '%d منٹ',\n h: 'ایک گھنٹÛ',\n hh: '%d گھنٹے',\n d: 'ایک دن',\n dd: '%d دن',\n M: 'ایک ماÛ',\n MM: '%d ماÛ',\n y: 'ایک سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string.replace(/ØŒ/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, 'ØŒ');\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return ur;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uzbek Latin [uz-latn]\n//! author : Rasulbek Mirzayev : github.com/Rasulbeeek\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var uzLatn = moment.defineLocale('uz-latn', {\n months: 'Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr'.split(\n '_'\n ),\n monthsShort: 'Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek'.split('_'),\n weekdays:\n 'Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba'.split(\n '_'\n ),\n weekdaysShort: 'Yak_Dush_Sesh_Chor_Pay_Jum_Shan'.split('_'),\n weekdaysMin: 'Ya_Du_Se_Cho_Pa_Ju_Sha'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'D MMMM YYYY, dddd HH:mm',\n },\n calendar: {\n sameDay: '[Bugun soat] LT [da]',\n nextDay: '[Ertaga] LT [da]',\n nextWeek: 'dddd [kuni soat] LT [da]',\n lastDay: '[Kecha soat] LT [da]',\n lastWeek: \"[O'tgan] dddd [kuni soat] LT [da]\",\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Yaqin %s ichida',\n past: 'Bir necha %s oldin',\n s: 'soniya',\n ss: '%d soniya',\n m: 'bir daqiqa',\n mm: '%d daqiqa',\n h: 'bir soat',\n hh: '%d soat',\n d: 'bir kun',\n dd: '%d kun',\n M: 'bir oy',\n MM: '%d oy',\n y: 'bir yil',\n yy: '%d yil',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n });\n\n return uzLatn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Uzbek [uz]\n//! author : Sardor Muminov : https://github.com/muminoff\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var uz = moment.defineLocale('uz', {\n months: 'Ñнвар_феврал_март_апрел_май_июн_июл_авгуÑÑ‚_ÑентÑбр_октÑбр_ноÑбр_декабр'.split(\n '_'\n ),\n monthsShort: 'Ñнв_фев_мар_апр_май_июн_июл_авг_Ñен_окт_ноÑ_дек'.split('_'),\n weekdays: 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'),\n weekdaysShort: 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'),\n weekdaysMin: 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'D MMMM YYYY, dddd HH:mm',\n },\n calendar: {\n sameDay: '[Бугун Ñоат] LT [да]',\n nextDay: '[Ðртага] LT [да]',\n nextWeek: 'dddd [куни Ñоат] LT [да]',\n lastDay: '[Кеча Ñоат] LT [да]',\n lastWeek: '[Утган] dddd [куни Ñоат] LT [да]',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Якин %s ичида',\n past: 'Бир неча %s олдин',\n s: 'фурÑат',\n ss: '%d фурÑат',\n m: 'бир дакика',\n mm: '%d дакика',\n h: 'бир Ñоат',\n hh: '%d Ñоат',\n d: 'бир кун',\n dd: '%d кун',\n M: 'бир ой',\n MM: '%d ой',\n y: 'бир йил',\n yy: '%d йил',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return uz;\n\n})));\n","//! moment.js locale configuration\n//! locale : Vietnamese [vi]\n//! author : Bang Nguyen : https://github.com/bangnk\n//! author : Chien Kira : https://github.com/chienkira\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var vi = moment.defineLocale('vi', {\n months: 'tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12'.split(\n '_'\n ),\n monthsShort:\n 'Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'chủ nháºt_thứ hai_thứ ba_thứ tÆ°_thứ năm_thứ sáu_thứ bảy'.split(\n '_'\n ),\n weekdaysShort: 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysMin: 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n weekdaysParseExact: true,\n meridiemParse: /sa|ch/i,\n isPM: function (input) {\n return /^ch$/i.test(input);\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'sa' : 'SA';\n } else {\n return isLower ? 'ch' : 'CH';\n }\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [năm] YYYY',\n LLL: 'D MMMM [năm] YYYY HH:mm',\n LLLL: 'dddd, D MMMM [năm] YYYY HH:mm',\n l: 'DD/M/YYYY',\n ll: 'D MMM YYYY',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd, D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hôm nay lúc] LT',\n nextDay: '[Ngà y mai lúc] LT',\n nextWeek: 'dddd [tuần tá»›i lúc] LT',\n lastDay: '[Hôm qua lúc] LT',\n lastWeek: 'dddd [tuần trÆ°á»›c lúc] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s tá»›i',\n past: '%s trÆ°á»›c',\n s: 'và i giây',\n ss: '%d giây',\n m: 'má»™t phút',\n mm: '%d phút',\n h: 'má»™t giá»',\n hh: '%d giá»',\n d: 'má»™t ngà y',\n dd: '%d ngà y',\n w: 'má»™t tuần',\n ww: '%d tuần',\n M: 'má»™t tháng',\n MM: '%d tháng',\n y: 'má»™t năm',\n yy: '%d năm',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return vi;\n\n})));\n","//! moment.js locale configuration\n//! locale : Pseudo [x-pseudo]\n//! author : Andrew Hood : https://github.com/andrewhood125\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var xPseudo = moment.defineLocale('x-pseudo', {\n months: 'J~áñúá~rý_F~ébrú~árý_~Márc~h_Ãp~rÃl_~Máý_~Júñé~_Júl~ý_Ãú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér'.split(\n '_'\n ),\n monthsShort:\n 'J~áñ_~Féb_~Már_~Ãpr_~Máý_~Júñ_~Júl_~Ãúg_~Sép_~Óct_~Ñóv_~Déc'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays:\n 'S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~FrÃd~áý_S~átúr~dáý'.split(\n '_'\n ),\n weekdaysShort: 'S~úñ_~Móñ_~Túé_~Wéd_~Thú_~FrÃ_~Sát'.split('_'),\n weekdaysMin: 'S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[T~ódá~ý át] LT',\n nextDay: '[T~ómó~rró~w át] LT',\n nextWeek: 'dddd [át] LT',\n lastDay: '[Ã~ést~érdá~ý át] LT',\n lastWeek: '[L~ást] dddd [át] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Ã~ñ %s',\n past: '%s á~gó',\n s: 'á ~féw ~sécó~ñds',\n ss: '%d s~écóñ~ds',\n m: 'á ~mÃñ~úté',\n mm: '%d m~Ãñú~tés',\n h: 'á~ñ hó~úr',\n hh: '%d h~óúrs',\n d: 'á ~dáý',\n dd: '%d d~áýs',\n M: 'á ~móñ~th',\n MM: '%d m~óñt~hs',\n y: 'á ~ýéár',\n yy: '%d ý~éárs',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return xPseudo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Yoruba Nigeria [yo]\n//! author : Atolagbe Abisoye : https://github.com/andela-batolagbe\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var yo = moment.defineLocale('yo', {\n months: 'SẹÌrẹÌ_EÌ€reÌ€leÌ€_Ẹrẹ̀naÌ€_IÌ€gbeÌ_EÌ€bibi_OÌ€kuÌ€du_Agẹmo_OÌ€guÌn_Owewe_Ọ̀waÌ€raÌ€_BeÌluÌ_Ọ̀pẹ̀̀'.split(\n '_'\n ),\n monthsShort: 'SẹÌr_EÌ€rl_Ẹrn_IÌ€gb_EÌ€bi_OÌ€kuÌ€_Agẹ_OÌ€guÌ_Owe_Ọ̀waÌ€_BeÌl_Ọ̀pẹ̀̀'.split('_'),\n weekdays: 'AÌ€iÌ€kuÌ_AjeÌ_IÌ€sẹÌgun_Ọjá»ÌruÌ_Ọjá»Ìbá»_ẸtiÌ€_AÌ€baÌmẹÌta'.split('_'),\n weekdaysShort: 'AÌ€iÌ€k_AjeÌ_IÌ€sẹÌ_Ọjr_Ọjb_ẸtiÌ€_AÌ€baÌ'.split('_'),\n weekdaysMin: 'AÌ€iÌ€_Aj_IÌ€s_Ọr_Ọb_Ẹt_AÌ€b'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[OÌ€niÌ€ ni] LT',\n nextDay: '[Ọ̀la ni] LT',\n nextWeek: \"dddd [Ọsẹ̀ toÌn'bá»] [ni] LT\",\n lastDay: '[AÌ€na ni] LT',\n lastWeek: 'dddd [Ọsẹ̀ toÌlá»Ì] [ni] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'niÌ %s',\n past: '%s ká»jaÌ',\n s: 'iÌ€sẹjuÌ aayaÌ die',\n ss: 'aayaÌ %d',\n m: 'iÌ€sẹjuÌ kan',\n mm: 'iÌ€sẹjuÌ %d',\n h: 'waÌkati kan',\n hh: 'waÌkati %d',\n d: 'á»já»Ì kan',\n dd: 'á»já»Ì %d',\n M: 'osuÌ€ kan',\n MM: 'osuÌ€ %d',\n y: 'á»duÌn kan',\n yy: 'á»duÌn %d',\n },\n dayOfMonthOrdinalParse: /á»já»Ì\\s\\d{1,2}/,\n ordinal: 'á»já»Ì %d',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return yo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (China) [zh-cn]\n//! author : suupic : https://github.com/suupic\n//! author : Zeno Zeng : https://github.com/zenozeng\n//! author : uu109 : https://github.com/uu109\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhCn = moment.defineLocale('zh-cn', {\n months: '一月_二月_三月_四月_五月_å…月_七月_八月_ä¹æœˆ_å月_å一月_å二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期å…'.split('_'),\n weekdaysShort: '周日_周一_周二_周三_周四_周五_周å…'.split('_'),\n weekdaysMin: 'æ—¥_一_二_三_å››_五_å…'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYYå¹´M月Dæ—¥',\n LLL: 'YYYYå¹´M月Dæ—¥Ah点mm分',\n LLLL: 'YYYYå¹´M月Dæ—¥ddddAh点mm分',\n l: 'YYYY/M/D',\n ll: 'YYYYå¹´M月Dæ—¥',\n lll: 'YYYYå¹´M月Dæ—¥ HH:mm',\n llll: 'YYYYå¹´M月Dæ—¥dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上åˆ|ä¸åˆ|下åˆ|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上åˆ') {\n return hour;\n } else if (meridiem === '下åˆ' || meridiem === '晚上') {\n return hour + 12;\n } else {\n // 'ä¸åˆ'\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上åˆ';\n } else if (hm < 1230) {\n return 'ä¸åˆ';\n } else if (hm < 1800) {\n return '下åˆ';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天]LT',\n nextDay: '[明天]LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n return '[下]dddLT';\n } else {\n return '[本]dddLT';\n }\n },\n lastDay: '[昨天]LT',\n lastWeek: function (now) {\n if (this.week() !== now.week()) {\n return '[上]dddLT';\n } else {\n return '[本]dddLT';\n }\n },\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(æ—¥|月|周)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + 'æ—¥';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '周';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%såŽ',\n past: '%så‰',\n s: 'å‡ ç§’',\n ss: '%d 秒',\n m: '1 分钟',\n mm: '%d 分钟',\n h: '1 å°æ—¶',\n hh: '%d å°æ—¶',\n d: '1 天',\n dd: '%d 天',\n w: '1 周',\n ww: '%d 周',\n M: '1 个月',\n MM: '%d 个月',\n y: '1 å¹´',\n yy: '%d å¹´',\n },\n week: {\n // GB/T 7408-1994《数æ®å…ƒå’Œäº¤æ¢æ ¼å¼Â·ä¿¡æ¯äº¤æ¢Â·æ—¥æœŸå’Œæ—¶é—´è¡¨ç¤ºæ³•ã€‹ä¸ŽISO 8601:1988ç‰æ•ˆ\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n });\n\n return zhCn;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Hong Kong) [zh-hk]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n//! author : Konstantin : https://github.com/skfd\n//! author : Anthony : https://github.com/anthonylau\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhHk = moment.defineLocale('zh-hk', {\n months: '一月_二月_三月_四月_五月_å…月_七月_八月_ä¹æœˆ_å月_å一月_å二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期å…'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週å…'.split('_'),\n weekdaysMin: 'æ—¥_一_二_三_å››_五_å…'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYYå¹´M月Dæ—¥',\n LLL: 'YYYYå¹´M月Dæ—¥ HH:mm',\n LLLL: 'YYYYå¹´M月Dæ—¥dddd HH:mm',\n l: 'YYYY/M/D',\n ll: 'YYYYå¹´M月Dæ—¥',\n lll: 'YYYYå¹´M月Dæ—¥ HH:mm',\n llll: 'YYYYå¹´M月Dæ—¥dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上åˆ|ä¸åˆ|下åˆ|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上åˆ') {\n return hour;\n } else if (meridiem === 'ä¸åˆ') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下åˆ' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1200) {\n return '上åˆ';\n } else if (hm === 1200) {\n return 'ä¸åˆ';\n } else if (hm < 1800) {\n return '下åˆ';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天]LT',\n nextDay: '[明天]LT',\n nextWeek: '[下]ddddLT',\n lastDay: '[昨天]LT',\n lastWeek: '[上]ddddLT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(æ—¥|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + 'æ—¥';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%så‰',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分é˜',\n mm: '%d 分é˜',\n h: '1 å°æ™‚',\n hh: '%d å°æ™‚',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 å¹´',\n yy: '%d å¹´',\n },\n });\n\n return zhHk;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Macau) [zh-mo]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n//! author : Tan Yuanhong : https://github.com/le0tan\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhMo = moment.defineLocale('zh-mo', {\n months: '一月_二月_三月_四月_五月_å…月_七月_八月_ä¹æœˆ_å月_å一月_å二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期å…'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週å…'.split('_'),\n weekdaysMin: 'æ—¥_一_二_三_å››_五_å…'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'YYYYå¹´M月Dæ—¥',\n LLL: 'YYYYå¹´M月Dæ—¥ HH:mm',\n LLLL: 'YYYYå¹´M月Dæ—¥dddd HH:mm',\n l: 'D/M/YYYY',\n ll: 'YYYYå¹´M月Dæ—¥',\n lll: 'YYYYå¹´M月Dæ—¥ HH:mm',\n llll: 'YYYYå¹´M月Dæ—¥dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上åˆ|ä¸åˆ|下åˆ|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上åˆ') {\n return hour;\n } else if (meridiem === 'ä¸åˆ') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下åˆ' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上åˆ';\n } else if (hm < 1230) {\n return 'ä¸åˆ';\n } else if (hm < 1800) {\n return '下åˆ';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天] LT',\n nextDay: '[明天] LT',\n nextWeek: '[下]dddd LT',\n lastDay: '[昨天] LT',\n lastWeek: '[上]dddd LT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(æ—¥|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + 'æ—¥';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%så…§',\n past: '%så‰',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分é˜',\n mm: '%d 分é˜',\n h: '1 å°æ™‚',\n hh: '%d å°æ™‚',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 å¹´',\n yy: '%d å¹´',\n },\n });\n\n return zhMo;\n\n})));\n","//! moment.js locale configuration\n//! locale : Chinese (Taiwan) [zh-tw]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n && typeof require === 'function' ? factory(require('../moment')) :\n typeof define === 'function' && define.amd ? define(['../moment'], factory) :\n factory(global.moment)\n}(this, (function (moment) { 'use strict';\n\n //! moment.js locale configuration\n\n var zhTw = moment.defineLocale('zh-tw', {\n months: '一月_二月_三月_四月_五月_å…月_七月_八月_ä¹æœˆ_å月_å一月_å二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期å…'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週å…'.split('_'),\n weekdaysMin: 'æ—¥_一_二_三_å››_五_å…'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYYå¹´M月Dæ—¥',\n LLL: 'YYYYå¹´M月Dæ—¥ HH:mm',\n LLLL: 'YYYYå¹´M月Dæ—¥dddd HH:mm',\n l: 'YYYY/M/D',\n ll: 'YYYYå¹´M月Dæ—¥',\n lll: 'YYYYå¹´M月Dæ—¥ HH:mm',\n llll: 'YYYYå¹´M月Dæ—¥dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上åˆ|ä¸åˆ|下åˆ|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上åˆ') {\n return hour;\n } else if (meridiem === 'ä¸åˆ') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下åˆ' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上åˆ';\n } else if (hm < 1230) {\n return 'ä¸åˆ';\n } else if (hm < 1800) {\n return '下åˆ';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天] LT',\n nextDay: '[明天] LT',\n nextWeek: '[下]dddd LT',\n lastDay: '[昨天] LT',\n lastWeek: '[上]dddd LT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(æ—¥|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + 'æ—¥';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%så‰',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分é˜',\n mm: '%d 分é˜',\n h: '1 å°æ™‚',\n hh: '%d å°æ™‚',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 å¹´',\n yy: '%d å¹´',\n },\n });\n\n return zhTw;\n\n})));\n","var map = {\n\t\"./af\": 2786,\n\t\"./af.js\": 2786,\n\t\"./ar\": 867,\n\t\"./ar-dz\": 4130,\n\t\"./ar-dz.js\": 4130,\n\t\"./ar-kw\": 6135,\n\t\"./ar-kw.js\": 6135,\n\t\"./ar-ly\": 6440,\n\t\"./ar-ly.js\": 6440,\n\t\"./ar-ma\": 7702,\n\t\"./ar-ma.js\": 7702,\n\t\"./ar-sa\": 6040,\n\t\"./ar-sa.js\": 6040,\n\t\"./ar-tn\": 7100,\n\t\"./ar-tn.js\": 7100,\n\t\"./ar.js\": 867,\n\t\"./az\": 1083,\n\t\"./az.js\": 1083,\n\t\"./be\": 9808,\n\t\"./be.js\": 9808,\n\t\"./bg\": 8338,\n\t\"./bg.js\": 8338,\n\t\"./bm\": 7438,\n\t\"./bm.js\": 7438,\n\t\"./bn\": 8905,\n\t\"./bn-bd\": 6225,\n\t\"./bn-bd.js\": 6225,\n\t\"./bn.js\": 8905,\n\t\"./bo\": 1560,\n\t\"./bo.js\": 1560,\n\t\"./br\": 1278,\n\t\"./br.js\": 1278,\n\t\"./bs\": 622,\n\t\"./bs.js\": 622,\n\t\"./ca\": 2468,\n\t\"./ca.js\": 2468,\n\t\"./cs\": 5822,\n\t\"./cs.js\": 5822,\n\t\"./cv\": 877,\n\t\"./cv.js\": 877,\n\t\"./cy\": 7373,\n\t\"./cy.js\": 7373,\n\t\"./da\": 4780,\n\t\"./da.js\": 4780,\n\t\"./de\": 9740,\n\t\"./de-at\": 217,\n\t\"./de-at.js\": 217,\n\t\"./de-ch\": 894,\n\t\"./de-ch.js\": 894,\n\t\"./de.js\": 9740,\n\t\"./dv\": 5300,\n\t\"./dv.js\": 5300,\n\t\"./el\": 837,\n\t\"./el.js\": 837,\n\t\"./en-au\": 8348,\n\t\"./en-au.js\": 8348,\n\t\"./en-ca\": 7925,\n\t\"./en-ca.js\": 7925,\n\t\"./en-gb\": 2243,\n\t\"./en-gb.js\": 2243,\n\t\"./en-ie\": 6436,\n\t\"./en-ie.js\": 6436,\n\t\"./en-il\": 7207,\n\t\"./en-il.js\": 7207,\n\t\"./en-in\": 4175,\n\t\"./en-in.js\": 4175,\n\t\"./en-nz\": 6319,\n\t\"./en-nz.js\": 6319,\n\t\"./en-sg\": 1662,\n\t\"./en-sg.js\": 1662,\n\t\"./eo\": 2915,\n\t\"./eo.js\": 2915,\n\t\"./es\": 5655,\n\t\"./es-do\": 5251,\n\t\"./es-do.js\": 5251,\n\t\"./es-mx\": 6112,\n\t\"./es-mx.js\": 6112,\n\t\"./es-us\": 1146,\n\t\"./es-us.js\": 1146,\n\t\"./es.js\": 5655,\n\t\"./et\": 5603,\n\t\"./et.js\": 5603,\n\t\"./eu\": 7763,\n\t\"./eu.js\": 7763,\n\t\"./fa\": 6959,\n\t\"./fa.js\": 6959,\n\t\"./fi\": 1897,\n\t\"./fi.js\": 1897,\n\t\"./fil\": 2549,\n\t\"./fil.js\": 2549,\n\t\"./fo\": 4694,\n\t\"./fo.js\": 4694,\n\t\"./fr\": 4470,\n\t\"./fr-ca\": 3049,\n\t\"./fr-ca.js\": 3049,\n\t\"./fr-ch\": 2330,\n\t\"./fr-ch.js\": 2330,\n\t\"./fr.js\": 4470,\n\t\"./fy\": 5044,\n\t\"./fy.js\": 5044,\n\t\"./ga\": 9295,\n\t\"./ga.js\": 9295,\n\t\"./gd\": 2101,\n\t\"./gd.js\": 2101,\n\t\"./gl\": 8794,\n\t\"./gl.js\": 8794,\n\t\"./gom-deva\": 7884,\n\t\"./gom-deva.js\": 7884,\n\t\"./gom-latn\": 3168,\n\t\"./gom-latn.js\": 3168,\n\t\"./gu\": 5349,\n\t\"./gu.js\": 5349,\n\t\"./he\": 4206,\n\t\"./he.js\": 4206,\n\t\"./hi\": 94,\n\t\"./hi.js\": 94,\n\t\"./hr\": 316,\n\t\"./hr.js\": 316,\n\t\"./hu\": 2138,\n\t\"./hu.js\": 2138,\n\t\"./hy-am\": 1423,\n\t\"./hy-am.js\": 1423,\n\t\"./id\": 9218,\n\t\"./id.js\": 9218,\n\t\"./is\": 135,\n\t\"./is.js\": 135,\n\t\"./it\": 626,\n\t\"./it-ch\": 150,\n\t\"./it-ch.js\": 150,\n\t\"./it.js\": 626,\n\t\"./ja\": 9183,\n\t\"./ja.js\": 9183,\n\t\"./jv\": 4286,\n\t\"./jv.js\": 4286,\n\t\"./ka\": 2105,\n\t\"./ka.js\": 2105,\n\t\"./kk\": 7772,\n\t\"./kk.js\": 7772,\n\t\"./km\": 8758,\n\t\"./km.js\": 8758,\n\t\"./kn\": 9282,\n\t\"./kn.js\": 9282,\n\t\"./ko\": 3730,\n\t\"./ko.js\": 3730,\n\t\"./ku\": 1408,\n\t\"./ku.js\": 1408,\n\t\"./ky\": 3291,\n\t\"./ky.js\": 3291,\n\t\"./lb\": 6841,\n\t\"./lb.js\": 6841,\n\t\"./lo\": 5466,\n\t\"./lo.js\": 5466,\n\t\"./lt\": 7010,\n\t\"./lt.js\": 7010,\n\t\"./lv\": 7595,\n\t\"./lv.js\": 7595,\n\t\"./me\": 9861,\n\t\"./me.js\": 9861,\n\t\"./mi\": 5493,\n\t\"./mi.js\": 5493,\n\t\"./mk\": 5966,\n\t\"./mk.js\": 5966,\n\t\"./ml\": 7341,\n\t\"./ml.js\": 7341,\n\t\"./mn\": 5115,\n\t\"./mn.js\": 5115,\n\t\"./mr\": 370,\n\t\"./mr.js\": 370,\n\t\"./ms\": 9847,\n\t\"./ms-my\": 1237,\n\t\"./ms-my.js\": 1237,\n\t\"./ms.js\": 9847,\n\t\"./mt\": 2126,\n\t\"./mt.js\": 2126,\n\t\"./my\": 6165,\n\t\"./my.js\": 6165,\n\t\"./nb\": 4924,\n\t\"./nb.js\": 4924,\n\t\"./ne\": 6744,\n\t\"./ne.js\": 6744,\n\t\"./nl\": 3901,\n\t\"./nl-be\": 9814,\n\t\"./nl-be.js\": 9814,\n\t\"./nl.js\": 3901,\n\t\"./nn\": 3877,\n\t\"./nn.js\": 3877,\n\t\"./oc-lnc\": 2135,\n\t\"./oc-lnc.js\": 2135,\n\t\"./pa-in\": 5858,\n\t\"./pa-in.js\": 5858,\n\t\"./pl\": 4495,\n\t\"./pl.js\": 4495,\n\t\"./pt\": 9520,\n\t\"./pt-br\": 7971,\n\t\"./pt-br.js\": 7971,\n\t\"./pt.js\": 9520,\n\t\"./ro\": 6459,\n\t\"./ro.js\": 6459,\n\t\"./ru\": 1793,\n\t\"./ru.js\": 1793,\n\t\"./sd\": 950,\n\t\"./sd.js\": 950,\n\t\"./se\": 490,\n\t\"./se.js\": 490,\n\t\"./si\": 124,\n\t\"./si.js\": 124,\n\t\"./sk\": 4249,\n\t\"./sk.js\": 4249,\n\t\"./sl\": 4985,\n\t\"./sl.js\": 4985,\n\t\"./sq\": 1104,\n\t\"./sq.js\": 1104,\n\t\"./sr\": 9131,\n\t\"./sr-cyrl\": 9915,\n\t\"./sr-cyrl.js\": 9915,\n\t\"./sr.js\": 9131,\n\t\"./ss\": 5893,\n\t\"./ss.js\": 5893,\n\t\"./sv\": 8760,\n\t\"./sv.js\": 8760,\n\t\"./sw\": 1172,\n\t\"./sw.js\": 1172,\n\t\"./ta\": 7333,\n\t\"./ta.js\": 7333,\n\t\"./te\": 3110,\n\t\"./te.js\": 3110,\n\t\"./tet\": 2095,\n\t\"./tet.js\": 2095,\n\t\"./tg\": 7321,\n\t\"./tg.js\": 7321,\n\t\"./th\": 9041,\n\t\"./th.js\": 9041,\n\t\"./tk\": 9005,\n\t\"./tk.js\": 9005,\n\t\"./tl-ph\": 5768,\n\t\"./tl-ph.js\": 5768,\n\t\"./tlh\": 9444,\n\t\"./tlh.js\": 9444,\n\t\"./tr\": 2397,\n\t\"./tr.js\": 2397,\n\t\"./tzl\": 8254,\n\t\"./tzl.js\": 8254,\n\t\"./tzm\": 1106,\n\t\"./tzm-latn\": 699,\n\t\"./tzm-latn.js\": 699,\n\t\"./tzm.js\": 1106,\n\t\"./ug-cn\": 9288,\n\t\"./ug-cn.js\": 9288,\n\t\"./uk\": 7691,\n\t\"./uk.js\": 7691,\n\t\"./ur\": 3795,\n\t\"./ur.js\": 3795,\n\t\"./uz\": 6791,\n\t\"./uz-latn\": 588,\n\t\"./uz-latn.js\": 588,\n\t\"./uz.js\": 6791,\n\t\"./vi\": 9822,\n\t\"./vi.js\": 9822,\n\t\"./x-pseudo\": 4378,\n\t\"./x-pseudo.js\": 4378,\n\t\"./yo\": 5805,\n\t\"./yo.js\": 5805,\n\t\"./zh-cn\": 3839,\n\t\"./zh-cn.js\": 3839,\n\t\"./zh-hk\": 5726,\n\t\"./zh-hk.js\": 5726,\n\t\"./zh-mo\": 9807,\n\t\"./zh-mo.js\": 9807,\n\t\"./zh-tw\": 4152,\n\t\"./zh-tw.js\": 4152\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 6700;","//! moment.js\n//! version : 2.29.3\n//! authors : Tim Wood, Iskren Chernev, Moment.js contributors\n//! license : MIT\n//! momentjs.com\n\n;(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n global.moment = factory()\n}(this, (function () { 'use strict';\n\n var hookCallback;\n\n function hooks() {\n return hookCallback.apply(null, arguments);\n }\n\n // This is done to register the method called with moment()\n // without creating circular dependencies.\n function setHookCallback(callback) {\n hookCallback = callback;\n }\n\n function isArray(input) {\n return (\n input instanceof Array ||\n Object.prototype.toString.call(input) === '[object Array]'\n );\n }\n\n function isObject(input) {\n // IE8 will treat undefined and null as object if it wasn't for\n // input != null\n return (\n input != null &&\n Object.prototype.toString.call(input) === '[object Object]'\n );\n }\n\n function hasOwnProp(a, b) {\n return Object.prototype.hasOwnProperty.call(a, b);\n }\n\n function isObjectEmpty(obj) {\n if (Object.getOwnPropertyNames) {\n return Object.getOwnPropertyNames(obj).length === 0;\n } else {\n var k;\n for (k in obj) {\n if (hasOwnProp(obj, k)) {\n return false;\n }\n }\n return true;\n }\n }\n\n function isUndefined(input) {\n return input === void 0;\n }\n\n function isNumber(input) {\n return (\n typeof input === 'number' ||\n Object.prototype.toString.call(input) === '[object Number]'\n );\n }\n\n function isDate(input) {\n return (\n input instanceof Date ||\n Object.prototype.toString.call(input) === '[object Date]'\n );\n }\n\n function map(arr, fn) {\n var res = [],\n i,\n arrLen = arr.length;\n for (i = 0; i < arrLen; ++i) {\n res.push(fn(arr[i], i));\n }\n return res;\n }\n\n function extend(a, b) {\n for (var i in b) {\n if (hasOwnProp(b, i)) {\n a[i] = b[i];\n }\n }\n\n if (hasOwnProp(b, 'toString')) {\n a.toString = b.toString;\n }\n\n if (hasOwnProp(b, 'valueOf')) {\n a.valueOf = b.valueOf;\n }\n\n return a;\n }\n\n function createUTC(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, true).utc();\n }\n\n function defaultParsingFlags() {\n // We need to deep clone this object.\n return {\n empty: false,\n unusedTokens: [],\n unusedInput: [],\n overflow: -2,\n charsLeftOver: 0,\n nullInput: false,\n invalidEra: null,\n invalidMonth: null,\n invalidFormat: false,\n userInvalidated: false,\n iso: false,\n parsedDateParts: [],\n era: null,\n meridiem: null,\n rfc2822: false,\n weekdayMismatch: false,\n };\n }\n\n function getParsingFlags(m) {\n if (m._pf == null) {\n m._pf = defaultParsingFlags();\n }\n return m._pf;\n }\n\n var some;\n if (Array.prototype.some) {\n some = Array.prototype.some;\n } else {\n some = function (fun) {\n var t = Object(this),\n len = t.length >>> 0,\n i;\n\n for (i = 0; i < len; i++) {\n if (i in t && fun.call(this, t[i], i, t)) {\n return true;\n }\n }\n\n return false;\n };\n }\n\n function isValid(m) {\n if (m._isValid == null) {\n var flags = getParsingFlags(m),\n parsedParts = some.call(flags.parsedDateParts, function (i) {\n return i != null;\n }),\n isNowValid =\n !isNaN(m._d.getTime()) &&\n flags.overflow < 0 &&\n !flags.empty &&\n !flags.invalidEra &&\n !flags.invalidMonth &&\n !flags.invalidWeekday &&\n !flags.weekdayMismatch &&\n !flags.nullInput &&\n !flags.invalidFormat &&\n !flags.userInvalidated &&\n (!flags.meridiem || (flags.meridiem && parsedParts));\n\n if (m._strict) {\n isNowValid =\n isNowValid &&\n flags.charsLeftOver === 0 &&\n flags.unusedTokens.length === 0 &&\n flags.bigHour === undefined;\n }\n\n if (Object.isFrozen == null || !Object.isFrozen(m)) {\n m._isValid = isNowValid;\n } else {\n return isNowValid;\n }\n }\n return m._isValid;\n }\n\n function createInvalid(flags) {\n var m = createUTC(NaN);\n if (flags != null) {\n extend(getParsingFlags(m), flags);\n } else {\n getParsingFlags(m).userInvalidated = true;\n }\n\n return m;\n }\n\n // Plugins that add properties should also add the key here (null value),\n // so we can properly clone ourselves.\n var momentProperties = (hooks.momentProperties = []),\n updateInProgress = false;\n\n function copyConfig(to, from) {\n var i,\n prop,\n val,\n momentPropertiesLen = momentProperties.length;\n\n if (!isUndefined(from._isAMomentObject)) {\n to._isAMomentObject = from._isAMomentObject;\n }\n if (!isUndefined(from._i)) {\n to._i = from._i;\n }\n if (!isUndefined(from._f)) {\n to._f = from._f;\n }\n if (!isUndefined(from._l)) {\n to._l = from._l;\n }\n if (!isUndefined(from._strict)) {\n to._strict = from._strict;\n }\n if (!isUndefined(from._tzm)) {\n to._tzm = from._tzm;\n }\n if (!isUndefined(from._isUTC)) {\n to._isUTC = from._isUTC;\n }\n if (!isUndefined(from._offset)) {\n to._offset = from._offset;\n }\n if (!isUndefined(from._pf)) {\n to._pf = getParsingFlags(from);\n }\n if (!isUndefined(from._locale)) {\n to._locale = from._locale;\n }\n\n if (momentPropertiesLen > 0) {\n for (i = 0; i < momentPropertiesLen; i++) {\n prop = momentProperties[i];\n val = from[prop];\n if (!isUndefined(val)) {\n to[prop] = val;\n }\n }\n }\n\n return to;\n }\n\n // Moment prototype object\n function Moment(config) {\n copyConfig(this, config);\n this._d = new Date(config._d != null ? config._d.getTime() : NaN);\n if (!this.isValid()) {\n this._d = new Date(NaN);\n }\n // Prevent infinite loop in case updateOffset creates new moment\n // objects.\n if (updateInProgress === false) {\n updateInProgress = true;\n hooks.updateOffset(this);\n updateInProgress = false;\n }\n }\n\n function isMoment(obj) {\n return (\n obj instanceof Moment || (obj != null && obj._isAMomentObject != null)\n );\n }\n\n function warn(msg) {\n if (\n hooks.suppressDeprecationWarnings === false &&\n typeof console !== 'undefined' &&\n console.warn\n ) {\n console.warn('Deprecation warning: ' + msg);\n }\n }\n\n function deprecate(msg, fn) {\n var firstTime = true;\n\n return extend(function () {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(null, msg);\n }\n if (firstTime) {\n var args = [],\n arg,\n i,\n key,\n argLen = arguments.length;\n for (i = 0; i < argLen; i++) {\n arg = '';\n if (typeof arguments[i] === 'object') {\n arg += '\\n[' + i + '] ';\n for (key in arguments[0]) {\n if (hasOwnProp(arguments[0], key)) {\n arg += key + ': ' + arguments[0][key] + ', ';\n }\n }\n arg = arg.slice(0, -2); // Remove trailing comma and space\n } else {\n arg = arguments[i];\n }\n args.push(arg);\n }\n warn(\n msg +\n '\\nArguments: ' +\n Array.prototype.slice.call(args).join('') +\n '\\n' +\n new Error().stack\n );\n firstTime = false;\n }\n return fn.apply(this, arguments);\n }, fn);\n }\n\n var deprecations = {};\n\n function deprecateSimple(name, msg) {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(name, msg);\n }\n if (!deprecations[name]) {\n warn(msg);\n deprecations[name] = true;\n }\n }\n\n hooks.suppressDeprecationWarnings = false;\n hooks.deprecationHandler = null;\n\n function isFunction(input) {\n return (\n (typeof Function !== 'undefined' && input instanceof Function) ||\n Object.prototype.toString.call(input) === '[object Function]'\n );\n }\n\n function set(config) {\n var prop, i;\n for (i in config) {\n if (hasOwnProp(config, i)) {\n prop = config[i];\n if (isFunction(prop)) {\n this[i] = prop;\n } else {\n this['_' + i] = prop;\n }\n }\n }\n this._config = config;\n // Lenient ordinal parsing accepts just a number in addition to\n // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n this._dayOfMonthOrdinalParseLenient = new RegExp(\n (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +\n '|' +\n /\\d{1,2}/.source\n );\n }\n\n function mergeConfigs(parentConfig, childConfig) {\n var res = extend({}, parentConfig),\n prop;\n for (prop in childConfig) {\n if (hasOwnProp(childConfig, prop)) {\n if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {\n res[prop] = {};\n extend(res[prop], parentConfig[prop]);\n extend(res[prop], childConfig[prop]);\n } else if (childConfig[prop] != null) {\n res[prop] = childConfig[prop];\n } else {\n delete res[prop];\n }\n }\n }\n for (prop in parentConfig) {\n if (\n hasOwnProp(parentConfig, prop) &&\n !hasOwnProp(childConfig, prop) &&\n isObject(parentConfig[prop])\n ) {\n // make sure changes to properties don't modify parent config\n res[prop] = extend({}, res[prop]);\n }\n }\n return res;\n }\n\n function Locale(config) {\n if (config != null) {\n this.set(config);\n }\n }\n\n var keys;\n\n if (Object.keys) {\n keys = Object.keys;\n } else {\n keys = function (obj) {\n var i,\n res = [];\n for (i in obj) {\n if (hasOwnProp(obj, i)) {\n res.push(i);\n }\n }\n return res;\n };\n }\n\n var defaultCalendar = {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n };\n\n function calendar(key, mom, now) {\n var output = this._calendar[key] || this._calendar['sameElse'];\n return isFunction(output) ? output.call(mom, now) : output;\n }\n\n function zeroFill(number, targetLength, forceSign) {\n var absNumber = '' + Math.abs(number),\n zerosToFill = targetLength - absNumber.length,\n sign = number >= 0;\n return (\n (sign ? (forceSign ? '+' : '') : '-') +\n Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) +\n absNumber\n );\n }\n\n var formattingTokens =\n /(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,\n localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g,\n formatFunctions = {},\n formatTokenFunctions = {};\n\n // token: 'M'\n // padded: ['MM', 2]\n // ordinal: 'Mo'\n // callback: function () { this.month() + 1 }\n function addFormatToken(token, padded, ordinal, callback) {\n var func = callback;\n if (typeof callback === 'string') {\n func = function () {\n return this[callback]();\n };\n }\n if (token) {\n formatTokenFunctions[token] = func;\n }\n if (padded) {\n formatTokenFunctions[padded[0]] = function () {\n return zeroFill(func.apply(this, arguments), padded[1], padded[2]);\n };\n }\n if (ordinal) {\n formatTokenFunctions[ordinal] = function () {\n return this.localeData().ordinal(\n func.apply(this, arguments),\n token\n );\n };\n }\n }\n\n function removeFormattingTokens(input) {\n if (input.match(/\\[[\\s\\S]/)) {\n return input.replace(/^\\[|\\]$/g, '');\n }\n return input.replace(/\\\\/g, '');\n }\n\n function makeFormatFunction(format) {\n var array = format.match(formattingTokens),\n i,\n length;\n\n for (i = 0, length = array.length; i < length; i++) {\n if (formatTokenFunctions[array[i]]) {\n array[i] = formatTokenFunctions[array[i]];\n } else {\n array[i] = removeFormattingTokens(array[i]);\n }\n }\n\n return function (mom) {\n var output = '',\n i;\n for (i = 0; i < length; i++) {\n output += isFunction(array[i])\n ? array[i].call(mom, format)\n : array[i];\n }\n return output;\n };\n }\n\n // format date using native date object\n function formatMoment(m, format) {\n if (!m.isValid()) {\n return m.localeData().invalidDate();\n }\n\n format = expandFormat(format, m.localeData());\n formatFunctions[format] =\n formatFunctions[format] || makeFormatFunction(format);\n\n return formatFunctions[format](m);\n }\n\n function expandFormat(format, locale) {\n var i = 5;\n\n function replaceLongDateFormatTokens(input) {\n return locale.longDateFormat(input) || input;\n }\n\n localFormattingTokens.lastIndex = 0;\n while (i >= 0 && localFormattingTokens.test(format)) {\n format = format.replace(\n localFormattingTokens,\n replaceLongDateFormatTokens\n );\n localFormattingTokens.lastIndex = 0;\n i -= 1;\n }\n\n return format;\n }\n\n var defaultLongDateFormat = {\n LTS: 'h:mm:ss A',\n LT: 'h:mm A',\n L: 'MM/DD/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A',\n };\n\n function longDateFormat(key) {\n var format = this._longDateFormat[key],\n formatUpper = this._longDateFormat[key.toUpperCase()];\n\n if (format || !formatUpper) {\n return format;\n }\n\n this._longDateFormat[key] = formatUpper\n .match(formattingTokens)\n .map(function (tok) {\n if (\n tok === 'MMMM' ||\n tok === 'MM' ||\n tok === 'DD' ||\n tok === 'dddd'\n ) {\n return tok.slice(1);\n }\n return tok;\n })\n .join('');\n\n return this._longDateFormat[key];\n }\n\n var defaultInvalidDate = 'Invalid date';\n\n function invalidDate() {\n return this._invalidDate;\n }\n\n var defaultOrdinal = '%d',\n defaultDayOfMonthOrdinalParse = /\\d{1,2}/;\n\n function ordinal(number) {\n return this._ordinal.replace('%d', number);\n }\n\n var defaultRelativeTime = {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n w: 'a week',\n ww: '%d weeks',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n };\n\n function relativeTime(number, withoutSuffix, string, isFuture) {\n var output = this._relativeTime[string];\n return isFunction(output)\n ? output(number, withoutSuffix, string, isFuture)\n : output.replace(/%d/i, number);\n }\n\n function pastFuture(diff, output) {\n var format = this._relativeTime[diff > 0 ? 'future' : 'past'];\n return isFunction(format) ? format(output) : format.replace(/%s/i, output);\n }\n\n var aliases = {};\n\n function addUnitAlias(unit, shorthand) {\n var lowerCase = unit.toLowerCase();\n aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;\n }\n\n function normalizeUnits(units) {\n return typeof units === 'string'\n ? aliases[units] || aliases[units.toLowerCase()]\n : undefined;\n }\n\n function normalizeObjectUnits(inputObject) {\n var normalizedInput = {},\n normalizedProp,\n prop;\n\n for (prop in inputObject) {\n if (hasOwnProp(inputObject, prop)) {\n normalizedProp = normalizeUnits(prop);\n if (normalizedProp) {\n normalizedInput[normalizedProp] = inputObject[prop];\n }\n }\n }\n\n return normalizedInput;\n }\n\n var priorities = {};\n\n function addUnitPriority(unit, priority) {\n priorities[unit] = priority;\n }\n\n function getPrioritizedUnits(unitsObj) {\n var units = [],\n u;\n for (u in unitsObj) {\n if (hasOwnProp(unitsObj, u)) {\n units.push({ unit: u, priority: priorities[u] });\n }\n }\n units.sort(function (a, b) {\n return a.priority - b.priority;\n });\n return units;\n }\n\n function isLeapYear(year) {\n return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n }\n\n function absFloor(number) {\n if (number < 0) {\n // -0 -> 0\n return Math.ceil(number) || 0;\n } else {\n return Math.floor(number);\n }\n }\n\n function toInt(argumentForCoercion) {\n var coercedNumber = +argumentForCoercion,\n value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n }\n\n function makeGetSet(unit, keepTime) {\n return function (value) {\n if (value != null) {\n set$1(this, unit, value);\n hooks.updateOffset(this, keepTime);\n return this;\n } else {\n return get(this, unit);\n }\n };\n }\n\n function get(mom, unit) {\n return mom.isValid()\n ? mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]()\n : NaN;\n }\n\n function set$1(mom, unit, value) {\n if (mom.isValid() && !isNaN(value)) {\n if (\n unit === 'FullYear' &&\n isLeapYear(mom.year()) &&\n mom.month() === 1 &&\n mom.date() === 29\n ) {\n value = toInt(value);\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](\n value,\n mom.month(),\n daysInMonth(value, mom.month())\n );\n } else {\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);\n }\n }\n }\n\n // MOMENTS\n\n function stringGet(units) {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units]();\n }\n return this;\n }\n\n function stringSet(units, value) {\n if (typeof units === 'object') {\n units = normalizeObjectUnits(units);\n var prioritized = getPrioritizedUnits(units),\n i,\n prioritizedLen = prioritized.length;\n for (i = 0; i < prioritizedLen; i++) {\n this[prioritized[i].unit](units[prioritized[i].unit]);\n }\n } else {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units](value);\n }\n }\n return this;\n }\n\n var match1 = /\\d/, // 0 - 9\n match2 = /\\d\\d/, // 00 - 99\n match3 = /\\d{3}/, // 000 - 999\n match4 = /\\d{4}/, // 0000 - 9999\n match6 = /[+-]?\\d{6}/, // -999999 - 999999\n match1to2 = /\\d\\d?/, // 0 - 99\n match3to4 = /\\d\\d\\d\\d?/, // 999 - 9999\n match5to6 = /\\d\\d\\d\\d\\d\\d?/, // 99999 - 999999\n match1to3 = /\\d{1,3}/, // 0 - 999\n match1to4 = /\\d{1,4}/, // 0 - 9999\n match1to6 = /[+-]?\\d{1,6}/, // -999999 - 999999\n matchUnsigned = /\\d+/, // 0 - inf\n matchSigned = /[+-]?\\d+/, // -inf - inf\n matchOffset = /Z|[+-]\\d\\d:?\\d\\d/gi, // +00:00 -00:00 +0000 -0000 or Z\n matchShortOffset = /Z|[+-]\\d\\d(?::?\\d\\d)?/gi, // +00 -00 +00:00 -00:00 +0000 -0000 or Z\n matchTimestamp = /[+-]?\\d+(\\.\\d{1,3})?/, // 123456789 123456789.123\n // any word (or two) characters or numbers including two/three word month in arabic.\n // includes scottish gaelic two word and hyphenated months\n matchWord =\n /[0-9]{0,256}['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFF07\\uFF10-\\uFFEF]{1,256}|[\\u0600-\\u06FF\\/]{1,256}(\\s*?[\\u0600-\\u06FF]{1,256}){1,2}/i,\n regexes;\n\n regexes = {};\n\n function addRegexToken(token, regex, strictRegex) {\n regexes[token] = isFunction(regex)\n ? regex\n : function (isStrict, localeData) {\n return isStrict && strictRegex ? strictRegex : regex;\n };\n }\n\n function getParseRegexForToken(token, config) {\n if (!hasOwnProp(regexes, token)) {\n return new RegExp(unescapeFormat(token));\n }\n\n return regexes[token](config._strict, config._locale);\n }\n\n // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript\n function unescapeFormat(s) {\n return regexEscape(\n s\n .replace('\\\\', '')\n .replace(\n /\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,\n function (matched, p1, p2, p3, p4) {\n return p1 || p2 || p3 || p4;\n }\n )\n );\n }\n\n function regexEscape(s) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n }\n\n var tokens = {};\n\n function addParseToken(token, callback) {\n var i,\n func = callback,\n tokenLen;\n if (typeof token === 'string') {\n token = [token];\n }\n if (isNumber(callback)) {\n func = function (input, array) {\n array[callback] = toInt(input);\n };\n }\n tokenLen = token.length;\n for (i = 0; i < tokenLen; i++) {\n tokens[token[i]] = func;\n }\n }\n\n function addWeekParseToken(token, callback) {\n addParseToken(token, function (input, array, config, token) {\n config._w = config._w || {};\n callback(input, config._w, config, token);\n });\n }\n\n function addTimeToArrayFromToken(token, input, config) {\n if (input != null && hasOwnProp(tokens, token)) {\n tokens[token](input, config._a, config, token);\n }\n }\n\n var YEAR = 0,\n MONTH = 1,\n DATE = 2,\n HOUR = 3,\n MINUTE = 4,\n SECOND = 5,\n MILLISECOND = 6,\n WEEK = 7,\n WEEKDAY = 8;\n\n function mod(n, x) {\n return ((n % x) + x) % x;\n }\n\n var indexOf;\n\n if (Array.prototype.indexOf) {\n indexOf = Array.prototype.indexOf;\n } else {\n indexOf = function (o) {\n // I know\n var i;\n for (i = 0; i < this.length; ++i) {\n if (this[i] === o) {\n return i;\n }\n }\n return -1;\n };\n }\n\n function daysInMonth(year, month) {\n if (isNaN(year) || isNaN(month)) {\n return NaN;\n }\n var modMonth = mod(month, 12);\n year += (month - modMonth) / 12;\n return modMonth === 1\n ? isLeapYear(year)\n ? 29\n : 28\n : 31 - ((modMonth % 7) % 2);\n }\n\n // FORMATTING\n\n addFormatToken('M', ['MM', 2], 'Mo', function () {\n return this.month() + 1;\n });\n\n addFormatToken('MMM', 0, 0, function (format) {\n return this.localeData().monthsShort(this, format);\n });\n\n addFormatToken('MMMM', 0, 0, function (format) {\n return this.localeData().months(this, format);\n });\n\n // ALIASES\n\n addUnitAlias('month', 'M');\n\n // PRIORITY\n\n addUnitPriority('month', 8);\n\n // PARSING\n\n addRegexToken('M', match1to2);\n addRegexToken('MM', match1to2, match2);\n addRegexToken('MMM', function (isStrict, locale) {\n return locale.monthsShortRegex(isStrict);\n });\n addRegexToken('MMMM', function (isStrict, locale) {\n return locale.monthsRegex(isStrict);\n });\n\n addParseToken(['M', 'MM'], function (input, array) {\n array[MONTH] = toInt(input) - 1;\n });\n\n addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {\n var month = config._locale.monthsParse(input, token, config._strict);\n // if we didn't find a month name, mark the date as invalid.\n if (month != null) {\n array[MONTH] = month;\n } else {\n getParsingFlags(config).invalidMonth = input;\n }\n });\n\n // LOCALES\n\n var defaultLocaleMonths =\n 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n defaultLocaleMonthsShort =\n 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n MONTHS_IN_FORMAT = /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/,\n defaultMonthsShortRegex = matchWord,\n defaultMonthsRegex = matchWord;\n\n function localeMonths(m, format) {\n if (!m) {\n return isArray(this._months)\n ? this._months\n : this._months['standalone'];\n }\n return isArray(this._months)\n ? this._months[m.month()]\n : this._months[\n (this._months.isFormat || MONTHS_IN_FORMAT).test(format)\n ? 'format'\n : 'standalone'\n ][m.month()];\n }\n\n function localeMonthsShort(m, format) {\n if (!m) {\n return isArray(this._monthsShort)\n ? this._monthsShort\n : this._monthsShort['standalone'];\n }\n return isArray(this._monthsShort)\n ? this._monthsShort[m.month()]\n : this._monthsShort[\n MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'\n ][m.month()];\n }\n\n function handleStrictParse(monthName, format, strict) {\n var i,\n ii,\n mom,\n llc = monthName.toLocaleLowerCase();\n if (!this._monthsParse) {\n // this is not used\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n for (i = 0; i < 12; ++i) {\n mom = createUTC([2000, i]);\n this._shortMonthsParse[i] = this.monthsShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeMonthsParse(monthName, format, strict) {\n var i, mom, regex;\n\n if (this._monthsParseExact) {\n return handleStrictParse.call(this, monthName, format, strict);\n }\n\n if (!this._monthsParse) {\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n }\n\n // TODO: add sorting\n // Sorting makes sure if one month (or abbr) is a prefix of another\n // see sorting in computeMonthsParse\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n if (strict && !this._longMonthsParse[i]) {\n this._longMonthsParse[i] = new RegExp(\n '^' + this.months(mom, '').replace('.', '') + '$',\n 'i'\n );\n this._shortMonthsParse[i] = new RegExp(\n '^' + this.monthsShort(mom, '').replace('.', '') + '$',\n 'i'\n );\n }\n if (!strict && !this._monthsParse[i]) {\n regex =\n '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');\n this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'MMMM' &&\n this._longMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'MMM' &&\n this._shortMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (!strict && this._monthsParse[i].test(monthName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function setMonth(mom, value) {\n var dayOfMonth;\n\n if (!mom.isValid()) {\n // No op\n return mom;\n }\n\n if (typeof value === 'string') {\n if (/^\\d+$/.test(value)) {\n value = toInt(value);\n } else {\n value = mom.localeData().monthsParse(value);\n // TODO: Another silent failure?\n if (!isNumber(value)) {\n return mom;\n }\n }\n }\n\n dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);\n return mom;\n }\n\n function getSetMonth(value) {\n if (value != null) {\n setMonth(this, value);\n hooks.updateOffset(this, true);\n return this;\n } else {\n return get(this, 'Month');\n }\n }\n\n function getDaysInMonth() {\n return daysInMonth(this.year(), this.month());\n }\n\n function monthsShortRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsShortStrictRegex;\n } else {\n return this._monthsShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsShortRegex')) {\n this._monthsShortRegex = defaultMonthsShortRegex;\n }\n return this._monthsShortStrictRegex && isStrict\n ? this._monthsShortStrictRegex\n : this._monthsShortRegex;\n }\n }\n\n function monthsRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsStrictRegex;\n } else {\n return this._monthsRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsRegex')) {\n this._monthsRegex = defaultMonthsRegex;\n }\n return this._monthsStrictRegex && isStrict\n ? this._monthsStrictRegex\n : this._monthsRegex;\n }\n }\n\n function computeMonthsParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom;\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n shortPieces.push(this.monthsShort(mom, ''));\n longPieces.push(this.months(mom, ''));\n mixedPieces.push(this.months(mom, ''));\n mixedPieces.push(this.monthsShort(mom, ''));\n }\n // Sorting makes sure if one month (or abbr) is a prefix of another it\n // will match the longer piece.\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 12; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n }\n for (i = 0; i < 24; i++) {\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._monthsShortRegex = this._monthsRegex;\n this._monthsStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._monthsShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n addFormatToken('Y', 0, 0, function () {\n var y = this.year();\n return y <= 9999 ? zeroFill(y, 4) : '+' + y;\n });\n\n addFormatToken(0, ['YY', 2], 0, function () {\n return this.year() % 100;\n });\n\n addFormatToken(0, ['YYYY', 4], 0, 'year');\n addFormatToken(0, ['YYYYY', 5], 0, 'year');\n addFormatToken(0, ['YYYYYY', 6, true], 0, 'year');\n\n // ALIASES\n\n addUnitAlias('year', 'y');\n\n // PRIORITIES\n\n addUnitPriority('year', 1);\n\n // PARSING\n\n addRegexToken('Y', matchSigned);\n addRegexToken('YY', match1to2, match2);\n addRegexToken('YYYY', match1to4, match4);\n addRegexToken('YYYYY', match1to6, match6);\n addRegexToken('YYYYYY', match1to6, match6);\n\n addParseToken(['YYYYY', 'YYYYYY'], YEAR);\n addParseToken('YYYY', function (input, array) {\n array[YEAR] =\n input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);\n });\n addParseToken('YY', function (input, array) {\n array[YEAR] = hooks.parseTwoDigitYear(input);\n });\n addParseToken('Y', function (input, array) {\n array[YEAR] = parseInt(input, 10);\n });\n\n // HELPERS\n\n function daysInYear(year) {\n return isLeapYear(year) ? 366 : 365;\n }\n\n // HOOKS\n\n hooks.parseTwoDigitYear = function (input) {\n return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);\n };\n\n // MOMENTS\n\n var getSetYear = makeGetSet('FullYear', true);\n\n function getIsLeapYear() {\n return isLeapYear(this.year());\n }\n\n function createDate(y, m, d, h, M, s, ms) {\n // can't just apply() to create a date:\n // https://stackoverflow.com/q/181348\n var date;\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n date = new Date(y + 400, m, d, h, M, s, ms);\n if (isFinite(date.getFullYear())) {\n date.setFullYear(y);\n }\n } else {\n date = new Date(y, m, d, h, M, s, ms);\n }\n\n return date;\n }\n\n function createUTCDate(y) {\n var date, args;\n // the Date.UTC function remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n args = Array.prototype.slice.call(arguments);\n // preserve leap years using a full 400 year cycle, then reset\n args[0] = y + 400;\n date = new Date(Date.UTC.apply(null, args));\n if (isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n } else {\n date = new Date(Date.UTC.apply(null, arguments));\n }\n\n return date;\n }\n\n // start-of-first-week - start-of-year\n function firstWeekOffset(year, dow, doy) {\n var // first-week day -- which january is always in the first week (4 for iso, 1 for other)\n fwd = 7 + dow - doy,\n // first-week day local weekday -- which local weekday is fwd\n fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;\n\n return -fwdlw + fwd - 1;\n }\n\n // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\n function dayOfYearFromWeeks(year, week, weekday, dow, doy) {\n var localWeekday = (7 + weekday - dow) % 7,\n weekOffset = firstWeekOffset(year, dow, doy),\n dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,\n resYear,\n resDayOfYear;\n\n if (dayOfYear <= 0) {\n resYear = year - 1;\n resDayOfYear = daysInYear(resYear) + dayOfYear;\n } else if (dayOfYear > daysInYear(year)) {\n resYear = year + 1;\n resDayOfYear = dayOfYear - daysInYear(year);\n } else {\n resYear = year;\n resDayOfYear = dayOfYear;\n }\n\n return {\n year: resYear,\n dayOfYear: resDayOfYear,\n };\n }\n\n function weekOfYear(mom, dow, doy) {\n var weekOffset = firstWeekOffset(mom.year(), dow, doy),\n week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,\n resWeek,\n resYear;\n\n if (week < 1) {\n resYear = mom.year() - 1;\n resWeek = week + weeksInYear(resYear, dow, doy);\n } else if (week > weeksInYear(mom.year(), dow, doy)) {\n resWeek = week - weeksInYear(mom.year(), dow, doy);\n resYear = mom.year() + 1;\n } else {\n resYear = mom.year();\n resWeek = week;\n }\n\n return {\n week: resWeek,\n year: resYear,\n };\n }\n\n function weeksInYear(year, dow, doy) {\n var weekOffset = firstWeekOffset(year, dow, doy),\n weekOffsetNext = firstWeekOffset(year + 1, dow, doy);\n return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;\n }\n\n // FORMATTING\n\n addFormatToken('w', ['ww', 2], 'wo', 'week');\n addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');\n\n // ALIASES\n\n addUnitAlias('week', 'w');\n addUnitAlias('isoWeek', 'W');\n\n // PRIORITIES\n\n addUnitPriority('week', 5);\n addUnitPriority('isoWeek', 5);\n\n // PARSING\n\n addRegexToken('w', match1to2);\n addRegexToken('ww', match1to2, match2);\n addRegexToken('W', match1to2);\n addRegexToken('WW', match1to2, match2);\n\n addWeekParseToken(\n ['w', 'ww', 'W', 'WW'],\n function (input, week, config, token) {\n week[token.substr(0, 1)] = toInt(input);\n }\n );\n\n // HELPERS\n\n // LOCALES\n\n function localeWeek(mom) {\n return weekOfYear(mom, this._week.dow, this._week.doy).week;\n }\n\n var defaultLocaleWeek = {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n };\n\n function localeFirstDayOfWeek() {\n return this._week.dow;\n }\n\n function localeFirstDayOfYear() {\n return this._week.doy;\n }\n\n // MOMENTS\n\n function getSetWeek(input) {\n var week = this.localeData().week(this);\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n function getSetISOWeek(input) {\n var week = weekOfYear(this, 1, 4).week;\n return input == null ? week : this.add((input - week) * 7, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('d', 0, 'do', 'day');\n\n addFormatToken('dd', 0, 0, function (format) {\n return this.localeData().weekdaysMin(this, format);\n });\n\n addFormatToken('ddd', 0, 0, function (format) {\n return this.localeData().weekdaysShort(this, format);\n });\n\n addFormatToken('dddd', 0, 0, function (format) {\n return this.localeData().weekdays(this, format);\n });\n\n addFormatToken('e', 0, 0, 'weekday');\n addFormatToken('E', 0, 0, 'isoWeekday');\n\n // ALIASES\n\n addUnitAlias('day', 'd');\n addUnitAlias('weekday', 'e');\n addUnitAlias('isoWeekday', 'E');\n\n // PRIORITY\n addUnitPriority('day', 11);\n addUnitPriority('weekday', 11);\n addUnitPriority('isoWeekday', 11);\n\n // PARSING\n\n addRegexToken('d', match1to2);\n addRegexToken('e', match1to2);\n addRegexToken('E', match1to2);\n addRegexToken('dd', function (isStrict, locale) {\n return locale.weekdaysMinRegex(isStrict);\n });\n addRegexToken('ddd', function (isStrict, locale) {\n return locale.weekdaysShortRegex(isStrict);\n });\n addRegexToken('dddd', function (isStrict, locale) {\n return locale.weekdaysRegex(isStrict);\n });\n\n addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {\n var weekday = config._locale.weekdaysParse(input, token, config._strict);\n // if we didn't get a weekday name, mark the date as invalid\n if (weekday != null) {\n week.d = weekday;\n } else {\n getParsingFlags(config).invalidWeekday = input;\n }\n });\n\n addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {\n week[token] = toInt(input);\n });\n\n // HELPERS\n\n function parseWeekday(input, locale) {\n if (typeof input !== 'string') {\n return input;\n }\n\n if (!isNaN(input)) {\n return parseInt(input, 10);\n }\n\n input = locale.weekdaysParse(input);\n if (typeof input === 'number') {\n return input;\n }\n\n return null;\n }\n\n function parseIsoWeekday(input, locale) {\n if (typeof input === 'string') {\n return locale.weekdaysParse(input) % 7 || 7;\n }\n return isNaN(input) ? null : input;\n }\n\n // LOCALES\n function shiftWeekdays(ws, n) {\n return ws.slice(n, 7).concat(ws.slice(0, n));\n }\n\n var defaultLocaleWeekdays =\n 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n defaultWeekdaysRegex = matchWord,\n defaultWeekdaysShortRegex = matchWord,\n defaultWeekdaysMinRegex = matchWord;\n\n function localeWeekdays(m, format) {\n var weekdays = isArray(this._weekdays)\n ? this._weekdays\n : this._weekdays[\n m && m !== true && this._weekdays.isFormat.test(format)\n ? 'format'\n : 'standalone'\n ];\n return m === true\n ? shiftWeekdays(weekdays, this._week.dow)\n : m\n ? weekdays[m.day()]\n : weekdays;\n }\n\n function localeWeekdaysShort(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysShort, this._week.dow)\n : m\n ? this._weekdaysShort[m.day()]\n : this._weekdaysShort;\n }\n\n function localeWeekdaysMin(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysMin, this._week.dow)\n : m\n ? this._weekdaysMin[m.day()]\n : this._weekdaysMin;\n }\n\n function handleStrictParse$1(weekdayName, format, strict) {\n var i,\n ii,\n mom,\n llc = weekdayName.toLocaleLowerCase();\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._minWeekdaysParse = [];\n\n for (i = 0; i < 7; ++i) {\n mom = createUTC([2000, 1]).day(i);\n this._minWeekdaysParse[i] = this.weekdaysMin(\n mom,\n ''\n ).toLocaleLowerCase();\n this._shortWeekdaysParse[i] = this.weekdaysShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n }\n\n function localeWeekdaysParse(weekdayName, format, strict) {\n var i, mom, regex;\n\n if (this._weekdaysParseExact) {\n return handleStrictParse$1.call(this, weekdayName, format, strict);\n }\n\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._minWeekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._fullWeekdaysParse = [];\n }\n\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n\n mom = createUTC([2000, 1]).day(i);\n if (strict && !this._fullWeekdaysParse[i]) {\n this._fullWeekdaysParse[i] = new RegExp(\n '^' + this.weekdays(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._shortWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysShort(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._minWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysMin(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n }\n if (!this._weekdaysParse[i]) {\n regex =\n '^' +\n this.weekdays(mom, '') +\n '|^' +\n this.weekdaysShort(mom, '') +\n '|^' +\n this.weekdaysMin(mom, '');\n this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'dddd' &&\n this._fullWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'ddd' &&\n this._shortWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'dd' &&\n this._minWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {\n return i;\n }\n }\n }\n\n // MOMENTS\n\n function getSetDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();\n if (input != null) {\n input = parseWeekday(input, this.localeData());\n return this.add(input - day, 'd');\n } else {\n return day;\n }\n }\n\n function getSetLocaleDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;\n return input == null ? weekday : this.add(input - weekday, 'd');\n }\n\n function getSetISODayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n\n // behaves the same as moment#day except\n // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)\n // as a setter, sunday should belong to the previous week.\n\n if (input != null) {\n var weekday = parseIsoWeekday(input, this.localeData());\n return this.day(this.day() % 7 ? weekday : weekday - 7);\n } else {\n return this.day() || 7;\n }\n }\n\n function weekdaysRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysStrictRegex;\n } else {\n return this._weekdaysRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n this._weekdaysRegex = defaultWeekdaysRegex;\n }\n return this._weekdaysStrictRegex && isStrict\n ? this._weekdaysStrictRegex\n : this._weekdaysRegex;\n }\n }\n\n function weekdaysShortRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysShortStrictRegex;\n } else {\n return this._weekdaysShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysShortRegex')) {\n this._weekdaysShortRegex = defaultWeekdaysShortRegex;\n }\n return this._weekdaysShortStrictRegex && isStrict\n ? this._weekdaysShortStrictRegex\n : this._weekdaysShortRegex;\n }\n }\n\n function weekdaysMinRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysMinStrictRegex;\n } else {\n return this._weekdaysMinRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysMinRegex')) {\n this._weekdaysMinRegex = defaultWeekdaysMinRegex;\n }\n return this._weekdaysMinStrictRegex && isStrict\n ? this._weekdaysMinStrictRegex\n : this._weekdaysMinRegex;\n }\n }\n\n function computeWeekdaysParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var minPieces = [],\n shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom,\n minp,\n shortp,\n longp;\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, 1]).day(i);\n minp = regexEscape(this.weekdaysMin(mom, ''));\n shortp = regexEscape(this.weekdaysShort(mom, ''));\n longp = regexEscape(this.weekdays(mom, ''));\n minPieces.push(minp);\n shortPieces.push(shortp);\n longPieces.push(longp);\n mixedPieces.push(minp);\n mixedPieces.push(shortp);\n mixedPieces.push(longp);\n }\n // Sorting makes sure if one weekday (or abbr) is a prefix of another it\n // will match the longer piece.\n minPieces.sort(cmpLenRev);\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n\n this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._weekdaysShortRegex = this._weekdaysRegex;\n this._weekdaysMinRegex = this._weekdaysRegex;\n\n this._weekdaysStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysMinStrictRegex = new RegExp(\n '^(' + minPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n function hFormat() {\n return this.hours() % 12 || 12;\n }\n\n function kFormat() {\n return this.hours() || 24;\n }\n\n addFormatToken('H', ['HH', 2], 0, 'hour');\n addFormatToken('h', ['hh', 2], 0, hFormat);\n addFormatToken('k', ['kk', 2], 0, kFormat);\n\n addFormatToken('hmm', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('hmmss', 0, 0, function () {\n return (\n '' +\n hFormat.apply(this) +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n });\n\n addFormatToken('Hmm', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2);\n });\n\n addFormatToken('Hmmss', 0, 0, function () {\n return (\n '' +\n this.hours() +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n });\n\n function meridiem(token, lowercase) {\n addFormatToken(token, 0, 0, function () {\n return this.localeData().meridiem(\n this.hours(),\n this.minutes(),\n lowercase\n );\n });\n }\n\n meridiem('a', true);\n meridiem('A', false);\n\n // ALIASES\n\n addUnitAlias('hour', 'h');\n\n // PRIORITY\n addUnitPriority('hour', 13);\n\n // PARSING\n\n function matchMeridiem(isStrict, locale) {\n return locale._meridiemParse;\n }\n\n addRegexToken('a', matchMeridiem);\n addRegexToken('A', matchMeridiem);\n addRegexToken('H', match1to2);\n addRegexToken('h', match1to2);\n addRegexToken('k', match1to2);\n addRegexToken('HH', match1to2, match2);\n addRegexToken('hh', match1to2, match2);\n addRegexToken('kk', match1to2, match2);\n\n addRegexToken('hmm', match3to4);\n addRegexToken('hmmss', match5to6);\n addRegexToken('Hmm', match3to4);\n addRegexToken('Hmmss', match5to6);\n\n addParseToken(['H', 'HH'], HOUR);\n addParseToken(['k', 'kk'], function (input, array, config) {\n var kInput = toInt(input);\n array[HOUR] = kInput === 24 ? 0 : kInput;\n });\n addParseToken(['a', 'A'], function (input, array, config) {\n config._isPm = config._locale.isPM(input);\n config._meridiem = input;\n });\n addParseToken(['h', 'hh'], function (input, array, config) {\n array[HOUR] = toInt(input);\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n getParsingFlags(config).bigHour = true;\n });\n addParseToken('Hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n });\n addParseToken('Hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n });\n\n // LOCALES\n\n function localeIsPM(input) {\n // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays\n // Using charAt should be more compatible.\n return (input + '').toLowerCase().charAt(0) === 'p';\n }\n\n var defaultLocaleMeridiemParse = /[ap]\\.?m?\\.?/i,\n // Setting the hour should keep the time, because the user explicitly\n // specified which hour they want. So trying to maintain the same hour (in\n // a new timezone) makes sense. Adding/subtracting hours does not follow\n // this rule.\n getSetHour = makeGetSet('Hours', true);\n\n function localeMeridiem(hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'pm' : 'PM';\n } else {\n return isLower ? 'am' : 'AM';\n }\n }\n\n var baseConfig = {\n calendar: defaultCalendar,\n longDateFormat: defaultLongDateFormat,\n invalidDate: defaultInvalidDate,\n ordinal: defaultOrdinal,\n dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,\n relativeTime: defaultRelativeTime,\n\n months: defaultLocaleMonths,\n monthsShort: defaultLocaleMonthsShort,\n\n week: defaultLocaleWeek,\n\n weekdays: defaultLocaleWeekdays,\n weekdaysMin: defaultLocaleWeekdaysMin,\n weekdaysShort: defaultLocaleWeekdaysShort,\n\n meridiemParse: defaultLocaleMeridiemParse,\n };\n\n // internal storage for locale config files\n var locales = {},\n localeFamilies = {},\n globalLocale;\n\n function commonPrefix(arr1, arr2) {\n var i,\n minl = Math.min(arr1.length, arr2.length);\n for (i = 0; i < minl; i += 1) {\n if (arr1[i] !== arr2[i]) {\n return i;\n }\n }\n return minl;\n }\n\n function normalizeLocale(key) {\n return key ? key.toLowerCase().replace('_', '-') : key;\n }\n\n // pick the locale from the array\n // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each\n // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root\n function chooseLocale(names) {\n var i = 0,\n j,\n next,\n locale,\n split;\n\n while (i < names.length) {\n split = normalizeLocale(names[i]).split('-');\n j = split.length;\n next = normalizeLocale(names[i + 1]);\n next = next ? next.split('-') : null;\n while (j > 0) {\n locale = loadLocale(split.slice(0, j).join('-'));\n if (locale) {\n return locale;\n }\n if (\n next &&\n next.length >= j &&\n commonPrefix(split, next) >= j - 1\n ) {\n //the next array item is better than a shallower substring of this one\n break;\n }\n j--;\n }\n i++;\n }\n return globalLocale;\n }\n\n function isLocaleNameSane(name) {\n // Prevent names that look like filesystem paths, i.e contain '/' or '\\'\n return name.match('^[^/\\\\\\\\]*$') != null;\n }\n\n function loadLocale(name) {\n var oldLocale = null,\n aliasedRequire;\n // TODO: Find a better way to register and load all the locales in Node\n if (\n locales[name] === undefined &&\n typeof module !== 'undefined' &&\n module &&\n module.exports &&\n isLocaleNameSane(name)\n ) {\n try {\n oldLocale = globalLocale._abbr;\n aliasedRequire = require;\n aliasedRequire('./locale/' + name);\n getSetGlobalLocale(oldLocale);\n } catch (e) {\n // mark as not found to avoid repeating expensive file require call causing high CPU\n // when trying to find en-US, en_US, en-us for every format call\n locales[name] = null; // null means not found\n }\n }\n return locales[name];\n }\n\n // This function will load locale and then set the global locale. If\n // no arguments are passed in, it will simply return the current global\n // locale key.\n function getSetGlobalLocale(key, values) {\n var data;\n if (key) {\n if (isUndefined(values)) {\n data = getLocale(key);\n } else {\n data = defineLocale(key, values);\n }\n\n if (data) {\n // moment.duration._locale = moment._locale = data;\n globalLocale = data;\n } else {\n if (typeof console !== 'undefined' && console.warn) {\n //warn user if arguments are passed but the locale could not be set\n console.warn(\n 'Locale ' + key + ' not found. Did you forget to load it?'\n );\n }\n }\n }\n\n return globalLocale._abbr;\n }\n\n function defineLocale(name, config) {\n if (config !== null) {\n var locale,\n parentConfig = baseConfig;\n config.abbr = name;\n if (locales[name] != null) {\n deprecateSimple(\n 'defineLocaleOverride',\n 'use moment.updateLocale(localeName, config) to change ' +\n 'an existing locale. moment.defineLocale(localeName, ' +\n 'config) should only be used for creating a new locale ' +\n 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.'\n );\n parentConfig = locales[name]._config;\n } else if (config.parentLocale != null) {\n if (locales[config.parentLocale] != null) {\n parentConfig = locales[config.parentLocale]._config;\n } else {\n locale = loadLocale(config.parentLocale);\n if (locale != null) {\n parentConfig = locale._config;\n } else {\n if (!localeFamilies[config.parentLocale]) {\n localeFamilies[config.parentLocale] = [];\n }\n localeFamilies[config.parentLocale].push({\n name: name,\n config: config,\n });\n return null;\n }\n }\n }\n locales[name] = new Locale(mergeConfigs(parentConfig, config));\n\n if (localeFamilies[name]) {\n localeFamilies[name].forEach(function (x) {\n defineLocale(x.name, x.config);\n });\n }\n\n // backwards compat for now: also set the locale\n // make sure we set the locale AFTER all child locales have been\n // created, so we won't end up with the child locale set.\n getSetGlobalLocale(name);\n\n return locales[name];\n } else {\n // useful for testing\n delete locales[name];\n return null;\n }\n }\n\n function updateLocale(name, config) {\n if (config != null) {\n var locale,\n tmpLocale,\n parentConfig = baseConfig;\n\n if (locales[name] != null && locales[name].parentLocale != null) {\n // Update existing child locale in-place to avoid memory-leaks\n locales[name].set(mergeConfigs(locales[name]._config, config));\n } else {\n // MERGE\n tmpLocale = loadLocale(name);\n if (tmpLocale != null) {\n parentConfig = tmpLocale._config;\n }\n config = mergeConfigs(parentConfig, config);\n if (tmpLocale == null) {\n // updateLocale is called for creating a new locale\n // Set abbr so it will have a name (getters return\n // undefined otherwise).\n config.abbr = name;\n }\n locale = new Locale(config);\n locale.parentLocale = locales[name];\n locales[name] = locale;\n }\n\n // backwards compat for now: also set the locale\n getSetGlobalLocale(name);\n } else {\n // pass null for config to unupdate, useful for tests\n if (locales[name] != null) {\n if (locales[name].parentLocale != null) {\n locales[name] = locales[name].parentLocale;\n if (name === getSetGlobalLocale()) {\n getSetGlobalLocale(name);\n }\n } else if (locales[name] != null) {\n delete locales[name];\n }\n }\n }\n return locales[name];\n }\n\n // returns locale data\n function getLocale(key) {\n var locale;\n\n if (key && key._locale && key._locale._abbr) {\n key = key._locale._abbr;\n }\n\n if (!key) {\n return globalLocale;\n }\n\n if (!isArray(key)) {\n //short-circuit everything else\n locale = loadLocale(key);\n if (locale) {\n return locale;\n }\n key = [key];\n }\n\n return chooseLocale(key);\n }\n\n function listLocales() {\n return keys(locales);\n }\n\n function checkOverflow(m) {\n var overflow,\n a = m._a;\n\n if (a && getParsingFlags(m).overflow === -2) {\n overflow =\n a[MONTH] < 0 || a[MONTH] > 11\n ? MONTH\n : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH])\n ? DATE\n : a[HOUR] < 0 ||\n a[HOUR] > 24 ||\n (a[HOUR] === 24 &&\n (a[MINUTE] !== 0 ||\n a[SECOND] !== 0 ||\n a[MILLISECOND] !== 0))\n ? HOUR\n : a[MINUTE] < 0 || a[MINUTE] > 59\n ? MINUTE\n : a[SECOND] < 0 || a[SECOND] > 59\n ? SECOND\n : a[MILLISECOND] < 0 || a[MILLISECOND] > 999\n ? MILLISECOND\n : -1;\n\n if (\n getParsingFlags(m)._overflowDayOfYear &&\n (overflow < YEAR || overflow > DATE)\n ) {\n overflow = DATE;\n }\n if (getParsingFlags(m)._overflowWeeks && overflow === -1) {\n overflow = WEEK;\n }\n if (getParsingFlags(m)._overflowWeekday && overflow === -1) {\n overflow = WEEKDAY;\n }\n\n getParsingFlags(m).overflow = overflow;\n }\n\n return m;\n }\n\n // iso 8601 regex\n // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)\n var extendedIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n basicIsoRegex =\n /^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d|))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n tzRegex = /Z|[+-]\\d\\d(?::?\\d\\d)?/,\n isoDates = [\n ['YYYYYY-MM-DD', /[+-]\\d{6}-\\d\\d-\\d\\d/],\n ['YYYY-MM-DD', /\\d{4}-\\d\\d-\\d\\d/],\n ['GGGG-[W]WW-E', /\\d{4}-W\\d\\d-\\d/],\n ['GGGG-[W]WW', /\\d{4}-W\\d\\d/, false],\n ['YYYY-DDD', /\\d{4}-\\d{3}/],\n ['YYYY-MM', /\\d{4}-\\d\\d/, false],\n ['YYYYYYMMDD', /[+-]\\d{10}/],\n ['YYYYMMDD', /\\d{8}/],\n ['GGGG[W]WWE', /\\d{4}W\\d{3}/],\n ['GGGG[W]WW', /\\d{4}W\\d{2}/, false],\n ['YYYYDDD', /\\d{7}/],\n ['YYYYMM', /\\d{6}/, false],\n ['YYYY', /\\d{4}/, false],\n ],\n // iso time formats and regexes\n isoTimes = [\n ['HH:mm:ss.SSSS', /\\d\\d:\\d\\d:\\d\\d\\.\\d+/],\n ['HH:mm:ss,SSSS', /\\d\\d:\\d\\d:\\d\\d,\\d+/],\n ['HH:mm:ss', /\\d\\d:\\d\\d:\\d\\d/],\n ['HH:mm', /\\d\\d:\\d\\d/],\n ['HHmmss.SSSS', /\\d\\d\\d\\d\\d\\d\\.\\d+/],\n ['HHmmss,SSSS', /\\d\\d\\d\\d\\d\\d,\\d+/],\n ['HHmmss', /\\d\\d\\d\\d\\d\\d/],\n ['HHmm', /\\d\\d\\d\\d/],\n ['HH', /\\d\\d/],\n ],\n aspNetJsonRegex = /^\\/?Date\\((-?\\d+)/i,\n // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3\n rfc2822 =\n /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/,\n obsOffsets = {\n UT: 0,\n GMT: 0,\n EDT: -4 * 60,\n EST: -5 * 60,\n CDT: -5 * 60,\n CST: -6 * 60,\n MDT: -6 * 60,\n MST: -7 * 60,\n PDT: -7 * 60,\n PST: -8 * 60,\n };\n\n // date from iso format\n function configFromISO(config) {\n var i,\n l,\n string = config._i,\n match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),\n allowTime,\n dateFormat,\n timeFormat,\n tzFormat,\n isoDatesLen = isoDates.length,\n isoTimesLen = isoTimes.length;\n\n if (match) {\n getParsingFlags(config).iso = true;\n for (i = 0, l = isoDatesLen; i < l; i++) {\n if (isoDates[i][1].exec(match[1])) {\n dateFormat = isoDates[i][0];\n allowTime = isoDates[i][2] !== false;\n break;\n }\n }\n if (dateFormat == null) {\n config._isValid = false;\n return;\n }\n if (match[3]) {\n for (i = 0, l = isoTimesLen; i < l; i++) {\n if (isoTimes[i][1].exec(match[3])) {\n // match[2] should be 'T' or space\n timeFormat = (match[2] || ' ') + isoTimes[i][0];\n break;\n }\n }\n if (timeFormat == null) {\n config._isValid = false;\n return;\n }\n }\n if (!allowTime && timeFormat != null) {\n config._isValid = false;\n return;\n }\n if (match[4]) {\n if (tzRegex.exec(match[4])) {\n tzFormat = 'Z';\n } else {\n config._isValid = false;\n return;\n }\n }\n config._f = dateFormat + (timeFormat || '') + (tzFormat || '');\n configFromStringAndFormat(config);\n } else {\n config._isValid = false;\n }\n }\n\n function extractFromRFC2822Strings(\n yearStr,\n monthStr,\n dayStr,\n hourStr,\n minuteStr,\n secondStr\n ) {\n var result = [\n untruncateYear(yearStr),\n defaultLocaleMonthsShort.indexOf(monthStr),\n parseInt(dayStr, 10),\n parseInt(hourStr, 10),\n parseInt(minuteStr, 10),\n ];\n\n if (secondStr) {\n result.push(parseInt(secondStr, 10));\n }\n\n return result;\n }\n\n function untruncateYear(yearStr) {\n var year = parseInt(yearStr, 10);\n if (year <= 49) {\n return 2000 + year;\n } else if (year <= 999) {\n return 1900 + year;\n }\n return year;\n }\n\n function preprocessRFC2822(s) {\n // Remove comments and folding whitespace and replace multiple-spaces with a single space\n return s\n .replace(/\\([^)]*\\)|[\\n\\t]/g, ' ')\n .replace(/(\\s\\s+)/g, ' ')\n .replace(/^\\s\\s*/, '')\n .replace(/\\s\\s*$/, '');\n }\n\n function checkWeekday(weekdayStr, parsedInput, config) {\n if (weekdayStr) {\n // TODO: Replace the vanilla JS Date object with an independent day-of-week check.\n var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr),\n weekdayActual = new Date(\n parsedInput[0],\n parsedInput[1],\n parsedInput[2]\n ).getDay();\n if (weekdayProvided !== weekdayActual) {\n getParsingFlags(config).weekdayMismatch = true;\n config._isValid = false;\n return false;\n }\n }\n return true;\n }\n\n function calculateOffset(obsOffset, militaryOffset, numOffset) {\n if (obsOffset) {\n return obsOffsets[obsOffset];\n } else if (militaryOffset) {\n // the only allowed military tz is Z\n return 0;\n } else {\n var hm = parseInt(numOffset, 10),\n m = hm % 100,\n h = (hm - m) / 100;\n return h * 60 + m;\n }\n }\n\n // date and time from ref 2822 format\n function configFromRFC2822(config) {\n var match = rfc2822.exec(preprocessRFC2822(config._i)),\n parsedArray;\n if (match) {\n parsedArray = extractFromRFC2822Strings(\n match[4],\n match[3],\n match[2],\n match[5],\n match[6],\n match[7]\n );\n if (!checkWeekday(match[1], parsedArray, config)) {\n return;\n }\n\n config._a = parsedArray;\n config._tzm = calculateOffset(match[8], match[9], match[10]);\n\n config._d = createUTCDate.apply(null, config._a);\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n\n getParsingFlags(config).rfc2822 = true;\n } else {\n config._isValid = false;\n }\n }\n\n // date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict\n function configFromString(config) {\n var matched = aspNetJsonRegex.exec(config._i);\n if (matched !== null) {\n config._d = new Date(+matched[1]);\n return;\n }\n\n configFromISO(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n configFromRFC2822(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n if (config._strict) {\n config._isValid = false;\n } else {\n // Final attempt, use Input Fallback\n hooks.createFromInputFallback(config);\n }\n }\n\n hooks.createFromInputFallback = deprecate(\n 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +\n 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +\n 'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.',\n function (config) {\n config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));\n }\n );\n\n // Pick the first defined of two or three arguments.\n function defaults(a, b, c) {\n if (a != null) {\n return a;\n }\n if (b != null) {\n return b;\n }\n return c;\n }\n\n function currentDateArray(config) {\n // hooks is actually the exported moment object\n var nowValue = new Date(hooks.now());\n if (config._useUTC) {\n return [\n nowValue.getUTCFullYear(),\n nowValue.getUTCMonth(),\n nowValue.getUTCDate(),\n ];\n }\n return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];\n }\n\n // convert an array to a date.\n // the array should mirror the parameters below\n // note: all values past the year are optional and will default to the lowest possible value.\n // [year, month, day , hour, minute, second, millisecond]\n function configFromArray(config) {\n var i,\n date,\n input = [],\n currentDate,\n expectedWeekday,\n yearToUse;\n\n if (config._d) {\n return;\n }\n\n currentDate = currentDateArray(config);\n\n //compute day of the year from weeks and weekdays\n if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {\n dayOfYearFromWeekInfo(config);\n }\n\n //if the day of the year is set, figure out what it is\n if (config._dayOfYear != null) {\n yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);\n\n if (\n config._dayOfYear > daysInYear(yearToUse) ||\n config._dayOfYear === 0\n ) {\n getParsingFlags(config)._overflowDayOfYear = true;\n }\n\n date = createUTCDate(yearToUse, 0, config._dayOfYear);\n config._a[MONTH] = date.getUTCMonth();\n config._a[DATE] = date.getUTCDate();\n }\n\n // Default to current date.\n // * if no year, month, day of month are given, default to today\n // * if day of month is given, default month and year\n // * if month is given, default only year\n // * if year is given, don't default anything\n for (i = 0; i < 3 && config._a[i] == null; ++i) {\n config._a[i] = input[i] = currentDate[i];\n }\n\n // Zero out whatever was not defaulted, including time\n for (; i < 7; i++) {\n config._a[i] = input[i] =\n config._a[i] == null ? (i === 2 ? 1 : 0) : config._a[i];\n }\n\n // Check for 24:00:00.000\n if (\n config._a[HOUR] === 24 &&\n config._a[MINUTE] === 0 &&\n config._a[SECOND] === 0 &&\n config._a[MILLISECOND] === 0\n ) {\n config._nextDay = true;\n config._a[HOUR] = 0;\n }\n\n config._d = (config._useUTC ? createUTCDate : createDate).apply(\n null,\n input\n );\n expectedWeekday = config._useUTC\n ? config._d.getUTCDay()\n : config._d.getDay();\n\n // Apply timezone offset from input. The actual utcOffset can be changed\n // with parseZone.\n if (config._tzm != null) {\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n }\n\n if (config._nextDay) {\n config._a[HOUR] = 24;\n }\n\n // check for mismatching day of week\n if (\n config._w &&\n typeof config._w.d !== 'undefined' &&\n config._w.d !== expectedWeekday\n ) {\n getParsingFlags(config).weekdayMismatch = true;\n }\n }\n\n function dayOfYearFromWeekInfo(config) {\n var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek;\n\n w = config._w;\n if (w.GG != null || w.W != null || w.E != null) {\n dow = 1;\n doy = 4;\n\n // TODO: We need to take the current isoWeekYear, but that depends on\n // how we interpret now (local, utc, fixed offset). So create\n // a now version of current config (take local/utc/offset flags, and\n // create now).\n weekYear = defaults(\n w.GG,\n config._a[YEAR],\n weekOfYear(createLocal(), 1, 4).year\n );\n week = defaults(w.W, 1);\n weekday = defaults(w.E, 1);\n if (weekday < 1 || weekday > 7) {\n weekdayOverflow = true;\n }\n } else {\n dow = config._locale._week.dow;\n doy = config._locale._week.doy;\n\n curWeek = weekOfYear(createLocal(), dow, doy);\n\n weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);\n\n // Default to current week.\n week = defaults(w.w, curWeek.week);\n\n if (w.d != null) {\n // weekday -- low day numbers are considered next week\n weekday = w.d;\n if (weekday < 0 || weekday > 6) {\n weekdayOverflow = true;\n }\n } else if (w.e != null) {\n // local weekday -- counting starts from beginning of week\n weekday = w.e + dow;\n if (w.e < 0 || w.e > 6) {\n weekdayOverflow = true;\n }\n } else {\n // default to beginning of week\n weekday = dow;\n }\n }\n if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {\n getParsingFlags(config)._overflowWeeks = true;\n } else if (weekdayOverflow != null) {\n getParsingFlags(config)._overflowWeekday = true;\n } else {\n temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);\n config._a[YEAR] = temp.year;\n config._dayOfYear = temp.dayOfYear;\n }\n }\n\n // constant that refers to the ISO standard\n hooks.ISO_8601 = function () {};\n\n // constant that refers to the RFC 2822 form\n hooks.RFC_2822 = function () {};\n\n // date from string and format string\n function configFromStringAndFormat(config) {\n // TODO: Move this to another part of the creation flow to prevent circular deps\n if (config._f === hooks.ISO_8601) {\n configFromISO(config);\n return;\n }\n if (config._f === hooks.RFC_2822) {\n configFromRFC2822(config);\n return;\n }\n config._a = [];\n getParsingFlags(config).empty = true;\n\n // This array is used to make a Date, either with `new Date` or `Date.UTC`\n var string = '' + config._i,\n i,\n parsedInput,\n tokens,\n token,\n skipped,\n stringLength = string.length,\n totalParsedInputLength = 0,\n era,\n tokenLen;\n\n tokens =\n expandFormat(config._f, config._locale).match(formattingTokens) || [];\n tokenLen = tokens.length;\n for (i = 0; i < tokenLen; i++) {\n token = tokens[i];\n parsedInput = (string.match(getParseRegexForToken(token, config)) ||\n [])[0];\n if (parsedInput) {\n skipped = string.substr(0, string.indexOf(parsedInput));\n if (skipped.length > 0) {\n getParsingFlags(config).unusedInput.push(skipped);\n }\n string = string.slice(\n string.indexOf(parsedInput) + parsedInput.length\n );\n totalParsedInputLength += parsedInput.length;\n }\n // don't parse if it's not a known token\n if (formatTokenFunctions[token]) {\n if (parsedInput) {\n getParsingFlags(config).empty = false;\n } else {\n getParsingFlags(config).unusedTokens.push(token);\n }\n addTimeToArrayFromToken(token, parsedInput, config);\n } else if (config._strict && !parsedInput) {\n getParsingFlags(config).unusedTokens.push(token);\n }\n }\n\n // add remaining unparsed input length to the string\n getParsingFlags(config).charsLeftOver =\n stringLength - totalParsedInputLength;\n if (string.length > 0) {\n getParsingFlags(config).unusedInput.push(string);\n }\n\n // clear _12h flag if hour is <= 12\n if (\n config._a[HOUR] <= 12 &&\n getParsingFlags(config).bigHour === true &&\n config._a[HOUR] > 0\n ) {\n getParsingFlags(config).bigHour = undefined;\n }\n\n getParsingFlags(config).parsedDateParts = config._a.slice(0);\n getParsingFlags(config).meridiem = config._meridiem;\n // handle meridiem\n config._a[HOUR] = meridiemFixWrap(\n config._locale,\n config._a[HOUR],\n config._meridiem\n );\n\n // handle era\n era = getParsingFlags(config).era;\n if (era !== null) {\n config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]);\n }\n\n configFromArray(config);\n checkOverflow(config);\n }\n\n function meridiemFixWrap(locale, hour, meridiem) {\n var isPm;\n\n if (meridiem == null) {\n // nothing to do\n return hour;\n }\n if (locale.meridiemHour != null) {\n return locale.meridiemHour(hour, meridiem);\n } else if (locale.isPM != null) {\n // Fallback\n isPm = locale.isPM(meridiem);\n if (isPm && hour < 12) {\n hour += 12;\n }\n if (!isPm && hour === 12) {\n hour = 0;\n }\n return hour;\n } else {\n // this is not supposed to happen\n return hour;\n }\n }\n\n // date from string and array of format strings\n function configFromStringAndArray(config) {\n var tempConfig,\n bestMoment,\n scoreToBeat,\n i,\n currentScore,\n validFormatFound,\n bestFormatIsValid = false,\n configfLen = config._f.length;\n\n if (configfLen === 0) {\n getParsingFlags(config).invalidFormat = true;\n config._d = new Date(NaN);\n return;\n }\n\n for (i = 0; i < configfLen; i++) {\n currentScore = 0;\n validFormatFound = false;\n tempConfig = copyConfig({}, config);\n if (config._useUTC != null) {\n tempConfig._useUTC = config._useUTC;\n }\n tempConfig._f = config._f[i];\n configFromStringAndFormat(tempConfig);\n\n if (isValid(tempConfig)) {\n validFormatFound = true;\n }\n\n // if there is any input that was not parsed add a penalty for that format\n currentScore += getParsingFlags(tempConfig).charsLeftOver;\n\n //or tokens\n currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;\n\n getParsingFlags(tempConfig).score = currentScore;\n\n if (!bestFormatIsValid) {\n if (\n scoreToBeat == null ||\n currentScore < scoreToBeat ||\n validFormatFound\n ) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n if (validFormatFound) {\n bestFormatIsValid = true;\n }\n }\n } else {\n if (currentScore < scoreToBeat) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n }\n }\n }\n\n extend(config, bestMoment || tempConfig);\n }\n\n function configFromObject(config) {\n if (config._d) {\n return;\n }\n\n var i = normalizeObjectUnits(config._i),\n dayOrDate = i.day === undefined ? i.date : i.day;\n config._a = map(\n [i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond],\n function (obj) {\n return obj && parseInt(obj, 10);\n }\n );\n\n configFromArray(config);\n }\n\n function createFromConfig(config) {\n var res = new Moment(checkOverflow(prepareConfig(config)));\n if (res._nextDay) {\n // Adding is smart enough around DST\n res.add(1, 'd');\n res._nextDay = undefined;\n }\n\n return res;\n }\n\n function prepareConfig(config) {\n var input = config._i,\n format = config._f;\n\n config._locale = config._locale || getLocale(config._l);\n\n if (input === null || (format === undefined && input === '')) {\n return createInvalid({ nullInput: true });\n }\n\n if (typeof input === 'string') {\n config._i = input = config._locale.preparse(input);\n }\n\n if (isMoment(input)) {\n return new Moment(checkOverflow(input));\n } else if (isDate(input)) {\n config._d = input;\n } else if (isArray(format)) {\n configFromStringAndArray(config);\n } else if (format) {\n configFromStringAndFormat(config);\n } else {\n configFromInput(config);\n }\n\n if (!isValid(config)) {\n config._d = null;\n }\n\n return config;\n }\n\n function configFromInput(config) {\n var input = config._i;\n if (isUndefined(input)) {\n config._d = new Date(hooks.now());\n } else if (isDate(input)) {\n config._d = new Date(input.valueOf());\n } else if (typeof input === 'string') {\n configFromString(config);\n } else if (isArray(input)) {\n config._a = map(input.slice(0), function (obj) {\n return parseInt(obj, 10);\n });\n configFromArray(config);\n } else if (isObject(input)) {\n configFromObject(config);\n } else if (isNumber(input)) {\n // from milliseconds\n config._d = new Date(input);\n } else {\n hooks.createFromInputFallback(config);\n }\n }\n\n function createLocalOrUTC(input, format, locale, strict, isUTC) {\n var c = {};\n\n if (format === true || format === false) {\n strict = format;\n format = undefined;\n }\n\n if (locale === true || locale === false) {\n strict = locale;\n locale = undefined;\n }\n\n if (\n (isObject(input) && isObjectEmpty(input)) ||\n (isArray(input) && input.length === 0)\n ) {\n input = undefined;\n }\n // object construction must be done this way.\n // https://github.com/moment/moment/issues/1423\n c._isAMomentObject = true;\n c._useUTC = c._isUTC = isUTC;\n c._l = locale;\n c._i = input;\n c._f = format;\n c._strict = strict;\n\n return createFromConfig(c);\n }\n\n function createLocal(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, false);\n }\n\n var prototypeMin = deprecate(\n 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other < this ? this : other;\n } else {\n return createInvalid();\n }\n }\n ),\n prototypeMax = deprecate(\n 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other > this ? this : other;\n } else {\n return createInvalid();\n }\n }\n );\n\n // Pick a moment m from moments so that m[fn](other) is true for all\n // other. This relies on the function fn to be transitive.\n //\n // moments should either be an array of moment objects or an array, whose\n // first element is an array of moment objects.\n function pickBy(fn, moments) {\n var res, i;\n if (moments.length === 1 && isArray(moments[0])) {\n moments = moments[0];\n }\n if (!moments.length) {\n return createLocal();\n }\n res = moments[0];\n for (i = 1; i < moments.length; ++i) {\n if (!moments[i].isValid() || moments[i][fn](res)) {\n res = moments[i];\n }\n }\n return res;\n }\n\n // TODO: Use [].sort instead?\n function min() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isBefore', args);\n }\n\n function max() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isAfter', args);\n }\n\n var now = function () {\n return Date.now ? Date.now() : +new Date();\n };\n\n var ordering = [\n 'year',\n 'quarter',\n 'month',\n 'week',\n 'day',\n 'hour',\n 'minute',\n 'second',\n 'millisecond',\n ];\n\n function isDurationValid(m) {\n var key,\n unitHasDecimal = false,\n i,\n orderLen = ordering.length;\n for (key in m) {\n if (\n hasOwnProp(m, key) &&\n !(\n indexOf.call(ordering, key) !== -1 &&\n (m[key] == null || !isNaN(m[key]))\n )\n ) {\n return false;\n }\n }\n\n for (i = 0; i < orderLen; ++i) {\n if (m[ordering[i]]) {\n if (unitHasDecimal) {\n return false; // only allow non-integers for smallest unit\n }\n if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {\n unitHasDecimal = true;\n }\n }\n }\n\n return true;\n }\n\n function isValid$1() {\n return this._isValid;\n }\n\n function createInvalid$1() {\n return createDuration(NaN);\n }\n\n function Duration(duration) {\n var normalizedInput = normalizeObjectUnits(duration),\n years = normalizedInput.year || 0,\n quarters = normalizedInput.quarter || 0,\n months = normalizedInput.month || 0,\n weeks = normalizedInput.week || normalizedInput.isoWeek || 0,\n days = normalizedInput.day || 0,\n hours = normalizedInput.hour || 0,\n minutes = normalizedInput.minute || 0,\n seconds = normalizedInput.second || 0,\n milliseconds = normalizedInput.millisecond || 0;\n\n this._isValid = isDurationValid(normalizedInput);\n\n // representation for dateAddRemove\n this._milliseconds =\n +milliseconds +\n seconds * 1e3 + // 1000\n minutes * 6e4 + // 1000 * 60\n hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978\n // Because of dateAddRemove treats 24 hours as different from a\n // day when working around DST, we need to store them separately\n this._days = +days + weeks * 7;\n // It is impossible to translate months into days without knowing\n // which months you are are talking about, so we have to store\n // it separately.\n this._months = +months + quarters * 3 + years * 12;\n\n this._data = {};\n\n this._locale = getLocale();\n\n this._bubble();\n }\n\n function isDuration(obj) {\n return obj instanceof Duration;\n }\n\n function absRound(number) {\n if (number < 0) {\n return Math.round(-1 * number) * -1;\n } else {\n return Math.round(number);\n }\n }\n\n // compare two arrays, return the number of differences\n function compareArrays(array1, array2, dontConvert) {\n var len = Math.min(array1.length, array2.length),\n lengthDiff = Math.abs(array1.length - array2.length),\n diffs = 0,\n i;\n for (i = 0; i < len; i++) {\n if (\n (dontConvert && array1[i] !== array2[i]) ||\n (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))\n ) {\n diffs++;\n }\n }\n return diffs + lengthDiff;\n }\n\n // FORMATTING\n\n function offset(token, separator) {\n addFormatToken(token, 0, 0, function () {\n var offset = this.utcOffset(),\n sign = '+';\n if (offset < 0) {\n offset = -offset;\n sign = '-';\n }\n return (\n sign +\n zeroFill(~~(offset / 60), 2) +\n separator +\n zeroFill(~~offset % 60, 2)\n );\n });\n }\n\n offset('Z', ':');\n offset('ZZ', '');\n\n // PARSING\n\n addRegexToken('Z', matchShortOffset);\n addRegexToken('ZZ', matchShortOffset);\n addParseToken(['Z', 'ZZ'], function (input, array, config) {\n config._useUTC = true;\n config._tzm = offsetFromString(matchShortOffset, input);\n });\n\n // HELPERS\n\n // timezone chunker\n // '+10:00' > ['10', '00']\n // '-1530' > ['-15', '30']\n var chunkOffset = /([\\+\\-]|\\d\\d)/gi;\n\n function offsetFromString(matcher, string) {\n var matches = (string || '').match(matcher),\n chunk,\n parts,\n minutes;\n\n if (matches === null) {\n return null;\n }\n\n chunk = matches[matches.length - 1] || [];\n parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];\n minutes = +(parts[1] * 60) + toInt(parts[2]);\n\n return minutes === 0 ? 0 : parts[0] === '+' ? minutes : -minutes;\n }\n\n // Return a moment from input, that is local/utc/zone equivalent to model.\n function cloneWithOffset(input, model) {\n var res, diff;\n if (model._isUTC) {\n res = model.clone();\n diff =\n (isMoment(input) || isDate(input)\n ? input.valueOf()\n : createLocal(input).valueOf()) - res.valueOf();\n // Use low-level api, because this fn is low-level api.\n res._d.setTime(res._d.valueOf() + diff);\n hooks.updateOffset(res, false);\n return res;\n } else {\n return createLocal(input).local();\n }\n }\n\n function getDateOffset(m) {\n // On Firefox.24 Date#getTimezoneOffset returns a floating point.\n // https://github.com/moment/moment/pull/1871\n return -Math.round(m._d.getTimezoneOffset());\n }\n\n // HOOKS\n\n // This function will be called whenever a moment is mutated.\n // It is intended to keep the offset in sync with the timezone.\n hooks.updateOffset = function () {};\n\n // MOMENTS\n\n // keepLocalTime = true means only change the timezone, without\n // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->\n // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n // +0200, so we adjust the time as needed, to be valid.\n //\n // Keeping the time actually adds/subtracts (one hour)\n // from the actual represented time. That is why we call updateOffset\n // a second time. In case it wants us to change the offset again\n // _changeInProgress == true case, then we have to adjust, because\n // there is no such time in the given timezone.\n function getSetOffset(input, keepLocalTime, keepMinutes) {\n var offset = this._offset || 0,\n localAdjust;\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n if (input != null) {\n if (typeof input === 'string') {\n input = offsetFromString(matchShortOffset, input);\n if (input === null) {\n return this;\n }\n } else if (Math.abs(input) < 16 && !keepMinutes) {\n input = input * 60;\n }\n if (!this._isUTC && keepLocalTime) {\n localAdjust = getDateOffset(this);\n }\n this._offset = input;\n this._isUTC = true;\n if (localAdjust != null) {\n this.add(localAdjust, 'm');\n }\n if (offset !== input) {\n if (!keepLocalTime || this._changeInProgress) {\n addSubtract(\n this,\n createDuration(input - offset, 'm'),\n 1,\n false\n );\n } else if (!this._changeInProgress) {\n this._changeInProgress = true;\n hooks.updateOffset(this, true);\n this._changeInProgress = null;\n }\n }\n return this;\n } else {\n return this._isUTC ? offset : getDateOffset(this);\n }\n }\n\n function getSetZone(input, keepLocalTime) {\n if (input != null) {\n if (typeof input !== 'string') {\n input = -input;\n }\n\n this.utcOffset(input, keepLocalTime);\n\n return this;\n } else {\n return -this.utcOffset();\n }\n }\n\n function setOffsetToUTC(keepLocalTime) {\n return this.utcOffset(0, keepLocalTime);\n }\n\n function setOffsetToLocal(keepLocalTime) {\n if (this._isUTC) {\n this.utcOffset(0, keepLocalTime);\n this._isUTC = false;\n\n if (keepLocalTime) {\n this.subtract(getDateOffset(this), 'm');\n }\n }\n return this;\n }\n\n function setOffsetToParsedOffset() {\n if (this._tzm != null) {\n this.utcOffset(this._tzm, false, true);\n } else if (typeof this._i === 'string') {\n var tZone = offsetFromString(matchOffset, this._i);\n if (tZone != null) {\n this.utcOffset(tZone);\n } else {\n this.utcOffset(0, true);\n }\n }\n return this;\n }\n\n function hasAlignedHourOffset(input) {\n if (!this.isValid()) {\n return false;\n }\n input = input ? createLocal(input).utcOffset() : 0;\n\n return (this.utcOffset() - input) % 60 === 0;\n }\n\n function isDaylightSavingTime() {\n return (\n this.utcOffset() > this.clone().month(0).utcOffset() ||\n this.utcOffset() > this.clone().month(5).utcOffset()\n );\n }\n\n function isDaylightSavingTimeShifted() {\n if (!isUndefined(this._isDSTShifted)) {\n return this._isDSTShifted;\n }\n\n var c = {},\n other;\n\n copyConfig(c, this);\n c = prepareConfig(c);\n\n if (c._a) {\n other = c._isUTC ? createUTC(c._a) : createLocal(c._a);\n this._isDSTShifted =\n this.isValid() && compareArrays(c._a, other.toArray()) > 0;\n } else {\n this._isDSTShifted = false;\n }\n\n return this._isDSTShifted;\n }\n\n function isLocal() {\n return this.isValid() ? !this._isUTC : false;\n }\n\n function isUtcOffset() {\n return this.isValid() ? this._isUTC : false;\n }\n\n function isUtc() {\n return this.isValid() ? this._isUTC && this._offset === 0 : false;\n }\n\n // ASP.NET json date format regex\n var aspNetRegex = /^(-|\\+)?(?:(\\d*)[. ])?(\\d+):(\\d+)(?::(\\d+)(\\.\\d*)?)?$/,\n // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n // and further modified to allow for strings containing both week and day\n isoRegex =\n /^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;\n\n function createDuration(input, key) {\n var duration = input,\n // matching against regexp is expensive, do it on demand\n match = null,\n sign,\n ret,\n diffRes;\n\n if (isDuration(input)) {\n duration = {\n ms: input._milliseconds,\n d: input._days,\n M: input._months,\n };\n } else if (isNumber(input) || !isNaN(+input)) {\n duration = {};\n if (key) {\n duration[key] = +input;\n } else {\n duration.milliseconds = +input;\n }\n } else if ((match = aspNetRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: 0,\n d: toInt(match[DATE]) * sign,\n h: toInt(match[HOUR]) * sign,\n m: toInt(match[MINUTE]) * sign,\n s: toInt(match[SECOND]) * sign,\n ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign, // the millisecond decimal point is included in the match\n };\n } else if ((match = isoRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: parseIso(match[2], sign),\n M: parseIso(match[3], sign),\n w: parseIso(match[4], sign),\n d: parseIso(match[5], sign),\n h: parseIso(match[6], sign),\n m: parseIso(match[7], sign),\n s: parseIso(match[8], sign),\n };\n } else if (duration == null) {\n // checks for null or undefined\n duration = {};\n } else if (\n typeof duration === 'object' &&\n ('from' in duration || 'to' in duration)\n ) {\n diffRes = momentsDifference(\n createLocal(duration.from),\n createLocal(duration.to)\n );\n\n duration = {};\n duration.ms = diffRes.milliseconds;\n duration.M = diffRes.months;\n }\n\n ret = new Duration(duration);\n\n if (isDuration(input) && hasOwnProp(input, '_locale')) {\n ret._locale = input._locale;\n }\n\n if (isDuration(input) && hasOwnProp(input, '_isValid')) {\n ret._isValid = input._isValid;\n }\n\n return ret;\n }\n\n createDuration.fn = Duration.prototype;\n createDuration.invalid = createInvalid$1;\n\n function parseIso(inp, sign) {\n // We'd normally use ~~inp for this, but unfortunately it also\n // converts floats to ints.\n // inp may be undefined, so careful calling replace on it.\n var res = inp && parseFloat(inp.replace(',', '.'));\n // apply sign while we're at it\n return (isNaN(res) ? 0 : res) * sign;\n }\n\n function positiveMomentsDifference(base, other) {\n var res = {};\n\n res.months =\n other.month() - base.month() + (other.year() - base.year()) * 12;\n if (base.clone().add(res.months, 'M').isAfter(other)) {\n --res.months;\n }\n\n res.milliseconds = +other - +base.clone().add(res.months, 'M');\n\n return res;\n }\n\n function momentsDifference(base, other) {\n var res;\n if (!(base.isValid() && other.isValid())) {\n return { milliseconds: 0, months: 0 };\n }\n\n other = cloneWithOffset(other, base);\n if (base.isBefore(other)) {\n res = positiveMomentsDifference(base, other);\n } else {\n res = positiveMomentsDifference(other, base);\n res.milliseconds = -res.milliseconds;\n res.months = -res.months;\n }\n\n return res;\n }\n\n // TODO: remove 'name' arg after deprecation is removed\n function createAdder(direction, name) {\n return function (val, period) {\n var dur, tmp;\n //invert the arguments, but complain about it\n if (period !== null && !isNaN(+period)) {\n deprecateSimple(\n name,\n 'moment().' +\n name +\n '(period, number) is deprecated. Please use moment().' +\n name +\n '(number, period). ' +\n 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.'\n );\n tmp = val;\n val = period;\n period = tmp;\n }\n\n dur = createDuration(val, period);\n addSubtract(this, dur, direction);\n return this;\n };\n }\n\n function addSubtract(mom, duration, isAdding, updateOffset) {\n var milliseconds = duration._milliseconds,\n days = absRound(duration._days),\n months = absRound(duration._months);\n\n if (!mom.isValid()) {\n // No op\n return;\n }\n\n updateOffset = updateOffset == null ? true : updateOffset;\n\n if (months) {\n setMonth(mom, get(mom, 'Month') + months * isAdding);\n }\n if (days) {\n set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);\n }\n if (milliseconds) {\n mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);\n }\n if (updateOffset) {\n hooks.updateOffset(mom, days || months);\n }\n }\n\n var add = createAdder(1, 'add'),\n subtract = createAdder(-1, 'subtract');\n\n function isString(input) {\n return typeof input === 'string' || input instanceof String;\n }\n\n // type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined\n function isMomentInput(input) {\n return (\n isMoment(input) ||\n isDate(input) ||\n isString(input) ||\n isNumber(input) ||\n isNumberOrStringArray(input) ||\n isMomentInputObject(input) ||\n input === null ||\n input === undefined\n );\n }\n\n function isMomentInputObject(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'years',\n 'year',\n 'y',\n 'months',\n 'month',\n 'M',\n 'days',\n 'day',\n 'd',\n 'dates',\n 'date',\n 'D',\n 'hours',\n 'hour',\n 'h',\n 'minutes',\n 'minute',\n 'm',\n 'seconds',\n 'second',\n 's',\n 'milliseconds',\n 'millisecond',\n 'ms',\n ],\n i,\n property,\n propertyLen = properties.length;\n\n for (i = 0; i < propertyLen; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n }\n\n function isNumberOrStringArray(input) {\n var arrayTest = isArray(input),\n dataTypeTest = false;\n if (arrayTest) {\n dataTypeTest =\n input.filter(function (item) {\n return !isNumber(item) && isString(input);\n }).length === 0;\n }\n return arrayTest && dataTypeTest;\n }\n\n function isCalendarSpec(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'sameDay',\n 'nextDay',\n 'lastDay',\n 'nextWeek',\n 'lastWeek',\n 'sameElse',\n ],\n i,\n property;\n\n for (i = 0; i < properties.length; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n }\n\n function getCalendarFormat(myMoment, now) {\n var diff = myMoment.diff(now, 'days', true);\n return diff < -6\n ? 'sameElse'\n : diff < -1\n ? 'lastWeek'\n : diff < 0\n ? 'lastDay'\n : diff < 1\n ? 'sameDay'\n : diff < 2\n ? 'nextDay'\n : diff < 7\n ? 'nextWeek'\n : 'sameElse';\n }\n\n function calendar$1(time, formats) {\n // Support for single parameter, formats only overload to the calendar function\n if (arguments.length === 1) {\n if (!arguments[0]) {\n time = undefined;\n formats = undefined;\n } else if (isMomentInput(arguments[0])) {\n time = arguments[0];\n formats = undefined;\n } else if (isCalendarSpec(arguments[0])) {\n formats = arguments[0];\n time = undefined;\n }\n }\n // We want to compare the start of today, vs this.\n // Getting start-of-today depends on whether we're local/utc/offset or not.\n var now = time || createLocal(),\n sod = cloneWithOffset(now, this).startOf('day'),\n format = hooks.calendarFormat(this, sod) || 'sameElse',\n output =\n formats &&\n (isFunction(formats[format])\n ? formats[format].call(this, now)\n : formats[format]);\n\n return this.format(\n output || this.localeData().calendar(format, this, createLocal(now))\n );\n }\n\n function clone() {\n return new Moment(this);\n }\n\n function isAfter(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() > localInput.valueOf();\n } else {\n return localInput.valueOf() < this.clone().startOf(units).valueOf();\n }\n }\n\n function isBefore(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() < localInput.valueOf();\n } else {\n return this.clone().endOf(units).valueOf() < localInput.valueOf();\n }\n }\n\n function isBetween(from, to, units, inclusivity) {\n var localFrom = isMoment(from) ? from : createLocal(from),\n localTo = isMoment(to) ? to : createLocal(to);\n if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) {\n return false;\n }\n inclusivity = inclusivity || '()';\n return (\n (inclusivity[0] === '('\n ? this.isAfter(localFrom, units)\n : !this.isBefore(localFrom, units)) &&\n (inclusivity[1] === ')'\n ? this.isBefore(localTo, units)\n : !this.isAfter(localTo, units))\n );\n }\n\n function isSame(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input),\n inputMs;\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() === localInput.valueOf();\n } else {\n inputMs = localInput.valueOf();\n return (\n this.clone().startOf(units).valueOf() <= inputMs &&\n inputMs <= this.clone().endOf(units).valueOf()\n );\n }\n }\n\n function isSameOrAfter(input, units) {\n return this.isSame(input, units) || this.isAfter(input, units);\n }\n\n function isSameOrBefore(input, units) {\n return this.isSame(input, units) || this.isBefore(input, units);\n }\n\n function diff(input, units, asFloat) {\n var that, zoneDelta, output;\n\n if (!this.isValid()) {\n return NaN;\n }\n\n that = cloneWithOffset(input, this);\n\n if (!that.isValid()) {\n return NaN;\n }\n\n zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;\n\n units = normalizeUnits(units);\n\n switch (units) {\n case 'year':\n output = monthDiff(this, that) / 12;\n break;\n case 'month':\n output = monthDiff(this, that);\n break;\n case 'quarter':\n output = monthDiff(this, that) / 3;\n break;\n case 'second':\n output = (this - that) / 1e3;\n break; // 1000\n case 'minute':\n output = (this - that) / 6e4;\n break; // 1000 * 60\n case 'hour':\n output = (this - that) / 36e5;\n break; // 1000 * 60 * 60\n case 'day':\n output = (this - that - zoneDelta) / 864e5;\n break; // 1000 * 60 * 60 * 24, negate dst\n case 'week':\n output = (this - that - zoneDelta) / 6048e5;\n break; // 1000 * 60 * 60 * 24 * 7, negate dst\n default:\n output = this - that;\n }\n\n return asFloat ? output : absFloor(output);\n }\n\n function monthDiff(a, b) {\n if (a.date() < b.date()) {\n // end-of-month calculations work correct when the start month has more\n // days than the end month.\n return -monthDiff(b, a);\n }\n // difference in months\n var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()),\n // b is in (anchor - 1 month, anchor + 1 month)\n anchor = a.clone().add(wholeMonthDiff, 'months'),\n anchor2,\n adjust;\n\n if (b - anchor < 0) {\n anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor2 - anchor);\n }\n\n //check for negative zero, return zero if negative zero\n return -(wholeMonthDiff + adjust) || 0;\n }\n\n hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';\n hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';\n\n function toString() {\n return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n }\n\n function toISOString(keepOffset) {\n if (!this.isValid()) {\n return null;\n }\n var utc = keepOffset !== true,\n m = utc ? this.clone().utc() : this;\n if (m.year() < 0 || m.year() > 9999) {\n return formatMoment(\n m,\n utc\n ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'\n : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n if (isFunction(Date.prototype.toISOString)) {\n // native implementation is ~50x faster, use it when we can\n if (utc) {\n return this.toDate().toISOString();\n } else {\n return new Date(this.valueOf() + this.utcOffset() * 60 * 1000)\n .toISOString()\n .replace('Z', formatMoment(m, 'Z'));\n }\n }\n return formatMoment(\n m,\n utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n\n /**\n * Return a human readable representation of a moment that can\n * also be evaluated to get a new moment which is the same\n *\n * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects\n */\n function inspect() {\n if (!this.isValid()) {\n return 'moment.invalid(/* ' + this._i + ' */)';\n }\n var func = 'moment',\n zone = '',\n prefix,\n year,\n datetime,\n suffix;\n if (!this.isLocal()) {\n func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';\n zone = 'Z';\n }\n prefix = '[' + func + '(\"]';\n year = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY';\n datetime = '-MM-DD[T]HH:mm:ss.SSS';\n suffix = zone + '[\")]';\n\n return this.format(prefix + year + datetime + suffix);\n }\n\n function format(inputString) {\n if (!inputString) {\n inputString = this.isUtc()\n ? hooks.defaultFormatUtc\n : hooks.defaultFormat;\n }\n var output = formatMoment(this, inputString);\n return this.localeData().postformat(output);\n }\n\n function from(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ to: this, from: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function fromNow(withoutSuffix) {\n return this.from(createLocal(), withoutSuffix);\n }\n\n function to(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ from: this, to: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n }\n\n function toNow(withoutSuffix) {\n return this.to(createLocal(), withoutSuffix);\n }\n\n // If passed a locale key, it will set the locale for this\n // instance. Otherwise, it will return the locale configuration\n // variables for this instance.\n function locale(key) {\n var newLocaleData;\n\n if (key === undefined) {\n return this._locale._abbr;\n } else {\n newLocaleData = getLocale(key);\n if (newLocaleData != null) {\n this._locale = newLocaleData;\n }\n return this;\n }\n }\n\n var lang = deprecate(\n 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n function (key) {\n if (key === undefined) {\n return this.localeData();\n } else {\n return this.locale(key);\n }\n }\n );\n\n function localeData() {\n return this._locale;\n }\n\n var MS_PER_SECOND = 1000,\n MS_PER_MINUTE = 60 * MS_PER_SECOND,\n MS_PER_HOUR = 60 * MS_PER_MINUTE,\n MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR;\n\n // actual modulo - handles negative numbers (for dates before 1970):\n function mod$1(dividend, divisor) {\n return ((dividend % divisor) + divisor) % divisor;\n }\n\n function localStartOfDate(y, m, d) {\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return new Date(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return new Date(y, m, d).valueOf();\n }\n }\n\n function utcStartOfDate(y, m, d) {\n // Date.UTC remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return Date.UTC(y, m, d);\n }\n }\n\n function startOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year(), 0, 1);\n break;\n case 'quarter':\n time = startOfDate(\n this.year(),\n this.month() - (this.month() % 3),\n 1\n );\n break;\n case 'month':\n time = startOfDate(this.year(), this.month(), 1);\n break;\n case 'week':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday()\n );\n break;\n case 'isoWeek':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1)\n );\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date());\n break;\n case 'hour':\n time = this._d.valueOf();\n time -= mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n );\n break;\n case 'minute':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_MINUTE);\n break;\n case 'second':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_SECOND);\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function endOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year() + 1, 0, 1) - 1;\n break;\n case 'quarter':\n time =\n startOfDate(\n this.year(),\n this.month() - (this.month() % 3) + 3,\n 1\n ) - 1;\n break;\n case 'month':\n time = startOfDate(this.year(), this.month() + 1, 1) - 1;\n break;\n case 'week':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday() + 7\n ) - 1;\n break;\n case 'isoWeek':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1) + 7\n ) - 1;\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;\n break;\n case 'hour':\n time = this._d.valueOf();\n time +=\n MS_PER_HOUR -\n mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n ) -\n 1;\n break;\n case 'minute':\n time = this._d.valueOf();\n time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;\n break;\n case 'second':\n time = this._d.valueOf();\n time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n }\n\n function valueOf() {\n return this._d.valueOf() - (this._offset || 0) * 60000;\n }\n\n function unix() {\n return Math.floor(this.valueOf() / 1000);\n }\n\n function toDate() {\n return new Date(this.valueOf());\n }\n\n function toArray() {\n var m = this;\n return [\n m.year(),\n m.month(),\n m.date(),\n m.hour(),\n m.minute(),\n m.second(),\n m.millisecond(),\n ];\n }\n\n function toObject() {\n var m = this;\n return {\n years: m.year(),\n months: m.month(),\n date: m.date(),\n hours: m.hours(),\n minutes: m.minutes(),\n seconds: m.seconds(),\n milliseconds: m.milliseconds(),\n };\n }\n\n function toJSON() {\n // new Date(NaN).toJSON() === null\n return this.isValid() ? this.toISOString() : null;\n }\n\n function isValid$2() {\n return isValid(this);\n }\n\n function parsingFlags() {\n return extend({}, getParsingFlags(this));\n }\n\n function invalidAt() {\n return getParsingFlags(this).overflow;\n }\n\n function creationData() {\n return {\n input: this._i,\n format: this._f,\n locale: this._locale,\n isUTC: this._isUTC,\n strict: this._strict,\n };\n }\n\n addFormatToken('N', 0, 0, 'eraAbbr');\n addFormatToken('NN', 0, 0, 'eraAbbr');\n addFormatToken('NNN', 0, 0, 'eraAbbr');\n addFormatToken('NNNN', 0, 0, 'eraName');\n addFormatToken('NNNNN', 0, 0, 'eraNarrow');\n\n addFormatToken('y', ['y', 1], 'yo', 'eraYear');\n addFormatToken('y', ['yy', 2], 0, 'eraYear');\n addFormatToken('y', ['yyy', 3], 0, 'eraYear');\n addFormatToken('y', ['yyyy', 4], 0, 'eraYear');\n\n addRegexToken('N', matchEraAbbr);\n addRegexToken('NN', matchEraAbbr);\n addRegexToken('NNN', matchEraAbbr);\n addRegexToken('NNNN', matchEraName);\n addRegexToken('NNNNN', matchEraNarrow);\n\n addParseToken(\n ['N', 'NN', 'NNN', 'NNNN', 'NNNNN'],\n function (input, array, config, token) {\n var era = config._locale.erasParse(input, token, config._strict);\n if (era) {\n getParsingFlags(config).era = era;\n } else {\n getParsingFlags(config).invalidEra = input;\n }\n }\n );\n\n addRegexToken('y', matchUnsigned);\n addRegexToken('yy', matchUnsigned);\n addRegexToken('yyy', matchUnsigned);\n addRegexToken('yyyy', matchUnsigned);\n addRegexToken('yo', matchEraYearOrdinal);\n\n addParseToken(['y', 'yy', 'yyy', 'yyyy'], YEAR);\n addParseToken(['yo'], function (input, array, config, token) {\n var match;\n if (config._locale._eraYearOrdinalRegex) {\n match = input.match(config._locale._eraYearOrdinalRegex);\n }\n\n if (config._locale.eraYearOrdinalParse) {\n array[YEAR] = config._locale.eraYearOrdinalParse(input, match);\n } else {\n array[YEAR] = parseInt(input, 10);\n }\n });\n\n function localeEras(m, format) {\n var i,\n l,\n date,\n eras = this._eras || getLocale('en')._eras;\n for (i = 0, l = eras.length; i < l; ++i) {\n switch (typeof eras[i].since) {\n case 'string':\n // truncate time\n date = hooks(eras[i].since).startOf('day');\n eras[i].since = date.valueOf();\n break;\n }\n\n switch (typeof eras[i].until) {\n case 'undefined':\n eras[i].until = +Infinity;\n break;\n case 'string':\n // truncate time\n date = hooks(eras[i].until).startOf('day').valueOf();\n eras[i].until = date.valueOf();\n break;\n }\n }\n return eras;\n }\n\n function localeErasParse(eraName, format, strict) {\n var i,\n l,\n eras = this.eras(),\n name,\n abbr,\n narrow;\n eraName = eraName.toUpperCase();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n name = eras[i].name.toUpperCase();\n abbr = eras[i].abbr.toUpperCase();\n narrow = eras[i].narrow.toUpperCase();\n\n if (strict) {\n switch (format) {\n case 'N':\n case 'NN':\n case 'NNN':\n if (abbr === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNN':\n if (name === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNNN':\n if (narrow === eraName) {\n return eras[i];\n }\n break;\n }\n } else if ([name, abbr, narrow].indexOf(eraName) >= 0) {\n return eras[i];\n }\n }\n }\n\n function localeErasConvertYear(era, year) {\n var dir = era.since <= era.until ? +1 : -1;\n if (year === undefined) {\n return hooks(era.since).year();\n } else {\n return hooks(era.since).year() + (year - era.offset) * dir;\n }\n }\n\n function getEraName() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].name;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].name;\n }\n }\n\n return '';\n }\n\n function getEraNarrow() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].narrow;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].narrow;\n }\n }\n\n return '';\n }\n\n function getEraAbbr() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].abbr;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].abbr;\n }\n }\n\n return '';\n }\n\n function getEraYear() {\n var i,\n l,\n dir,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n dir = eras[i].since <= eras[i].until ? +1 : -1;\n\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (\n (eras[i].since <= val && val <= eras[i].until) ||\n (eras[i].until <= val && val <= eras[i].since)\n ) {\n return (\n (this.year() - hooks(eras[i].since).year()) * dir +\n eras[i].offset\n );\n }\n }\n\n return this.year();\n }\n\n function erasNameRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNameRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNameRegex : this._erasRegex;\n }\n\n function erasAbbrRegex(isStrict) {\n if (!hasOwnProp(this, '_erasAbbrRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasAbbrRegex : this._erasRegex;\n }\n\n function erasNarrowRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNarrowRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNarrowRegex : this._erasRegex;\n }\n\n function matchEraAbbr(isStrict, locale) {\n return locale.erasAbbrRegex(isStrict);\n }\n\n function matchEraName(isStrict, locale) {\n return locale.erasNameRegex(isStrict);\n }\n\n function matchEraNarrow(isStrict, locale) {\n return locale.erasNarrowRegex(isStrict);\n }\n\n function matchEraYearOrdinal(isStrict, locale) {\n return locale._eraYearOrdinalRegex || matchUnsigned;\n }\n\n function computeErasParse() {\n var abbrPieces = [],\n namePieces = [],\n narrowPieces = [],\n mixedPieces = [],\n i,\n l,\n eras = this.eras();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n namePieces.push(regexEscape(eras[i].name));\n abbrPieces.push(regexEscape(eras[i].abbr));\n narrowPieces.push(regexEscape(eras[i].narrow));\n\n mixedPieces.push(regexEscape(eras[i].name));\n mixedPieces.push(regexEscape(eras[i].abbr));\n mixedPieces.push(regexEscape(eras[i].narrow));\n }\n\n this._erasRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._erasNameRegex = new RegExp('^(' + namePieces.join('|') + ')', 'i');\n this._erasAbbrRegex = new RegExp('^(' + abbrPieces.join('|') + ')', 'i');\n this._erasNarrowRegex = new RegExp(\n '^(' + narrowPieces.join('|') + ')',\n 'i'\n );\n }\n\n // FORMATTING\n\n addFormatToken(0, ['gg', 2], 0, function () {\n return this.weekYear() % 100;\n });\n\n addFormatToken(0, ['GG', 2], 0, function () {\n return this.isoWeekYear() % 100;\n });\n\n function addWeekYearFormatToken(token, getter) {\n addFormatToken(0, [token, token.length], 0, getter);\n }\n\n addWeekYearFormatToken('gggg', 'weekYear');\n addWeekYearFormatToken('ggggg', 'weekYear');\n addWeekYearFormatToken('GGGG', 'isoWeekYear');\n addWeekYearFormatToken('GGGGG', 'isoWeekYear');\n\n // ALIASES\n\n addUnitAlias('weekYear', 'gg');\n addUnitAlias('isoWeekYear', 'GG');\n\n // PRIORITY\n\n addUnitPriority('weekYear', 1);\n addUnitPriority('isoWeekYear', 1);\n\n // PARSING\n\n addRegexToken('G', matchSigned);\n addRegexToken('g', matchSigned);\n addRegexToken('GG', match1to2, match2);\n addRegexToken('gg', match1to2, match2);\n addRegexToken('GGGG', match1to4, match4);\n addRegexToken('gggg', match1to4, match4);\n addRegexToken('GGGGG', match1to6, match6);\n addRegexToken('ggggg', match1to6, match6);\n\n addWeekParseToken(\n ['gggg', 'ggggg', 'GGGG', 'GGGGG'],\n function (input, week, config, token) {\n week[token.substr(0, 2)] = toInt(input);\n }\n );\n\n addWeekParseToken(['gg', 'GG'], function (input, week, config, token) {\n week[token] = hooks.parseTwoDigitYear(input);\n });\n\n // MOMENTS\n\n function getSetWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.week(),\n this.weekday(),\n this.localeData()._week.dow,\n this.localeData()._week.doy\n );\n }\n\n function getSetISOWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.isoWeek(),\n this.isoWeekday(),\n 1,\n 4\n );\n }\n\n function getISOWeeksInYear() {\n return weeksInYear(this.year(), 1, 4);\n }\n\n function getISOWeeksInISOWeekYear() {\n return weeksInYear(this.isoWeekYear(), 1, 4);\n }\n\n function getWeeksInYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n }\n\n function getWeeksInWeekYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy);\n }\n\n function getSetWeekYearHelper(input, week, weekday, dow, doy) {\n var weeksTarget;\n if (input == null) {\n return weekOfYear(this, dow, doy).year;\n } else {\n weeksTarget = weeksInYear(input, dow, doy);\n if (week > weeksTarget) {\n week = weeksTarget;\n }\n return setWeekAll.call(this, input, week, weekday, dow, doy);\n }\n }\n\n function setWeekAll(weekYear, week, weekday, dow, doy) {\n var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),\n date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);\n\n this.year(date.getUTCFullYear());\n this.month(date.getUTCMonth());\n this.date(date.getUTCDate());\n return this;\n }\n\n // FORMATTING\n\n addFormatToken('Q', 0, 'Qo', 'quarter');\n\n // ALIASES\n\n addUnitAlias('quarter', 'Q');\n\n // PRIORITY\n\n addUnitPriority('quarter', 7);\n\n // PARSING\n\n addRegexToken('Q', match1);\n addParseToken('Q', function (input, array) {\n array[MONTH] = (toInt(input) - 1) * 3;\n });\n\n // MOMENTS\n\n function getSetQuarter(input) {\n return input == null\n ? Math.ceil((this.month() + 1) / 3)\n : this.month((input - 1) * 3 + (this.month() % 3));\n }\n\n // FORMATTING\n\n addFormatToken('D', ['DD', 2], 'Do', 'date');\n\n // ALIASES\n\n addUnitAlias('date', 'D');\n\n // PRIORITY\n addUnitPriority('date', 9);\n\n // PARSING\n\n addRegexToken('D', match1to2);\n addRegexToken('DD', match1to2, match2);\n addRegexToken('Do', function (isStrict, locale) {\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n return isStrict\n ? locale._dayOfMonthOrdinalParse || locale._ordinalParse\n : locale._dayOfMonthOrdinalParseLenient;\n });\n\n addParseToken(['D', 'DD'], DATE);\n addParseToken('Do', function (input, array) {\n array[DATE] = toInt(input.match(match1to2)[0]);\n });\n\n // MOMENTS\n\n var getSetDayOfMonth = makeGetSet('Date', true);\n\n // FORMATTING\n\n addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');\n\n // ALIASES\n\n addUnitAlias('dayOfYear', 'DDD');\n\n // PRIORITY\n addUnitPriority('dayOfYear', 4);\n\n // PARSING\n\n addRegexToken('DDD', match1to3);\n addRegexToken('DDDD', match3);\n addParseToken(['DDD', 'DDDD'], function (input, array, config) {\n config._dayOfYear = toInt(input);\n });\n\n // HELPERS\n\n // MOMENTS\n\n function getSetDayOfYear(input) {\n var dayOfYear =\n Math.round(\n (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5\n ) + 1;\n return input == null ? dayOfYear : this.add(input - dayOfYear, 'd');\n }\n\n // FORMATTING\n\n addFormatToken('m', ['mm', 2], 0, 'minute');\n\n // ALIASES\n\n addUnitAlias('minute', 'm');\n\n // PRIORITY\n\n addUnitPriority('minute', 14);\n\n // PARSING\n\n addRegexToken('m', match1to2);\n addRegexToken('mm', match1to2, match2);\n addParseToken(['m', 'mm'], MINUTE);\n\n // MOMENTS\n\n var getSetMinute = makeGetSet('Minutes', false);\n\n // FORMATTING\n\n addFormatToken('s', ['ss', 2], 0, 'second');\n\n // ALIASES\n\n addUnitAlias('second', 's');\n\n // PRIORITY\n\n addUnitPriority('second', 15);\n\n // PARSING\n\n addRegexToken('s', match1to2);\n addRegexToken('ss', match1to2, match2);\n addParseToken(['s', 'ss'], SECOND);\n\n // MOMENTS\n\n var getSetSecond = makeGetSet('Seconds', false);\n\n // FORMATTING\n\n addFormatToken('S', 0, 0, function () {\n return ~~(this.millisecond() / 100);\n });\n\n addFormatToken(0, ['SS', 2], 0, function () {\n return ~~(this.millisecond() / 10);\n });\n\n addFormatToken(0, ['SSS', 3], 0, 'millisecond');\n addFormatToken(0, ['SSSS', 4], 0, function () {\n return this.millisecond() * 10;\n });\n addFormatToken(0, ['SSSSS', 5], 0, function () {\n return this.millisecond() * 100;\n });\n addFormatToken(0, ['SSSSSS', 6], 0, function () {\n return this.millisecond() * 1000;\n });\n addFormatToken(0, ['SSSSSSS', 7], 0, function () {\n return this.millisecond() * 10000;\n });\n addFormatToken(0, ['SSSSSSSS', 8], 0, function () {\n return this.millisecond() * 100000;\n });\n addFormatToken(0, ['SSSSSSSSS', 9], 0, function () {\n return this.millisecond() * 1000000;\n });\n\n // ALIASES\n\n addUnitAlias('millisecond', 'ms');\n\n // PRIORITY\n\n addUnitPriority('millisecond', 16);\n\n // PARSING\n\n addRegexToken('S', match1to3, match1);\n addRegexToken('SS', match1to3, match2);\n addRegexToken('SSS', match1to3, match3);\n\n var token, getSetMillisecond;\n for (token = 'SSSS'; token.length <= 9; token += 'S') {\n addRegexToken(token, matchUnsigned);\n }\n\n function parseMs(input, array) {\n array[MILLISECOND] = toInt(('0.' + input) * 1000);\n }\n\n for (token = 'S'; token.length <= 9; token += 'S') {\n addParseToken(token, parseMs);\n }\n\n getSetMillisecond = makeGetSet('Milliseconds', false);\n\n // FORMATTING\n\n addFormatToken('z', 0, 0, 'zoneAbbr');\n addFormatToken('zz', 0, 0, 'zoneName');\n\n // MOMENTS\n\n function getZoneAbbr() {\n return this._isUTC ? 'UTC' : '';\n }\n\n function getZoneName() {\n return this._isUTC ? 'Coordinated Universal Time' : '';\n }\n\n var proto = Moment.prototype;\n\n proto.add = add;\n proto.calendar = calendar$1;\n proto.clone = clone;\n proto.diff = diff;\n proto.endOf = endOf;\n proto.format = format;\n proto.from = from;\n proto.fromNow = fromNow;\n proto.to = to;\n proto.toNow = toNow;\n proto.get = stringGet;\n proto.invalidAt = invalidAt;\n proto.isAfter = isAfter;\n proto.isBefore = isBefore;\n proto.isBetween = isBetween;\n proto.isSame = isSame;\n proto.isSameOrAfter = isSameOrAfter;\n proto.isSameOrBefore = isSameOrBefore;\n proto.isValid = isValid$2;\n proto.lang = lang;\n proto.locale = locale;\n proto.localeData = localeData;\n proto.max = prototypeMax;\n proto.min = prototypeMin;\n proto.parsingFlags = parsingFlags;\n proto.set = stringSet;\n proto.startOf = startOf;\n proto.subtract = subtract;\n proto.toArray = toArray;\n proto.toObject = toObject;\n proto.toDate = toDate;\n proto.toISOString = toISOString;\n proto.inspect = inspect;\n if (typeof Symbol !== 'undefined' && Symbol.for != null) {\n proto[Symbol.for('nodejs.util.inspect.custom')] = function () {\n return 'Moment<' + this.format() + '>';\n };\n }\n proto.toJSON = toJSON;\n proto.toString = toString;\n proto.unix = unix;\n proto.valueOf = valueOf;\n proto.creationData = creationData;\n proto.eraName = getEraName;\n proto.eraNarrow = getEraNarrow;\n proto.eraAbbr = getEraAbbr;\n proto.eraYear = getEraYear;\n proto.year = getSetYear;\n proto.isLeapYear = getIsLeapYear;\n proto.weekYear = getSetWeekYear;\n proto.isoWeekYear = getSetISOWeekYear;\n proto.quarter = proto.quarters = getSetQuarter;\n proto.month = getSetMonth;\n proto.daysInMonth = getDaysInMonth;\n proto.week = proto.weeks = getSetWeek;\n proto.isoWeek = proto.isoWeeks = getSetISOWeek;\n proto.weeksInYear = getWeeksInYear;\n proto.weeksInWeekYear = getWeeksInWeekYear;\n proto.isoWeeksInYear = getISOWeeksInYear;\n proto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear;\n proto.date = getSetDayOfMonth;\n proto.day = proto.days = getSetDayOfWeek;\n proto.weekday = getSetLocaleDayOfWeek;\n proto.isoWeekday = getSetISODayOfWeek;\n proto.dayOfYear = getSetDayOfYear;\n proto.hour = proto.hours = getSetHour;\n proto.minute = proto.minutes = getSetMinute;\n proto.second = proto.seconds = getSetSecond;\n proto.millisecond = proto.milliseconds = getSetMillisecond;\n proto.utcOffset = getSetOffset;\n proto.utc = setOffsetToUTC;\n proto.local = setOffsetToLocal;\n proto.parseZone = setOffsetToParsedOffset;\n proto.hasAlignedHourOffset = hasAlignedHourOffset;\n proto.isDST = isDaylightSavingTime;\n proto.isLocal = isLocal;\n proto.isUtcOffset = isUtcOffset;\n proto.isUtc = isUtc;\n proto.isUTC = isUtc;\n proto.zoneAbbr = getZoneAbbr;\n proto.zoneName = getZoneName;\n proto.dates = deprecate(\n 'dates accessor is deprecated. Use date instead.',\n getSetDayOfMonth\n );\n proto.months = deprecate(\n 'months accessor is deprecated. Use month instead',\n getSetMonth\n );\n proto.years = deprecate(\n 'years accessor is deprecated. Use year instead',\n getSetYear\n );\n proto.zone = deprecate(\n 'moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/',\n getSetZone\n );\n proto.isDSTShifted = deprecate(\n 'isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information',\n isDaylightSavingTimeShifted\n );\n\n function createUnix(input) {\n return createLocal(input * 1000);\n }\n\n function createInZone() {\n return createLocal.apply(null, arguments).parseZone();\n }\n\n function preParsePostFormat(string) {\n return string;\n }\n\n var proto$1 = Locale.prototype;\n\n proto$1.calendar = calendar;\n proto$1.longDateFormat = longDateFormat;\n proto$1.invalidDate = invalidDate;\n proto$1.ordinal = ordinal;\n proto$1.preparse = preParsePostFormat;\n proto$1.postformat = preParsePostFormat;\n proto$1.relativeTime = relativeTime;\n proto$1.pastFuture = pastFuture;\n proto$1.set = set;\n proto$1.eras = localeEras;\n proto$1.erasParse = localeErasParse;\n proto$1.erasConvertYear = localeErasConvertYear;\n proto$1.erasAbbrRegex = erasAbbrRegex;\n proto$1.erasNameRegex = erasNameRegex;\n proto$1.erasNarrowRegex = erasNarrowRegex;\n\n proto$1.months = localeMonths;\n proto$1.monthsShort = localeMonthsShort;\n proto$1.monthsParse = localeMonthsParse;\n proto$1.monthsRegex = monthsRegex;\n proto$1.monthsShortRegex = monthsShortRegex;\n proto$1.week = localeWeek;\n proto$1.firstDayOfYear = localeFirstDayOfYear;\n proto$1.firstDayOfWeek = localeFirstDayOfWeek;\n\n proto$1.weekdays = localeWeekdays;\n proto$1.weekdaysMin = localeWeekdaysMin;\n proto$1.weekdaysShort = localeWeekdaysShort;\n proto$1.weekdaysParse = localeWeekdaysParse;\n\n proto$1.weekdaysRegex = weekdaysRegex;\n proto$1.weekdaysShortRegex = weekdaysShortRegex;\n proto$1.weekdaysMinRegex = weekdaysMinRegex;\n\n proto$1.isPM = localeIsPM;\n proto$1.meridiem = localeMeridiem;\n\n function get$1(format, index, field, setter) {\n var locale = getLocale(),\n utc = createUTC().set(setter, index);\n return locale[field](utc, format);\n }\n\n function listMonthsImpl(format, index, field) {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n\n if (index != null) {\n return get$1(format, index, field, 'month');\n }\n\n var i,\n out = [];\n for (i = 0; i < 12; i++) {\n out[i] = get$1(format, i, field, 'month');\n }\n return out;\n }\n\n // ()\n // (5)\n // (fmt, 5)\n // (fmt)\n // (true)\n // (true, 5)\n // (true, fmt, 5)\n // (true, fmt)\n function listWeekdaysImpl(localeSorted, format, index, field) {\n if (typeof localeSorted === 'boolean') {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n } else {\n format = localeSorted;\n index = format;\n localeSorted = false;\n\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n }\n\n var locale = getLocale(),\n shift = localeSorted ? locale._week.dow : 0,\n i,\n out = [];\n\n if (index != null) {\n return get$1(format, (index + shift) % 7, field, 'day');\n }\n\n for (i = 0; i < 7; i++) {\n out[i] = get$1(format, (i + shift) % 7, field, 'day');\n }\n return out;\n }\n\n function listMonths(format, index) {\n return listMonthsImpl(format, index, 'months');\n }\n\n function listMonthsShort(format, index) {\n return listMonthsImpl(format, index, 'monthsShort');\n }\n\n function listWeekdays(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdays');\n }\n\n function listWeekdaysShort(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');\n }\n\n function listWeekdaysMin(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');\n }\n\n getSetGlobalLocale('en', {\n eras: [\n {\n since: '0001-01-01',\n until: +Infinity,\n offset: 1,\n name: 'Anno Domini',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: 'Before Christ',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n toInt((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n });\n\n // Side effect imports\n\n hooks.lang = deprecate(\n 'moment.lang is deprecated. Use moment.locale instead.',\n getSetGlobalLocale\n );\n hooks.langData = deprecate(\n 'moment.langData is deprecated. Use moment.localeData instead.',\n getLocale\n );\n\n var mathAbs = Math.abs;\n\n function abs() {\n var data = this._data;\n\n this._milliseconds = mathAbs(this._milliseconds);\n this._days = mathAbs(this._days);\n this._months = mathAbs(this._months);\n\n data.milliseconds = mathAbs(data.milliseconds);\n data.seconds = mathAbs(data.seconds);\n data.minutes = mathAbs(data.minutes);\n data.hours = mathAbs(data.hours);\n data.months = mathAbs(data.months);\n data.years = mathAbs(data.years);\n\n return this;\n }\n\n function addSubtract$1(duration, input, value, direction) {\n var other = createDuration(input, value);\n\n duration._milliseconds += direction * other._milliseconds;\n duration._days += direction * other._days;\n duration._months += direction * other._months;\n\n return duration._bubble();\n }\n\n // supports only 2.0-style add(1, 's') or add(duration)\n function add$1(input, value) {\n return addSubtract$1(this, input, value, 1);\n }\n\n // supports only 2.0-style subtract(1, 's') or subtract(duration)\n function subtract$1(input, value) {\n return addSubtract$1(this, input, value, -1);\n }\n\n function absCeil(number) {\n if (number < 0) {\n return Math.floor(number);\n } else {\n return Math.ceil(number);\n }\n }\n\n function bubble() {\n var milliseconds = this._milliseconds,\n days = this._days,\n months = this._months,\n data = this._data,\n seconds,\n minutes,\n hours,\n years,\n monthsFromDays;\n\n // if we have a mix of positive and negative values, bubble down first\n // check: https://github.com/moment/moment/issues/2166\n if (\n !(\n (milliseconds >= 0 && days >= 0 && months >= 0) ||\n (milliseconds <= 0 && days <= 0 && months <= 0)\n )\n ) {\n milliseconds += absCeil(monthsToDays(months) + days) * 864e5;\n days = 0;\n months = 0;\n }\n\n // The following code bubbles up values, see the tests for\n // examples of what that means.\n data.milliseconds = milliseconds % 1000;\n\n seconds = absFloor(milliseconds / 1000);\n data.seconds = seconds % 60;\n\n minutes = absFloor(seconds / 60);\n data.minutes = minutes % 60;\n\n hours = absFloor(minutes / 60);\n data.hours = hours % 24;\n\n days += absFloor(hours / 24);\n\n // convert days to months\n monthsFromDays = absFloor(daysToMonths(days));\n months += monthsFromDays;\n days -= absCeil(monthsToDays(monthsFromDays));\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n data.days = days;\n data.months = months;\n data.years = years;\n\n return this;\n }\n\n function daysToMonths(days) {\n // 400 years have 146097 days (taking into account leap year rules)\n // 400 years have 12 months === 4800\n return (days * 4800) / 146097;\n }\n\n function monthsToDays(months) {\n // the reverse of daysToMonths\n return (months * 146097) / 4800;\n }\n\n function as(units) {\n if (!this.isValid()) {\n return NaN;\n }\n var days,\n months,\n milliseconds = this._milliseconds;\n\n units = normalizeUnits(units);\n\n if (units === 'month' || units === 'quarter' || units === 'year') {\n days = this._days + milliseconds / 864e5;\n months = this._months + daysToMonths(days);\n switch (units) {\n case 'month':\n return months;\n case 'quarter':\n return months / 3;\n case 'year':\n return months / 12;\n }\n } else {\n // handle milliseconds separately because of floating point math errors (issue #1867)\n days = this._days + Math.round(monthsToDays(this._months));\n switch (units) {\n case 'week':\n return days / 7 + milliseconds / 6048e5;\n case 'day':\n return days + milliseconds / 864e5;\n case 'hour':\n return days * 24 + milliseconds / 36e5;\n case 'minute':\n return days * 1440 + milliseconds / 6e4;\n case 'second':\n return days * 86400 + milliseconds / 1000;\n // Math.floor prevents floating point math errors here\n case 'millisecond':\n return Math.floor(days * 864e5) + milliseconds;\n default:\n throw new Error('Unknown unit ' + units);\n }\n }\n }\n\n // TODO: Use this.as('ms')?\n function valueOf$1() {\n if (!this.isValid()) {\n return NaN;\n }\n return (\n this._milliseconds +\n this._days * 864e5 +\n (this._months % 12) * 2592e6 +\n toInt(this._months / 12) * 31536e6\n );\n }\n\n function makeAs(alias) {\n return function () {\n return this.as(alias);\n };\n }\n\n var asMilliseconds = makeAs('ms'),\n asSeconds = makeAs('s'),\n asMinutes = makeAs('m'),\n asHours = makeAs('h'),\n asDays = makeAs('d'),\n asWeeks = makeAs('w'),\n asMonths = makeAs('M'),\n asQuarters = makeAs('Q'),\n asYears = makeAs('y');\n\n function clone$1() {\n return createDuration(this);\n }\n\n function get$2(units) {\n units = normalizeUnits(units);\n return this.isValid() ? this[units + 's']() : NaN;\n }\n\n function makeGetter(name) {\n return function () {\n return this.isValid() ? this._data[name] : NaN;\n };\n }\n\n var milliseconds = makeGetter('milliseconds'),\n seconds = makeGetter('seconds'),\n minutes = makeGetter('minutes'),\n hours = makeGetter('hours'),\n days = makeGetter('days'),\n months = makeGetter('months'),\n years = makeGetter('years');\n\n function weeks() {\n return absFloor(this.days() / 7);\n }\n\n var round = Math.round,\n thresholds = {\n ss: 44, // a few seconds to seconds\n s: 45, // seconds to minute\n m: 45, // minutes to hour\n h: 22, // hours to day\n d: 26, // days to month/week\n w: null, // weeks to month\n M: 11, // months to year\n };\n\n // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\n function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n }\n\n function relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) {\n var duration = createDuration(posNegDuration).abs(),\n seconds = round(duration.as('s')),\n minutes = round(duration.as('m')),\n hours = round(duration.as('h')),\n days = round(duration.as('d')),\n months = round(duration.as('M')),\n weeks = round(duration.as('w')),\n years = round(duration.as('y')),\n a =\n (seconds <= thresholds.ss && ['s', seconds]) ||\n (seconds < thresholds.s && ['ss', seconds]) ||\n (minutes <= 1 && ['m']) ||\n (minutes < thresholds.m && ['mm', minutes]) ||\n (hours <= 1 && ['h']) ||\n (hours < thresholds.h && ['hh', hours]) ||\n (days <= 1 && ['d']) ||\n (days < thresholds.d && ['dd', days]);\n\n if (thresholds.w != null) {\n a =\n a ||\n (weeks <= 1 && ['w']) ||\n (weeks < thresholds.w && ['ww', weeks]);\n }\n a = a ||\n (months <= 1 && ['M']) ||\n (months < thresholds.M && ['MM', months]) ||\n (years <= 1 && ['y']) || ['yy', years];\n\n a[2] = withoutSuffix;\n a[3] = +posNegDuration > 0;\n a[4] = locale;\n return substituteTimeAgo.apply(null, a);\n }\n\n // This function allows you to set the rounding function for relative time strings\n function getSetRelativeTimeRounding(roundingFunction) {\n if (roundingFunction === undefined) {\n return round;\n }\n if (typeof roundingFunction === 'function') {\n round = roundingFunction;\n return true;\n }\n return false;\n }\n\n // This function allows you to set a threshold for relative time strings\n function getSetRelativeTimeThreshold(threshold, limit) {\n if (thresholds[threshold] === undefined) {\n return false;\n }\n if (limit === undefined) {\n return thresholds[threshold];\n }\n thresholds[threshold] = limit;\n if (threshold === 's') {\n thresholds.ss = limit - 1;\n }\n return true;\n }\n\n function humanize(argWithSuffix, argThresholds) {\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var withSuffix = false,\n th = thresholds,\n locale,\n output;\n\n if (typeof argWithSuffix === 'object') {\n argThresholds = argWithSuffix;\n argWithSuffix = false;\n }\n if (typeof argWithSuffix === 'boolean') {\n withSuffix = argWithSuffix;\n }\n if (typeof argThresholds === 'object') {\n th = Object.assign({}, thresholds, argThresholds);\n if (argThresholds.s != null && argThresholds.ss == null) {\n th.ss = argThresholds.s - 1;\n }\n }\n\n locale = this.localeData();\n output = relativeTime$1(this, !withSuffix, th, locale);\n\n if (withSuffix) {\n output = locale.pastFuture(+this, output);\n }\n\n return locale.postformat(output);\n }\n\n var abs$1 = Math.abs;\n\n function sign(x) {\n return (x > 0) - (x < 0) || +x;\n }\n\n function toISOString$1() {\n // for ISO strings we do not use the normal bubbling rules:\n // * milliseconds bubble up until they become hours\n // * days do not bubble at all\n // * months bubble up until they become years\n // This is because there is no context-free conversion between hours and days\n // (think of clock changes)\n // and also not between days and months (28-31 days per month)\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var seconds = abs$1(this._milliseconds) / 1000,\n days = abs$1(this._days),\n months = abs$1(this._months),\n minutes,\n hours,\n years,\n s,\n total = this.asSeconds(),\n totalSign,\n ymSign,\n daysSign,\n hmsSign;\n\n if (!total) {\n // this is the same as C#'s (Noda) and python (isodate)...\n // but not other JS (goog.date)\n return 'P0D';\n }\n\n // 3600 seconds -> 60 minutes -> 1 hour\n minutes = absFloor(seconds / 60);\n hours = absFloor(minutes / 60);\n seconds %= 60;\n minutes %= 60;\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n s = seconds ? seconds.toFixed(3).replace(/\\.?0+$/, '') : '';\n\n totalSign = total < 0 ? '-' : '';\n ymSign = sign(this._months) !== sign(total) ? '-' : '';\n daysSign = sign(this._days) !== sign(total) ? '-' : '';\n hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : '';\n\n return (\n totalSign +\n 'P' +\n (years ? ymSign + years + 'Y' : '') +\n (months ? ymSign + months + 'M' : '') +\n (days ? daysSign + days + 'D' : '') +\n (hours || minutes || seconds ? 'T' : '') +\n (hours ? hmsSign + hours + 'H' : '') +\n (minutes ? hmsSign + minutes + 'M' : '') +\n (seconds ? hmsSign + s + 'S' : '')\n );\n }\n\n var proto$2 = Duration.prototype;\n\n proto$2.isValid = isValid$1;\n proto$2.abs = abs;\n proto$2.add = add$1;\n proto$2.subtract = subtract$1;\n proto$2.as = as;\n proto$2.asMilliseconds = asMilliseconds;\n proto$2.asSeconds = asSeconds;\n proto$2.asMinutes = asMinutes;\n proto$2.asHours = asHours;\n proto$2.asDays = asDays;\n proto$2.asWeeks = asWeeks;\n proto$2.asMonths = asMonths;\n proto$2.asQuarters = asQuarters;\n proto$2.asYears = asYears;\n proto$2.valueOf = valueOf$1;\n proto$2._bubble = bubble;\n proto$2.clone = clone$1;\n proto$2.get = get$2;\n proto$2.milliseconds = milliseconds;\n proto$2.seconds = seconds;\n proto$2.minutes = minutes;\n proto$2.hours = hours;\n proto$2.days = days;\n proto$2.weeks = weeks;\n proto$2.months = months;\n proto$2.years = years;\n proto$2.humanize = humanize;\n proto$2.toISOString = toISOString$1;\n proto$2.toString = toISOString$1;\n proto$2.toJSON = toISOString$1;\n proto$2.locale = locale;\n proto$2.localeData = localeData;\n\n proto$2.toIsoString = deprecate(\n 'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)',\n toISOString$1\n );\n proto$2.lang = lang;\n\n // FORMATTING\n\n addFormatToken('X', 0, 0, 'unix');\n addFormatToken('x', 0, 0, 'valueOf');\n\n // PARSING\n\n addRegexToken('x', matchSigned);\n addRegexToken('X', matchTimestamp);\n addParseToken('X', function (input, array, config) {\n config._d = new Date(parseFloat(input) * 1000);\n });\n addParseToken('x', function (input, array, config) {\n config._d = new Date(toInt(input));\n });\n\n //! moment.js\n\n hooks.version = '2.29.3';\n\n setHookCallback(createLocal);\n\n hooks.fn = proto;\n hooks.min = min;\n hooks.max = max;\n hooks.now = now;\n hooks.utc = createUTC;\n hooks.unix = createUnix;\n hooks.months = listMonths;\n hooks.isDate = isDate;\n hooks.locale = getSetGlobalLocale;\n hooks.invalid = createInvalid;\n hooks.duration = createDuration;\n hooks.isMoment = isMoment;\n hooks.weekdays = listWeekdays;\n hooks.parseZone = createInZone;\n hooks.localeData = getLocale;\n hooks.isDuration = isDuration;\n hooks.monthsShort = listMonthsShort;\n hooks.weekdaysMin = listWeekdaysMin;\n hooks.defineLocale = defineLocale;\n hooks.updateLocale = updateLocale;\n hooks.locales = listLocales;\n hooks.weekdaysShort = listWeekdaysShort;\n hooks.normalizeUnits = normalizeUnits;\n hooks.relativeTimeRounding = getSetRelativeTimeRounding;\n hooks.relativeTimeThreshold = getSetRelativeTimeThreshold;\n hooks.calendarFormat = getCalendarFormat;\n hooks.prototype = proto;\n\n // currently HTML5 input type only supports 24-hour formats\n hooks.HTML5_FMT = {\n DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // <input type=\"datetime-local\" />\n DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // <input type=\"datetime-local\" step=\"1\" />\n DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // <input type=\"datetime-local\" step=\"0.001\" />\n DATE: 'YYYY-MM-DD', // <input type=\"date\" />\n TIME: 'HH:mm', // <input type=\"time\" />\n TIME_SECONDS: 'HH:mm:ss', // <input type=\"time\" step=\"1\" />\n TIME_MS: 'HH:mm:ss.SSS', // <input type=\"time\" step=\"0.001\" />\n WEEK: 'GGGG-[W]WW', // <input type=\"week\" />\n MONTH: 'YYYY-MM', // <input type=\"month\" />\n };\n\n return hooks;\n\n})));\n","/**\n * Helpers.\n */\n\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar w = d * 7;\nvar y = d * 365.25;\n\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function (val, options) {\n options = options || {};\n var type = typeof val;\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isFinite(val)) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n throw new Error(\n 'val is not a non-empty string or a valid number. val=' +\n JSON.stringify(val)\n );\n};\n\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\nfunction parse(str) {\n str = String(str);\n if (str.length > 100) {\n return;\n }\n var match = /^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(\n str\n );\n if (!match) {\n return;\n }\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n case 'weeks':\n case 'week':\n case 'w':\n return n * w;\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n default:\n return undefined;\n }\n}\n\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtShort(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return Math.round(ms / d) + 'd';\n }\n if (msAbs >= h) {\n return Math.round(ms / h) + 'h';\n }\n if (msAbs >= m) {\n return Math.round(ms / m) + 'm';\n }\n if (msAbs >= s) {\n return Math.round(ms / s) + 's';\n }\n return ms + 'ms';\n}\n\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtLong(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return plural(ms, msAbs, d, 'day');\n }\n if (msAbs >= h) {\n return plural(ms, msAbs, h, 'hour');\n }\n if (msAbs >= m) {\n return plural(ms, msAbs, m, 'minute');\n }\n if (msAbs >= s) {\n return plural(ms, msAbs, s, 'second');\n }\n return ms + ' ms';\n}\n\n/**\n * Pluralization helper.\n */\n\nfunction plural(ms, msAbs, n, name) {\n var isPlural = msAbs >= n * 1.5;\n return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');\n}\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Expose `pathtoRegexp`.\n */\n\nmodule.exports = pathtoRegexp;\n\n/**\n * Match matching groups in a regular expression.\n */\nvar MATCHING_GROUP_REGEXP = /\\((?!\\?)/g;\n\n/**\n * Normalize the given path string,\n * returning a regular expression.\n *\n * An empty array should be passed,\n * which will contain the placeholder\n * key names. For example \"/user/:id\" will\n * then contain [\"id\"].\n *\n * @param {String|RegExp|Array} path\n * @param {Array} keys\n * @param {Object} options\n * @return {RegExp}\n * @api private\n */\n\nfunction pathtoRegexp(path, keys, options) {\n options = options || {};\n keys = keys || [];\n var strict = options.strict;\n var end = options.end !== false;\n var flags = options.sensitive ? '' : 'i';\n var extraOffset = 0;\n var keysOffset = keys.length;\n var i = 0;\n var name = 0;\n var m;\n\n if (path instanceof RegExp) {\n while (m = MATCHING_GROUP_REGEXP.exec(path.source)) {\n keys.push({\n name: name++,\n optional: false,\n offset: m.index\n });\n }\n\n return path;\n }\n\n if (Array.isArray(path)) {\n // Map array parts into regexps and return their source. We also pass\n // the same keys and options instance into every generation to get\n // consistent matching groups before we join the sources together.\n path = path.map(function (value) {\n return pathtoRegexp(value, keys, options).source;\n });\n\n return new RegExp('(?:' + path.join('|') + ')', flags);\n }\n\n path = ('^' + path + (strict ? '' : path[path.length - 1] === '/' ? '?' : '/?'))\n .replace(/\\/\\(/g, '/(?:')\n .replace(/([\\/\\.])/g, '\\\\$1')\n .replace(/(\\\\\\/)?(\\\\\\.)?:(\\w+)(\\(.*?\\))?(\\*)?(\\?)?/g, function (match, slash, format, key, capture, star, optional, offset) {\n slash = slash || '';\n format = format || '';\n capture = capture || '([^\\\\/' + format + ']+?)';\n optional = optional || '';\n\n keys.push({\n name: key,\n optional: !!optional,\n offset: offset + extraOffset\n });\n\n var result = ''\n + (optional ? '' : slash)\n + '(?:'\n + format + (optional ? slash : '') + capture\n + (star ? '((?:[\\\\/' + format + '].+?)?)' : '')\n + ')'\n + optional;\n\n extraOffset += result.length - match.length;\n\n return result;\n })\n .replace(/\\*/g, function (star, index) {\n var len = keys.length\n\n while (len-- > keysOffset && keys[len].offset > index) {\n keys[len].offset += 3; // Replacement length minus asterisk length.\n }\n\n return '(.*)';\n });\n\n // This is a workaround for handling unnamed matching groups.\n while (m = MATCHING_GROUP_REGEXP.exec(path)) {\n var escapeCount = 0;\n var index = m.index;\n\n while (path.charAt(--index) === '\\\\') {\n escapeCount++;\n }\n\n // It's possible to escape the bracket.\n if (escapeCount % 2 === 1) {\n continue;\n }\n\n if (keysOffset + i === keys.length || keys[keysOffset + i].offset > m.index) {\n keys.splice(keysOffset + i, 0, {\n name: name++, // Unnamed matching groups must be consistently linear.\n optional: false,\n offset: m.index\n });\n }\n\n i++;\n }\n\n // If the path is non-ending, match until the end or a slash.\n path += (end ? '$' : (path[path.length - 1] === '/' ? '' : '(?=\\\\/|$)'));\n\n return new RegExp(path, flags);\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/** @license React v17.0.2\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),m=require(\"object-assign\"),r=require(\"scheduler\");function y(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;c<arguments.length;c++)b+=\"&args[]=\"+encodeURIComponent(arguments[c]);return\"Minified React error #\"+a+\"; visit \"+b+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}if(!aa)throw Error(y(227));var ba=new Set,ca={};function da(a,b){ea(a,b);ea(a+\"Capture\",b)}\nfunction ea(a,b){ca[a]=b;for(a=0;a<b.length;a++)ba.add(b[a])}\nvar fa=!(\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement),ha=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,ia=Object.prototype.hasOwnProperty,\nja={},ka={};function la(a){if(ia.call(ka,a))return!0;if(ia.call(ja,a))return!1;if(ha.test(a))return ka[a]=!0;ja[a]=!0;return!1}function ma(a,b,c,d){if(null!==c&&0===c.type)return!1;switch(typeof b){case \"function\":case \"symbol\":return!0;case \"boolean\":if(d)return!1;if(null!==c)return!c.acceptsBooleans;a=a.toLowerCase().slice(0,5);return\"data-\"!==a&&\"aria-\"!==a;default:return!1}}\nfunction na(a,b,c,d){if(null===b||\"undefined\"===typeof b||ma(a,b,c,d))return!0;if(d)return!1;if(null!==c)switch(c.type){case 3:return!b;case 4:return!1===b;case 5:return isNaN(b);case 6:return isNaN(b)||1>b}return!1}function B(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var D={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){D[a]=new B(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];D[b]=new B(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){D[a]=new B(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){D[a]=new B(a,2,!1,a,null,!1,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){D[a]=new B(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){D[a]=new B(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){D[a]=new B(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){D[a]=new B(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){D[a]=new B(a,5,!1,a.toLowerCase(),null,!1,!1)});var oa=/[\\-:]([a-z])/g;function pa(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(oa,\npa);D[b]=new B(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(oa,pa);D[b]=new B(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(oa,pa);D[b]=new B(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){D[a]=new B(a,1,!1,a.toLowerCase(),null,!1,!1)});\nD.xlinkHref=new B(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){D[a]=new B(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction qa(a,b,c,d){var e=D.hasOwnProperty(b)?D[b]:null;var f=null!==e?0===e.type:d?!1:!(2<b.length)||\"o\"!==b[0]&&\"O\"!==b[0]||\"n\"!==b[1]&&\"N\"!==b[1]?!1:!0;f||(na(b,c,e,d)&&(c=null),d||null===e?la(b)&&(null===c?a.removeAttribute(b):a.setAttribute(b,\"\"+c)):e.mustUseProperty?a[e.propertyName]=null===c?3===e.type?!1:\"\":c:(b=e.attributeName,d=e.attributeNamespace,null===c?a.removeAttribute(b):(e=e.type,c=3===e||4===e&&!0===c?\"\":\"\"+c,d?a.setAttributeNS(d,b,c):a.setAttribute(b,c))))}\nvar ra=aa.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,sa=60103,ta=60106,ua=60107,wa=60108,xa=60114,ya=60109,za=60110,Aa=60112,Ba=60113,Ca=60120,Da=60115,Ea=60116,Fa=60121,Ga=60128,Ha=60129,Ia=60130,Ja=60131;\nif(\"function\"===typeof Symbol&&Symbol.for){var E=Symbol.for;sa=E(\"react.element\");ta=E(\"react.portal\");ua=E(\"react.fragment\");wa=E(\"react.strict_mode\");xa=E(\"react.profiler\");ya=E(\"react.provider\");za=E(\"react.context\");Aa=E(\"react.forward_ref\");Ba=E(\"react.suspense\");Ca=E(\"react.suspense_list\");Da=E(\"react.memo\");Ea=E(\"react.lazy\");Fa=E(\"react.block\");E(\"react.scope\");Ga=E(\"react.opaque.id\");Ha=E(\"react.debug_trace_mode\");Ia=E(\"react.offscreen\");Ja=E(\"react.legacy_hidden\")}\nvar Ka=\"function\"===typeof Symbol&&Symbol.iterator;function La(a){if(null===a||\"object\"!==typeof a)return null;a=Ka&&a[Ka]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}var Ma;function Na(a){if(void 0===Ma)try{throw Error();}catch(c){var b=c.stack.trim().match(/\\n( *(at )?)/);Ma=b&&b[1]||\"\"}return\"\\n\"+Ma+a}var Oa=!1;\nfunction Pa(a,b){if(!a||Oa)return\"\";Oa=!0;var c=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(b)if(b=function(){throw Error();},Object.defineProperty(b.prototype,\"props\",{set:function(){throw Error();}}),\"object\"===typeof Reflect&&Reflect.construct){try{Reflect.construct(b,[])}catch(k){var d=k}Reflect.construct(a,[],b)}else{try{b.call()}catch(k){d=k}a.call(b.prototype)}else{try{throw Error();}catch(k){d=k}a()}}catch(k){if(k&&d&&\"string\"===typeof k.stack){for(var e=k.stack.split(\"\\n\"),\nf=d.stack.split(\"\\n\"),g=e.length-1,h=f.length-1;1<=g&&0<=h&&e[g]!==f[h];)h--;for(;1<=g&&0<=h;g--,h--)if(e[g]!==f[h]){if(1!==g||1!==h){do if(g--,h--,0>h||e[g]!==f[h])return\"\\n\"+e[g].replace(\" at new \",\" at \");while(1<=g&&0<=h)}break}}}finally{Oa=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Na(a):\"\"}\nfunction Qa(a){switch(a.tag){case 5:return Na(a.type);case 16:return Na(\"Lazy\");case 13:return Na(\"Suspense\");case 19:return Na(\"SuspenseList\");case 0:case 2:case 15:return a=Pa(a.type,!1),a;case 11:return a=Pa(a.type.render,!1),a;case 22:return a=Pa(a.type._render,!1),a;case 1:return a=Pa(a.type,!0),a;default:return\"\"}}\nfunction Ra(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ua:return\"Fragment\";case ta:return\"Portal\";case xa:return\"Profiler\";case wa:return\"StrictMode\";case Ba:return\"Suspense\";case Ca:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case za:return(a.displayName||\"Context\")+\".Consumer\";case ya:return(a._context.displayName||\"Context\")+\".Provider\";case Aa:var b=a.render;b=b.displayName||b.name||\"\";\nreturn a.displayName||(\"\"!==b?\"ForwardRef(\"+b+\")\":\"ForwardRef\");case Da:return Ra(a.type);case Fa:return Ra(a._render);case Ea:b=a._payload;a=a._init;try{return Ra(a(b))}catch(c){}}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"object\":case \"string\":case \"undefined\":return a;default:return\"\"}}function Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return m({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function $a(a,b){b=b.checked;null!=b&&qa(a,\"checked\",b,!1)}\nfunction ab(a,b){$a(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?bb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&bb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction cb(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction bb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}function db(a){var b=\"\";aa.Children.forEach(a,function(a){null!=a&&(b+=a)});return b}function eb(a,b){a=m({children:void 0},b);if(b=db(b.children))a.children=b;return a}\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e<c.length;e++)b[\"$\"+c[e]]=!0;for(c=0;c<a.length;c++)e=b.hasOwnProperty(\"$\"+a[c].value),a[c].selected!==e&&(a[c].selected=e),e&&d&&(a[c].defaultSelected=!0)}else{c=\"\"+Sa(c);b=null;for(e=0;e<a.length;e++){if(a[e].value===c){a[e].selected=!0;d&&(a[e].defaultSelected=!0);return}null!==b||a[e].disabled||(b=a[e])}null!==b&&(b.selected=!0)}}\nfunction gb(a,b){if(null!=b.dangerouslySetInnerHTML)throw Error(y(91));return m({},b,{value:void 0,defaultValue:void 0,children:\"\"+a._wrapperState.initialValue})}function hb(a,b){var c=b.value;if(null==c){c=b.children;b=b.defaultValue;if(null!=c){if(null!=b)throw Error(y(92));if(Array.isArray(c)){if(!(1>=c.length))throw Error(y(93));c=c[0]}b=c}null==b&&(b=\"\");c=b}a._wrapperState={initialValue:Sa(c)}}\nfunction ib(a,b){var c=Sa(b.value),d=Sa(b.defaultValue);null!=c&&(c=\"\"+c,c!==a.value&&(a.value=c),null==b.defaultValue&&a.defaultValue!==c&&(a.defaultValue=c));null!=d&&(a.defaultValue=\"\"+d)}function jb(a){var b=a.textContent;b===a._wrapperState.initialValue&&\"\"!==b&&null!==b&&(a.value=b)}var kb={html:\"http://www.w3.org/1999/xhtml\",mathml:\"http://www.w3.org/1998/Math/MathML\",svg:\"http://www.w3.org/2000/svg\"};\nfunction lb(a){switch(a){case \"svg\":return\"http://www.w3.org/2000/svg\";case \"math\":return\"http://www.w3.org/1998/Math/MathML\";default:return\"http://www.w3.org/1999/xhtml\"}}function mb(a,b){return null==a||\"http://www.w3.org/1999/xhtml\"===a?lb(b):\"http://www.w3.org/2000/svg\"===a&&\"foreignObject\"===b?\"http://www.w3.org/1999/xhtml\":a}\nvar nb,ob=function(a){return\"undefined\"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(b,c,d,e){MSApp.execUnsafeLocalFunction(function(){return a(b,c,d,e)})}:a}(function(a,b){if(a.namespaceURI!==kb.svg||\"innerHTML\"in a)a.innerHTML=b;else{nb=nb||document.createElement(\"div\");nb.innerHTML=\"<svg>\"+b.valueOf().toString()+\"</svg>\";for(b=nb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction pb(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar qb={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,\nfloodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},rb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(qb).forEach(function(a){rb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);qb[b]=qb[a]})});function sb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||qb.hasOwnProperty(a)&&qb[a]?(\"\"+b).trim():b+\"px\"}\nfunction tb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=sb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var ub=m({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction vb(a,b){if(b){if(ub[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(y(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(y(60));if(!(\"object\"===typeof b.dangerouslySetInnerHTML&&\"__html\"in b.dangerouslySetInnerHTML))throw Error(y(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(y(62));}}\nfunction wb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(y(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;a<b.length;a++)Bb(b[a])}}function Gb(a,b){return a(b)}function Hb(a,b,c,d,e){return a(b,c,d,e)}function Ib(){}var Jb=Gb,Kb=!1,Lb=!1;function Mb(){if(null!==zb||null!==Ab)Ib(),Fb()}\nfunction Nb(a,b,c){if(Lb)return a(b,c);Lb=!0;try{return Jb(a,b,c)}finally{Lb=!1,Mb()}}\nfunction Ob(a,b){var c=a.stateNode;if(null===c)return null;var d=Db(c);if(null===d)return null;c=d[b];a:switch(b){case \"onClick\":case \"onClickCapture\":case \"onDoubleClick\":case \"onDoubleClickCapture\":case \"onMouseDown\":case \"onMouseDownCapture\":case \"onMouseMove\":case \"onMouseMoveCapture\":case \"onMouseUp\":case \"onMouseUpCapture\":case \"onMouseEnter\":(d=!d.disabled)||(a=a.type,d=!(\"button\"===a||\"input\"===a||\"select\"===a||\"textarea\"===a));a=!d;break a;default:a=!1}if(a)return null;if(c&&\"function\"!==\ntypeof c)throw Error(y(231,b,typeof c));return c}var Pb=!1;if(fa)try{var Qb={};Object.defineProperty(Qb,\"passive\",{get:function(){Pb=!0}});window.addEventListener(\"test\",Qb,Qb);window.removeEventListener(\"test\",Qb,Qb)}catch(a){Pb=!1}function Rb(a,b,c,d,e,f,g,h,k){var l=Array.prototype.slice.call(arguments,3);try{b.apply(c,l)}catch(n){this.onError(n)}}var Sb=!1,Tb=null,Ub=!1,Vb=null,Wb={onError:function(a){Sb=!0;Tb=a}};function Xb(a,b,c,d,e,f,g,h,k){Sb=!1;Tb=null;Rb.apply(Wb,arguments)}\nfunction Yb(a,b,c,d,e,f,g,h,k){Xb.apply(this,arguments);if(Sb){if(Sb){var l=Tb;Sb=!1;Tb=null}else throw Error(y(198));Ub||(Ub=!0,Vb=l)}}function Zb(a){var b=a,c=a;if(a.alternate)for(;b.return;)b=b.return;else{a=b;do b=a,0!==(b.flags&1026)&&(c=b.return),a=b.return;while(a)}return 3===b.tag?c:null}function $b(a){if(13===a.tag){var b=a.memoizedState;null===b&&(a=a.alternate,null!==a&&(b=a.memoizedState));if(null!==b)return b.dehydrated}return null}function ac(a){if(Zb(a)!==a)throw Error(y(188));}\nfunction bc(a){var b=a.alternate;if(!b){b=Zb(a);if(null===b)throw Error(y(188));return b!==a?null:a}for(var c=a,d=b;;){var e=c.return;if(null===e)break;var f=e.alternate;if(null===f){d=e.return;if(null!==d){c=d;continue}break}if(e.child===f.child){for(f=e.child;f;){if(f===c)return ac(e),a;if(f===d)return ac(e),b;f=f.sibling}throw Error(y(188));}if(c.return!==d.return)c=e,d=f;else{for(var g=!1,h=e.child;h;){if(h===c){g=!0;c=e;d=f;break}if(h===d){g=!0;d=e;c=f;break}h=h.sibling}if(!g){for(h=f.child;h;){if(h===\nc){g=!0;c=f;d=e;break}if(h===d){g=!0;d=f;c=e;break}h=h.sibling}if(!g)throw Error(y(189));}}if(c.alternate!==d)throw Error(y(190));}if(3!==c.tag)throw Error(y(188));return c.stateNode.current===c?a:b}function cc(a){a=bc(a);if(!a)return null;for(var b=a;;){if(5===b.tag||6===b.tag)return b;if(b.child)b.child.return=b,b=b.child;else{if(b===a)break;for(;!b.sibling;){if(!b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}}return null}\nfunction dc(a,b){for(var c=a.alternate;null!==b;){if(b===a||b===c)return!0;b=b.return}return!1}var ec,fc,gc,hc,ic=!1,jc=[],kc=null,lc=null,mc=null,nc=new Map,oc=new Map,pc=[],qc=\"mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit\".split(\" \");\nfunction rc(a,b,c,d,e){return{blockedOn:a,domEventName:b,eventSystemFlags:c|16,nativeEvent:e,targetContainers:[d]}}function sc(a,b){switch(a){case \"focusin\":case \"focusout\":kc=null;break;case \"dragenter\":case \"dragleave\":lc=null;break;case \"mouseover\":case \"mouseout\":mc=null;break;case \"pointerover\":case \"pointerout\":nc.delete(b.pointerId);break;case \"gotpointercapture\":case \"lostpointercapture\":oc.delete(b.pointerId)}}\nfunction tc(a,b,c,d,e,f){if(null===a||a.nativeEvent!==f)return a=rc(b,c,d,e,f),null!==b&&(b=Cb(b),null!==b&&fc(b)),a;a.eventSystemFlags|=d;b=a.targetContainers;null!==e&&-1===b.indexOf(e)&&b.push(e);return a}\nfunction uc(a,b,c,d,e){switch(b){case \"focusin\":return kc=tc(kc,a,b,c,d,e),!0;case \"dragenter\":return lc=tc(lc,a,b,c,d,e),!0;case \"mouseover\":return mc=tc(mc,a,b,c,d,e),!0;case \"pointerover\":var f=e.pointerId;nc.set(f,tc(nc.get(f)||null,a,b,c,d,e));return!0;case \"gotpointercapture\":return f=e.pointerId,oc.set(f,tc(oc.get(f)||null,a,b,c,d,e)),!0}return!1}\nfunction vc(a){var b=wc(a.target);if(null!==b){var c=Zb(b);if(null!==c)if(b=c.tag,13===b){if(b=$b(c),null!==b){a.blockedOn=b;hc(a.lanePriority,function(){r.unstable_runWithPriority(a.priority,function(){gc(c)})});return}}else if(3===b&&c.stateNode.hydrate){a.blockedOn=3===c.tag?c.stateNode.containerInfo:null;return}}a.blockedOn=null}\nfunction xc(a){if(null!==a.blockedOn)return!1;for(var b=a.targetContainers;0<b.length;){var c=yc(a.domEventName,a.eventSystemFlags,b[0],a.nativeEvent);if(null!==c)return b=Cb(c),null!==b&&fc(b),a.blockedOn=c,!1;b.shift()}return!0}function zc(a,b,c){xc(a)&&c.delete(b)}\nfunction Ac(){for(ic=!1;0<jc.length;){var a=jc[0];if(null!==a.blockedOn){a=Cb(a.blockedOn);null!==a&&ec(a);break}for(var b=a.targetContainers;0<b.length;){var c=yc(a.domEventName,a.eventSystemFlags,b[0],a.nativeEvent);if(null!==c){a.blockedOn=c;break}b.shift()}null===a.blockedOn&&jc.shift()}null!==kc&&xc(kc)&&(kc=null);null!==lc&&xc(lc)&&(lc=null);null!==mc&&xc(mc)&&(mc=null);nc.forEach(zc);oc.forEach(zc)}\nfunction Bc(a,b){a.blockedOn===b&&(a.blockedOn=null,ic||(ic=!0,r.unstable_scheduleCallback(r.unstable_NormalPriority,Ac)))}\nfunction Cc(a){function b(b){return Bc(b,a)}if(0<jc.length){Bc(jc[0],a);for(var c=1;c<jc.length;c++){var d=jc[c];d.blockedOn===a&&(d.blockedOn=null)}}null!==kc&&Bc(kc,a);null!==lc&&Bc(lc,a);null!==mc&&Bc(mc,a);nc.forEach(b);oc.forEach(b);for(c=0;c<pc.length;c++)d=pc[c],d.blockedOn===a&&(d.blockedOn=null);for(;0<pc.length&&(c=pc[0],null===c.blockedOn);)vc(c),null===c.blockedOn&&pc.shift()}\nfunction Dc(a,b){var c={};c[a.toLowerCase()]=b.toLowerCase();c[\"Webkit\"+a]=\"webkit\"+b;c[\"Moz\"+a]=\"moz\"+b;return c}var Ec={animationend:Dc(\"Animation\",\"AnimationEnd\"),animationiteration:Dc(\"Animation\",\"AnimationIteration\"),animationstart:Dc(\"Animation\",\"AnimationStart\"),transitionend:Dc(\"Transition\",\"TransitionEnd\")},Fc={},Gc={};\nfa&&(Gc=document.createElement(\"div\").style,\"AnimationEvent\"in window||(delete Ec.animationend.animation,delete Ec.animationiteration.animation,delete Ec.animationstart.animation),\"TransitionEvent\"in window||delete Ec.transitionend.transition);function Hc(a){if(Fc[a])return Fc[a];if(!Ec[a])return a;var b=Ec[a],c;for(c in b)if(b.hasOwnProperty(c)&&c in Gc)return Fc[a]=b[c];return a}\nvar Ic=Hc(\"animationend\"),Jc=Hc(\"animationiteration\"),Kc=Hc(\"animationstart\"),Lc=Hc(\"transitionend\"),Mc=new Map,Nc=new Map,Oc=[\"abort\",\"abort\",Ic,\"animationEnd\",Jc,\"animationIteration\",Kc,\"animationStart\",\"canplay\",\"canPlay\",\"canplaythrough\",\"canPlayThrough\",\"durationchange\",\"durationChange\",\"emptied\",\"emptied\",\"encrypted\",\"encrypted\",\"ended\",\"ended\",\"error\",\"error\",\"gotpointercapture\",\"gotPointerCapture\",\"load\",\"load\",\"loadeddata\",\"loadedData\",\"loadedmetadata\",\"loadedMetadata\",\"loadstart\",\"loadStart\",\n\"lostpointercapture\",\"lostPointerCapture\",\"playing\",\"playing\",\"progress\",\"progress\",\"seeking\",\"seeking\",\"stalled\",\"stalled\",\"suspend\",\"suspend\",\"timeupdate\",\"timeUpdate\",Lc,\"transitionEnd\",\"waiting\",\"waiting\"];function Pc(a,b){for(var c=0;c<a.length;c+=2){var d=a[c],e=a[c+1];e=\"on\"+(e[0].toUpperCase()+e.slice(1));Nc.set(d,b);Mc.set(d,e);da(e,[d])}}var Qc=r.unstable_now;Qc();var F=8;\nfunction Rc(a){if(0!==(1&a))return F=15,1;if(0!==(2&a))return F=14,2;if(0!==(4&a))return F=13,4;var b=24&a;if(0!==b)return F=12,b;if(0!==(a&32))return F=11,32;b=192&a;if(0!==b)return F=10,b;if(0!==(a&256))return F=9,256;b=3584&a;if(0!==b)return F=8,b;if(0!==(a&4096))return F=7,4096;b=4186112&a;if(0!==b)return F=6,b;b=62914560&a;if(0!==b)return F=5,b;if(a&67108864)return F=4,67108864;if(0!==(a&134217728))return F=3,134217728;b=805306368&a;if(0!==b)return F=2,b;if(0!==(1073741824&a))return F=1,1073741824;\nF=8;return a}function Sc(a){switch(a){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function Tc(a){switch(a){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(y(358,a));}}\nfunction Uc(a,b){var c=a.pendingLanes;if(0===c)return F=0;var d=0,e=0,f=a.expiredLanes,g=a.suspendedLanes,h=a.pingedLanes;if(0!==f)d=f,e=F=15;else if(f=c&134217727,0!==f){var k=f&~g;0!==k?(d=Rc(k),e=F):(h&=f,0!==h&&(d=Rc(h),e=F))}else f=c&~g,0!==f?(d=Rc(f),e=F):0!==h&&(d=Rc(h),e=F);if(0===d)return 0;d=31-Vc(d);d=c&((0>d?0:1<<d)<<1)-1;if(0!==b&&b!==d&&0===(b&g)){Rc(b);if(e<=F)return b;F=e}b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0<b;)c=31-Vc(b),e=1<<c,d|=a[c],b&=~e;return d}\nfunction Wc(a){a=a.pendingLanes&-1073741825;return 0!==a?a:a&1073741824?1073741824:0}function Xc(a,b){switch(a){case 15:return 1;case 14:return 2;case 12:return a=Yc(24&~b),0===a?Xc(10,b):a;case 10:return a=Yc(192&~b),0===a?Xc(8,b):a;case 8:return a=Yc(3584&~b),0===a&&(a=Yc(4186112&~b),0===a&&(a=512)),a;case 2:return b=Yc(805306368&~b),0===b&&(b=268435456),b}throw Error(y(358,a));}function Yc(a){return a&-a}function Zc(a){for(var b=[],c=0;31>c;c++)b.push(a);return b}\nfunction $c(a,b,c){a.pendingLanes|=b;var d=b-1;a.suspendedLanes&=d;a.pingedLanes&=d;a=a.eventTimes;b=31-Vc(b);a[b]=c}var Vc=Math.clz32?Math.clz32:ad,bd=Math.log,cd=Math.LN2;function ad(a){return 0===a?32:31-(bd(a)/cd|0)|0}var dd=r.unstable_UserBlockingPriority,ed=r.unstable_runWithPriority,fd=!0;function gd(a,b,c,d){Kb||Ib();var e=hd,f=Kb;Kb=!0;try{Hb(e,a,b,c,d)}finally{(Kb=f)||Mb()}}function id(a,b,c,d){ed(dd,hd.bind(null,a,b,c,d))}\nfunction hd(a,b,c,d){if(fd){var e;if((e=0===(b&4))&&0<jc.length&&-1<qc.indexOf(a))a=rc(null,a,b,c,d),jc.push(a);else{var f=yc(a,b,c,d);if(null===f)e&&sc(a,d);else{if(e){if(-1<qc.indexOf(a)){a=rc(f,a,b,c,d);jc.push(a);return}if(uc(f,a,b,c,d))return;sc(a,d)}jd(a,b,d,null,c)}}}}\nfunction yc(a,b,c,d){var e=xb(d);e=wc(e);if(null!==e){var f=Zb(e);if(null===f)e=null;else{var g=f.tag;if(13===g){e=$b(f);if(null!==e)return e;e=null}else if(3===g){if(f.stateNode.hydrate)return 3===f.tag?f.stateNode.containerInfo:null;e=null}else f!==e&&(e=null)}}jd(a,b,d,e,c);return null}var kd=null,ld=null,md=null;\nfunction nd(){if(md)return md;var a,b=ld,c=b.length,d,e=\"value\"in kd?kd.value:kd.textContent,f=e.length;for(a=0;a<c&&b[a]===e[a];a++);var g=c-a;for(d=1;d<=g&&b[c-d]===e[f-d];d++);return md=e.slice(a,1<d?1-d:void 0)}function od(a){var b=a.keyCode;\"charCode\"in a?(a=a.charCode,0===a&&13===b&&(a=13)):a=b;10===a&&(a=13);return 32<=a||13===a?a:0}function pd(){return!0}function qd(){return!1}\nfunction rd(a){function b(b,d,e,f,g){this._reactName=b;this._targetInst=e;this.type=d;this.nativeEvent=f;this.target=g;this.currentTarget=null;for(var c in a)a.hasOwnProperty(c)&&(b=a[c],this[c]=b?b(f):f[c]);this.isDefaultPrevented=(null!=f.defaultPrevented?f.defaultPrevented:!1===f.returnValue)?pd:qd;this.isPropagationStopped=qd;return this}m(b.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():\"unknown\"!==typeof a.returnValue&&\n(a.returnValue=!1),this.isDefaultPrevented=pd)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():\"unknown\"!==typeof a.cancelBubble&&(a.cancelBubble=!0),this.isPropagationStopped=pd)},persist:function(){},isPersistent:pd});return b}\nvar sd={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(a){return a.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},td=rd(sd),ud=m({},sd,{view:0,detail:0}),vd=rd(ud),wd,xd,yd,Ad=m({},ud,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:zd,button:0,buttons:0,relatedTarget:function(a){return void 0===a.relatedTarget?a.fromElement===a.srcElement?a.toElement:a.fromElement:a.relatedTarget},movementX:function(a){if(\"movementX\"in\na)return a.movementX;a!==yd&&(yd&&\"mousemove\"===a.type?(wd=a.screenX-yd.screenX,xd=a.screenY-yd.screenY):xd=wd=0,yd=a);return wd},movementY:function(a){return\"movementY\"in a?a.movementY:xd}}),Bd=rd(Ad),Cd=m({},Ad,{dataTransfer:0}),Dd=rd(Cd),Ed=m({},ud,{relatedTarget:0}),Fd=rd(Ed),Gd=m({},sd,{animationName:0,elapsedTime:0,pseudoElement:0}),Hd=rd(Gd),Id=m({},sd,{clipboardData:function(a){return\"clipboardData\"in a?a.clipboardData:window.clipboardData}}),Jd=rd(Id),Kd=m({},sd,{data:0}),Ld=rd(Kd),Md={Esc:\"Escape\",\nSpacebar:\" \",Left:\"ArrowLeft\",Up:\"ArrowUp\",Right:\"ArrowRight\",Down:\"ArrowDown\",Del:\"Delete\",Win:\"OS\",Menu:\"ContextMenu\",Apps:\"ContextMenu\",Scroll:\"ScrollLock\",MozPrintableKey:\"Unidentified\"},Nd={8:\"Backspace\",9:\"Tab\",12:\"Clear\",13:\"Enter\",16:\"Shift\",17:\"Control\",18:\"Alt\",19:\"Pause\",20:\"CapsLock\",27:\"Escape\",32:\" \",33:\"PageUp\",34:\"PageDown\",35:\"End\",36:\"Home\",37:\"ArrowLeft\",38:\"ArrowUp\",39:\"ArrowRight\",40:\"ArrowDown\",45:\"Insert\",46:\"Delete\",112:\"F1\",113:\"F2\",114:\"F3\",115:\"F4\",116:\"F5\",117:\"F6\",118:\"F7\",\n119:\"F8\",120:\"F9\",121:\"F10\",122:\"F11\",123:\"F12\",144:\"NumLock\",145:\"ScrollLock\",224:\"Meta\"},Od={Alt:\"altKey\",Control:\"ctrlKey\",Meta:\"metaKey\",Shift:\"shiftKey\"};function Pd(a){var b=this.nativeEvent;return b.getModifierState?b.getModifierState(a):(a=Od[a])?!!b[a]:!1}function zd(){return Pd}\nvar Qd=m({},ud,{key:function(a){if(a.key){var b=Md[a.key]||a.key;if(\"Unidentified\"!==b)return b}return\"keypress\"===a.type?(a=od(a),13===a?\"Enter\":String.fromCharCode(a)):\"keydown\"===a.type||\"keyup\"===a.type?Nd[a.keyCode]||\"Unidentified\":\"\"},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:zd,charCode:function(a){return\"keypress\"===a.type?od(a):0},keyCode:function(a){return\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0},which:function(a){return\"keypress\"===\na.type?od(a):\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0}}),Rd=rd(Qd),Sd=m({},Ad,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Td=rd(Sd),Ud=m({},ud,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:zd}),Vd=rd(Ud),Wd=m({},sd,{propertyName:0,elapsedTime:0,pseudoElement:0}),Xd=rd(Wd),Yd=m({},Ad,{deltaX:function(a){return\"deltaX\"in a?a.deltaX:\"wheelDeltaX\"in a?-a.wheelDeltaX:0},\ndeltaY:function(a){return\"deltaY\"in a?a.deltaY:\"wheelDeltaY\"in a?-a.wheelDeltaY:\"wheelDelta\"in a?-a.wheelDelta:0},deltaZ:0,deltaMode:0}),Zd=rd(Yd),$d=[9,13,27,32],ae=fa&&\"CompositionEvent\"in window,be=null;fa&&\"documentMode\"in document&&(be=document.documentMode);var ce=fa&&\"TextEvent\"in window&&!be,de=fa&&(!ae||be&&8<be&&11>=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1<b.char.length)return b.char;if(b.which)return String.fromCharCode(b.which)}return null;case \"compositionend\":return de&&\"ko\"!==b.locale?null:b.data;default:return null}}\nvar le={color:!0,date:!0,datetime:!0,\"datetime-local\":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function me(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return\"input\"===b?!!le[a.type]:\"textarea\"===b?!0:!1}function ne(a,b,c,d){Eb(d);b=oe(b,\"onChange\");0<b.length&&(c=new td(\"onChange\",\"change\",null,c,d),a.push({event:c,listeners:b}))}var pe=null,qe=null;function re(a){se(a,0)}function te(a){var b=ue(a);if(Wa(b))return a}\nfunction ve(a,b){if(\"change\"===a)return b}var we=!1;if(fa){var xe;if(fa){var ye=\"oninput\"in document;if(!ye){var ze=document.createElement(\"div\");ze.setAttribute(\"oninput\",\"return;\");ye=\"function\"===typeof ze.oninput}xe=ye}else xe=!1;we=xe&&(!document.documentMode||9<document.documentMode)}function Ae(){pe&&(pe.detachEvent(\"onpropertychange\",Be),qe=pe=null)}function Be(a){if(\"value\"===a.propertyName&&te(qe)){var b=[];ne(b,qe,a,xb(a));a=re;if(Kb)a(b);else{Kb=!0;try{Gb(a,b)}finally{Kb=!1,Mb()}}}}\nfunction Ce(a,b,c){\"focusin\"===a?(Ae(),pe=b,qe=c,pe.attachEvent(\"onpropertychange\",Be)):\"focusout\"===a&&Ae()}function De(a){if(\"selectionchange\"===a||\"keyup\"===a||\"keydown\"===a)return te(qe)}function Ee(a,b){if(\"click\"===a)return te(b)}function Fe(a,b){if(\"input\"===a||\"change\"===a)return te(b)}function Ge(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var He=\"function\"===typeof Object.is?Object.is:Ge,Ie=Object.prototype.hasOwnProperty;\nfunction Je(a,b){if(He(a,b))return!0;if(\"object\"!==typeof a||null===a||\"object\"!==typeof b||null===b)return!1;var c=Object.keys(a),d=Object.keys(b);if(c.length!==d.length)return!1;for(d=0;d<c.length;d++)if(!Ie.call(b,c[d])||!He(a[c[d]],b[c[d]]))return!1;return!0}function Ke(a){for(;a&&a.firstChild;)a=a.firstChild;return a}\nfunction Le(a,b){var c=Ke(a);a=0;for(var d;c;){if(3===c.nodeType){d=a+c.textContent.length;if(a<=b&&d>=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Ke(c)}}function Me(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Me(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Ne(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Oe(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nvar Pe=fa&&\"documentMode\"in document&&11>=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Oe(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Je(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0<d.length&&(b=new td(\"onSelect\",\"select\",null,b,c),a.push({event:b,listeners:d}),b.target=Qe)))}\nPc(\"cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange\".split(\" \"),\n0);Pc(\"drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel\".split(\" \"),1);Pc(Oc,2);for(var Ve=\"change selectionchange textInput compositionstart compositionend compositionupdate\".split(\" \"),We=0;We<Ve.length;We++)Nc.set(Ve[We],0);ea(\"onMouseEnter\",[\"mouseout\",\"mouseover\"]);\nea(\"onMouseLeave\",[\"mouseout\",\"mouseover\"]);ea(\"onPointerEnter\",[\"pointerout\",\"pointerover\"]);ea(\"onPointerLeave\",[\"pointerout\",\"pointerover\"]);da(\"onChange\",\"change click focusin focusout input keydown keyup selectionchange\".split(\" \"));da(\"onSelect\",\"focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange\".split(\" \"));da(\"onBeforeInput\",[\"compositionend\",\"keypress\",\"textInput\",\"paste\"]);da(\"onCompositionEnd\",\"compositionend focusout keydown keypress keyup mousedown\".split(\" \"));\nda(\"onCompositionStart\",\"compositionstart focusout keydown keypress keyup mousedown\".split(\" \"));da(\"onCompositionUpdate\",\"compositionupdate focusout keydown keypress keyup mousedown\".split(\" \"));var Xe=\"abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting\".split(\" \"),Ye=new Set(\"cancel close invalid load scroll toggle\".split(\" \").concat(Xe));\nfunction Ze(a,b,c){var d=a.type||\"unknown-event\";a.currentTarget=c;Yb(d,b,void 0,a);a.currentTarget=null}\nfunction se(a,b){b=0!==(b&4);for(var c=0;c<a.length;c++){var d=a[c],e=d.event;d=d.listeners;a:{var f=void 0;if(b)for(var g=d.length-1;0<=g;g--){var h=d[g],k=h.instance,l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;Ze(e,h,l);f=k}else for(g=0;g<d.length;g++){h=d[g];k=h.instance;l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;Ze(e,h,l);f=k}}}if(Ub)throw a=Vb,Ub=!1,Vb=null,a;}\nfunction G(a,b){var c=$e(b),d=a+\"__bubble\";c.has(d)||(af(b,a,2,!1),c.add(d))}var bf=\"_reactListening\"+Math.random().toString(36).slice(2);function cf(a){a[bf]||(a[bf]=!0,ba.forEach(function(b){Ye.has(b)||df(b,!1,a,null);df(b,!0,a,null)}))}\nfunction df(a,b,c,d){var e=4<arguments.length&&void 0!==arguments[4]?arguments[4]:0,f=c;\"selectionchange\"===a&&9!==c.nodeType&&(f=c.ownerDocument);if(null!==d&&!b&&Ye.has(a)){if(\"scroll\"!==a)return;e|=2;f=d}var g=$e(f),h=a+\"__\"+(b?\"capture\":\"bubble\");g.has(h)||(b&&(e|=4),af(f,a,e,b),g.add(h))}\nfunction af(a,b,c,d){var e=Nc.get(b);switch(void 0===e?2:e){case 0:e=gd;break;case 1:e=id;break;default:e=hd}c=e.bind(null,b,c,a);e=void 0;!Pb||\"touchstart\"!==b&&\"touchmove\"!==b&&\"wheel\"!==b||(e=!0);d?void 0!==e?a.addEventListener(b,c,{capture:!0,passive:e}):a.addEventListener(b,c,!0):void 0!==e?a.addEventListener(b,c,{passive:e}):a.addEventListener(b,c,!1)}\nfunction jd(a,b,c,d,e){var f=d;if(0===(b&1)&&0===(b&2)&&null!==d)a:for(;;){if(null===d)return;var g=d.tag;if(3===g||4===g){var h=d.stateNode.containerInfo;if(h===e||8===h.nodeType&&h.parentNode===e)break;if(4===g)for(g=d.return;null!==g;){var k=g.tag;if(3===k||4===k)if(k=g.stateNode.containerInfo,k===e||8===k.nodeType&&k.parentNode===e)return;g=g.return}for(;null!==h;){g=wc(h);if(null===g)return;k=g.tag;if(5===k||6===k){d=f=g;continue a}h=h.parentNode}}d=d.return}Nb(function(){var d=f,e=xb(c),g=[];\na:{var h=Mc.get(a);if(void 0!==h){var k=td,x=a;switch(a){case \"keypress\":if(0===od(c))break a;case \"keydown\":case \"keyup\":k=Rd;break;case \"focusin\":x=\"focus\";k=Fd;break;case \"focusout\":x=\"blur\";k=Fd;break;case \"beforeblur\":case \"afterblur\":k=Fd;break;case \"click\":if(2===c.button)break a;case \"auxclick\":case \"dblclick\":case \"mousedown\":case \"mousemove\":case \"mouseup\":case \"mouseout\":case \"mouseover\":case \"contextmenu\":k=Bd;break;case \"drag\":case \"dragend\":case \"dragenter\":case \"dragexit\":case \"dragleave\":case \"dragover\":case \"dragstart\":case \"drop\":k=\nDd;break;case \"touchcancel\":case \"touchend\":case \"touchmove\":case \"touchstart\":k=Vd;break;case Ic:case Jc:case Kc:k=Hd;break;case Lc:k=Xd;break;case \"scroll\":k=vd;break;case \"wheel\":k=Zd;break;case \"copy\":case \"cut\":case \"paste\":k=Jd;break;case \"gotpointercapture\":case \"lostpointercapture\":case \"pointercancel\":case \"pointerdown\":case \"pointermove\":case \"pointerout\":case \"pointerover\":case \"pointerup\":k=Td}var w=0!==(b&4),z=!w&&\"scroll\"===a,u=w?null!==h?h+\"Capture\":null:h;w=[];for(var t=d,q;null!==\nt;){q=t;var v=q.stateNode;5===q.tag&&null!==v&&(q=v,null!==u&&(v=Ob(t,u),null!=v&&w.push(ef(t,v,q))));if(z)break;t=t.return}0<w.length&&(h=new k(h,x,null,c,e),g.push({event:h,listeners:w}))}}if(0===(b&7)){a:{h=\"mouseover\"===a||\"pointerover\"===a;k=\"mouseout\"===a||\"pointerout\"===a;if(h&&0===(b&16)&&(x=c.relatedTarget||c.fromElement)&&(wc(x)||x[ff]))break a;if(k||h){h=e.window===e?e:(h=e.ownerDocument)?h.defaultView||h.parentWindow:window;if(k){if(x=c.relatedTarget||c.toElement,k=d,x=x?wc(x):null,null!==\nx&&(z=Zb(x),x!==z||5!==x.tag&&6!==x.tag))x=null}else k=null,x=d;if(k!==x){w=Bd;v=\"onMouseLeave\";u=\"onMouseEnter\";t=\"mouse\";if(\"pointerout\"===a||\"pointerover\"===a)w=Td,v=\"onPointerLeave\",u=\"onPointerEnter\",t=\"pointer\";z=null==k?h:ue(k);q=null==x?h:ue(x);h=new w(v,t+\"leave\",k,c,e);h.target=z;h.relatedTarget=q;v=null;wc(e)===d&&(w=new w(u,t+\"enter\",x,c,e),w.target=q,w.relatedTarget=z,v=w);z=v;if(k&&x)b:{w=k;u=x;t=0;for(q=w;q;q=gf(q))t++;q=0;for(v=u;v;v=gf(v))q++;for(;0<t-q;)w=gf(w),t--;for(;0<q-t;)u=\ngf(u),q--;for(;t--;){if(w===u||null!==u&&w===u.alternate)break b;w=gf(w);u=gf(u)}w=null}else w=null;null!==k&&hf(g,h,k,w,!1);null!==x&&null!==z&&hf(g,z,x,w,!0)}}}a:{h=d?ue(d):window;k=h.nodeName&&h.nodeName.toLowerCase();if(\"select\"===k||\"input\"===k&&\"file\"===h.type)var J=ve;else if(me(h))if(we)J=Fe;else{J=De;var K=Ce}else(k=h.nodeName)&&\"input\"===k.toLowerCase()&&(\"checkbox\"===h.type||\"radio\"===h.type)&&(J=Ee);if(J&&(J=J(a,d))){ne(g,J,c,e);break a}K&&K(a,h,d);\"focusout\"===a&&(K=h._wrapperState)&&\nK.controlled&&\"number\"===h.type&&bb(h,\"number\",h.value)}K=d?ue(d):window;switch(a){case \"focusin\":if(me(K)||\"true\"===K.contentEditable)Qe=K,Re=d,Se=null;break;case \"focusout\":Se=Re=Qe=null;break;case \"mousedown\":Te=!0;break;case \"contextmenu\":case \"mouseup\":case \"dragend\":Te=!1;Ue(g,c,e);break;case \"selectionchange\":if(Pe)break;case \"keydown\":case \"keyup\":Ue(g,c,e)}var Q;if(ae)b:{switch(a){case \"compositionstart\":var L=\"onCompositionStart\";break b;case \"compositionend\":L=\"onCompositionEnd\";break b;\ncase \"compositionupdate\":L=\"onCompositionUpdate\";break b}L=void 0}else ie?ge(a,c)&&(L=\"onCompositionEnd\"):\"keydown\"===a&&229===c.keyCode&&(L=\"onCompositionStart\");L&&(de&&\"ko\"!==c.locale&&(ie||\"onCompositionStart\"!==L?\"onCompositionEnd\"===L&&ie&&(Q=nd()):(kd=e,ld=\"value\"in kd?kd.value:kd.textContent,ie=!0)),K=oe(d,L),0<K.length&&(L=new Ld(L,a,null,c,e),g.push({event:L,listeners:K}),Q?L.data=Q:(Q=he(c),null!==Q&&(L.data=Q))));if(Q=ce?je(a,c):ke(a,c))d=oe(d,\"onBeforeInput\"),0<d.length&&(e=new Ld(\"onBeforeInput\",\n\"beforeinput\",null,c,e),g.push({event:e,listeners:d}),e.data=Q)}se(g,b)})}function ef(a,b,c){return{instance:a,listener:b,currentTarget:c}}function oe(a,b){for(var c=b+\"Capture\",d=[];null!==a;){var e=a,f=e.stateNode;5===e.tag&&null!==f&&(e=f,f=Ob(a,c),null!=f&&d.unshift(ef(a,f,e)),f=Ob(a,b),null!=f&&d.push(ef(a,f,e)));a=a.return}return d}function gf(a){if(null===a)return null;do a=a.return;while(a&&5!==a.tag);return a?a:null}\nfunction hf(a,b,c,d,e){for(var f=b._reactName,g=[];null!==c&&c!==d;){var h=c,k=h.alternate,l=h.stateNode;if(null!==k&&k===d)break;5===h.tag&&null!==l&&(h=l,e?(k=Ob(c,f),null!=k&&g.unshift(ef(c,k,h))):e||(k=Ob(c,f),null!=k&&g.push(ef(c,k,h))));c=c.return}0!==g.length&&a.push({event:b,listeners:g})}function jf(){}var kf=null,lf=null;function mf(a,b){switch(a){case \"button\":case \"input\":case \"select\":case \"textarea\":return!!b.autoFocus}return!1}\nfunction nf(a,b){return\"textarea\"===a||\"option\"===a||\"noscript\"===a||\"string\"===typeof b.children||\"number\"===typeof b.children||\"object\"===typeof b.dangerouslySetInnerHTML&&null!==b.dangerouslySetInnerHTML&&null!=b.dangerouslySetInnerHTML.__html}var of=\"function\"===typeof setTimeout?setTimeout:void 0,pf=\"function\"===typeof clearTimeout?clearTimeout:void 0;function qf(a){1===a.nodeType?a.textContent=\"\":9===a.nodeType&&(a=a.body,null!=a&&(a.textContent=\"\"))}\nfunction rf(a){for(;null!=a;a=a.nextSibling){var b=a.nodeType;if(1===b||3===b)break}return a}function sf(a){a=a.previousSibling;for(var b=0;a;){if(8===a.nodeType){var c=a.data;if(\"$\"===c||\"$!\"===c||\"$?\"===c){if(0===b)return a;b--}else\"/$\"===c&&b++}a=a.previousSibling}return null}var tf=0;function uf(a){return{$$typeof:Ga,toString:a,valueOf:a}}var vf=Math.random().toString(36).slice(2),wf=\"__reactFiber$\"+vf,xf=\"__reactProps$\"+vf,ff=\"__reactContainer$\"+vf,yf=\"__reactEvents$\"+vf;\nfunction wc(a){var b=a[wf];if(b)return b;for(var c=a.parentNode;c;){if(b=c[ff]||c[wf]){c=b.alternate;if(null!==b.child||null!==c&&null!==c.child)for(a=sf(a);null!==a;){if(c=a[wf])return c;a=sf(a)}return b}a=c;c=a.parentNode}return null}function Cb(a){a=a[wf]||a[ff];return!a||5!==a.tag&&6!==a.tag&&13!==a.tag&&3!==a.tag?null:a}function ue(a){if(5===a.tag||6===a.tag)return a.stateNode;throw Error(y(33));}function Db(a){return a[xf]||null}\nfunction $e(a){var b=a[yf];void 0===b&&(b=a[yf]=new Set);return b}var zf=[],Af=-1;function Bf(a){return{current:a}}function H(a){0>Af||(a.current=zf[Af],zf[Af]=null,Af--)}function I(a,b){Af++;zf[Af]=a.current;a.current=b}var Cf={},M=Bf(Cf),N=Bf(!1),Df=Cf;\nfunction Ef(a,b){var c=a.type.contextTypes;if(!c)return Cf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}function Ff(a){a=a.childContextTypes;return null!==a&&void 0!==a}function Gf(){H(N);H(M)}function Hf(a,b,c){if(M.current!==Cf)throw Error(y(168));I(M,b);I(N,c)}\nfunction If(a,b,c){var d=a.stateNode;a=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in a))throw Error(y(108,Ra(b)||\"Unknown\",e));return m({},c,d)}function Jf(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Cf;Df=M.current;I(M,a);I(N,N.current);return!0}function Kf(a,b,c){var d=a.stateNode;if(!d)throw Error(y(169));c?(a=If(a,b,Df),d.__reactInternalMemoizedMergedChildContext=a,H(N),H(M),I(M,a)):H(N);I(N,c)}\nvar Lf=null,Mf=null,Nf=r.unstable_runWithPriority,Of=r.unstable_scheduleCallback,Pf=r.unstable_cancelCallback,Qf=r.unstable_shouldYield,Rf=r.unstable_requestPaint,Sf=r.unstable_now,Tf=r.unstable_getCurrentPriorityLevel,Uf=r.unstable_ImmediatePriority,Vf=r.unstable_UserBlockingPriority,Wf=r.unstable_NormalPriority,Xf=r.unstable_LowPriority,Yf=r.unstable_IdlePriority,Zf={},$f=void 0!==Rf?Rf:function(){},ag=null,bg=null,cg=!1,dg=Sf(),O=1E4>dg?Sf:function(){return Sf()-dg};\nfunction eg(){switch(Tf()){case Uf:return 99;case Vf:return 98;case Wf:return 97;case Xf:return 96;case Yf:return 95;default:throw Error(y(332));}}function fg(a){switch(a){case 99:return Uf;case 98:return Vf;case 97:return Wf;case 96:return Xf;case 95:return Yf;default:throw Error(y(332));}}function gg(a,b){a=fg(a);return Nf(a,b)}function hg(a,b,c){a=fg(a);return Of(a,b,c)}function ig(){if(null!==bg){var a=bg;bg=null;Pf(a)}jg()}\nfunction jg(){if(!cg&&null!==ag){cg=!0;var a=0;try{var b=ag;gg(99,function(){for(;a<b.length;a++){var c=b[a];do c=c(!0);while(null!==c)}});ag=null}catch(c){throw null!==ag&&(ag=ag.slice(a+1)),Of(Uf,ig),c;}finally{cg=!1}}}var kg=ra.ReactCurrentBatchConfig;function lg(a,b){if(a&&a.defaultProps){b=m({},b);a=a.defaultProps;for(var c in a)void 0===b[c]&&(b[c]=a[c]);return b}return b}var mg=Bf(null),ng=null,og=null,pg=null;function qg(){pg=og=ng=null}\nfunction rg(a){var b=mg.current;H(mg);a.type._context._currentValue=b}function sg(a,b){for(;null!==a;){var c=a.alternate;if((a.childLanes&b)===b)if(null===c||(c.childLanes&b)===b)break;else c.childLanes|=b;else a.childLanes|=b,null!==c&&(c.childLanes|=b);a=a.return}}function tg(a,b){ng=a;pg=og=null;a=a.dependencies;null!==a&&null!==a.firstContext&&(0!==(a.lanes&b)&&(ug=!0),a.firstContext=null)}\nfunction vg(a,b){if(pg!==a&&!1!==b&&0!==b){if(\"number\"!==typeof b||1073741823===b)pg=a,b=1073741823;b={context:a,observedBits:b,next:null};if(null===og){if(null===ng)throw Error(y(308));og=b;ng.dependencies={lanes:0,firstContext:b,responders:null}}else og=og.next=b}return a._currentValue}var wg=!1;function xg(a){a.updateQueue={baseState:a.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null},effects:null}}\nfunction yg(a,b){a=a.updateQueue;b.updateQueue===a&&(b.updateQueue={baseState:a.baseState,firstBaseUpdate:a.firstBaseUpdate,lastBaseUpdate:a.lastBaseUpdate,shared:a.shared,effects:a.effects})}function zg(a,b){return{eventTime:a,lane:b,tag:0,payload:null,callback:null,next:null}}function Ag(a,b){a=a.updateQueue;if(null!==a){a=a.shared;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}}\nfunction Bg(a,b){var c=a.updateQueue,d=a.alternate;if(null!==d&&(d=d.updateQueue,c===d)){var e=null,f=null;c=c.firstBaseUpdate;if(null!==c){do{var g={eventTime:c.eventTime,lane:c.lane,tag:c.tag,payload:c.payload,callback:c.callback,next:null};null===f?e=f=g:f=f.next=g;c=c.next}while(null!==c);null===f?e=f=b:f=f.next=b}else e=f=b;c={baseState:d.baseState,firstBaseUpdate:e,lastBaseUpdate:f,shared:d.shared,effects:d.effects};a.updateQueue=c;return}a=c.lastBaseUpdate;null===a?c.firstBaseUpdate=b:a.next=\nb;c.lastBaseUpdate=b}\nfunction Cg(a,b,c,d){var e=a.updateQueue;wg=!1;var f=e.firstBaseUpdate,g=e.lastBaseUpdate,h=e.shared.pending;if(null!==h){e.shared.pending=null;var k=h,l=k.next;k.next=null;null===g?f=l:g.next=l;g=k;var n=a.alternate;if(null!==n){n=n.updateQueue;var A=n.lastBaseUpdate;A!==g&&(null===A?n.firstBaseUpdate=l:A.next=l,n.lastBaseUpdate=k)}}if(null!==f){A=e.baseState;g=0;n=l=k=null;do{h=f.lane;var p=f.eventTime;if((d&h)===h){null!==n&&(n=n.next={eventTime:p,lane:0,tag:f.tag,payload:f.payload,callback:f.callback,\nnext:null});a:{var C=a,x=f;h=b;p=c;switch(x.tag){case 1:C=x.payload;if(\"function\"===typeof C){A=C.call(p,A,h);break a}A=C;break a;case 3:C.flags=C.flags&-4097|64;case 0:C=x.payload;h=\"function\"===typeof C?C.call(p,A,h):C;if(null===h||void 0===h)break a;A=m({},A,h);break a;case 2:wg=!0}}null!==f.callback&&(a.flags|=32,h=e.effects,null===h?e.effects=[f]:h.push(f))}else p={eventTime:p,lane:h,tag:f.tag,payload:f.payload,callback:f.callback,next:null},null===n?(l=n=p,k=A):n=n.next=p,g|=h;f=f.next;if(null===\nf)if(h=e.shared.pending,null===h)break;else f=h.next,h.next=null,e.lastBaseUpdate=h,e.shared.pending=null}while(1);null===n&&(k=A);e.baseState=k;e.firstBaseUpdate=l;e.lastBaseUpdate=n;Dg|=g;a.lanes=g;a.memoizedState=A}}function Eg(a,b,c){a=b.effects;b.effects=null;if(null!==a)for(b=0;b<a.length;b++){var d=a[b],e=d.callback;if(null!==e){d.callback=null;d=c;if(\"function\"!==typeof e)throw Error(y(191,e));e.call(d)}}}var Fg=(new aa.Component).refs;\nfunction Gg(a,b,c,d){b=a.memoizedState;c=c(d,b);c=null===c||void 0===c?b:m({},b,c);a.memoizedState=c;0===a.lanes&&(a.updateQueue.baseState=c)}\nvar Kg={isMounted:function(a){return(a=a._reactInternals)?Zb(a)===a:!1},enqueueSetState:function(a,b,c){a=a._reactInternals;var d=Hg(),e=Ig(a),f=zg(d,e);f.payload=b;void 0!==c&&null!==c&&(f.callback=c);Ag(a,f);Jg(a,e,d)},enqueueReplaceState:function(a,b,c){a=a._reactInternals;var d=Hg(),e=Ig(a),f=zg(d,e);f.tag=1;f.payload=b;void 0!==c&&null!==c&&(f.callback=c);Ag(a,f);Jg(a,e,d)},enqueueForceUpdate:function(a,b){a=a._reactInternals;var c=Hg(),d=Ig(a),e=zg(c,d);e.tag=2;void 0!==b&&null!==b&&(e.callback=\nb);Ag(a,e);Jg(a,d,c)}};function Lg(a,b,c,d,e,f,g){a=a.stateNode;return\"function\"===typeof a.shouldComponentUpdate?a.shouldComponentUpdate(d,f,g):b.prototype&&b.prototype.isPureReactComponent?!Je(c,d)||!Je(e,f):!0}\nfunction Mg(a,b,c){var d=!1,e=Cf;var f=b.contextType;\"object\"===typeof f&&null!==f?f=vg(f):(e=Ff(b)?Df:M.current,d=b.contextTypes,f=(d=null!==d&&void 0!==d)?Ef(a,e):Cf);b=new b(c,f);a.memoizedState=null!==b.state&&void 0!==b.state?b.state:null;b.updater=Kg;a.stateNode=b;b._reactInternals=a;d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=e,a.__reactInternalMemoizedMaskedChildContext=f);return b}\nfunction Ng(a,b,c,d){a=b.state;\"function\"===typeof b.componentWillReceiveProps&&b.componentWillReceiveProps(c,d);\"function\"===typeof b.UNSAFE_componentWillReceiveProps&&b.UNSAFE_componentWillReceiveProps(c,d);b.state!==a&&Kg.enqueueReplaceState(b,b.state,null)}\nfunction Og(a,b,c,d){var e=a.stateNode;e.props=c;e.state=a.memoizedState;e.refs=Fg;xg(a);var f=b.contextType;\"object\"===typeof f&&null!==f?e.context=vg(f):(f=Ff(b)?Df:M.current,e.context=Ef(a,f));Cg(a,c,e,d);e.state=a.memoizedState;f=b.getDerivedStateFromProps;\"function\"===typeof f&&(Gg(a,b,f,c),e.state=a.memoizedState);\"function\"===typeof b.getDerivedStateFromProps||\"function\"===typeof e.getSnapshotBeforeUpdate||\"function\"!==typeof e.UNSAFE_componentWillMount&&\"function\"!==typeof e.componentWillMount||\n(b=e.state,\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),b!==e.state&&Kg.enqueueReplaceState(e,e.state,null),Cg(a,c,e,d),e.state=a.memoizedState);\"function\"===typeof e.componentDidMount&&(a.flags|=4)}var Pg=Array.isArray;\nfunction Qg(a,b,c){a=c.ref;if(null!==a&&\"function\"!==typeof a&&\"object\"!==typeof a){if(c._owner){c=c._owner;if(c){if(1!==c.tag)throw Error(y(309));var d=c.stateNode}if(!d)throw Error(y(147,a));var e=\"\"+a;if(null!==b&&null!==b.ref&&\"function\"===typeof b.ref&&b.ref._stringRef===e)return b.ref;b=function(a){var b=d.refs;b===Fg&&(b=d.refs={});null===a?delete b[e]:b[e]=a};b._stringRef=e;return b}if(\"string\"!==typeof a)throw Error(y(284));if(!c._owner)throw Error(y(290,a));}return a}\nfunction Rg(a,b){if(\"textarea\"!==a.type)throw Error(y(31,\"[object Object]\"===Object.prototype.toString.call(b)?\"object with keys {\"+Object.keys(b).join(\", \")+\"}\":b));}\nfunction Sg(a){function b(b,c){if(a){var d=b.lastEffect;null!==d?(d.nextEffect=c,b.lastEffect=c):b.firstEffect=b.lastEffect=c;c.nextEffect=null;c.flags=8}}function c(c,d){if(!a)return null;for(;null!==d;)b(c,d),d=d.sibling;return null}function d(a,b){for(a=new Map;null!==b;)null!==b.key?a.set(b.key,b):a.set(b.index,b),b=b.sibling;return a}function e(a,b){a=Tg(a,b);a.index=0;a.sibling=null;return a}function f(b,c,d){b.index=d;if(!a)return c;d=b.alternate;if(null!==d)return d=d.index,d<c?(b.flags=2,\nc):d;b.flags=2;return c}function g(b){a&&null===b.alternate&&(b.flags=2);return b}function h(a,b,c,d){if(null===b||6!==b.tag)return b=Ug(c,a.mode,d),b.return=a,b;b=e(b,c);b.return=a;return b}function k(a,b,c,d){if(null!==b&&b.elementType===c.type)return d=e(b,c.props),d.ref=Qg(a,b,c),d.return=a,d;d=Vg(c.type,c.key,c.props,null,a.mode,d);d.ref=Qg(a,b,c);d.return=a;return d}function l(a,b,c,d){if(null===b||4!==b.tag||b.stateNode.containerInfo!==c.containerInfo||b.stateNode.implementation!==c.implementation)return b=\nWg(c,a.mode,d),b.return=a,b;b=e(b,c.children||[]);b.return=a;return b}function n(a,b,c,d,f){if(null===b||7!==b.tag)return b=Xg(c,a.mode,d,f),b.return=a,b;b=e(b,c);b.return=a;return b}function A(a,b,c){if(\"string\"===typeof b||\"number\"===typeof b)return b=Ug(\"\"+b,a.mode,c),b.return=a,b;if(\"object\"===typeof b&&null!==b){switch(b.$$typeof){case sa:return c=Vg(b.type,b.key,b.props,null,a.mode,c),c.ref=Qg(a,null,b),c.return=a,c;case ta:return b=Wg(b,a.mode,c),b.return=a,b}if(Pg(b)||La(b))return b=Xg(b,\na.mode,c,null),b.return=a,b;Rg(a,b)}return null}function p(a,b,c,d){var e=null!==b?b.key:null;if(\"string\"===typeof c||\"number\"===typeof c)return null!==e?null:h(a,b,\"\"+c,d);if(\"object\"===typeof c&&null!==c){switch(c.$$typeof){case sa:return c.key===e?c.type===ua?n(a,b,c.props.children,d,e):k(a,b,c,d):null;case ta:return c.key===e?l(a,b,c,d):null}if(Pg(c)||La(c))return null!==e?null:n(a,b,c,d,null);Rg(a,c)}return null}function C(a,b,c,d,e){if(\"string\"===typeof d||\"number\"===typeof d)return a=a.get(c)||\nnull,h(b,a,\"\"+d,e);if(\"object\"===typeof d&&null!==d){switch(d.$$typeof){case sa:return a=a.get(null===d.key?c:d.key)||null,d.type===ua?n(b,a,d.props.children,e,d.key):k(b,a,d,e);case ta:return a=a.get(null===d.key?c:d.key)||null,l(b,a,d,e)}if(Pg(d)||La(d))return a=a.get(c)||null,n(b,a,d,e,null);Rg(b,d)}return null}function x(e,g,h,k){for(var l=null,t=null,u=g,z=g=0,q=null;null!==u&&z<h.length;z++){u.index>z?(q=u,u=null):q=u.sibling;var n=p(e,u,h[z],k);if(null===n){null===u&&(u=q);break}a&&u&&null===\nn.alternate&&b(e,u);g=f(n,g,z);null===t?l=n:t.sibling=n;t=n;u=q}if(z===h.length)return c(e,u),l;if(null===u){for(;z<h.length;z++)u=A(e,h[z],k),null!==u&&(g=f(u,g,z),null===t?l=u:t.sibling=u,t=u);return l}for(u=d(e,u);z<h.length;z++)q=C(u,e,z,h[z],k),null!==q&&(a&&null!==q.alternate&&u.delete(null===q.key?z:q.key),g=f(q,g,z),null===t?l=q:t.sibling=q,t=q);a&&u.forEach(function(a){return b(e,a)});return l}function w(e,g,h,k){var l=La(h);if(\"function\"!==typeof l)throw Error(y(150));h=l.call(h);if(null==\nh)throw Error(y(151));for(var t=l=null,u=g,z=g=0,q=null,n=h.next();null!==u&&!n.done;z++,n=h.next()){u.index>z?(q=u,u=null):q=u.sibling;var w=p(e,u,n.value,k);if(null===w){null===u&&(u=q);break}a&&u&&null===w.alternate&&b(e,u);g=f(w,g,z);null===t?l=w:t.sibling=w;t=w;u=q}if(n.done)return c(e,u),l;if(null===u){for(;!n.done;z++,n=h.next())n=A(e,n.value,k),null!==n&&(g=f(n,g,z),null===t?l=n:t.sibling=n,t=n);return l}for(u=d(e,u);!n.done;z++,n=h.next())n=C(u,e,z,n.value,k),null!==n&&(a&&null!==n.alternate&&\nu.delete(null===n.key?z:n.key),g=f(n,g,z),null===t?l=n:t.sibling=n,t=n);a&&u.forEach(function(a){return b(e,a)});return l}return function(a,d,f,h){var k=\"object\"===typeof f&&null!==f&&f.type===ua&&null===f.key;k&&(f=f.props.children);var l=\"object\"===typeof f&&null!==f;if(l)switch(f.$$typeof){case sa:a:{l=f.key;for(k=d;null!==k;){if(k.key===l){switch(k.tag){case 7:if(f.type===ua){c(a,k.sibling);d=e(k,f.props.children);d.return=a;a=d;break a}break;default:if(k.elementType===f.type){c(a,k.sibling);\nd=e(k,f.props);d.ref=Qg(a,k,f);d.return=a;a=d;break a}}c(a,k);break}else b(a,k);k=k.sibling}f.type===ua?(d=Xg(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=Vg(f.type,f.key,f.props,null,a.mode,h),h.ref=Qg(a,d,f),h.return=a,a=h)}return g(a);case ta:a:{for(k=f.key;null!==d;){if(d.key===k)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=\nWg(f,a.mode,h);d.return=a;a=d}return g(a)}if(\"string\"===typeof f||\"number\"===typeof f)return f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):(c(a,d),d=Ug(f,a.mode,h),d.return=a,a=d),g(a);if(Pg(f))return x(a,d,f,h);if(La(f))return w(a,d,f,h);l&&Rg(a,f);if(\"undefined\"===typeof f&&!k)switch(a.tag){case 1:case 22:case 0:case 11:case 15:throw Error(y(152,Ra(a.type)||\"Component\"));}return c(a,d)}}var Yg=Sg(!0),Zg=Sg(!1),$g={},ah=Bf($g),bh=Bf($g),ch=Bf($g);\nfunction dh(a){if(a===$g)throw Error(y(174));return a}function eh(a,b){I(ch,b);I(bh,a);I(ah,$g);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:mb(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=mb(b,a)}H(ah);I(ah,b)}function fh(){H(ah);H(bh);H(ch)}function gh(a){dh(ch.current);var b=dh(ah.current);var c=mb(b,a.type);b!==c&&(I(bh,a),I(ah,c))}function hh(a){bh.current===a&&(H(ah),H(bh))}var P=Bf(0);\nfunction ih(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||\"$?\"===c.data||\"$!\"===c.data))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.flags&64))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}var jh=null,kh=null,lh=!1;\nfunction mh(a,b){var c=nh(5,null,null,0);c.elementType=\"DELETED\";c.type=\"DELETED\";c.stateNode=b;c.return=a;c.flags=8;null!==a.lastEffect?(a.lastEffect.nextEffect=c,a.lastEffect=c):a.firstEffect=a.lastEffect=c}function oh(a,b){switch(a.tag){case 5:var c=a.type;b=1!==b.nodeType||c.toLowerCase()!==b.nodeName.toLowerCase()?null:b;return null!==b?(a.stateNode=b,!0):!1;case 6:return b=\"\"===a.pendingProps||3!==b.nodeType?null:b,null!==b?(a.stateNode=b,!0):!1;case 13:return!1;default:return!1}}\nfunction ph(a){if(lh){var b=kh;if(b){var c=b;if(!oh(a,b)){b=rf(c.nextSibling);if(!b||!oh(a,b)){a.flags=a.flags&-1025|2;lh=!1;jh=a;return}mh(jh,c)}jh=a;kh=rf(b.firstChild)}else a.flags=a.flags&-1025|2,lh=!1,jh=a}}function qh(a){for(a=a.return;null!==a&&5!==a.tag&&3!==a.tag&&13!==a.tag;)a=a.return;jh=a}\nfunction rh(a){if(a!==jh)return!1;if(!lh)return qh(a),lh=!0,!1;var b=a.type;if(5!==a.tag||\"head\"!==b&&\"body\"!==b&&!nf(b,a.memoizedProps))for(b=kh;b;)mh(a,b),b=rf(b.nextSibling);qh(a);if(13===a.tag){a=a.memoizedState;a=null!==a?a.dehydrated:null;if(!a)throw Error(y(317));a:{a=a.nextSibling;for(b=0;a;){if(8===a.nodeType){var c=a.data;if(\"/$\"===c){if(0===b){kh=rf(a.nextSibling);break a}b--}else\"$\"!==c&&\"$!\"!==c&&\"$?\"!==c||b++}a=a.nextSibling}kh=null}}else kh=jh?rf(a.stateNode.nextSibling):null;return!0}\nfunction sh(){kh=jh=null;lh=!1}var th=[];function uh(){for(var a=0;a<th.length;a++)th[a]._workInProgressVersionPrimary=null;th.length=0}var vh=ra.ReactCurrentDispatcher,wh=ra.ReactCurrentBatchConfig,xh=0,R=null,S=null,T=null,yh=!1,zh=!1;function Ah(){throw Error(y(321));}function Bh(a,b){if(null===b)return!1;for(var c=0;c<b.length&&c<a.length;c++)if(!He(a[c],b[c]))return!1;return!0}\nfunction Ch(a,b,c,d,e,f){xh=f;R=b;b.memoizedState=null;b.updateQueue=null;b.lanes=0;vh.current=null===a||null===a.memoizedState?Dh:Eh;a=c(d,e);if(zh){f=0;do{zh=!1;if(!(25>f))throw Error(y(301));f+=1;T=S=null;b.updateQueue=null;vh.current=Fh;a=c(d,e)}while(zh)}vh.current=Gh;b=null!==S&&null!==S.next;xh=0;T=S=R=null;yh=!1;if(b)throw Error(y(300));return a}function Hh(){var a={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};null===T?R.memoizedState=T=a:T=T.next=a;return T}\nfunction Ih(){if(null===S){var a=R.alternate;a=null!==a?a.memoizedState:null}else a=S.next;var b=null===T?R.memoizedState:T.next;if(null!==b)T=b,S=a;else{if(null===a)throw Error(y(310));S=a;a={memoizedState:S.memoizedState,baseState:S.baseState,baseQueue:S.baseQueue,queue:S.queue,next:null};null===T?R.memoizedState=T=a:T=T.next=a}return T}function Jh(a,b){return\"function\"===typeof b?b(a):b}\nfunction Kh(a){var b=Ih(),c=b.queue;if(null===c)throw Error(y(311));c.lastRenderedReducer=a;var d=S,e=d.baseQueue,f=c.pending;if(null!==f){if(null!==e){var g=e.next;e.next=f.next;f.next=g}d.baseQueue=e=f;c.pending=null}if(null!==e){e=e.next;d=d.baseState;var h=g=f=null,k=e;do{var l=k.lane;if((xh&l)===l)null!==h&&(h=h.next={lane:0,action:k.action,eagerReducer:k.eagerReducer,eagerState:k.eagerState,next:null}),d=k.eagerReducer===a?k.eagerState:a(d,k.action);else{var n={lane:l,action:k.action,eagerReducer:k.eagerReducer,\neagerState:k.eagerState,next:null};null===h?(g=h=n,f=d):h=h.next=n;R.lanes|=l;Dg|=l}k=k.next}while(null!==k&&k!==e);null===h?f=d:h.next=g;He(d,b.memoizedState)||(ug=!0);b.memoizedState=d;b.baseState=f;b.baseQueue=h;c.lastRenderedState=d}return[b.memoizedState,c.dispatch]}\nfunction Lh(a){var b=Ih(),c=b.queue;if(null===c)throw Error(y(311));c.lastRenderedReducer=a;var d=c.dispatch,e=c.pending,f=b.memoizedState;if(null!==e){c.pending=null;var g=e=e.next;do f=a(f,g.action),g=g.next;while(g!==e);He(f,b.memoizedState)||(ug=!0);b.memoizedState=f;null===b.baseQueue&&(b.baseState=f);c.lastRenderedState=f}return[f,d]}\nfunction Mh(a,b,c){var d=b._getVersion;d=d(b._source);var e=b._workInProgressVersionPrimary;if(null!==e)a=e===d;else if(a=a.mutableReadLanes,a=(xh&a)===a)b._workInProgressVersionPrimary=d,th.push(b);if(a)return c(b._source);th.push(b);throw Error(y(350));}\nfunction Nh(a,b,c,d){var e=U;if(null===e)throw Error(y(349));var f=b._getVersion,g=f(b._source),h=vh.current,k=h.useState(function(){return Mh(e,b,c)}),l=k[1],n=k[0];k=T;var A=a.memoizedState,p=A.refs,C=p.getSnapshot,x=A.source;A=A.subscribe;var w=R;a.memoizedState={refs:p,source:b,subscribe:d};h.useEffect(function(){p.getSnapshot=c;p.setSnapshot=l;var a=f(b._source);if(!He(g,a)){a=c(b._source);He(n,a)||(l(a),a=Ig(w),e.mutableReadLanes|=a&e.pendingLanes);a=e.mutableReadLanes;e.entangledLanes|=a;for(var d=\ne.entanglements,h=a;0<h;){var k=31-Vc(h),v=1<<k;d[k]|=a;h&=~v}}},[c,b,d]);h.useEffect(function(){return d(b._source,function(){var a=p.getSnapshot,c=p.setSnapshot;try{c(a(b._source));var d=Ig(w);e.mutableReadLanes|=d&e.pendingLanes}catch(q){c(function(){throw q;})}})},[b,d]);He(C,c)&&He(x,b)&&He(A,d)||(a={pending:null,dispatch:null,lastRenderedReducer:Jh,lastRenderedState:n},a.dispatch=l=Oh.bind(null,R,a),k.queue=a,k.baseQueue=null,n=Mh(e,b,c),k.memoizedState=k.baseState=n);return n}\nfunction Ph(a,b,c){var d=Ih();return Nh(d,a,b,c)}function Qh(a){var b=Hh();\"function\"===typeof a&&(a=a());b.memoizedState=b.baseState=a;a=b.queue={pending:null,dispatch:null,lastRenderedReducer:Jh,lastRenderedState:a};a=a.dispatch=Oh.bind(null,R,a);return[b.memoizedState,a]}\nfunction Rh(a,b,c,d){a={tag:a,create:b,destroy:c,deps:d,next:null};b=R.updateQueue;null===b?(b={lastEffect:null},R.updateQueue=b,b.lastEffect=a.next=a):(c=b.lastEffect,null===c?b.lastEffect=a.next=a:(d=c.next,c.next=a,a.next=d,b.lastEffect=a));return a}function Sh(a){var b=Hh();a={current:a};return b.memoizedState=a}function Th(){return Ih().memoizedState}function Uh(a,b,c,d){var e=Hh();R.flags|=a;e.memoizedState=Rh(1|b,c,void 0,void 0===d?null:d)}\nfunction Vh(a,b,c,d){var e=Ih();d=void 0===d?null:d;var f=void 0;if(null!==S){var g=S.memoizedState;f=g.destroy;if(null!==d&&Bh(d,g.deps)){Rh(b,c,f,d);return}}R.flags|=a;e.memoizedState=Rh(1|b,c,f,d)}function Wh(a,b){return Uh(516,4,a,b)}function Xh(a,b){return Vh(516,4,a,b)}function Yh(a,b){return Vh(4,2,a,b)}function Zh(a,b){if(\"function\"===typeof b)return a=a(),b(a),function(){b(null)};if(null!==b&&void 0!==b)return a=a(),b.current=a,function(){b.current=null}}\nfunction $h(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return Vh(4,2,Zh.bind(null,b,a),c)}function ai(){}function bi(a,b){var c=Ih();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&Bh(b,d[1]))return d[0];c.memoizedState=[a,b];return a}function ci(a,b){var c=Ih();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&Bh(b,d[1]))return d[0];a=a();c.memoizedState=[a,b];return a}\nfunction di(a,b){var c=eg();gg(98>c?98:c,function(){a(!0)});gg(97<c?97:c,function(){var c=wh.transition;wh.transition=1;try{a(!1),b()}finally{wh.transition=c}})}\nfunction Oh(a,b,c){var d=Hg(),e=Ig(a),f={lane:e,action:c,eagerReducer:null,eagerState:null,next:null},g=b.pending;null===g?f.next=f:(f.next=g.next,g.next=f);b.pending=f;g=a.alternate;if(a===R||null!==g&&g===R)zh=yh=!0;else{if(0===a.lanes&&(null===g||0===g.lanes)&&(g=b.lastRenderedReducer,null!==g))try{var h=b.lastRenderedState,k=g(h,c);f.eagerReducer=g;f.eagerState=k;if(He(k,h))return}catch(l){}finally{}Jg(a,e,d)}}\nvar Gh={readContext:vg,useCallback:Ah,useContext:Ah,useEffect:Ah,useImperativeHandle:Ah,useLayoutEffect:Ah,useMemo:Ah,useReducer:Ah,useRef:Ah,useState:Ah,useDebugValue:Ah,useDeferredValue:Ah,useTransition:Ah,useMutableSource:Ah,useOpaqueIdentifier:Ah,unstable_isNewReconciler:!1},Dh={readContext:vg,useCallback:function(a,b){Hh().memoizedState=[a,void 0===b?null:b];return a},useContext:vg,useEffect:Wh,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return Uh(4,2,Zh.bind(null,\nb,a),c)},useLayoutEffect:function(a,b){return Uh(4,2,a,b)},useMemo:function(a,b){var c=Hh();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=Hh();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a=d.queue={pending:null,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};a=a.dispatch=Oh.bind(null,R,a);return[d.memoizedState,a]},useRef:Sh,useState:Qh,useDebugValue:ai,useDeferredValue:function(a){var b=Qh(a),c=b[0],d=b[1];Wh(function(){var b=wh.transition;\nwh.transition=1;try{d(a)}finally{wh.transition=b}},[a]);return c},useTransition:function(){var a=Qh(!1),b=a[0];a=di.bind(null,a[1]);Sh(a);return[a,b]},useMutableSource:function(a,b,c){var d=Hh();d.memoizedState={refs:{getSnapshot:b,setSnapshot:null},source:a,subscribe:c};return Nh(d,a,b,c)},useOpaqueIdentifier:function(){if(lh){var a=!1,b=uf(function(){a||(a=!0,c(\"r:\"+(tf++).toString(36)));throw Error(y(355));}),c=Qh(b)[1];0===(R.mode&2)&&(R.flags|=516,Rh(5,function(){c(\"r:\"+(tf++).toString(36))},\nvoid 0,null));return b}b=\"r:\"+(tf++).toString(36);Qh(b);return b},unstable_isNewReconciler:!1},Eh={readContext:vg,useCallback:bi,useContext:vg,useEffect:Xh,useImperativeHandle:$h,useLayoutEffect:Yh,useMemo:ci,useReducer:Kh,useRef:Th,useState:function(){return Kh(Jh)},useDebugValue:ai,useDeferredValue:function(a){var b=Kh(Jh),c=b[0],d=b[1];Xh(function(){var b=wh.transition;wh.transition=1;try{d(a)}finally{wh.transition=b}},[a]);return c},useTransition:function(){var a=Kh(Jh)[0];return[Th().current,\na]},useMutableSource:Ph,useOpaqueIdentifier:function(){return Kh(Jh)[0]},unstable_isNewReconciler:!1},Fh={readContext:vg,useCallback:bi,useContext:vg,useEffect:Xh,useImperativeHandle:$h,useLayoutEffect:Yh,useMemo:ci,useReducer:Lh,useRef:Th,useState:function(){return Lh(Jh)},useDebugValue:ai,useDeferredValue:function(a){var b=Lh(Jh),c=b[0],d=b[1];Xh(function(){var b=wh.transition;wh.transition=1;try{d(a)}finally{wh.transition=b}},[a]);return c},useTransition:function(){var a=Lh(Jh)[0];return[Th().current,\na]},useMutableSource:Ph,useOpaqueIdentifier:function(){return Lh(Jh)[0]},unstable_isNewReconciler:!1},ei=ra.ReactCurrentOwner,ug=!1;function fi(a,b,c,d){b.child=null===a?Zg(b,null,c,d):Yg(b,a.child,c,d)}function gi(a,b,c,d,e){c=c.render;var f=b.ref;tg(b,e);d=Ch(a,b,c,d,f,e);if(null!==a&&!ug)return b.updateQueue=a.updateQueue,b.flags&=-517,a.lanes&=~e,hi(a,b,e);b.flags|=1;fi(a,b,d,e);return b.child}\nfunction ii(a,b,c,d,e,f){if(null===a){var g=c.type;if(\"function\"===typeof g&&!ji(g)&&void 0===g.defaultProps&&null===c.compare&&void 0===c.defaultProps)return b.tag=15,b.type=g,ki(a,b,g,d,e,f);a=Vg(c.type,null,d,b,b.mode,f);a.ref=b.ref;a.return=b;return b.child=a}g=a.child;if(0===(e&f)&&(e=g.memoizedProps,c=c.compare,c=null!==c?c:Je,c(e,d)&&a.ref===b.ref))return hi(a,b,f);b.flags|=1;a=Tg(g,d);a.ref=b.ref;a.return=b;return b.child=a}\nfunction ki(a,b,c,d,e,f){if(null!==a&&Je(a.memoizedProps,d)&&a.ref===b.ref)if(ug=!1,0!==(f&e))0!==(a.flags&16384)&&(ug=!0);else return b.lanes=a.lanes,hi(a,b,f);return li(a,b,c,d,f)}\nfunction mi(a,b,c){var d=b.pendingProps,e=d.children,f=null!==a?a.memoizedState:null;if(\"hidden\"===d.mode||\"unstable-defer-without-hiding\"===d.mode)if(0===(b.mode&4))b.memoizedState={baseLanes:0},ni(b,c);else if(0!==(c&1073741824))b.memoizedState={baseLanes:0},ni(b,null!==f?f.baseLanes:c);else return a=null!==f?f.baseLanes|c:c,b.lanes=b.childLanes=1073741824,b.memoizedState={baseLanes:a},ni(b,a),null;else null!==f?(d=f.baseLanes|c,b.memoizedState=null):d=c,ni(b,d);fi(a,b,e,c);return b.child}\nfunction oi(a,b){var c=b.ref;if(null===a&&null!==c||null!==a&&a.ref!==c)b.flags|=128}function li(a,b,c,d,e){var f=Ff(c)?Df:M.current;f=Ef(b,f);tg(b,e);c=Ch(a,b,c,d,f,e);if(null!==a&&!ug)return b.updateQueue=a.updateQueue,b.flags&=-517,a.lanes&=~e,hi(a,b,e);b.flags|=1;fi(a,b,c,e);return b.child}\nfunction pi(a,b,c,d,e){if(Ff(c)){var f=!0;Jf(b)}else f=!1;tg(b,e);if(null===b.stateNode)null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2),Mg(b,c,d),Og(b,c,d,e),d=!0;else if(null===a){var g=b.stateNode,h=b.memoizedProps;g.props=h;var k=g.context,l=c.contextType;\"object\"===typeof l&&null!==l?l=vg(l):(l=Ff(c)?Df:M.current,l=Ef(b,l));var n=c.getDerivedStateFromProps,A=\"function\"===typeof n||\"function\"===typeof g.getSnapshotBeforeUpdate;A||\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\n\"function\"!==typeof g.componentWillReceiveProps||(h!==d||k!==l)&&Ng(b,g,d,l);wg=!1;var p=b.memoizedState;g.state=p;Cg(b,d,g,e);k=b.memoizedState;h!==d||p!==k||N.current||wg?(\"function\"===typeof n&&(Gg(b,c,n,d),k=b.memoizedState),(h=wg||Lg(b,c,h,d,p,k,l))?(A||\"function\"!==typeof g.UNSAFE_componentWillMount&&\"function\"!==typeof g.componentWillMount||(\"function\"===typeof g.componentWillMount&&g.componentWillMount(),\"function\"===typeof g.UNSAFE_componentWillMount&&g.UNSAFE_componentWillMount()),\"function\"===\ntypeof g.componentDidMount&&(b.flags|=4)):(\"function\"===typeof g.componentDidMount&&(b.flags|=4),b.memoizedProps=d,b.memoizedState=k),g.props=d,g.state=k,g.context=l,d=h):(\"function\"===typeof g.componentDidMount&&(b.flags|=4),d=!1)}else{g=b.stateNode;yg(a,b);h=b.memoizedProps;l=b.type===b.elementType?h:lg(b.type,h);g.props=l;A=b.pendingProps;p=g.context;k=c.contextType;\"object\"===typeof k&&null!==k?k=vg(k):(k=Ff(c)?Df:M.current,k=Ef(b,k));var C=c.getDerivedStateFromProps;(n=\"function\"===typeof C||\n\"function\"===typeof g.getSnapshotBeforeUpdate)||\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\"function\"!==typeof g.componentWillReceiveProps||(h!==A||p!==k)&&Ng(b,g,d,k);wg=!1;p=b.memoizedState;g.state=p;Cg(b,d,g,e);var x=b.memoizedState;h!==A||p!==x||N.current||wg?(\"function\"===typeof C&&(Gg(b,c,C,d),x=b.memoizedState),(l=wg||Lg(b,c,l,d,p,x,k))?(n||\"function\"!==typeof g.UNSAFE_componentWillUpdate&&\"function\"!==typeof g.componentWillUpdate||(\"function\"===typeof g.componentWillUpdate&&g.componentWillUpdate(d,\nx,k),\"function\"===typeof g.UNSAFE_componentWillUpdate&&g.UNSAFE_componentWillUpdate(d,x,k)),\"function\"===typeof g.componentDidUpdate&&(b.flags|=4),\"function\"===typeof g.getSnapshotBeforeUpdate&&(b.flags|=256)):(\"function\"!==typeof g.componentDidUpdate||h===a.memoizedProps&&p===a.memoizedState||(b.flags|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&p===a.memoizedState||(b.flags|=256),b.memoizedProps=d,b.memoizedState=x),g.props=d,g.state=x,g.context=k,d=l):(\"function\"!==typeof g.componentDidUpdate||\nh===a.memoizedProps&&p===a.memoizedState||(b.flags|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&p===a.memoizedState||(b.flags|=256),d=!1)}return qi(a,b,c,d,f,e)}\nfunction qi(a,b,c,d,e,f){oi(a,b);var g=0!==(b.flags&64);if(!d&&!g)return e&&Kf(b,c,!1),hi(a,b,f);d=b.stateNode;ei.current=b;var h=g&&\"function\"!==typeof c.getDerivedStateFromError?null:d.render();b.flags|=1;null!==a&&g?(b.child=Yg(b,a.child,null,f),b.child=Yg(b,null,h,f)):fi(a,b,h,f);b.memoizedState=d.state;e&&Kf(b,c,!0);return b.child}function ri(a){var b=a.stateNode;b.pendingContext?Hf(a,b.pendingContext,b.pendingContext!==b.context):b.context&&Hf(a,b.context,!1);eh(a,b.containerInfo)}\nvar si={dehydrated:null,retryLane:0};\nfunction ti(a,b,c){var d=b.pendingProps,e=P.current,f=!1,g;(g=0!==(b.flags&64))||(g=null!==a&&null===a.memoizedState?!1:0!==(e&2));g?(f=!0,b.flags&=-65):null!==a&&null===a.memoizedState||void 0===d.fallback||!0===d.unstable_avoidThisFallback||(e|=1);I(P,e&1);if(null===a){void 0!==d.fallback&&ph(b);a=d.children;e=d.fallback;if(f)return a=ui(b,a,e,c),b.child.memoizedState={baseLanes:c},b.memoizedState=si,a;if(\"number\"===typeof d.unstable_expectedLoadTime)return a=ui(b,a,e,c),b.child.memoizedState={baseLanes:c},\nb.memoizedState=si,b.lanes=33554432,a;c=vi({mode:\"visible\",children:a},b.mode,c,null);c.return=b;return b.child=c}if(null!==a.memoizedState){if(f)return d=wi(a,b,d.children,d.fallback,c),f=b.child,e=a.child.memoizedState,f.memoizedState=null===e?{baseLanes:c}:{baseLanes:e.baseLanes|c},f.childLanes=a.childLanes&~c,b.memoizedState=si,d;c=xi(a,b,d.children,c);b.memoizedState=null;return c}if(f)return d=wi(a,b,d.children,d.fallback,c),f=b.child,e=a.child.memoizedState,f.memoizedState=null===e?{baseLanes:c}:\n{baseLanes:e.baseLanes|c},f.childLanes=a.childLanes&~c,b.memoizedState=si,d;c=xi(a,b,d.children,c);b.memoizedState=null;return c}function ui(a,b,c,d){var e=a.mode,f=a.child;b={mode:\"hidden\",children:b};0===(e&2)&&null!==f?(f.childLanes=0,f.pendingProps=b):f=vi(b,e,0,null);c=Xg(c,e,d,null);f.return=a;c.return=a;f.sibling=c;a.child=f;return c}\nfunction xi(a,b,c,d){var e=a.child;a=e.sibling;c=Tg(e,{mode:\"visible\",children:c});0===(b.mode&2)&&(c.lanes=d);c.return=b;c.sibling=null;null!==a&&(a.nextEffect=null,a.flags=8,b.firstEffect=b.lastEffect=a);return b.child=c}\nfunction wi(a,b,c,d,e){var f=b.mode,g=a.child;a=g.sibling;var h={mode:\"hidden\",children:c};0===(f&2)&&b.child!==g?(c=b.child,c.childLanes=0,c.pendingProps=h,g=c.lastEffect,null!==g?(b.firstEffect=c.firstEffect,b.lastEffect=g,g.nextEffect=null):b.firstEffect=b.lastEffect=null):c=Tg(g,h);null!==a?d=Tg(a,d):(d=Xg(d,f,e,null),d.flags|=2);d.return=b;c.return=b;c.sibling=d;b.child=c;return d}function yi(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);sg(a.return,b)}\nfunction zi(a,b,c,d,e,f){var g=a.memoizedState;null===g?a.memoizedState={isBackwards:b,rendering:null,renderingStartTime:0,last:d,tail:c,tailMode:e,lastEffect:f}:(g.isBackwards=b,g.rendering=null,g.renderingStartTime=0,g.last=d,g.tail=c,g.tailMode=e,g.lastEffect=f)}\nfunction Ai(a,b,c){var d=b.pendingProps,e=d.revealOrder,f=d.tail;fi(a,b,d.children,c);d=P.current;if(0!==(d&2))d=d&1|2,b.flags|=64;else{if(null!==a&&0!==(a.flags&64))a:for(a=b.child;null!==a;){if(13===a.tag)null!==a.memoizedState&&yi(a,c);else if(19===a.tag)yi(a,c);else if(null!==a.child){a.child.return=a;a=a.child;continue}if(a===b)break a;for(;null===a.sibling;){if(null===a.return||a.return===b)break a;a=a.return}a.sibling.return=a.return;a=a.sibling}d&=1}I(P,d);if(0===(b.mode&2))b.memoizedState=\nnull;else switch(e){case \"forwards\":c=b.child;for(e=null;null!==c;)a=c.alternate,null!==a&&null===ih(a)&&(e=c),c=c.sibling;c=e;null===c?(e=b.child,b.child=null):(e=c.sibling,c.sibling=null);zi(b,!1,e,c,f,b.lastEffect);break;case \"backwards\":c=null;e=b.child;for(b.child=null;null!==e;){a=e.alternate;if(null!==a&&null===ih(a)){b.child=e;break}a=e.sibling;e.sibling=c;c=e;e=a}zi(b,!0,c,null,f,b.lastEffect);break;case \"together\":zi(b,!1,null,null,void 0,b.lastEffect);break;default:b.memoizedState=null}return b.child}\nfunction hi(a,b,c){null!==a&&(b.dependencies=a.dependencies);Dg|=b.lanes;if(0!==(c&b.childLanes)){if(null!==a&&b.child!==a.child)throw Error(y(153));if(null!==b.child){a=b.child;c=Tg(a,a.pendingProps);b.child=c;for(c.return=b;null!==a.sibling;)a=a.sibling,c=c.sibling=Tg(a,a.pendingProps),c.return=b;c.sibling=null}return b.child}return null}var Bi,Ci,Di,Ei;\nBi=function(a,b){for(var c=b.child;null!==c;){if(5===c.tag||6===c.tag)a.appendChild(c.stateNode);else if(4!==c.tag&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return}c.sibling.return=c.return;c=c.sibling}};Ci=function(){};\nDi=function(a,b,c,d){var e=a.memoizedProps;if(e!==d){a=b.stateNode;dh(ah.current);var f=null;switch(c){case \"input\":e=Ya(a,e);d=Ya(a,d);f=[];break;case \"option\":e=eb(a,e);d=eb(a,d);f=[];break;case \"select\":e=m({},e,{value:void 0});d=m({},d,{value:void 0});f=[];break;case \"textarea\":e=gb(a,e);d=gb(a,d);f=[];break;default:\"function\"!==typeof e.onClick&&\"function\"===typeof d.onClick&&(a.onclick=jf)}vb(c,d);var g;c=null;for(l in e)if(!d.hasOwnProperty(l)&&e.hasOwnProperty(l)&&null!=e[l])if(\"style\"===\nl){var h=e[l];for(g in h)h.hasOwnProperty(g)&&(c||(c={}),c[g]=\"\")}else\"dangerouslySetInnerHTML\"!==l&&\"children\"!==l&&\"suppressContentEditableWarning\"!==l&&\"suppressHydrationWarning\"!==l&&\"autoFocus\"!==l&&(ca.hasOwnProperty(l)?f||(f=[]):(f=f||[]).push(l,null));for(l in d){var k=d[l];h=null!=e?e[l]:void 0;if(d.hasOwnProperty(l)&&k!==h&&(null!=k||null!=h))if(\"style\"===l)if(h){for(g in h)!h.hasOwnProperty(g)||k&&k.hasOwnProperty(g)||(c||(c={}),c[g]=\"\");for(g in k)k.hasOwnProperty(g)&&h[g]!==k[g]&&(c||\n(c={}),c[g]=k[g])}else c||(f||(f=[]),f.push(l,c)),c=k;else\"dangerouslySetInnerHTML\"===l?(k=k?k.__html:void 0,h=h?h.__html:void 0,null!=k&&h!==k&&(f=f||[]).push(l,k)):\"children\"===l?\"string\"!==typeof k&&\"number\"!==typeof k||(f=f||[]).push(l,\"\"+k):\"suppressContentEditableWarning\"!==l&&\"suppressHydrationWarning\"!==l&&(ca.hasOwnProperty(l)?(null!=k&&\"onScroll\"===l&&G(\"scroll\",a),f||h===k||(f=[])):\"object\"===typeof k&&null!==k&&k.$$typeof===Ga?k.toString():(f=f||[]).push(l,k))}c&&(f=f||[]).push(\"style\",\nc);var l=f;if(b.updateQueue=l)b.flags|=4}};Ei=function(a,b,c,d){c!==d&&(b.flags|=4)};function Fi(a,b){if(!lh)switch(a.tailMode){case \"hidden\":b=a.tail;for(var c=null;null!==b;)null!==b.alternate&&(c=b),b=b.sibling;null===c?a.tail=null:c.sibling=null;break;case \"collapsed\":c=a.tail;for(var d=null;null!==c;)null!==c.alternate&&(d=c),c=c.sibling;null===d?b||null===a.tail?a.tail=null:a.tail.sibling=null:d.sibling=null}}\nfunction Gi(a,b,c){var d=b.pendingProps;switch(b.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:return Ff(b.type)&&Gf(),null;case 3:fh();H(N);H(M);uh();d=b.stateNode;d.pendingContext&&(d.context=d.pendingContext,d.pendingContext=null);if(null===a||null===a.child)rh(b)?b.flags|=4:d.hydrate||(b.flags|=256);Ci(b);return null;case 5:hh(b);var e=dh(ch.current);c=b.type;if(null!==a&&null!=b.stateNode)Di(a,b,c,d,e),a.ref!==b.ref&&(b.flags|=128);else{if(!d){if(null===\nb.stateNode)throw Error(y(166));return null}a=dh(ah.current);if(rh(b)){d=b.stateNode;c=b.type;var f=b.memoizedProps;d[wf]=b;d[xf]=f;switch(c){case \"dialog\":G(\"cancel\",d);G(\"close\",d);break;case \"iframe\":case \"object\":case \"embed\":G(\"load\",d);break;case \"video\":case \"audio\":for(a=0;a<Xe.length;a++)G(Xe[a],d);break;case \"source\":G(\"error\",d);break;case \"img\":case \"image\":case \"link\":G(\"error\",d);G(\"load\",d);break;case \"details\":G(\"toggle\",d);break;case \"input\":Za(d,f);G(\"invalid\",d);break;case \"select\":d._wrapperState=\n{wasMultiple:!!f.multiple};G(\"invalid\",d);break;case \"textarea\":hb(d,f),G(\"invalid\",d)}vb(c,f);a=null;for(var g in f)f.hasOwnProperty(g)&&(e=f[g],\"children\"===g?\"string\"===typeof e?d.textContent!==e&&(a=[\"children\",e]):\"number\"===typeof e&&d.textContent!==\"\"+e&&(a=[\"children\",\"\"+e]):ca.hasOwnProperty(g)&&null!=e&&\"onScroll\"===g&&G(\"scroll\",d));switch(c){case \"input\":Va(d);cb(d,f,!0);break;case \"textarea\":Va(d);jb(d);break;case \"select\":case \"option\":break;default:\"function\"===typeof f.onClick&&(d.onclick=\njf)}d=a;b.updateQueue=d;null!==d&&(b.flags|=4)}else{g=9===e.nodeType?e:e.ownerDocument;a===kb.html&&(a=lb(c));a===kb.html?\"script\"===c?(a=g.createElement(\"div\"),a.innerHTML=\"<script>\\x3c/script>\",a=a.removeChild(a.firstChild)):\"string\"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),\"select\"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[wf]=b;a[xf]=d;Bi(a,b,!1,!1);b.stateNode=a;g=wb(c,d);switch(c){case \"dialog\":G(\"cancel\",a);G(\"close\",a);\ne=d;break;case \"iframe\":case \"object\":case \"embed\":G(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;e<Xe.length;e++)G(Xe[e],a);e=d;break;case \"source\":G(\"error\",a);e=d;break;case \"img\":case \"image\":case \"link\":G(\"error\",a);G(\"load\",a);e=d;break;case \"details\":G(\"toggle\",a);e=d;break;case \"input\":Za(a,d);e=Ya(a,d);G(\"invalid\",a);break;case \"option\":e=eb(a,d);break;case \"select\":a._wrapperState={wasMultiple:!!d.multiple};e=m({},d,{value:void 0});G(\"invalid\",a);break;case \"textarea\":hb(a,d);e=\ngb(a,d);G(\"invalid\",a);break;default:e=d}vb(c,e);var h=e;for(f in h)if(h.hasOwnProperty(f)){var k=h[f];\"style\"===f?tb(a,k):\"dangerouslySetInnerHTML\"===f?(k=k?k.__html:void 0,null!=k&&ob(a,k)):\"children\"===f?\"string\"===typeof k?(\"textarea\"!==c||\"\"!==k)&&pb(a,k):\"number\"===typeof k&&pb(a,\"\"+k):\"suppressContentEditableWarning\"!==f&&\"suppressHydrationWarning\"!==f&&\"autoFocus\"!==f&&(ca.hasOwnProperty(f)?null!=k&&\"onScroll\"===f&&G(\"scroll\",a):null!=k&&qa(a,f,k,g))}switch(c){case \"input\":Va(a);cb(a,d,!1);\nbreak;case \"textarea\":Va(a);jb(a);break;case \"option\":null!=d.value&&a.setAttribute(\"value\",\"\"+Sa(d.value));break;case \"select\":a.multiple=!!d.multiple;f=d.value;null!=f?fb(a,!!d.multiple,f,!1):null!=d.defaultValue&&fb(a,!!d.multiple,d.defaultValue,!0);break;default:\"function\"===typeof e.onClick&&(a.onclick=jf)}mf(c,d)&&(b.flags|=4)}null!==b.ref&&(b.flags|=128)}return null;case 6:if(a&&null!=b.stateNode)Ei(a,b,a.memoizedProps,d);else{if(\"string\"!==typeof d&&null===b.stateNode)throw Error(y(166));\nc=dh(ch.current);dh(ah.current);rh(b)?(d=b.stateNode,c=b.memoizedProps,d[wf]=b,d.nodeValue!==c&&(b.flags|=4)):(d=(9===c.nodeType?c:c.ownerDocument).createTextNode(d),d[wf]=b,b.stateNode=d)}return null;case 13:H(P);d=b.memoizedState;if(0!==(b.flags&64))return b.lanes=c,b;d=null!==d;c=!1;null===a?void 0!==b.memoizedProps.fallback&&rh(b):c=null!==a.memoizedState;if(d&&!c&&0!==(b.mode&2))if(null===a&&!0!==b.memoizedProps.unstable_avoidThisFallback||0!==(P.current&1))0===V&&(V=3);else{if(0===V||3===V)V=\n4;null===U||0===(Dg&134217727)&&0===(Hi&134217727)||Ii(U,W)}if(d||c)b.flags|=4;return null;case 4:return fh(),Ci(b),null===a&&cf(b.stateNode.containerInfo),null;case 10:return rg(b),null;case 17:return Ff(b.type)&&Gf(),null;case 19:H(P);d=b.memoizedState;if(null===d)return null;f=0!==(b.flags&64);g=d.rendering;if(null===g)if(f)Fi(d,!1);else{if(0!==V||null!==a&&0!==(a.flags&64))for(a=b.child;null!==a;){g=ih(a);if(null!==g){b.flags|=64;Fi(d,!1);f=g.updateQueue;null!==f&&(b.updateQueue=f,b.flags|=4);\nnull===d.lastEffect&&(b.firstEffect=null);b.lastEffect=d.lastEffect;d=c;for(c=b.child;null!==c;)f=c,a=d,f.flags&=2,f.nextEffect=null,f.firstEffect=null,f.lastEffect=null,g=f.alternate,null===g?(f.childLanes=0,f.lanes=a,f.child=null,f.memoizedProps=null,f.memoizedState=null,f.updateQueue=null,f.dependencies=null,f.stateNode=null):(f.childLanes=g.childLanes,f.lanes=g.lanes,f.child=g.child,f.memoizedProps=g.memoizedProps,f.memoizedState=g.memoizedState,f.updateQueue=g.updateQueue,f.type=g.type,a=g.dependencies,\nf.dependencies=null===a?null:{lanes:a.lanes,firstContext:a.firstContext}),c=c.sibling;I(P,P.current&1|2);return b.child}a=a.sibling}null!==d.tail&&O()>Ji&&(b.flags|=64,f=!0,Fi(d,!1),b.lanes=33554432)}else{if(!f)if(a=ih(g),null!==a){if(b.flags|=64,f=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Fi(d,!0),null===d.tail&&\"hidden\"===d.tailMode&&!g.alternate&&!lh)return b=b.lastEffect=d.lastEffect,null!==b&&(b.nextEffect=null),null}else 2*O()-d.renderingStartTime>Ji&&1073741824!==c&&(b.flags|=\n64,f=!0,Fi(d,!1),b.lanes=33554432);d.isBackwards?(g.sibling=b.child,b.child=g):(c=d.last,null!==c?c.sibling=g:b.child=g,d.last=g)}return null!==d.tail?(c=d.tail,d.rendering=c,d.tail=c.sibling,d.lastEffect=b.lastEffect,d.renderingStartTime=O(),c.sibling=null,b=P.current,I(P,f?b&1|2:b&1),c):null;case 23:case 24:return Ki(),null!==a&&null!==a.memoizedState!==(null!==b.memoizedState)&&\"unstable-defer-without-hiding\"!==d.mode&&(b.flags|=4),null}throw Error(y(156,b.tag));}\nfunction Li(a){switch(a.tag){case 1:Ff(a.type)&&Gf();var b=a.flags;return b&4096?(a.flags=b&-4097|64,a):null;case 3:fh();H(N);H(M);uh();b=a.flags;if(0!==(b&64))throw Error(y(285));a.flags=b&-4097|64;return a;case 5:return hh(a),null;case 13:return H(P),b=a.flags,b&4096?(a.flags=b&-4097|64,a):null;case 19:return H(P),null;case 4:return fh(),null;case 10:return rg(a),null;case 23:case 24:return Ki(),null;default:return null}}\nfunction Mi(a,b){try{var c=\"\",d=b;do c+=Qa(d),d=d.return;while(d);var e=c}catch(f){e=\"\\nError generating stack: \"+f.message+\"\\n\"+f.stack}return{value:a,source:b,stack:e}}function Ni(a,b){try{console.error(b.value)}catch(c){setTimeout(function(){throw c;})}}var Oi=\"function\"===typeof WeakMap?WeakMap:Map;function Pi(a,b,c){c=zg(-1,c);c.tag=3;c.payload={element:null};var d=b.value;c.callback=function(){Qi||(Qi=!0,Ri=d);Ni(a,b)};return c}\nfunction Si(a,b,c){c=zg(-1,c);c.tag=3;var d=a.type.getDerivedStateFromError;if(\"function\"===typeof d){var e=b.value;c.payload=function(){Ni(a,b);return d(e)}}var f=a.stateNode;null!==f&&\"function\"===typeof f.componentDidCatch&&(c.callback=function(){\"function\"!==typeof d&&(null===Ti?Ti=new Set([this]):Ti.add(this),Ni(a,b));var c=b.stack;this.componentDidCatch(b.value,{componentStack:null!==c?c:\"\"})});return c}var Ui=\"function\"===typeof WeakSet?WeakSet:Set;\nfunction Vi(a){var b=a.ref;if(null!==b)if(\"function\"===typeof b)try{b(null)}catch(c){Wi(a,c)}else b.current=null}function Xi(a,b){switch(b.tag){case 0:case 11:case 15:case 22:return;case 1:if(b.flags&256&&null!==a){var c=a.memoizedProps,d=a.memoizedState;a=b.stateNode;b=a.getSnapshotBeforeUpdate(b.elementType===b.type?c:lg(b.type,c),d);a.__reactInternalSnapshotBeforeUpdate=b}return;case 3:b.flags&256&&qf(b.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(y(163));}\nfunction Yi(a,b,c){switch(c.tag){case 0:case 11:case 15:case 22:b=c.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){a=b=b.next;do{if(3===(a.tag&3)){var d=a.create;a.destroy=d()}a=a.next}while(a!==b)}b=c.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){a=b=b.next;do{var e=a;d=e.next;e=e.tag;0!==(e&4)&&0!==(e&1)&&(Zi(c,a),$i(c,a));a=d}while(a!==b)}return;case 1:a=c.stateNode;c.flags&4&&(null===b?a.componentDidMount():(d=c.elementType===c.type?b.memoizedProps:lg(c.type,b.memoizedProps),a.componentDidUpdate(d,\nb.memoizedState,a.__reactInternalSnapshotBeforeUpdate)));b=c.updateQueue;null!==b&&Eg(c,b,a);return;case 3:b=c.updateQueue;if(null!==b){a=null;if(null!==c.child)switch(c.child.tag){case 5:a=c.child.stateNode;break;case 1:a=c.child.stateNode}Eg(c,b,a)}return;case 5:a=c.stateNode;null===b&&c.flags&4&&mf(c.type,c.memoizedProps)&&a.focus();return;case 6:return;case 4:return;case 12:return;case 13:null===c.memoizedState&&(c=c.alternate,null!==c&&(c=c.memoizedState,null!==c&&(c=c.dehydrated,null!==c&&Cc(c))));\nreturn;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(y(163));}\nfunction aj(a,b){for(var c=a;;){if(5===c.tag){var d=c.stateNode;if(b)d=d.style,\"function\"===typeof d.setProperty?d.setProperty(\"display\",\"none\",\"important\"):d.display=\"none\";else{d=c.stateNode;var e=c.memoizedProps.style;e=void 0!==e&&null!==e&&e.hasOwnProperty(\"display\")?e.display:null;d.style.display=sb(\"display\",e)}}else if(6===c.tag)c.stateNode.nodeValue=b?\"\":c.memoizedProps;else if((23!==c.tag&&24!==c.tag||null===c.memoizedState||c===a)&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===\na)break;for(;null===c.sibling;){if(null===c.return||c.return===a)return;c=c.return}c.sibling.return=c.return;c=c.sibling}}\nfunction bj(a,b){if(Mf&&\"function\"===typeof Mf.onCommitFiberUnmount)try{Mf.onCommitFiberUnmount(Lf,b)}catch(f){}switch(b.tag){case 0:case 11:case 14:case 15:case 22:a=b.updateQueue;if(null!==a&&(a=a.lastEffect,null!==a)){var c=a=a.next;do{var d=c,e=d.destroy;d=d.tag;if(void 0!==e)if(0!==(d&4))Zi(b,c);else{d=b;try{e()}catch(f){Wi(d,f)}}c=c.next}while(c!==a)}break;case 1:Vi(b);a=b.stateNode;if(\"function\"===typeof a.componentWillUnmount)try{a.props=b.memoizedProps,a.state=b.memoizedState,a.componentWillUnmount()}catch(f){Wi(b,\nf)}break;case 5:Vi(b);break;case 4:cj(a,b)}}function dj(a){a.alternate=null;a.child=null;a.dependencies=null;a.firstEffect=null;a.lastEffect=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.return=null;a.updateQueue=null}function ej(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction fj(a){a:{for(var b=a.return;null!==b;){if(ej(b))break a;b=b.return}throw Error(y(160));}var c=b;b=c.stateNode;switch(c.tag){case 5:var d=!1;break;case 3:b=b.containerInfo;d=!0;break;case 4:b=b.containerInfo;d=!0;break;default:throw Error(y(161));}c.flags&16&&(pb(b,\"\"),c.flags&=-17);a:b:for(c=a;;){for(;null===c.sibling;){if(null===c.return||ej(c.return)){c=null;break a}c=c.return}c.sibling.return=c.return;for(c=c.sibling;5!==c.tag&&6!==c.tag&&18!==c.tag;){if(c.flags&2)continue b;if(null===\nc.child||4===c.tag)continue b;else c.child.return=c,c=c.child}if(!(c.flags&2)){c=c.stateNode;break a}}d?gj(a,c,b):hj(a,c,b)}\nfunction gj(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=jf));else if(4!==d&&(a=a.child,null!==a))for(gj(a,b,c),a=a.sibling;null!==a;)gj(a,b,c),a=a.sibling}\nfunction hj(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(hj(a,b,c),a=a.sibling;null!==a;)hj(a,b,c),a=a.sibling}\nfunction cj(a,b){for(var c=b,d=!1,e,f;;){if(!d){d=c.return;a:for(;;){if(null===d)throw Error(y(160));e=d.stateNode;switch(d.tag){case 5:f=!1;break a;case 3:e=e.containerInfo;f=!0;break a;case 4:e=e.containerInfo;f=!0;break a}d=d.return}d=!0}if(5===c.tag||6===c.tag){a:for(var g=a,h=c,k=h;;)if(bj(g,k),null!==k.child&&4!==k.tag)k.child.return=k,k=k.child;else{if(k===h)break a;for(;null===k.sibling;){if(null===k.return||k.return===h)break a;k=k.return}k.sibling.return=k.return;k=k.sibling}f?(g=e,h=c.stateNode,\n8===g.nodeType?g.parentNode.removeChild(h):g.removeChild(h)):e.removeChild(c.stateNode)}else if(4===c.tag){if(null!==c.child){e=c.stateNode.containerInfo;f=!0;c.child.return=c;c=c.child;continue}}else if(bj(a,c),null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return;4===c.tag&&(d=!1)}c.sibling.return=c.return;c=c.sibling}}\nfunction ij(a,b){switch(b.tag){case 0:case 11:case 14:case 15:case 22:var c=b.updateQueue;c=null!==c?c.lastEffect:null;if(null!==c){var d=c=c.next;do 3===(d.tag&3)&&(a=d.destroy,d.destroy=void 0,void 0!==a&&a()),d=d.next;while(d!==c)}return;case 1:return;case 5:c=b.stateNode;if(null!=c){d=b.memoizedProps;var e=null!==a?a.memoizedProps:d;a=b.type;var f=b.updateQueue;b.updateQueue=null;if(null!==f){c[xf]=d;\"input\"===a&&\"radio\"===d.type&&null!=d.name&&$a(c,d);wb(a,e);b=wb(a,d);for(e=0;e<f.length;e+=\n2){var g=f[e],h=f[e+1];\"style\"===g?tb(c,h):\"dangerouslySetInnerHTML\"===g?ob(c,h):\"children\"===g?pb(c,h):qa(c,g,h,b)}switch(a){case \"input\":ab(c,d);break;case \"textarea\":ib(c,d);break;case \"select\":a=c._wrapperState.wasMultiple,c._wrapperState.wasMultiple=!!d.multiple,f=d.value,null!=f?fb(c,!!d.multiple,f,!1):a!==!!d.multiple&&(null!=d.defaultValue?fb(c,!!d.multiple,d.defaultValue,!0):fb(c,!!d.multiple,d.multiple?[]:\"\",!1))}}}return;case 6:if(null===b.stateNode)throw Error(y(162));b.stateNode.nodeValue=\nb.memoizedProps;return;case 3:c=b.stateNode;c.hydrate&&(c.hydrate=!1,Cc(c.containerInfo));return;case 12:return;case 13:null!==b.memoizedState&&(jj=O(),aj(b.child,!0));kj(b);return;case 19:kj(b);return;case 17:return;case 23:case 24:aj(b,null!==b.memoizedState);return}throw Error(y(163));}function kj(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Ui);b.forEach(function(b){var d=lj.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nfunction mj(a,b){return null!==a&&(a=a.memoizedState,null===a||null!==a.dehydrated)?(b=b.memoizedState,null!==b&&null===b.dehydrated):!1}var nj=Math.ceil,oj=ra.ReactCurrentDispatcher,pj=ra.ReactCurrentOwner,X=0,U=null,Y=null,W=0,qj=0,rj=Bf(0),V=0,sj=null,tj=0,Dg=0,Hi=0,uj=0,vj=null,jj=0,Ji=Infinity;function wj(){Ji=O()+500}var Z=null,Qi=!1,Ri=null,Ti=null,xj=!1,yj=null,zj=90,Aj=[],Bj=[],Cj=null,Dj=0,Ej=null,Fj=-1,Gj=0,Hj=0,Ij=null,Jj=!1;function Hg(){return 0!==(X&48)?O():-1!==Fj?Fj:Fj=O()}\nfunction Ig(a){a=a.mode;if(0===(a&2))return 1;if(0===(a&4))return 99===eg()?1:2;0===Gj&&(Gj=tj);if(0!==kg.transition){0!==Hj&&(Hj=null!==vj?vj.pendingLanes:0);a=Gj;var b=4186112&~Hj;b&=-b;0===b&&(a=4186112&~a,b=a&-a,0===b&&(b=8192));return b}a=eg();0!==(X&4)&&98===a?a=Xc(12,Gj):(a=Sc(a),a=Xc(a,Gj));return a}\nfunction Jg(a,b,c){if(50<Dj)throw Dj=0,Ej=null,Error(y(185));a=Kj(a,b);if(null===a)return null;$c(a,b,c);a===U&&(Hi|=b,4===V&&Ii(a,W));var d=eg();1===b?0!==(X&8)&&0===(X&48)?Lj(a):(Mj(a,c),0===X&&(wj(),ig())):(0===(X&4)||98!==d&&99!==d||(null===Cj?Cj=new Set([a]):Cj.add(a)),Mj(a,c));vj=a}function Kj(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);c=a;for(a=a.return;null!==a;)a.childLanes|=b,c=a.alternate,null!==c&&(c.childLanes|=b),c=a,a=a.return;return 3===c.tag?c.stateNode:null}\nfunction Mj(a,b){for(var c=a.callbackNode,d=a.suspendedLanes,e=a.pingedLanes,f=a.expirationTimes,g=a.pendingLanes;0<g;){var h=31-Vc(g),k=1<<h,l=f[h];if(-1===l){if(0===(k&d)||0!==(k&e)){l=b;Rc(k);var n=F;f[h]=10<=n?l+250:6<=n?l+5E3:-1}}else l<=b&&(a.expiredLanes|=k);g&=~k}d=Uc(a,a===U?W:0);b=F;if(0===d)null!==c&&(c!==Zf&&Pf(c),a.callbackNode=null,a.callbackPriority=0);else{if(null!==c){if(a.callbackPriority===b)return;c!==Zf&&Pf(c)}15===b?(c=Lj.bind(null,a),null===ag?(ag=[c],bg=Of(Uf,jg)):ag.push(c),\nc=Zf):14===b?c=hg(99,Lj.bind(null,a)):(c=Tc(b),c=hg(c,Nj.bind(null,a)));a.callbackPriority=b;a.callbackNode=c}}\nfunction Nj(a){Fj=-1;Hj=Gj=0;if(0!==(X&48))throw Error(y(327));var b=a.callbackNode;if(Oj()&&a.callbackNode!==b)return null;var c=Uc(a,a===U?W:0);if(0===c)return null;var d=c;var e=X;X|=16;var f=Pj();if(U!==a||W!==d)wj(),Qj(a,d);do try{Rj();break}catch(h){Sj(a,h)}while(1);qg();oj.current=f;X=e;null!==Y?d=0:(U=null,W=0,d=V);if(0!==(tj&Hi))Qj(a,0);else if(0!==d){2===d&&(X|=64,a.hydrate&&(a.hydrate=!1,qf(a.containerInfo)),c=Wc(a),0!==c&&(d=Tj(a,c)));if(1===d)throw b=sj,Qj(a,0),Ii(a,c),Mj(a,O()),b;a.finishedWork=\na.current.alternate;a.finishedLanes=c;switch(d){case 0:case 1:throw Error(y(345));case 2:Uj(a);break;case 3:Ii(a,c);if((c&62914560)===c&&(d=jj+500-O(),10<d)){if(0!==Uc(a,0))break;e=a.suspendedLanes;if((e&c)!==c){Hg();a.pingedLanes|=a.suspendedLanes&e;break}a.timeoutHandle=of(Uj.bind(null,a),d);break}Uj(a);break;case 4:Ii(a,c);if((c&4186112)===c)break;d=a.eventTimes;for(e=-1;0<c;){var g=31-Vc(c);f=1<<g;g=d[g];g>e&&(e=g);c&=~f}c=e;c=O()-c;c=(120>c?120:480>c?480:1080>c?1080:1920>c?1920:3E3>c?3E3:4320>\nc?4320:1960*nj(c/1960))-c;if(10<c){a.timeoutHandle=of(Uj.bind(null,a),c);break}Uj(a);break;case 5:Uj(a);break;default:throw Error(y(329));}}Mj(a,O());return a.callbackNode===b?Nj.bind(null,a):null}function Ii(a,b){b&=~uj;b&=~Hi;a.suspendedLanes|=b;a.pingedLanes&=~b;for(a=a.expirationTimes;0<b;){var c=31-Vc(b),d=1<<c;a[c]=-1;b&=~d}}\nfunction Lj(a){if(0!==(X&48))throw Error(y(327));Oj();if(a===U&&0!==(a.expiredLanes&W)){var b=W;var c=Tj(a,b);0!==(tj&Hi)&&(b=Uc(a,b),c=Tj(a,b))}else b=Uc(a,0),c=Tj(a,b);0!==a.tag&&2===c&&(X|=64,a.hydrate&&(a.hydrate=!1,qf(a.containerInfo)),b=Wc(a),0!==b&&(c=Tj(a,b)));if(1===c)throw c=sj,Qj(a,0),Ii(a,b),Mj(a,O()),c;a.finishedWork=a.current.alternate;a.finishedLanes=b;Uj(a);Mj(a,O());return null}\nfunction Vj(){if(null!==Cj){var a=Cj;Cj=null;a.forEach(function(a){a.expiredLanes|=24&a.pendingLanes;Mj(a,O())})}ig()}function Wj(a,b){var c=X;X|=1;try{return a(b)}finally{X=c,0===X&&(wj(),ig())}}function Xj(a,b){var c=X;X&=-2;X|=8;try{return a(b)}finally{X=c,0===X&&(wj(),ig())}}function ni(a,b){I(rj,qj);qj|=b;tj|=b}function Ki(){qj=rj.current;H(rj)}\nfunction Qj(a,b){a.finishedWork=null;a.finishedLanes=0;var c=a.timeoutHandle;-1!==c&&(a.timeoutHandle=-1,pf(c));if(null!==Y)for(c=Y.return;null!==c;){var d=c;switch(d.tag){case 1:d=d.type.childContextTypes;null!==d&&void 0!==d&&Gf();break;case 3:fh();H(N);H(M);uh();break;case 5:hh(d);break;case 4:fh();break;case 13:H(P);break;case 19:H(P);break;case 10:rg(d);break;case 23:case 24:Ki()}c=c.return}U=a;Y=Tg(a.current,null);W=qj=tj=b;V=0;sj=null;uj=Hi=Dg=0}\nfunction Sj(a,b){do{var c=Y;try{qg();vh.current=Gh;if(yh){for(var d=R.memoizedState;null!==d;){var e=d.queue;null!==e&&(e.pending=null);d=d.next}yh=!1}xh=0;T=S=R=null;zh=!1;pj.current=null;if(null===c||null===c.return){V=1;sj=b;Y=null;break}a:{var f=a,g=c.return,h=c,k=b;b=W;h.flags|=2048;h.firstEffect=h.lastEffect=null;if(null!==k&&\"object\"===typeof k&&\"function\"===typeof k.then){var l=k;if(0===(h.mode&2)){var n=h.alternate;n?(h.updateQueue=n.updateQueue,h.memoizedState=n.memoizedState,h.lanes=n.lanes):\n(h.updateQueue=null,h.memoizedState=null)}var A=0!==(P.current&1),p=g;do{var C;if(C=13===p.tag){var x=p.memoizedState;if(null!==x)C=null!==x.dehydrated?!0:!1;else{var w=p.memoizedProps;C=void 0===w.fallback?!1:!0!==w.unstable_avoidThisFallback?!0:A?!1:!0}}if(C){var z=p.updateQueue;if(null===z){var u=new Set;u.add(l);p.updateQueue=u}else z.add(l);if(0===(p.mode&2)){p.flags|=64;h.flags|=16384;h.flags&=-2981;if(1===h.tag)if(null===h.alternate)h.tag=17;else{var t=zg(-1,1);t.tag=2;Ag(h,t)}h.lanes|=1;break a}k=\nvoid 0;h=b;var q=f.pingCache;null===q?(q=f.pingCache=new Oi,k=new Set,q.set(l,k)):(k=q.get(l),void 0===k&&(k=new Set,q.set(l,k)));if(!k.has(h)){k.add(h);var v=Yj.bind(null,f,l,h);l.then(v,v)}p.flags|=4096;p.lanes=b;break a}p=p.return}while(null!==p);k=Error((Ra(h.type)||\"A React component\")+\" suspended while rendering, but no fallback UI was specified.\\n\\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.\")}5!==V&&(V=2);k=Mi(k,h);p=\ng;do{switch(p.tag){case 3:f=k;p.flags|=4096;b&=-b;p.lanes|=b;var J=Pi(p,f,b);Bg(p,J);break a;case 1:f=k;var K=p.type,Q=p.stateNode;if(0===(p.flags&64)&&(\"function\"===typeof K.getDerivedStateFromError||null!==Q&&\"function\"===typeof Q.componentDidCatch&&(null===Ti||!Ti.has(Q)))){p.flags|=4096;b&=-b;p.lanes|=b;var L=Si(p,f,b);Bg(p,L);break a}}p=p.return}while(null!==p)}Zj(c)}catch(va){b=va;Y===c&&null!==c&&(Y=c=c.return);continue}break}while(1)}\nfunction Pj(){var a=oj.current;oj.current=Gh;return null===a?Gh:a}function Tj(a,b){var c=X;X|=16;var d=Pj();U===a&&W===b||Qj(a,b);do try{ak();break}catch(e){Sj(a,e)}while(1);qg();X=c;oj.current=d;if(null!==Y)throw Error(y(261));U=null;W=0;return V}function ak(){for(;null!==Y;)bk(Y)}function Rj(){for(;null!==Y&&!Qf();)bk(Y)}function bk(a){var b=ck(a.alternate,a,qj);a.memoizedProps=a.pendingProps;null===b?Zj(a):Y=b;pj.current=null}\nfunction Zj(a){var b=a;do{var c=b.alternate;a=b.return;if(0===(b.flags&2048)){c=Gi(c,b,qj);if(null!==c){Y=c;return}c=b;if(24!==c.tag&&23!==c.tag||null===c.memoizedState||0!==(qj&1073741824)||0===(c.mode&4)){for(var d=0,e=c.child;null!==e;)d|=e.lanes|e.childLanes,e=e.sibling;c.childLanes=d}null!==a&&0===(a.flags&2048)&&(null===a.firstEffect&&(a.firstEffect=b.firstEffect),null!==b.lastEffect&&(null!==a.lastEffect&&(a.lastEffect.nextEffect=b.firstEffect),a.lastEffect=b.lastEffect),1<b.flags&&(null!==\na.lastEffect?a.lastEffect.nextEffect=b:a.firstEffect=b,a.lastEffect=b))}else{c=Li(b);if(null!==c){c.flags&=2047;Y=c;return}null!==a&&(a.firstEffect=a.lastEffect=null,a.flags|=2048)}b=b.sibling;if(null!==b){Y=b;return}Y=b=a}while(null!==b);0===V&&(V=5)}function Uj(a){var b=eg();gg(99,dk.bind(null,a,b));return null}\nfunction dk(a,b){do Oj();while(null!==yj);if(0!==(X&48))throw Error(y(327));var c=a.finishedWork;if(null===c)return null;a.finishedWork=null;a.finishedLanes=0;if(c===a.current)throw Error(y(177));a.callbackNode=null;var d=c.lanes|c.childLanes,e=d,f=a.pendingLanes&~e;a.pendingLanes=e;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=e;a.mutableReadLanes&=e;a.entangledLanes&=e;e=a.entanglements;for(var g=a.eventTimes,h=a.expirationTimes;0<f;){var k=31-Vc(f),l=1<<k;e[k]=0;g[k]=-1;h[k]=-1;f&=~l}null!==\nCj&&0===(d&24)&&Cj.has(a)&&Cj.delete(a);a===U&&(Y=U=null,W=0);1<c.flags?null!==c.lastEffect?(c.lastEffect.nextEffect=c,d=c.firstEffect):d=c:d=c.firstEffect;if(null!==d){e=X;X|=32;pj.current=null;kf=fd;g=Ne();if(Oe(g)){if(\"selectionStart\"in g)h={start:g.selectionStart,end:g.selectionEnd};else a:if(h=(h=g.ownerDocument)&&h.defaultView||window,(l=h.getSelection&&h.getSelection())&&0!==l.rangeCount){h=l.anchorNode;f=l.anchorOffset;k=l.focusNode;l=l.focusOffset;try{h.nodeType,k.nodeType}catch(va){h=null;\nbreak a}var n=0,A=-1,p=-1,C=0,x=0,w=g,z=null;b:for(;;){for(var u;;){w!==h||0!==f&&3!==w.nodeType||(A=n+f);w!==k||0!==l&&3!==w.nodeType||(p=n+l);3===w.nodeType&&(n+=w.nodeValue.length);if(null===(u=w.firstChild))break;z=w;w=u}for(;;){if(w===g)break b;z===h&&++C===f&&(A=n);z===k&&++x===l&&(p=n);if(null!==(u=w.nextSibling))break;w=z;z=w.parentNode}w=u}h=-1===A||-1===p?null:{start:A,end:p}}else h=null;h=h||{start:0,end:0}}else h=null;lf={focusedElem:g,selectionRange:h};fd=!1;Ij=null;Jj=!1;Z=d;do try{ek()}catch(va){if(null===\nZ)throw Error(y(330));Wi(Z,va);Z=Z.nextEffect}while(null!==Z);Ij=null;Z=d;do try{for(g=a;null!==Z;){var t=Z.flags;t&16&&pb(Z.stateNode,\"\");if(t&128){var q=Z.alternate;if(null!==q){var v=q.ref;null!==v&&(\"function\"===typeof v?v(null):v.current=null)}}switch(t&1038){case 2:fj(Z);Z.flags&=-3;break;case 6:fj(Z);Z.flags&=-3;ij(Z.alternate,Z);break;case 1024:Z.flags&=-1025;break;case 1028:Z.flags&=-1025;ij(Z.alternate,Z);break;case 4:ij(Z.alternate,Z);break;case 8:h=Z;cj(g,h);var J=h.alternate;dj(h);null!==\nJ&&dj(J)}Z=Z.nextEffect}}catch(va){if(null===Z)throw Error(y(330));Wi(Z,va);Z=Z.nextEffect}while(null!==Z);v=lf;q=Ne();t=v.focusedElem;g=v.selectionRange;if(q!==t&&t&&t.ownerDocument&&Me(t.ownerDocument.documentElement,t)){null!==g&&Oe(t)&&(q=g.start,v=g.end,void 0===v&&(v=q),\"selectionStart\"in t?(t.selectionStart=q,t.selectionEnd=Math.min(v,t.value.length)):(v=(q=t.ownerDocument||document)&&q.defaultView||window,v.getSelection&&(v=v.getSelection(),h=t.textContent.length,J=Math.min(g.start,h),g=void 0===\ng.end?J:Math.min(g.end,h),!v.extend&&J>g&&(h=g,g=J,J=h),h=Le(t,J),f=Le(t,g),h&&f&&(1!==v.rangeCount||v.anchorNode!==h.node||v.anchorOffset!==h.offset||v.focusNode!==f.node||v.focusOffset!==f.offset)&&(q=q.createRange(),q.setStart(h.node,h.offset),v.removeAllRanges(),J>g?(v.addRange(q),v.extend(f.node,f.offset)):(q.setEnd(f.node,f.offset),v.addRange(q))))));q=[];for(v=t;v=v.parentNode;)1===v.nodeType&&q.push({element:v,left:v.scrollLeft,top:v.scrollTop});\"function\"===typeof t.focus&&t.focus();for(t=\n0;t<q.length;t++)v=q[t],v.element.scrollLeft=v.left,v.element.scrollTop=v.top}fd=!!kf;lf=kf=null;a.current=c;Z=d;do try{for(t=a;null!==Z;){var K=Z.flags;K&36&&Yi(t,Z.alternate,Z);if(K&128){q=void 0;var Q=Z.ref;if(null!==Q){var L=Z.stateNode;switch(Z.tag){case 5:q=L;break;default:q=L}\"function\"===typeof Q?Q(q):Q.current=q}}Z=Z.nextEffect}}catch(va){if(null===Z)throw Error(y(330));Wi(Z,va);Z=Z.nextEffect}while(null!==Z);Z=null;$f();X=e}else a.current=c;if(xj)xj=!1,yj=a,zj=b;else for(Z=d;null!==Z;)b=\nZ.nextEffect,Z.nextEffect=null,Z.flags&8&&(K=Z,K.sibling=null,K.stateNode=null),Z=b;d=a.pendingLanes;0===d&&(Ti=null);1===d?a===Ej?Dj++:(Dj=0,Ej=a):Dj=0;c=c.stateNode;if(Mf&&\"function\"===typeof Mf.onCommitFiberRoot)try{Mf.onCommitFiberRoot(Lf,c,void 0,64===(c.current.flags&64))}catch(va){}Mj(a,O());if(Qi)throw Qi=!1,a=Ri,Ri=null,a;if(0!==(X&8))return null;ig();return null}\nfunction ek(){for(;null!==Z;){var a=Z.alternate;Jj||null===Ij||(0!==(Z.flags&8)?dc(Z,Ij)&&(Jj=!0):13===Z.tag&&mj(a,Z)&&dc(Z,Ij)&&(Jj=!0));var b=Z.flags;0!==(b&256)&&Xi(a,Z);0===(b&512)||xj||(xj=!0,hg(97,function(){Oj();return null}));Z=Z.nextEffect}}function Oj(){if(90!==zj){var a=97<zj?97:zj;zj=90;return gg(a,fk)}return!1}function $i(a,b){Aj.push(b,a);xj||(xj=!0,hg(97,function(){Oj();return null}))}function Zi(a,b){Bj.push(b,a);xj||(xj=!0,hg(97,function(){Oj();return null}))}\nfunction fk(){if(null===yj)return!1;var a=yj;yj=null;if(0!==(X&48))throw Error(y(331));var b=X;X|=32;var c=Bj;Bj=[];for(var d=0;d<c.length;d+=2){var e=c[d],f=c[d+1],g=e.destroy;e.destroy=void 0;if(\"function\"===typeof g)try{g()}catch(k){if(null===f)throw Error(y(330));Wi(f,k)}}c=Aj;Aj=[];for(d=0;d<c.length;d+=2){e=c[d];f=c[d+1];try{var h=e.create;e.destroy=h()}catch(k){if(null===f)throw Error(y(330));Wi(f,k)}}for(h=a.current.firstEffect;null!==h;)a=h.nextEffect,h.nextEffect=null,h.flags&8&&(h.sibling=\nnull,h.stateNode=null),h=a;X=b;ig();return!0}function gk(a,b,c){b=Mi(c,b);b=Pi(a,b,1);Ag(a,b);b=Hg();a=Kj(a,1);null!==a&&($c(a,1,b),Mj(a,b))}\nfunction Wi(a,b){if(3===a.tag)gk(a,a,b);else for(var c=a.return;null!==c;){if(3===c.tag){gk(c,a,b);break}else if(1===c.tag){var d=c.stateNode;if(\"function\"===typeof c.type.getDerivedStateFromError||\"function\"===typeof d.componentDidCatch&&(null===Ti||!Ti.has(d))){a=Mi(b,a);var e=Si(c,a,1);Ag(c,e);e=Hg();c=Kj(c,1);if(null!==c)$c(c,1,e),Mj(c,e);else if(\"function\"===typeof d.componentDidCatch&&(null===Ti||!Ti.has(d)))try{d.componentDidCatch(b,a)}catch(f){}break}}c=c.return}}\nfunction Yj(a,b,c){var d=a.pingCache;null!==d&&d.delete(b);b=Hg();a.pingedLanes|=a.suspendedLanes&c;U===a&&(W&c)===c&&(4===V||3===V&&(W&62914560)===W&&500>O()-jj?Qj(a,0):uj|=c);Mj(a,b)}function lj(a,b){var c=a.stateNode;null!==c&&c.delete(b);b=0;0===b&&(b=a.mode,0===(b&2)?b=1:0===(b&4)?b=99===eg()?1:2:(0===Gj&&(Gj=tj),b=Yc(62914560&~Gj),0===b&&(b=4194304)));c=Hg();a=Kj(a,b);null!==a&&($c(a,b,c),Mj(a,c))}var ck;\nck=function(a,b,c){var d=b.lanes;if(null!==a)if(a.memoizedProps!==b.pendingProps||N.current)ug=!0;else if(0!==(c&d))ug=0!==(a.flags&16384)?!0:!1;else{ug=!1;switch(b.tag){case 3:ri(b);sh();break;case 5:gh(b);break;case 1:Ff(b.type)&&Jf(b);break;case 4:eh(b,b.stateNode.containerInfo);break;case 10:d=b.memoizedProps.value;var e=b.type._context;I(mg,e._currentValue);e._currentValue=d;break;case 13:if(null!==b.memoizedState){if(0!==(c&b.child.childLanes))return ti(a,b,c);I(P,P.current&1);b=hi(a,b,c);return null!==\nb?b.sibling:null}I(P,P.current&1);break;case 19:d=0!==(c&b.childLanes);if(0!==(a.flags&64)){if(d)return Ai(a,b,c);b.flags|=64}e=b.memoizedState;null!==e&&(e.rendering=null,e.tail=null,e.lastEffect=null);I(P,P.current);if(d)break;else return null;case 23:case 24:return b.lanes=0,mi(a,b,c)}return hi(a,b,c)}else ug=!1;b.lanes=0;switch(b.tag){case 2:d=b.type;null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);a=b.pendingProps;e=Ef(b,M.current);tg(b,c);e=Ch(null,b,d,a,e,c);b.flags|=1;if(\"object\"===\ntypeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof){b.tag=1;b.memoizedState=null;b.updateQueue=null;if(Ff(d)){var f=!0;Jf(b)}else f=!1;b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null;xg(b);var g=d.getDerivedStateFromProps;\"function\"===typeof g&&Gg(b,d,g,a);e.updater=Kg;b.stateNode=e;e._reactInternals=b;Og(b,d,a,c);b=qi(null,b,d,!0,f,c)}else b.tag=0,fi(null,b,e,c),b=b.child;return b;case 16:e=b.elementType;a:{null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);\na=b.pendingProps;f=e._init;e=f(e._payload);b.type=e;f=b.tag=hk(e);a=lg(e,a);switch(f){case 0:b=li(null,b,e,a,c);break a;case 1:b=pi(null,b,e,a,c);break a;case 11:b=gi(null,b,e,a,c);break a;case 14:b=ii(null,b,e,lg(e.type,a),d,c);break a}throw Error(y(306,e,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),li(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),pi(a,b,d,e,c);case 3:ri(b);d=b.updateQueue;if(null===a||null===d)throw Error(y(282));\nd=b.pendingProps;e=b.memoizedState;e=null!==e?e.element:null;yg(a,b);Cg(b,d,null,c);d=b.memoizedState.element;if(d===e)sh(),b=hi(a,b,c);else{e=b.stateNode;if(f=e.hydrate)kh=rf(b.stateNode.containerInfo.firstChild),jh=b,f=lh=!0;if(f){a=e.mutableSourceEagerHydrationData;if(null!=a)for(e=0;e<a.length;e+=2)f=a[e],f._workInProgressVersionPrimary=a[e+1],th.push(f);c=Zg(b,null,d,c);for(b.child=c;c;)c.flags=c.flags&-3|1024,c=c.sibling}else fi(a,b,d,c),sh();b=b.child}return b;case 5:return gh(b),null===a&&\nph(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,nf(d,e)?g=null:null!==f&&nf(d,f)&&(b.flags|=16),oi(a,b),fi(a,b,g,c),b.child;case 6:return null===a&&ph(b),null;case 13:return ti(a,b,c);case 4:return eh(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Yg(b,null,d,c):fi(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),gi(a,b,d,e,c);case 7:return fi(a,b,b.pendingProps,c),b.child;case 8:return fi(a,b,b.pendingProps.children,\nc),b.child;case 12:return fi(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;g=b.memoizedProps;f=e.value;var h=b.type._context;I(mg,h._currentValue);h._currentValue=f;if(null!==g)if(h=g.value,f=He(h,f)?0:(\"function\"===typeof d._calculateChangedBits?d._calculateChangedBits(h,f):1073741823)|0,0===f){if(g.children===e.children&&!N.current){b=hi(a,b,c);break a}}else for(h=b.child,null!==h&&(h.return=b);null!==h;){var k=h.dependencies;if(null!==k){g=h.child;for(var l=\nk.firstContext;null!==l;){if(l.context===d&&0!==(l.observedBits&f)){1===h.tag&&(l=zg(-1,c&-c),l.tag=2,Ag(h,l));h.lanes|=c;l=h.alternate;null!==l&&(l.lanes|=c);sg(h.return,c);k.lanes|=c;break}l=l.next}}else g=10===h.tag?h.type===b.type?null:h.child:h.child;if(null!==g)g.return=h;else for(g=h;null!==g;){if(g===b){g=null;break}h=g.sibling;if(null!==h){h.return=g.return;g=h;break}g=g.return}h=g}fi(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,f=b.pendingProps,d=f.children,tg(b,c),e=vg(e,\nf.unstable_observedBits),d=d(e),b.flags|=1,fi(a,b,d,c),b.child;case 14:return e=b.type,f=lg(e,b.pendingProps),f=lg(e.type,f),ii(a,b,e,f,d,c);case 15:return ki(a,b,b.type,b.pendingProps,d,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2),b.tag=1,Ff(d)?(a=!0,Jf(b)):a=!1,tg(b,c),Mg(b,d,e),Og(b,d,e,c),qi(null,b,d,!0,a,c);case 19:return Ai(a,b,c);case 23:return mi(a,b,c);case 24:return mi(a,b,c)}throw Error(y(156,b.tag));\n};function ik(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.flags=0;this.lastEffect=this.firstEffect=this.nextEffect=null;this.childLanes=this.lanes=0;this.alternate=null}function nh(a,b,c,d){return new ik(a,b,c,d)}function ji(a){a=a.prototype;return!(!a||!a.isReactComponent)}\nfunction hk(a){if(\"function\"===typeof a)return ji(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===Aa)return 11;if(a===Da)return 14}return 2}\nfunction Tg(a,b){var c=a.alternate;null===c?(c=nh(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.type=a.type,c.flags=0,c.nextEffect=null,c.firstEffect=null,c.lastEffect=null);c.childLanes=a.childLanes;c.lanes=a.lanes;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;b=a.dependencies;c.dependencies=null===b?null:{lanes:b.lanes,firstContext:b.firstContext};\nc.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}\nfunction Vg(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)ji(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ua:return Xg(c.children,e,f,b);case Ha:g=8;e|=16;break;case wa:g=8;e|=1;break;case xa:return a=nh(12,c,b,e|8),a.elementType=xa,a.type=xa,a.lanes=f,a;case Ba:return a=nh(13,c,b,e),a.type=Ba,a.elementType=Ba,a.lanes=f,a;case Ca:return a=nh(19,c,b,e),a.elementType=Ca,a.lanes=f,a;case Ia:return vi(c,e,f,b);case Ja:return a=nh(24,c,b,e),a.elementType=Ja,a.lanes=f,a;default:if(\"object\"===\ntypeof a&&null!==a)switch(a.$$typeof){case ya:g=10;break a;case za:g=9;break a;case Aa:g=11;break a;case Da:g=14;break a;case Ea:g=16;d=null;break a;case Fa:g=22;break a}throw Error(y(130,null==a?a:typeof a,\"\"));}b=nh(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function Xg(a,b,c,d){a=nh(7,a,d,b);a.lanes=c;return a}function vi(a,b,c,d){a=nh(23,a,d,b);a.elementType=Ia;a.lanes=c;return a}function Ug(a,b,c){a=nh(6,a,null,b);a.lanes=c;return a}\nfunction Wg(a,b,c){b=nh(4,null!==a.children?a.children:[],a.key,b);b.lanes=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}\nfunction jk(a,b,c){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.pendingContext=this.context=null;this.hydrate=c;this.callbackNode=null;this.callbackPriority=0;this.eventTimes=Zc(0);this.expirationTimes=Zc(-1);this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0;this.entanglements=Zc(0);this.mutableSourceEagerHydrationData=null}\nfunction kk(a,b,c){var d=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:ta,key:null==d?null:\"\"+d,children:a,containerInfo:b,implementation:c}}\nfunction lk(a,b,c,d){var e=b.current,f=Hg(),g=Ig(e);a:if(c){c=c._reactInternals;b:{if(Zb(c)!==c||1!==c.tag)throw Error(y(170));var h=c;do{switch(h.tag){case 3:h=h.stateNode.context;break b;case 1:if(Ff(h.type)){h=h.stateNode.__reactInternalMemoizedMergedChildContext;break b}}h=h.return}while(null!==h);throw Error(y(171));}if(1===c.tag){var k=c.type;if(Ff(k)){c=If(c,k,h);break a}}c=h}else c=Cf;null===b.context?b.context=c:b.pendingContext=c;b=zg(f,g);b.payload={element:a};d=void 0===d?null:d;null!==\nd&&(b.callback=d);Ag(e,b);Jg(e,g,f);return g}function mk(a){a=a.current;if(!a.child)return null;switch(a.child.tag){case 5:return a.child.stateNode;default:return a.child.stateNode}}function nk(a,b){a=a.memoizedState;if(null!==a&&null!==a.dehydrated){var c=a.retryLane;a.retryLane=0!==c&&c<b?c:b}}function ok(a,b){nk(a,b);(a=a.alternate)&&nk(a,b)}function pk(){return null}\nfunction qk(a,b,c){var d=null!=c&&null!=c.hydrationOptions&&c.hydrationOptions.mutableSources||null;c=new jk(a,b,null!=c&&!0===c.hydrate);b=nh(3,null,null,2===b?7:1===b?3:0);c.current=b;b.stateNode=c;xg(b);a[ff]=c.current;cf(8===a.nodeType?a.parentNode:a);if(d)for(a=0;a<d.length;a++){b=d[a];var e=b._getVersion;e=e(b._source);null==c.mutableSourceEagerHydrationData?c.mutableSourceEagerHydrationData=[b,e]:c.mutableSourceEagerHydrationData.push(b,e)}this._internalRoot=c}\nqk.prototype.render=function(a){lk(a,this._internalRoot,null,null)};qk.prototype.unmount=function(){var a=this._internalRoot,b=a.containerInfo;lk(null,a,null,function(){b[ff]=null})};function rk(a){return!(!a||1!==a.nodeType&&9!==a.nodeType&&11!==a.nodeType&&(8!==a.nodeType||\" react-mount-point-unstable \"!==a.nodeValue))}\nfunction sk(a,b){b||(b=a?9===a.nodeType?a.documentElement:a.firstChild:null,b=!(!b||1!==b.nodeType||!b.hasAttribute(\"data-reactroot\")));if(!b)for(var c;c=a.lastChild;)a.removeChild(c);return new qk(a,0,b?{hydrate:!0}:void 0)}\nfunction tk(a,b,c,d,e){var f=c._reactRootContainer;if(f){var g=f._internalRoot;if(\"function\"===typeof e){var h=e;e=function(){var a=mk(g);h.call(a)}}lk(b,g,a,e)}else{f=c._reactRootContainer=sk(c,d);g=f._internalRoot;if(\"function\"===typeof e){var k=e;e=function(){var a=mk(g);k.call(a)}}Xj(function(){lk(b,g,a,e)})}return mk(g)}ec=function(a){if(13===a.tag){var b=Hg();Jg(a,4,b);ok(a,4)}};fc=function(a){if(13===a.tag){var b=Hg();Jg(a,67108864,b);ok(a,67108864)}};\ngc=function(a){if(13===a.tag){var b=Hg(),c=Ig(a);Jg(a,c,b);ok(a,c)}};hc=function(a,b){return b()};\nyb=function(a,b,c){switch(b){case \"input\":ab(a,c);b=c.name;if(\"radio\"===c.type&&null!=b){for(c=a;c.parentNode;)c=c.parentNode;c=c.querySelectorAll(\"input[name=\"+JSON.stringify(\"\"+b)+'][type=\"radio\"]');for(b=0;b<c.length;b++){var d=c[b];if(d!==a&&d.form===a.form){var e=Db(d);if(!e)throw Error(y(90));Wa(d);ab(d,e)}}}break;case \"textarea\":ib(a,c);break;case \"select\":b=c.value,null!=b&&fb(a,!!c.multiple,b,!1)}};Gb=Wj;\nHb=function(a,b,c,d,e){var f=X;X|=4;try{return gg(98,a.bind(null,b,c,d,e))}finally{X=f,0===X&&(wj(),ig())}};Ib=function(){0===(X&49)&&(Vj(),Oj())};Jb=function(a,b){var c=X;X|=2;try{return a(b)}finally{X=c,0===X&&(wj(),ig())}};function uk(a,b){var c=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!rk(b))throw Error(y(200));return kk(a,b,null,c)}var vk={Events:[Cb,ue,Db,Eb,Fb,Oj,{current:!1}]},wk={findFiberByHostInstance:wc,bundleType:0,version:\"17.0.2\",rendererPackageName:\"react-dom\"};\nvar xk={bundleType:wk.bundleType,version:wk.version,rendererPackageName:wk.rendererPackageName,rendererConfig:wk.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:ra.ReactCurrentDispatcher,findHostInstanceByFiber:function(a){a=cc(a);return null===a?null:a.stateNode},findFiberByHostInstance:wk.findFiberByHostInstance||\npk,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null};if(\"undefined\"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var yk=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!yk.isDisabled&&yk.supportsFiber)try{Lf=yk.inject(xk),Mf=yk}catch(a){}}exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=vk;exports.createPortal=uk;\nexports.findDOMNode=function(a){if(null==a)return null;if(1===a.nodeType)return a;var b=a._reactInternals;if(void 0===b){if(\"function\"===typeof a.render)throw Error(y(188));throw Error(y(268,Object.keys(a)));}a=cc(b);a=null===a?null:a.stateNode;return a};exports.flushSync=function(a,b){var c=X;if(0!==(c&48))return a(b);X|=1;try{if(a)return gg(99,a.bind(null,b))}finally{X=c,ig()}};exports.hydrate=function(a,b,c){if(!rk(b))throw Error(y(200));return tk(null,a,b,!0,c)};\nexports.render=function(a,b,c){if(!rk(b))throw Error(y(200));return tk(null,a,b,!1,c)};exports.unmountComponentAtNode=function(a){if(!rk(a))throw Error(y(40));return a._reactRootContainer?(Xj(function(){tk(null,null,a,!1,function(){a._reactRootContainer=null;a[ff]=null})}),!0):!1};exports.unstable_batchedUpdates=Wj;exports.unstable_createPortal=function(a,b){return uk(a,b,2<arguments.length&&void 0!==arguments[2]?arguments[2]:null)};\nexports.unstable_renderSubtreeIntoContainer=function(a,b,c,d){if(!rk(c))throw Error(y(200));if(null==a||void 0===a._reactInternals)throw Error(y(38));return tk(a,b,c,!1,d)};exports.version=\"17.0.2\";\n","'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom.production.min.js');\n} else {\n module.exports = require('./cjs/react-dom.development.js');\n}\n","/* global Map:readonly, Set:readonly, ArrayBuffer:readonly */\n\nvar hasElementType = typeof Element !== 'undefined';\nvar hasMap = typeof Map === 'function';\nvar hasSet = typeof Set === 'function';\nvar hasArrayBuffer = typeof ArrayBuffer === 'function' && !!ArrayBuffer.isView;\n\n// Note: We **don't** need `envHasBigInt64Array` in fde es6/index.js\n\nfunction equal(a, b) {\n // START: fast-deep-equal es6/index.js 3.1.1\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n // START: Modifications:\n // 1. Extra `has<Type> &&` helpers in initial condition allow es6 code\n // to co-exist with es5.\n // 2. Replace `for of` with es5 compliant iteration using `for`.\n // Basically, take:\n //\n // ```js\n // for (i of a.entries())\n // if (!b.has(i[0])) return false;\n // ```\n //\n // ... and convert to:\n //\n // ```js\n // it = a.entries();\n // while (!(i = it.next()).done)\n // if (!b.has(i.value[0])) return false;\n // ```\n //\n // **Note**: `i` access switches to `i.value`.\n var it;\n if (hasMap && (a instanceof Map) && (b instanceof Map)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!equal(i.value[1], b.get(i.value[0]))) return false;\n return true;\n }\n\n if (hasSet && (a instanceof Set) && (b instanceof Set)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n return true;\n }\n // END: Modifications\n\n if (hasArrayBuffer && ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (a[i] !== b[i]) return false;\n return true;\n }\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n // END: fast-deep-equal\n\n // START: react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element) return false;\n\n // custom handling for React/Preact\n for (i = length; i-- !== 0;) {\n if ((keys[i] === '_owner' || keys[i] === '__v' || keys[i] === '__o') && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner\n // Preact-specific: avoid traversing Preact elements' __v and __o\n // __v = $_original / $_vnode\n // __o = $_owner\n // These properties contain circular references and are not needed when\n // comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of elements\n\n continue;\n }\n\n // all other properties should be traversed as usual\n if (!equal(a[keys[i]], b[keys[i]])) return false;\n }\n // END: react-fast-compare\n\n // START: fast-deep-equal\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function isEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if (((error.message || '').match(/stack|recursion/i))) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('react-fast-compare cannot handle circular refs');\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t(require(\"moment\"),require(\"react\")):\"function\"==typeof define&&define.amd?define([\"moment\",\"react\"],t):\"object\"==typeof exports?exports[\"react-moment\"]=t(require(\"moment\"),require(\"react\")):e[\"react-moment\"]=t(e.moment,e.react)}(this,(function(e,t){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=6)}([function(e,t,n){e.exports=n(3)()},function(t,n){t.exports=e},function(e,n){e.exports=t},function(e,t,n){\"use strict\";var r=n(4);function o(){}function i(){}i.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,i,a){if(a!==r){var l=new Error(\"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types\");throw l.name=\"Invariant Violation\",l}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:o};return n.PropTypes=n,n}},function(e,t,n){\"use strict\";e.exports=\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\"},function(e,t,n){var r,o,i,a,l;\n/*! Moment Duration Format v2.2.2\n * https://github.com/jsmreese/moment-duration-format\n * Date: 2018-02-16\n *\n * Duration format plugin function for the Moment.js library\n * http://momentjs.com/\n *\n * Copyright 2018 John Madhavan-Reese\n * Released under the MIT license\n */a=this,l=function(e){var t=!1,n=!1,r=!1,o=!1,i=\"escape years months weeks days hours minutes seconds milliseconds general\".split(\" \"),a=[{type:\"seconds\",targets:[{type:\"minutes\",value:60},{type:\"hours\",value:3600},{type:\"days\",value:86400},{type:\"weeks\",value:604800},{type:\"months\",value:2678400},{type:\"years\",value:31536e3}]},{type:\"minutes\",targets:[{type:\"hours\",value:60},{type:\"days\",value:1440},{type:\"weeks\",value:10080},{type:\"months\",value:44640},{type:\"years\",value:525600}]},{type:\"hours\",targets:[{type:\"days\",value:24},{type:\"weeks\",value:168},{type:\"months\",value:744},{type:\"years\",value:8760}]},{type:\"days\",targets:[{type:\"weeks\",value:7},{type:\"months\",value:31},{type:\"years\",value:365}]},{type:\"months\",targets:[{type:\"years\",value:12}]}];function l(e,t){return!(t.length>e.length)&&-1!==e.indexOf(t)}function u(e){for(var t=\"\";e;)t+=\"0\",e-=1;return t}function s(e,t){var n=e+\"+\"+v(V(t).sort(),(function(e){return e+\":\"+t[e]})).join(\",\");return s.cache[n]||(s.cache[n]=Intl.NumberFormat(e,t)),s.cache[n]}function c(e,t,i){var a,l,f,m=t.useToLocaleString,p=t.useGrouping,g=p&&t.grouping.slice(),y=t.maximumSignificantDigits,h=t.minimumIntegerDigits||1,d=t.fractionDigits||0,v=t.groupingSeparator,b=t.decimalSeparator;if(m&&i){var w,S={minimumIntegerDigits:h,useGrouping:p};return d&&(S.maximumFractionDigits=d,S.minimumFractionDigits=d),y&&e>0&&(S.maximumSignificantDigits=y),r?(o||((w=x({},t)).useGrouping=!1,w.decimalSeparator=\".\",e=parseFloat(c(e,w),10)),s(i,S).format(e)):(n||((w=x({},t)).useGrouping=!1,w.decimalSeparator=\".\",e=parseFloat(c(e,w),10)),e.toLocaleString(i,S))}var T=(y?e.toPrecision(y+1):e.toFixed(d+1)).split(\"e\");f=T[1]||\"\",l=(T=T[0].split(\".\"))[1]||\"\";var O=(a=T[0]||\"\").length,_=l.length,V=O+_,D=a+l;(y&&V===y+1||!y&&_===d+1)&&((D=function(e){for(var t=e.split(\"\").reverse(),n=0,r=!0;r&&n<t.length;)n?\"9\"===t[n]?t[n]=\"0\":(t[n]=(parseInt(t[n],10)+1).toString(),r=!1):(parseInt(t[n],10)<5&&(r=!1),t[n]=\"0\"),n+=1;return r&&t.push(\"1\"),t.reverse().join(\"\")}(D)).length===V+1&&(O+=1),_&&(D=D.slice(0,-1)),a=D.slice(0,O),l=D.slice(O)),y&&(l=l.replace(/0*$/,\"\"));var j=parseInt(f,10);j>0?l.length<=j?(a+=l+=u(j-l.length),l=\"\"):(a+=l.slice(0,j),l=l.slice(j)):j<0&&(l=u(Math.abs(j)-a.length)+a+l,a=\"0\"),y||((l=l.slice(0,d)).length<d&&(l+=u(d-l.length)),a.length<h&&(a=u(h-a.length)+a));var M,P=\"\";if(p)for(T=a;T.length;)g.length&&(M=g.shift()),P&&(P=v+P),P=T.slice(-M)+P,T=T.slice(0,-M);else P=a;return l&&(P=P+b+l),P}function f(e,t){return e.label.length>t.label.length?-1:e.label.length<t.label.length?1:0}function m(e,t){var n=[];return d(V(t),(function(r){if(\"_durationLabels\"===r.slice(0,15)){var o=r.slice(15).toLowerCase();d(V(t[r]),(function(i){i.slice(0,1)===e&&n.push({type:o,key:i,label:t[r][i]})}))}})),n}s.cache={};var p={durationLabelsStandard:{S:\"millisecond\",SS:\"milliseconds\",s:\"second\",ss:\"seconds\",m:\"minute\",mm:\"minutes\",h:\"hour\",hh:\"hours\",d:\"day\",dd:\"days\",w:\"week\",ww:\"weeks\",M:\"month\",MM:\"months\",y:\"year\",yy:\"years\"},durationLabelsShort:{S:\"msec\",SS:\"msecs\",s:\"sec\",ss:\"secs\",m:\"min\",mm:\"mins\",h:\"hr\",hh:\"hrs\",d:\"dy\",dd:\"dys\",w:\"wk\",ww:\"wks\",M:\"mo\",MM:\"mos\",y:\"yr\",yy:\"yrs\"},durationTimeTemplates:{HMS:\"h:mm:ss\",HM:\"h:mm\",MS:\"m:ss\"},durationLabelTypes:[{type:\"standard\",string:\"__\"},{type:\"short\",string:\"_\"}],durationPluralKey:function(e,t,n){return 1===t&&null===n?e:e+e}};function g(e){return\"[object Array]\"===Object.prototype.toString.call(e)}function y(e){return\"[object Object]\"===Object.prototype.toString.call(e)}function h(e,t){var n,r=0,o=e&&e.length||0;for(\"function\"!=typeof t&&(n=t,t=function(e){return e===n});r<o;){if(t(e[r]))return e[r];r+=1}}function d(e,t){var n=0,r=e.length;if(e&&r)for(;n<r;){if(!1===t(e[n],n))return;n+=1}}function v(e,t){var n=0,r=e.length,o=[];if(!e||!r)return o;for(;n<r;)o[n]=t(e[n],n),n+=1;return o}function b(e,t){return v(e,(function(e){return e[t]}))}function w(e){var t=[];return d(e,(function(e){e&&t.push(e)})),t}function S(e){var t=[];return d(e,(function(e){h(t,e)||t.push(e)})),t}function T(e,t){var n=[];return d(e,(function(e){d(t,(function(t){e===t&&n.push(e)}))})),S(n)}function O(e,t){var n=[];return d(e,(function(r,o){if(!t(r))return n=e.slice(o),!1})),n}function _(e,t){return O(e.slice().reverse(),t).reverse()}function x(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}function V(e){var t=[];for(var n in e)e.hasOwnProperty(n)&&t.push(n);return t}function D(e,t){var n=0,r=e.length;if(!e||!r)return!1;for(;n<r;){if(!0===t(e[n],n))return!0;n+=1}return!1}function j(e){var t=[];return d(e,(function(e){t=t.concat(e)})),t}function M(e){return\"3.6\"===e(3.55,\"en\",{useGrouping:!1,minimumIntegerDigits:1,minimumFractionDigits:1,maximumFractionDigits:1})}function P(e){var t=!0;return!!((t=(t=(t=t&&\"1\"===e(1,\"en\",{minimumIntegerDigits:1}))&&\"01\"===e(1,\"en\",{minimumIntegerDigits:2}))&&\"001\"===e(1,\"en\",{minimumIntegerDigits:3}))&&(t=(t=(t=(t=t&&\"100\"===e(99.99,\"en\",{maximumFractionDigits:0,minimumFractionDigits:0}))&&\"100.0\"===e(99.99,\"en\",{maximumFractionDigits:1,minimumFractionDigits:1}))&&\"99.99\"===e(99.99,\"en\",{maximumFractionDigits:2,minimumFractionDigits:2}))&&\"99.990\"===e(99.99,\"en\",{maximumFractionDigits:3,minimumFractionDigits:3}))&&(t=(t=(t=(t=(t=t&&\"100\"===e(99.99,\"en\",{maximumSignificantDigits:1}))&&\"100\"===e(99.99,\"en\",{maximumSignificantDigits:2}))&&\"100\"===e(99.99,\"en\",{maximumSignificantDigits:3}))&&\"99.99\"===e(99.99,\"en\",{maximumSignificantDigits:4}))&&\"99.99\"===e(99.99,\"en\",{maximumSignificantDigits:5}))&&(t=(t=t&&\"1,000\"===e(1e3,\"en\",{useGrouping:!0}))&&\"1000\"===e(1e3,\"en\",{useGrouping:!1})))}function k(){var e,t=[].slice.call(arguments),n={};if(d(t,(function(t,r){if(!r){if(!g(t))throw\"Expected array as the first argument to durationsFormat.\";e=t}\"string\"!=typeof t&&\"function\"!=typeof t?\"number\"!=typeof t?y(t)&&x(n,t):n.precision=t:n.template=t})),!e||!e.length)return[];n.returnMomentTypes=!0;var r=v(e,(function(e){return e.format(n)})),o=T(i,S(b(j(r),\"type\"))),a=n.largest;return a&&(o=o.slice(0,a)),n.returnMomentTypes=!1,n.outputTypes=o,v(e,(function(e){return e.format(n)}))}function E(){var n=[].slice.call(arguments),o=x({},this.format.defaults),u=this.asMilliseconds(),s=this.asMonths();\"function\"==typeof this.isValid&&!1===this.isValid()&&(u=0,s=0);var j=u<0,M=e.duration(Math.abs(u),\"milliseconds\"),P=e.duration(Math.abs(s),\"months\");d(n,(function(e){\"string\"!=typeof e&&\"function\"!=typeof e?\"number\"!=typeof e?y(e)&&x(o,e):o.precision=e:o.template=e}));var k={years:\"y\",months:\"M\",weeks:\"w\",days:\"d\",hours:\"h\",minutes:\"m\",seconds:\"s\",milliseconds:\"S\"},E={escape:/\\[(.+?)\\]/,years:/\\*?[Yy]+/,months:/\\*?M+/,weeks:/\\*?[Ww]+/,days:/\\*?[Dd]+/,hours:/\\*?[Hh]+/,minutes:/\\*?m+/,seconds:/\\*?s+/,milliseconds:/\\*?S+/,general:/.+?/};o.types=i;var L=function(e){return h(i,(function(t){return E[t].test(e)}))},F=new RegExp(v(i,(function(e){return E[e].source})).join(\"|\"),\"g\");o.duration=this;var I=\"function\"==typeof o.template?o.template.apply(o):o.template,N=o.outputTypes,C=o.returnMomentTypes,R=o.largest,G=[];N||(g(o.stopTrim)&&(o.stopTrim=o.stopTrim.join(\"\")),o.stopTrim&&d(o.stopTrim.match(F),(function(e){var t=L(e);\"escape\"!==t&&\"general\"!==t&&G.push(t)})));var U=e.localeData();U||(U={}),d(V(p),(function(e){\"function\"!=typeof p[e]?U[\"_\"+e]||(U[\"_\"+e]=p[e]):U[e]||(U[e]=p[e])})),d(V(U._durationTimeTemplates),(function(e){I=I.replace(\"_\"+e+\"_\",U._durationTimeTemplates[e])}));var q=o.userLocale||e.locale(),z=o.useLeftUnits,H=o.usePlural,W=o.precision,$=o.forceLength,A=o.useGrouping,B=o.trunc,K=o.useSignificantDigits&&W>0,Y=K?o.precision:0,J=Y,Q=o.minValue,X=!1,Z=o.maxValue,ee=!1,te=o.useToLocaleString,ne=o.groupingSeparator,re=o.decimalSeparator,oe=o.grouping;te=te&&(t||r);var ie=o.trim;g(ie)&&(ie=ie.join(\" \")),null===ie&&(R||Z||K)&&(ie=\"all\"),null!==ie&&!0!==ie&&\"left\"!==ie&&\"right\"!==ie||(ie=\"large\"),!1===ie&&(ie=\"\");var ae=function(e){return e.test(ie)},le=/large/,ue=/small/,se=/both/,ce=/mid/,fe=/^all|[^sm]all/,me=/final/,pe=R>0||D([le,se,fe],ae),ge=D([ue,se,fe],ae),ye=D([ce,fe],ae),he=D([me,fe],ae),de=v(I.match(F),(function(e,t){var n=L(e);return\"*\"===e.slice(0,1)&&(e=e.slice(1),\"escape\"!==n&&\"general\"!==n&&G.push(n)),{index:t,length:e.length,text:\"\",token:\"escape\"===n?e.replace(E.escape,\"$1\"):e,type:\"escape\"===n||\"general\"===n?null:n}})),ve={index:0,length:0,token:\"\",text:\"\",type:null},be=[];z&&de.reverse(),d(de,(function(e){if(e.type)return(ve.type||ve.text)&&be.push(ve),void(ve=e);z?ve.text=e.token+ve.text:ve.text+=e.token})),(ve.type||ve.text)&&be.push(ve),z&&be.reverse();var we=T(i,S(w(b(be,\"type\"))));if(!we.length)return b(be,\"text\").join(\"\");we=v(we,(function(e,t){var n,r=t+1===we.length,i=!t;n=\"years\"===e||\"months\"===e?P.as(e):M.as(e);var a=Math.floor(n),l=n-a,u=h(be,(function(t){return e===t.type}));return i&&Z&&n>Z&&(ee=!0),r&&Q&&Math.abs(o.duration.as(e))<Q&&(X=!0),i&&null===$&&u.length>1&&($=!0),M.subtract(a,e),P.subtract(a,e),{rawValue:n,wholeValue:a,decimalValue:r?l:0,isSmallest:r,isLargest:i,type:e,tokenLength:u.length}}));var Se=B?Math.floor:Math.round,Te=function(e,t){var n=Math.pow(10,t);return Se(e*n)/n},Oe=!1,_e=!1,xe=function(e,t){var n={useGrouping:A,groupingSeparator:ne,decimalSeparator:re,grouping:oe,useToLocaleString:te};return K&&(Y<=0?(e.rawValue=0,e.wholeValue=0,e.decimalValue=0):(n.maximumSignificantDigits=Y,e.significantDigits=Y)),ee&&!_e&&(e.isLargest?(e.wholeValue=Z,e.decimalValue=0):(e.wholeValue=0,e.decimalValue=0)),X&&!_e&&(e.isSmallest?(e.wholeValue=Q,e.decimalValue=0):(e.wholeValue=0,e.decimalValue=0)),e.isSmallest||e.significantDigits&&e.significantDigits-e.wholeValue.toString().length<=0?W<0?e.value=Te(e.wholeValue,W):0===W?e.value=Se(e.wholeValue+e.decimalValue):K?(e.value=B?Te(e.rawValue,Y-e.wholeValue.toString().length):e.rawValue,e.wholeValue&&(Y-=e.wholeValue.toString().length)):(n.fractionDigits=W,e.value=B?e.wholeValue+Te(e.decimalValue,W):e.wholeValue+e.decimalValue):K&&e.wholeValue?(e.value=Math.round(Te(e.wholeValue,e.significantDigits-e.wholeValue.toString().length)),Y-=e.wholeValue.toString().length):e.value=e.wholeValue,e.tokenLength>1&&($||Oe)&&(n.minimumIntegerDigits=e.tokenLength,_e&&n.maximumSignificantDigits<e.tokenLength&&delete n.maximumSignificantDigits),!Oe&&(e.value>0||\"\"===ie||h(G,e.type)||h(N,e.type))&&(Oe=!0),e.formattedValue=c(e.value,n,q),n.useGrouping=!1,n.decimalSeparator=\".\",e.formattedValueEn=c(e.value,n,\"en\"),2===e.tokenLength&&\"milliseconds\"===e.type&&(e.formattedValueMS=c(e.value,{minimumIntegerDigits:3,useGrouping:!1},\"en\").slice(0,2)),e};if((we=w(we=v(we,xe))).length>1){var Ve=function(e){return h(we,(function(t){return t.type===e}))},De=function(e){var t=Ve(e.type);t&&d(e.targets,(function(e){var n=Ve(e.type);n&&parseInt(t.formattedValueEn,10)===e.value&&(t.rawValue=0,t.wholeValue=0,t.decimalValue=0,n.rawValue+=1,n.wholeValue+=1,n.decimalValue=0,n.formattedValueEn=n.wholeValue.toString(),_e=!0)}))};d(a,De)}return _e&&(Oe=!1,Y=J,we=w(we=v(we,xe))),!N||ee&&!o.trim?(pe&&(we=O(we,(function(e){return!e.isSmallest&&!e.wholeValue&&!h(G,e.type)}))),R&&we.length&&(we=we.slice(0,R)),ge&&we.length>1&&(we=_(we,(function(e){return!e.wholeValue&&!h(G,e.type)&&!e.isLargest}))),ye&&(we=w(we=v(we,(function(e,t){return t>0&&t<we.length-1&&!e.wholeValue?null:e})))),!he||1!==we.length||we[0].wholeValue||!B&&we[0].isSmallest&&we[0].rawValue<Q||(we=[])):we=w(we=v(we,(function(e){return h(N,(function(t){return e.type===t}))?e:null}))),C?we:(d(be,(function(e){var t=k[e.type],n=h(we,(function(t){return t.type===e.type}));if(t&&n){var r=n.formattedValueEn.split(\".\");r[0]=parseInt(r[0],10),r[1]?r[1]=parseFloat(\"0.\"+r[1],10):r[1]=null;var o=U.durationPluralKey(t,r[0],r[1]),i=m(t,U),a=!1,u={};d(U._durationLabelTypes,(function(t){var n=h(i,(function(e){return e.type===t.type&&e.key===o}));n&&(u[n.type]=n.label,l(e.text,t.string)&&(e.text=e.text.replace(t.string,n.label),a=!0))})),H&&!a&&(i.sort(f),d(i,(function(t){return u[t.type]===t.label?!l(e.text,t.label)&&void 0:l(e.text,t.label)?(e.text=e.text.replace(t.label,u[t.type]),!1):void 0})))}})),(be=v(be,(function(e){if(!e.type)return e.text;var t=h(we,(function(t){return t.type===e.type}));if(!t)return\"\";var n=\"\";return z&&(n+=e.text),(j&&ee||!j&&X)&&(n+=\"< \",ee=!1,X=!1),(j&&X||!j&&ee)&&(n+=\"> \",ee=!1,X=!1),j&&(t.value>0||\"\"===ie||h(G,t.type)||h(N,t.type))&&(n+=\"-\",j=!1),\"milliseconds\"===e.type&&t.formattedValueMS?n+=t.formattedValueMS:n+=t.formattedValue,z||(n+=e.text),n}))).join(\"\").replace(/(,| |:|\\.)*$/,\"\").replace(/^(,| |:|\\.)*/,\"\"))}function L(){var e=this.duration,t=function(t){return e._data[t]},n=h(this.types,t),r=function(e,t){for(var n=e.length;n-=1;)if(t(e[n]))return e[n]}(this.types,t);switch(n){case\"milliseconds\":return\"S __\";case\"seconds\":case\"minutes\":return\"*_MS_\";case\"hours\":return\"_HMS_\";case\"days\":if(n===r)return\"d __\";case\"weeks\":return n===r?\"w __\":(null===this.trim&&(this.trim=\"both\"),\"w __, d __, h __\");case\"months\":if(n===r)return\"M __\";case\"years\":return n===r?\"y __\":(null===this.trim&&(this.trim=\"both\"),\"y __, M __, d __\");default:return null===this.trim&&(this.trim=\"both\"),\"y __, d __, h __, m __, s __\"}}function F(e){if(!e)throw\"Moment Duration Format init cannot find moment instance.\";e.duration.format=k,e.duration.fn.format=E,e.duration.fn.format.defaults={trim:null,stopTrim:null,largest:null,maxValue:null,minValue:null,precision:0,trunc:!1,forceLength:null,userLocale:null,usePlural:!0,useLeftUnits:!1,useGrouping:!0,useSignificantDigits:!1,template:L,useToLocaleString:!0,groupingSeparator:\",\",decimalSeparator:\".\",grouping:[3]},e.updateLocale(\"en\",p)}var I=function(e,t,n){return e.toLocaleString(t,n)};t=function(){try{(0).toLocaleString(\"i\")}catch(e){return\"RangeError\"===e.name}return!1}()&&P(I),n=t&&M(I);var N=function(e,t,n){if(\"undefined\"!=typeof window&&window&&window.Intl&&window.Intl.NumberFormat)return window.Intl.NumberFormat(t,n).format(e)};return r=P(N),o=r&&M(N),F(e),F},o=[n(1)],void 0===(i=\"function\"==typeof(r=l)?r.apply(t,o):r)||(e.exports=i),a&&(a.momentDurationFormatSetup=a.moment?l(a.moment):l)},function(e,t,n){\"use strict\";n.r(t),n.d(t,\"default\",(function(){return _}));var r=n(2),o=n.n(r),i=n(0),a=n.n(i),l=n(1),u=n.n(l);n(5);function s(e){return(s=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function c(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function f(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function m(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function p(e,t,n){return t&&m(e.prototype,t),n&&m(e,n),e}function g(e,t){return(g=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function y(e){var t=function(){if(\"undefined\"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(\"function\"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=v(e);if(t){var o=v(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return h(this,n)}}function h(e,t){return!t||\"object\"!==s(t)&&\"function\"!=typeof t?d(e):t}function d(e){if(void 0===e)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return e}function v(e){return(v=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function b(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var w=[a.a.string,a.a.number,a.a.array,a.a.object],S=[a.a.string,a.a.array],T=[a.a.object,a.a.bool],O=[a.a.string,a.a.bool],_=function(e){!function(e,t){if(\"function\"!=typeof t&&null!==t)throw new TypeError(\"Super expression must either be null or a function\");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&g(e,t)}(n,e);var t=y(n);function n(e){var r;return function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,n),b(d(r=t.call(this,e)),\"setTimer\",(function(){var e=r.props.interval;r.clearTimer(),n.pooledTimer||0===e||(r.timer=setInterval((function(){r.update(r.props)}),e))})),b(d(r),\"getTitle\",(function(){var e=r.props.titleFormat,t=n.getDatetime(r.props),o=e||n.globalFormat;return t.format(o)})),b(d(r),\"clearTimer\",(function(){!n.pooledTimer&&r.timer&&(clearInterval(r.timer),r.timer=null),n.pooledTimer&&!r.timer&&n.removePooledElement(d(r))})),n.globalMoment||(n.globalMoment=u.a),r.state={content:\"\"},r.timer=null,r}return p(n,null,[{key:\"startPooledTimer\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6e4;n.clearPooledTimer(),n.pooledTimer=setInterval((function(){n.pooledElements.forEach((function(e){0!==e.props.interval&&e.update()}))}),e)}},{key:\"clearPooledTimer\",value:function(){n.pooledTimer&&(clearInterval(n.pooledTimer),n.pooledTimer=null,n.pooledElements=[])}},{key:\"pushPooledElement\",value:function(e){e instanceof n?-1===n.pooledElements.indexOf(e)&&n.pooledElements.push(e):console.error(\"Element not an instance of Moment.\")}},{key:\"removePooledElement\",value:function(e){var t=n.pooledElements.indexOf(e);-1!==t&&n.pooledElements.splice(t,1)}},{key:\"getDatetime\",value:function(e){var t=e.utc,r=e.unix,o=e.date,i=e.locale,a=e.parse,l=e.tz,u=e.local;o=o||e.children,a=a||n.globalParse,u=u||n.globalLocal,l=l||n.globalTimezone,i=n.globalLocale?n.globalLocale:i||n.globalMoment.locale();var s=null;return s=t?n.globalMoment.utc(o,a,i):r?n.globalMoment(1e3*o,a,i):n.globalMoment(o,a,i),l?s=s.tz(l):u&&(s=s.local()),s}},{key:\"getContent\",value:function(e){var t=e.fromNow,r=e.fromNowDuring,o=e.from,i=e.add,a=e.subtract,l=e.toNow,s=e.to,c=e.ago,f=e.calendar,m=e.diff,p=e.duration,g=e.durationFromNow,y=e.unit,h=e.decimal,d=e.trim,v=e.format;v=v||n.globalFormat;var b=n.getDatetime(e);i&&b.add(i),a&&b.subtract(a);var w=Boolean(r)&&-b.diff(u()())<r,S=\"\";return S=!v||w||g||p?o?b.from(o,c):t||w?b.fromNow(c):s?b.to(s,c):l?b.toNow(c):f?b.calendar(null,f):m?b.diff(m,y,h):p?b.diff(p):g?u()().diff(b):b.toString():b.format(v),(p||g)&&(S=(S=u.a.duration(S)).format(v,{trim:d})),S=(n.globalFilter||e.filter)(S)}}]),p(n,[{key:\"componentDidMount\",value:function(){this.setTimer(),n.pooledTimer&&n.pushPooledElement(this)}},{key:\"componentDidUpdate\",value:function(e){var t=this.props.interval;e.interval!==t&&this.setTimer()}},{key:\"componentWillUnmount\",value:function(){this.clearTimer()}},{key:\"update\",value:function(e){var t=e||this.props,r=t.onChange,o=n.getContent(t);this.setState({content:o},(function(){r(o)}))}},{key:\"render\",value:function(){var e,t,r,i,a=this.props,l=a.withTitle,u=a.element,s=f(a,[\"withTitle\",\"element\"]),m=this.state.content,p=(e=s,t=n.propTypes,r=Object.keys(t),i=Object.assign({},e),Object.keys(i).filter((function(e){return-1!==r.indexOf(e)})).forEach((function(e){return delete i[e]})),i);return l&&(p.title=this.getTitle()),o.a.createElement(u||n.globalElement,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?c(Object(n),!0).forEach((function(t){b(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):c(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({dateTime:n.getDatetime(this.props)},p),m)}}],[{key:\"getDerivedStateFromProps\",value:function(e){return{content:n.getContent(e)}}}]),n}(o.a.Component);b(_,\"propTypes\",{element:a.a.any,date:a.a.oneOfType(w),parse:a.a.oneOfType(S),format:a.a.string,add:a.a.object,subtract:a.a.object,ago:a.a.bool,fromNow:a.a.bool,fromNowDuring:a.a.number,from:a.a.oneOfType(w),toNow:a.a.bool,to:a.a.oneOfType(w),calendar:a.a.oneOfType(T),unix:a.a.bool,utc:a.a.bool,local:a.a.bool,tz:a.a.string,withTitle:a.a.bool,titleFormat:a.a.string,locale:a.a.string,interval:a.a.number,diff:a.a.oneOfType(w),duration:a.a.oneOfType(w),durationFromNow:a.a.bool,trim:a.a.oneOfType(O),unit:a.a.string,decimal:a.a.bool,filter:a.a.func,onChange:a.a.func}),b(_,\"defaultProps\",{element:null,fromNow:!1,toNow:!1,calendar:!1,ago:!1,unix:!1,utc:!1,local:!1,unit:null,withTitle:!1,trim:!1,decimal:!1,titleFormat:\"\",interval:6e4,filter:function(e){return e},onChange:function(){}}),b(_,\"globalMoment\",null),b(_,\"globalLocale\",null),b(_,\"globalLocal\",null),b(_,\"globalFormat\",null),b(_,\"globalParse\",null),b(_,\"globalFilter\",null),b(_,\"globalElement\",\"time\"),b(_,\"globalTimezone\",null),b(_,\"pooledElements\",[]),b(_,\"pooledTimer\",null)}])}));","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _exenv = require('exenv');\n\nvar _TouchScrollable = require('./TouchScrollable');\n\nvar _withLockSheet = require('./withLockSheet');\n\nvar _withLockSheet2 = _interopRequireDefault(_withLockSheet);\n\nvar _withTouchListeners = require('./withTouchListeners');\n\nvar _withTouchListeners2 = _interopRequireDefault(_withTouchListeners);\n\nvar _utils = require('./utils');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar ScrollLock = function (_PureComponent) {\n _inherits(ScrollLock, _PureComponent);\n\n function ScrollLock() {\n _classCallCheck(this, ScrollLock);\n\n return _possibleConstructorReturn(this, (ScrollLock.__proto__ || Object.getPrototypeOf(ScrollLock)).apply(this, arguments));\n }\n\n _createClass(ScrollLock, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (!_exenv.canUseDOM) return;\n this.initialHeight = window.innerHeight;\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n var offset = window.innerHeight - this.initialHeight;\n\n // adjust scroll if the window has been resized since the lock was engaged\n // e.g. mobile safari dynamic chrome heights\n if (offset) {\n window.scrollTo(0, window.pageYOffset + offset);\n }\n\n // reset the initial height in case this scroll lock is used again\n this.initialHeight = window.innerHeight;\n }\n }, {\n key: 'render',\n value: function render() {\n var children = this.props.children;\n\n\n return children ? _react2.default.createElement(\n _TouchScrollable.TouchScrollable,\n null,\n children\n ) : null;\n }\n }]);\n\n return ScrollLock;\n}(_react.PureComponent);\n\n// attach the stylesheet and inject styles on [un]mount\n\n\nvar compose = (0, _utils.pipe)(_withTouchListeners2.default, _withLockSheet2.default);\nvar SheetLock = compose(ScrollLock);\n\n// toggle the lock based on `isActive` prop\nvar LockToggle = function LockToggle(props) {\n return props.isActive ? _react2.default.createElement(SheetLock, props) : props.children;\n};\n\nLockToggle.defaultProps = {\n accountForScrollbars: true,\n children: null,\n isActive: true\n};\n\nexports.default = LockToggle;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.TouchScrollable = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _exenv = require('exenv');\n\nvar _utils = require('./utils');\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar TouchScrollable = exports.TouchScrollable = function (_PureComponent) {\n _inherits(TouchScrollable, _PureComponent);\n\n function TouchScrollable() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, TouchScrollable);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = TouchScrollable.__proto__ || Object.getPrototypeOf(TouchScrollable)).call.apply(_ref, [this].concat(args))), _this), _this.getScrollableArea = function (ref) {\n _this.scrollableArea = ref;\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(TouchScrollable, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (!_exenv.canUseEventListeners) return;\n\n this.scrollableArea.addEventListener('touchstart', _utils.preventInertiaScroll, _utils.listenerOptions);\n this.scrollableArea.addEventListener('touchmove', _utils.allowTouchMove, _utils.listenerOptions);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (!_exenv.canUseEventListeners) return;\n\n this.scrollableArea.removeEventListener('touchstart', _utils.preventInertiaScroll, _utils.listenerOptions);\n this.scrollableArea.removeEventListener('touchmove', _utils.allowTouchMove, _utils.listenerOptions);\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n children = _props.children,\n rest = _objectWithoutProperties(_props, ['children']);\n\n return typeof children === 'function' ? children(this.getScrollableArea) : (0, _react.cloneElement)(children, _extends({ ref: this.getScrollableArea }, rest));\n }\n }]);\n\n return TouchScrollable;\n}(_react.PureComponent);","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _ScrollLock = require('./ScrollLock');\n\nObject.defineProperty(exports, 'default', {\n enumerable: true,\n get: function get() {\n return _interopRequireDefault(_ScrollLock).default;\n }\n});\n\nvar _TouchScrollable = require('./TouchScrollable');\n\nObject.defineProperty(exports, 'TouchScrollable', {\n enumerable: true,\n get: function get() {\n return _TouchScrollable.TouchScrollable;\n }\n});\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.pipe = exports.listenerOptions = undefined;\nexports.preventTouchMove = preventTouchMove;\nexports.allowTouchMove = allowTouchMove;\nexports.preventInertiaScroll = preventInertiaScroll;\nexports.isTouchDevice = isTouchDevice;\nexports.camelToKebab = camelToKebab;\nexports.parse = parse;\nexports.getPadding = getPadding;\nexports.getWindowHeight = getWindowHeight;\nexports.getDocumentHeight = getDocumentHeight;\nexports.makeStyleTag = makeStyleTag;\nexports.injectStyles = injectStyles;\nexports.insertStyleTag = insertStyleTag;\n\nvar _exenv = require('exenv');\n\nvar listenerOptions = exports.listenerOptions = {\n capture: false,\n passive: false\n};\n\n// ==============================\n// Touch Helpers\n// ==============================\n\nfunction preventTouchMove(e) {\n e.preventDefault();\n\n return false;\n}\n\nfunction allowTouchMove(e) {\n var target = e.currentTarget;\n\n if (target.scrollHeight > target.clientHeight) {\n e.stopPropagation();\n return true;\n }\n\n e.preventDefault();\n return false;\n}\n\nfunction preventInertiaScroll() {\n var top = this.scrollTop;\n var totalScroll = this.scrollHeight;\n var currentScroll = top + this.offsetHeight;\n\n if (top === 0) {\n this.scrollTop = 1;\n } else if (currentScroll === totalScroll) {\n this.scrollTop = top - 1;\n }\n}\n\n// `ontouchstart` check works on most browsers\n// `maxTouchPoints` works on IE10/11 and Surface\nfunction isTouchDevice() {\n if (!_exenv.canUseDOM) return false;\n return 'ontouchstart' in window || navigator.maxTouchPoints;\n}\n\n// ==============================\n// Misc.\n// ==============================\n\nfunction camelToKebab(str) {\n return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n}\n\nfunction parse(val) {\n return isNaN(val) ? val : val + 'px';\n}\n\n// Take a list of functions and return a function that applies the list of\n// functions from left to right\n\nvar pipeFns = function pipeFns(a, b) {\n return function () {\n return b(a.apply(undefined, arguments));\n };\n};\nvar pipe = exports.pipe = function pipe() {\n for (var _len = arguments.length, fns = Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return fns.reduce(pipeFns);\n};\n\n// ==============================\n// Document Helpers\n// ==============================\n\nfunction getPadding() {\n if (!_exenv.canUseDOM) return 0;\n\n var paddingRight = parseInt(window.getComputedStyle(document.body).paddingRight, 10);\n var scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;\n\n return paddingRight + scrollbarWidth;\n}\n\nfunction getWindowHeight() {\n var multiplier = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n\n if (_exenv.canUseDOM) {\n return window.innerHeight * multiplier;\n }\n}\n\nfunction getDocumentHeight() {\n if (_exenv.canUseDOM) {\n return document.body.clientHeight;\n }\n}\n\n// ==============================\n// Style Sheets\n// ==============================\n\nfunction makeStyleTag() {\n if (!_exenv.canUseDOM) return;\n\n var tag = document.createElement('style');\n tag.type = 'text/css';\n tag.setAttribute('data-react-scrolllock', '');\n\n return tag;\n}\nfunction injectStyles(tag, css) {\n if (!_exenv.canUseDOM) return;\n\n if (tag.styleSheet) {\n tag.styleSheet.cssText = css;\n } else {\n tag.appendChild(document.createTextNode(css));\n }\n}\nfunction insertStyleTag(tag) {\n if (!_exenv.canUseDOM) return;\n\n var head = document.head || document.getElementsByTagName('head')[0];\n\n head.appendChild(tag);\n}","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = withLockSheet;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _utils = require('./utils');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nfunction withLockSheet(WrappedComponent) {\n return function (_PureComponent) {\n _inherits(SheetProvider, _PureComponent);\n\n function SheetProvider() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, SheetProvider);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = SheetProvider.__proto__ || Object.getPrototypeOf(SheetProvider)).call.apply(_ref, [this].concat(args))), _this), _this.addSheet = function () {\n var styles = _this.getStyles();\n\n var sheet = (0, _utils.makeStyleTag)();\n if (!sheet) return;\n\n (0, _utils.injectStyles)(sheet, styles);\n (0, _utils.insertStyleTag)(sheet);\n\n _this.sheet = sheet;\n }, _this.getStyles = function () {\n var accountForScrollbars = _this.props.accountForScrollbars;\n\n\n var height = (0, _utils.getDocumentHeight)();\n var paddingRight = accountForScrollbars ? (0, _utils.getPadding)() : null;\n var styles = 'body {\\n box-sizing: border-box !important;\\n overflow: hidden !important;\\n position: relative !important;\\n ' + (height ? 'height: ' + height + 'px !important;' : '') + '\\n ' + (paddingRight ? 'padding-right: ' + paddingRight + 'px !important;' : '') + '\\n }';\n\n return styles;\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(SheetProvider, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.addSheet();\n }\n }, {\n key: 'removeSheet',\n value: function removeSheet() {\n if (!this.sheet) return;\n\n // $FlowFixMe\n this.sheet.parentNode.removeChild(this.sheet);\n this.sheet = null;\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.removeSheet();\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(WrappedComponent, this.props);\n }\n }]);\n\n return SheetProvider;\n }(_react.PureComponent);\n}","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = withTouchListeners;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _exenv = require('exenv');\n\nvar _utils = require('./utils');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n// Mobile Safari ignores { overflow: hidden } declaration on the body,\n// so we have to prevent touchmove events via JS\nfunction withTouchListeners(WrappedComponent) {\n return function (_PureComponent) {\n _inherits(TouchProvider, _PureComponent);\n\n function TouchProvider() {\n _classCallCheck(this, TouchProvider);\n\n return _possibleConstructorReturn(this, (TouchProvider.__proto__ || Object.getPrototypeOf(TouchProvider)).apply(this, arguments));\n }\n\n _createClass(TouchProvider, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (!_exenv.canUseDOM || !(0, _utils.isTouchDevice)()) return;\n\n document.addEventListener('touchmove', _utils.preventTouchMove, _utils.listenerOptions);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (!_exenv.canUseDOM || !(0, _utils.isTouchDevice)()) return;\n\n document.removeEventListener('touchmove', _utils.preventTouchMove, _utils.listenerOptions);\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(WrappedComponent, this.props);\n }\n }]);\n\n return TouchProvider;\n }(_react.PureComponent);\n}","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useWebPSupportCheck = void 0;\nconst react_1 = require(\"react\");\nconst supports_webp_1 = __importDefault(require(\"supports-webp\"));\nfunction useWebPSupportCheck() {\n const [{ webP: supportsWebP }, setWebPSupport] = react_1.useState({ webP: false });\n react_1.useEffect(() => {\n // eslint-disable-next-line unicorn/consistent-function-scoping\n const checkForSupport = async () => {\n const browserSupportsWebP = await supports_webp_1.default;\n setWebPSupport({ webP: browserSupportsWebP });\n };\n checkForSupport();\n }, [supports_webp_1.default]);\n return supportsWebP;\n}\nexports.useWebPSupportCheck = useWebPSupportCheck;\n//# sourceMappingURL=index.js.map","/** @license React v17.0.2\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var l=require(\"object-assign\"),n=60103,p=60106;exports.Fragment=60107;exports.StrictMode=60108;exports.Profiler=60114;var q=60109,r=60110,t=60112;exports.Suspense=60113;var u=60115,v=60116;\nif(\"function\"===typeof Symbol&&Symbol.for){var w=Symbol.for;n=w(\"react.element\");p=w(\"react.portal\");exports.Fragment=w(\"react.fragment\");exports.StrictMode=w(\"react.strict_mode\");exports.Profiler=w(\"react.profiler\");q=w(\"react.provider\");r=w(\"react.context\");t=w(\"react.forward_ref\");exports.Suspense=w(\"react.suspense\");u=w(\"react.memo\");v=w(\"react.lazy\")}var x=\"function\"===typeof Symbol&&Symbol.iterator;\nfunction y(a){if(null===a||\"object\"!==typeof a)return null;a=x&&a[x]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}function z(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;c<arguments.length;c++)b+=\"&args[]=\"+encodeURIComponent(arguments[c]);return\"Minified React error #\"+a+\"; visit \"+b+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}\nvar A={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},B={};function C(a,b,c){this.props=a;this.context=b;this.refs=B;this.updater=c||A}C.prototype.isReactComponent={};C.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(z(85));this.updater.enqueueSetState(this,a,b,\"setState\")};C.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};\nfunction D(){}D.prototype=C.prototype;function E(a,b,c){this.props=a;this.context=b;this.refs=B;this.updater=c||A}var F=E.prototype=new D;F.constructor=E;l(F,C.prototype);F.isPureReactComponent=!0;var G={current:null},H=Object.prototype.hasOwnProperty,I={key:!0,ref:!0,__self:!0,__source:!0};\nfunction J(a,b,c){var e,d={},k=null,h=null;if(null!=b)for(e in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)H.call(b,e)&&!I.hasOwnProperty(e)&&(d[e]=b[e]);var g=arguments.length-2;if(1===g)d.children=c;else if(1<g){for(var f=Array(g),m=0;m<g;m++)f[m]=arguments[m+2];d.children=f}if(a&&a.defaultProps)for(e in g=a.defaultProps,g)void 0===d[e]&&(d[e]=g[e]);return{$$typeof:n,type:a,key:k,ref:h,props:d,_owner:G.current}}\nfunction K(a,b){return{$$typeof:n,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function L(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===n}function escape(a){var b={\"=\":\"=0\",\":\":\"=2\"};return\"$\"+a.replace(/[=:]/g,function(a){return b[a]})}var M=/\\/+/g;function N(a,b){return\"object\"===typeof a&&null!==a&&null!=a.key?escape(\"\"+a.key):b.toString(36)}\nfunction O(a,b,c,e,d){var k=typeof a;if(\"undefined\"===k||\"boolean\"===k)a=null;var h=!1;if(null===a)h=!0;else switch(k){case \"string\":case \"number\":h=!0;break;case \"object\":switch(a.$$typeof){case n:case p:h=!0}}if(h)return h=a,d=d(h),a=\"\"===e?\".\"+N(h,0):e,Array.isArray(d)?(c=\"\",null!=a&&(c=a.replace(M,\"$&/\")+\"/\"),O(d,b,c,\"\",function(a){return a})):null!=d&&(L(d)&&(d=K(d,c+(!d.key||h&&h.key===d.key?\"\":(\"\"+d.key).replace(M,\"$&/\")+\"/\")+a)),b.push(d)),1;h=0;e=\"\"===e?\".\":e+\":\";if(Array.isArray(a))for(var g=\n0;g<a.length;g++){k=a[g];var f=e+N(k,g);h+=O(k,b,c,f,d)}else if(f=y(a),\"function\"===typeof f)for(a=f.call(a),g=0;!(k=a.next()).done;)k=k.value,f=e+N(k,g++),h+=O(k,b,c,f,d);else if(\"object\"===k)throw b=\"\"+a,Error(z(31,\"[object Object]\"===b?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":b));return h}function P(a,b,c){if(null==a)return a;var e=[],d=0;O(a,e,\"\",\"\",function(a){return b.call(c,a,d++)});return e}\nfunction Q(a){if(-1===a._status){var b=a._result;b=b();a._status=0;a._result=b;b.then(function(b){0===a._status&&(b=b.default,a._status=1,a._result=b)},function(b){0===a._status&&(a._status=2,a._result=b)})}if(1===a._status)return a._result;throw a._result;}var R={current:null};function S(){var a=R.current;if(null===a)throw Error(z(321));return a}var T={ReactCurrentDispatcher:R,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:G,IsSomeRendererActing:{current:!1},assign:l};\nexports.Children={map:P,forEach:function(a,b,c){P(a,function(){b.apply(this,arguments)},c)},count:function(a){var b=0;P(a,function(){b++});return b},toArray:function(a){return P(a,function(a){return a})||[]},only:function(a){if(!L(a))throw Error(z(143));return a}};exports.Component=C;exports.PureComponent=E;exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=T;\nexports.cloneElement=function(a,b,c){if(null===a||void 0===a)throw Error(z(267,a));var e=l({},a.props),d=a.key,k=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,h=G.current);void 0!==b.key&&(d=\"\"+b.key);if(a.type&&a.type.defaultProps)var g=a.type.defaultProps;for(f in b)H.call(b,f)&&!I.hasOwnProperty(f)&&(e[f]=void 0===b[f]&&void 0!==g?g[f]:b[f])}var f=arguments.length-2;if(1===f)e.children=c;else if(1<f){g=Array(f);for(var m=0;m<f;m++)g[m]=arguments[m+2];e.children=g}return{$$typeof:n,type:a.type,\nkey:d,ref:k,props:e,_owner:h}};exports.createContext=function(a,b){void 0===b&&(b=null);a={$$typeof:r,_calculateChangedBits:b,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider={$$typeof:q,_context:a};return a.Consumer=a};exports.createElement=J;exports.createFactory=function(a){var b=J.bind(null,a);b.type=a;return b};exports.createRef=function(){return{current:null}};exports.forwardRef=function(a){return{$$typeof:t,render:a}};exports.isValidElement=L;\nexports.lazy=function(a){return{$$typeof:v,_payload:{_status:-1,_result:a},_init:Q}};exports.memo=function(a,b){return{$$typeof:u,type:a,compare:void 0===b?null:b}};exports.useCallback=function(a,b){return S().useCallback(a,b)};exports.useContext=function(a,b){return S().useContext(a,b)};exports.useDebugValue=function(){};exports.useEffect=function(a,b){return S().useEffect(a,b)};exports.useImperativeHandle=function(a,b,c){return S().useImperativeHandle(a,b,c)};\nexports.useLayoutEffect=function(a,b){return S().useLayoutEffect(a,b)};exports.useMemo=function(a,b){return S().useMemo(a,b)};exports.useReducer=function(a,b,c){return S().useReducer(a,b,c)};exports.useRef=function(a){return S().useRef(a)};exports.useState=function(a){return S().useState(a)};exports.version=\"17.0.2\";\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n define(Gp, \"constructor\", GeneratorFunctionPrototype);\n define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction);\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n define(Gp, iteratorSymbol, function() {\n return this;\n });\n\n define(Gp, \"toString\", function() {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, in modern engines\n // we can explicitly access globalThis. In older engines we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","/** @license React v0.20.2\n * scheduler.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f,g,h,k;if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}\nif(\"undefined\"===typeof window||\"function\"!==typeof MessageChannel){var t=null,u=null,w=function(){if(null!==t)try{var a=exports.unstable_now();t(!0,a);t=null}catch(b){throw setTimeout(w,0),b;}};f=function(a){null!==t?setTimeout(f,0,a):(t=a,setTimeout(w,0))};g=function(a,b){u=setTimeout(a,b)};h=function(){clearTimeout(u)};exports.unstable_shouldYield=function(){return!1};k=exports.unstable_forceFrameRate=function(){}}else{var x=window.setTimeout,y=window.clearTimeout;if(\"undefined\"!==typeof console){var z=\nwindow.cancelAnimationFrame;\"function\"!==typeof window.requestAnimationFrame&&console.error(\"This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills\");\"function\"!==typeof z&&console.error(\"This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills\")}var A=!1,B=null,C=-1,D=5,E=0;exports.unstable_shouldYield=function(){return exports.unstable_now()>=\nE};k=function(){};exports.unstable_forceFrameRate=function(a){0>a||125<a?console.error(\"forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported\"):D=0<a?Math.floor(1E3/a):5};var F=new MessageChannel,G=F.port2;F.port1.onmessage=function(){if(null!==B){var a=exports.unstable_now();E=a+D;try{B(!0,a)?G.postMessage(null):(A=!1,B=null)}catch(b){throw G.postMessage(null),b;}}else A=!1};f=function(a){B=a;A||(A=!0,G.postMessage(null))};g=function(a,b){C=\nx(function(){a(exports.unstable_now())},b)};h=function(){y(C);C=-1}}function H(a,b){var c=a.length;a.push(b);a:for(;;){var d=c-1>>>1,e=a[d];if(void 0!==e&&0<I(e,b))a[d]=b,a[c]=e,c=d;else break a}}function J(a){a=a[0];return void 0===a?null:a}\nfunction K(a){var b=a[0];if(void 0!==b){var c=a.pop();if(c!==b){a[0]=c;a:for(var d=0,e=a.length;d<e;){var m=2*(d+1)-1,n=a[m],v=m+1,r=a[v];if(void 0!==n&&0>I(n,c))void 0!==r&&0>I(r,n)?(a[d]=r,a[v]=c,d=v):(a[d]=n,a[m]=c,d=m);else if(void 0!==r&&0>I(r,c))a[d]=r,a[v]=c,d=v;else break a}}return b}return null}function I(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}var L=[],M=[],N=1,O=null,P=3,Q=!1,R=!1,S=!1;\nfunction T(a){for(var b=J(M);null!==b;){if(null===b.callback)K(M);else if(b.startTime<=a)K(M),b.sortIndex=b.expirationTime,H(L,b);else break;b=J(M)}}function U(a){S=!1;T(a);if(!R)if(null!==J(L))R=!0,f(V);else{var b=J(M);null!==b&&g(U,b.startTime-a)}}\nfunction V(a,b){R=!1;S&&(S=!1,h());Q=!0;var c=P;try{T(b);for(O=J(L);null!==O&&(!(O.expirationTime>b)||a&&!exports.unstable_shouldYield());){var d=O.callback;if(\"function\"===typeof d){O.callback=null;P=O.priorityLevel;var e=d(O.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?O.callback=e:O===J(L)&&K(L);T(b)}else K(L);O=J(L)}if(null!==O)var m=!0;else{var n=J(M);null!==n&&g(U,n.startTime-b);m=!1}return m}finally{O=null,P=c,Q=!1}}var W=k;exports.unstable_IdlePriority=5;\nexports.unstable_ImmediatePriority=1;exports.unstable_LowPriority=4;exports.unstable_NormalPriority=3;exports.unstable_Profiling=null;exports.unstable_UserBlockingPriority=2;exports.unstable_cancelCallback=function(a){a.callback=null};exports.unstable_continueExecution=function(){R||Q||(R=!0,f(V))};exports.unstable_getCurrentPriorityLevel=function(){return P};exports.unstable_getFirstCallbackNode=function(){return J(L)};\nexports.unstable_next=function(a){switch(P){case 1:case 2:case 3:var b=3;break;default:b=P}var c=P;P=b;try{return a()}finally{P=c}};exports.unstable_pauseExecution=function(){};exports.unstable_requestPaint=W;exports.unstable_runWithPriority=function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=P;P=a;try{return b()}finally{P=c}};\nexports.unstable_scheduleCallback=function(a,b,c){var d=exports.unstable_now();\"object\"===typeof c&&null!==c?(c=c.delay,c=\"number\"===typeof c&&0<c?d+c:d):c=d;switch(a){case 1:var e=-1;break;case 2:e=250;break;case 5:e=1073741823;break;case 4:e=1E4;break;default:e=5E3}e=c+e;a={id:N++,callback:b,priorityLevel:a,startTime:c,expirationTime:e,sortIndex:-1};c>d?(a.sortIndex=c,H(M,a),null===J(L)&&a===J(M)&&(S?h():S=!0,g(U,c-d))):(a.sortIndex=e,H(L,a),R||Q||(R=!0,f(V)));return a};\nexports.unstable_wrapCallback=function(a){var b=P;return function(){var c=P;P=b;try{return a.apply(this,arguments)}finally{P=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","//\n\nmodule.exports = function shallowEqual(objA, objB, compare, compareContext) {\n var ret = compare ? compare.call(compareContext, objA, objB) : void 0;\n\n if (ret !== void 0) {\n return !!ret;\n }\n\n if (objA === objB) {\n return true;\n }\n\n if (typeof objA !== \"object\" || !objA || typeof objB !== \"object\" || !objB) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);\n\n // Test for A's keys different from B.\n for (var idx = 0; idx < keysA.length; idx++) {\n var key = keysA[idx];\n\n if (!bHasOwnProperty(key)) {\n return false;\n }\n\n var valueA = objA[key];\n var valueB = objB[key];\n\n ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;\n\n if (ret === false || (ret === void 0 && valueA !== valueB)) {\n return false;\n }\n }\n\n return true;\n};\n","'use strict';\n\nvar Sister;\n\n/**\n* @link https://github.com/gajus/sister for the canonical source repository\n* @license https://github.com/gajus/sister/blob/master/LICENSE BSD 3-Clause\n*/\nSister = function () {\n var sister = {},\n events = {};\n\n /**\n * @name handler\n * @function\n * @param {Object} data Event data.\n */\n\n /**\n * @param {String} name Event name.\n * @param {handler} handler\n * @return {listener}\n */\n sister.on = function (name, handler) {\n var listener = {name: name, handler: handler};\n events[name] = events[name] || [];\n events[name].unshift(listener);\n return listener;\n };\n\n /**\n * @param {listener}\n */\n sister.off = function (listener) {\n var index = events[listener.name].indexOf(listener);\n\n if (index !== -1) {\n events[listener.name].splice(index, 1);\n }\n };\n\n /**\n * @param {String} name Event name.\n * @param {Object} data Event data.\n */\n sister.trigger = function (name, data) {\n var listeners = events[name],\n i;\n\n if (listeners) {\n i = listeners.length;\n while (i--) {\n listeners[i].handler(data);\n }\n }\n };\n\n return sister;\n};\n\nmodule.exports = Sister;\n","/*! npm.im/supports-webp 2.0.1 */\n'use strict';\n\nvar index = new Promise(function (resolve) {\n\tvar image = new Image();\n\timage.onerror = function () { return resolve(false); };\n\timage.onload = function () { return resolve(image.width === 1); };\n\timage.src = 'data:image/webp;base64,UklGRiQAAABXRUJQVlA4IBgAAAAwAQCdASoBAAEAAwA0JaQAA3AA/vuUAAA=';\n}).catch(function () { return false; });\n\nmodule.exports = index;\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _PlayerStates = require('./constants/PlayerStates');\n\nvar _PlayerStates2 = _interopRequireDefault(_PlayerStates);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = {\n pauseVideo: {\n acceptableStates: [_PlayerStates2.default.ENDED, _PlayerStates2.default.PAUSED],\n stateChangeRequired: false\n },\n playVideo: {\n acceptableStates: [_PlayerStates2.default.ENDED, _PlayerStates2.default.PLAYING],\n stateChangeRequired: false\n },\n seekTo: {\n acceptableStates: [_PlayerStates2.default.ENDED, _PlayerStates2.default.PLAYING, _PlayerStates2.default.PAUSED],\n stateChangeRequired: true,\n\n // TRICKY: `seekTo` may not cause a state change if no buffering is\n // required.\n timeout: 3000\n }\n};\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _debug = require('debug');\n\nvar _debug2 = _interopRequireDefault(_debug);\n\nvar _functionNames = require('./functionNames');\n\nvar _functionNames2 = _interopRequireDefault(_functionNames);\n\nvar _eventNames = require('./eventNames');\n\nvar _eventNames2 = _interopRequireDefault(_eventNames);\n\nvar _FunctionStateMap = require('./FunctionStateMap');\n\nvar _FunctionStateMap2 = _interopRequireDefault(_FunctionStateMap);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/* eslint-disable promise/prefer-await-to-then */\n\nvar debug = (0, _debug2.default)('youtube-player');\n\nvar YouTubePlayer = {};\n\n/**\n * Construct an object that defines an event handler for all of the YouTube\n * player events. Proxy captured events through an event emitter.\n *\n * @todo Capture event parameters.\n * @see https://developers.google.com/youtube/iframe_api_reference#Events\n */\nYouTubePlayer.proxyEvents = function (emitter) {\n var events = {};\n\n var _loop = function _loop(eventName) {\n var onEventName = 'on' + eventName.slice(0, 1).toUpperCase() + eventName.slice(1);\n\n events[onEventName] = function (event) {\n debug('event \"%s\"', onEventName, event);\n\n emitter.trigger(eventName, event);\n };\n };\n\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = _eventNames2.default[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var eventName = _step.value;\n\n _loop(eventName);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n return events;\n};\n\n/**\n * Delays player API method execution until player state is ready.\n *\n * @todo Proxy all of the methods using Object.keys.\n * @todo See TRICKY below.\n * @param playerAPIReady Promise that resolves when player is ready.\n * @param strictState A flag designating whether or not to wait for\n * an acceptable state when calling supported functions.\n * @returns {Object}\n */\nYouTubePlayer.promisifyPlayer = function (playerAPIReady) {\n var strictState = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var functions = {};\n\n var _loop2 = function _loop2(functionName) {\n if (strictState && _FunctionStateMap2.default[functionName]) {\n functions[functionName] = function () {\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return playerAPIReady.then(function (player) {\n var stateInfo = _FunctionStateMap2.default[functionName];\n var playerState = player.getPlayerState();\n\n // eslint-disable-next-line no-warning-comments\n // TODO: Just spread the args into the function once Babel is fixed:\n // https://github.com/babel/babel/issues/4270\n //\n // eslint-disable-next-line prefer-spread\n var value = player[functionName].apply(player, args);\n\n // TRICKY: For functions like `seekTo`, a change in state must be\n // triggered given that the resulting state could match the initial\n // state.\n if (stateInfo.stateChangeRequired ||\n\n // eslint-disable-next-line no-extra-parens\n Array.isArray(stateInfo.acceptableStates) && stateInfo.acceptableStates.indexOf(playerState) === -1) {\n return new Promise(function (resolve) {\n var onPlayerStateChange = function onPlayerStateChange() {\n var playerStateAfterChange = player.getPlayerState();\n\n var timeout = void 0;\n\n if (typeof stateInfo.timeout === 'number') {\n timeout = setTimeout(function () {\n player.removeEventListener('onStateChange', onPlayerStateChange);\n\n resolve();\n }, stateInfo.timeout);\n }\n\n if (Array.isArray(stateInfo.acceptableStates) && stateInfo.acceptableStates.indexOf(playerStateAfterChange) !== -1) {\n player.removeEventListener('onStateChange', onPlayerStateChange);\n\n clearTimeout(timeout);\n\n resolve();\n }\n };\n\n player.addEventListener('onStateChange', onPlayerStateChange);\n }).then(function () {\n return value;\n });\n }\n\n return value;\n });\n };\n } else {\n functions[functionName] = function () {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return playerAPIReady.then(function (player) {\n // eslint-disable-next-line no-warning-comments\n // TODO: Just spread the args into the function once Babel is fixed:\n // https://github.com/babel/babel/issues/4270\n //\n // eslint-disable-next-line prefer-spread\n return player[functionName].apply(player, args);\n });\n };\n }\n };\n\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = _functionNames2.default[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var functionName = _step2.value;\n\n _loop2(functionName);\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n\n return functions;\n};\n\nexports.default = YouTubePlayer;\nmodule.exports = exports['default'];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = {\n BUFFERING: 3,\n ENDED: 0,\n PAUSED: 2,\n PLAYING: 1,\n UNSTARTED: -1,\n VIDEO_CUED: 5\n};\nmodule.exports = exports[\"default\"];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\n\n/**\n * @see https://developers.google.com/youtube/iframe_api_reference#Events\n * `volumeChange` is not officially supported but seems to work\n * it emits an object: `{volume: 82.6923076923077, muted: false}`\n */\nexports.default = ['ready', 'stateChange', 'playbackQualityChange', 'playbackRateChange', 'error', 'apiChange', 'volumeChange'];\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\n\n/**\n * @see https://developers.google.com/youtube/iframe_api_reference#Functions\n */\nexports.default = ['cueVideoById', 'loadVideoById', 'cueVideoByUrl', 'loadVideoByUrl', 'playVideo', 'pauseVideo', 'stopVideo', 'getVideoLoadedFraction', 'cuePlaylist', 'loadPlaylist', 'nextVideo', 'previousVideo', 'playVideoAt', 'setShuffle', 'setLoop', 'getPlaylist', 'getPlaylistIndex', 'setOption', 'mute', 'unMute', 'isMuted', 'setVolume', 'getVolume', 'seekTo', 'getPlayerState', 'getPlaybackRate', 'setPlaybackRate', 'getAvailablePlaybackRates', 'getPlaybackQuality', 'setPlaybackQuality', 'getAvailableQualityLevels', 'getCurrentTime', 'getDuration', 'removeEventListener', 'getVideoUrl', 'getVideoEmbedCode', 'getOptions', 'getOption', 'addEventListener', 'destroy', 'setSize', 'getIframe'];\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _sister = require('sister');\n\nvar _sister2 = _interopRequireDefault(_sister);\n\nvar _loadYouTubeIframeApi = require('./loadYouTubeIframeApi');\n\nvar _loadYouTubeIframeApi2 = _interopRequireDefault(_loadYouTubeIframeApi);\n\nvar _YouTubePlayer = require('./YouTubePlayer');\n\nvar _YouTubePlayer2 = _interopRequireDefault(_YouTubePlayer);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/**\n * @typedef YT.Player\n * @see https://developers.google.com/youtube/iframe_api_reference\n * */\n\n/**\n * @see https://developers.google.com/youtube/iframe_api_reference#Loading_a_Video_Player\n */\nvar youtubeIframeAPI = void 0;\n\n/**\n * A factory function used to produce an instance of YT.Player and queue function calls and proxy events of the resulting object.\n *\n * @param maybeElementId Either An existing YT.Player instance,\n * the DOM element or the id of the HTML element where the API will insert an <iframe>.\n * @param options See `options` (Ignored when using an existing YT.Player instance).\n * @param strictState A flag designating whether or not to wait for\n * an acceptable state when calling supported functions. Default: `false`.\n * See `FunctionStateMap.js` for supported functions and acceptable states.\n */\n\nexports.default = function (maybeElementId) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var strictState = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var emitter = (0, _sister2.default)();\n\n if (!youtubeIframeAPI) {\n youtubeIframeAPI = (0, _loadYouTubeIframeApi2.default)(emitter);\n }\n\n if (options.events) {\n throw new Error('Event handlers cannot be overwritten.');\n }\n\n if (typeof maybeElementId === 'string' && !document.getElementById(maybeElementId)) {\n throw new Error('Element \"' + maybeElementId + '\" does not exist.');\n }\n\n options.events = _YouTubePlayer2.default.proxyEvents(emitter);\n\n var playerAPIReady = new Promise(function (resolve) {\n if ((typeof maybeElementId === 'undefined' ? 'undefined' : _typeof(maybeElementId)) === 'object' && maybeElementId.playVideo instanceof Function) {\n var player = maybeElementId;\n\n resolve(player);\n } else {\n // asume maybeElementId can be rendered inside\n // eslint-disable-next-line promise/catch-or-return\n youtubeIframeAPI.then(function (YT) {\n // eslint-disable-line promise/prefer-await-to-then\n var player = new YT.Player(maybeElementId, options);\n\n emitter.on('ready', function () {\n resolve(player);\n });\n\n return null;\n });\n }\n });\n\n var playerApi = _YouTubePlayer2.default.promisifyPlayer(playerAPIReady, strictState);\n\n playerApi.on = emitter.on;\n playerApi.off = emitter.off;\n\n return playerApi;\n};\n\nmodule.exports = exports['default'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _loadScript = require('load-script');\n\nvar _loadScript2 = _interopRequireDefault(_loadScript);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (emitter) {\n /**\n * A promise that is resolved when window.onYouTubeIframeAPIReady is called.\n * The promise is resolved with a reference to window.YT object.\n */\n var iframeAPIReady = new Promise(function (resolve) {\n if (window.YT && window.YT.Player && window.YT.Player instanceof Function) {\n resolve(window.YT);\n\n return;\n } else {\n var protocol = window.location.protocol === 'http:' ? 'http:' : 'https:';\n\n (0, _loadScript2.default)(protocol + '//www.youtube.com/iframe_api', function (error) {\n if (error) {\n emitter.trigger('error', error);\n }\n });\n }\n\n var previous = window.onYouTubeIframeAPIReady;\n\n // The API will call this function when page has finished downloading\n // the JavaScript for the player API.\n window.onYouTubeIframeAPIReady = function () {\n if (previous) {\n previous();\n }\n\n resolve(window.YT);\n };\n });\n\n return iframeAPIReady;\n};\n\nmodule.exports = exports['default'];","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \".index.client.js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"wls:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\t;\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t179: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkwls\"] = self[\"webpackChunkwls\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// extracted by mini-css-extract-plugin\nexport default {};","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","export default function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}","function isAbsolute(pathname) {\n return pathname.charAt(0) === '/';\n}\n\n// About 1.5x faster than the two-arg version of Array#splice()\nfunction spliceOne(list, index) {\n for (var i = index, k = i + 1, n = list.length; k < n; i += 1, k += 1) {\n list[i] = list[k];\n }\n\n list.pop();\n}\n\n// This implementation is based heavily on node's url.parse\nfunction resolvePathname(to, from) {\n if (from === undefined) from = '';\n\n var toParts = (to && to.split('/')) || [];\n var fromParts = (from && from.split('/')) || [];\n\n var isToAbs = to && isAbsolute(to);\n var isFromAbs = from && isAbsolute(from);\n var mustEndAbs = isToAbs || isFromAbs;\n\n if (to && isAbsolute(to)) {\n // to is absolute\n fromParts = toParts;\n } else if (toParts.length) {\n // to is relative, drop the filename\n fromParts.pop();\n fromParts = fromParts.concat(toParts);\n }\n\n if (!fromParts.length) return '/';\n\n var hasTrailingSlash;\n if (fromParts.length) {\n var last = fromParts[fromParts.length - 1];\n hasTrailingSlash = last === '.' || last === '..' || last === '';\n } else {\n hasTrailingSlash = false;\n }\n\n var up = 0;\n for (var i = fromParts.length; i >= 0; i--) {\n var part = fromParts[i];\n\n if (part === '.') {\n spliceOne(fromParts, i);\n } else if (part === '..') {\n spliceOne(fromParts, i);\n up++;\n } else if (up) {\n spliceOne(fromParts, i);\n up--;\n }\n }\n\n if (!mustEndAbs) for (; up--; up) fromParts.unshift('..');\n\n if (\n mustEndAbs &&\n fromParts[0] !== '' &&\n (!fromParts[0] || !isAbsolute(fromParts[0]))\n )\n fromParts.unshift('');\n\n var result = fromParts.join('/');\n\n if (hasTrailingSlash && result.substr(-1) !== '/') result += '/';\n\n return result;\n}\n\nexport default resolvePathname;\n","var isProduction = process.env.NODE_ENV === 'production';\nvar prefix = 'Invariant failed';\nfunction invariant(condition, message) {\n if (condition) {\n return;\n }\n if (isProduction) {\n throw new Error(prefix);\n }\n var provided = typeof message === 'function' ? message() : message;\n var value = provided ? prefix + \": \" + provided : prefix;\n throw new Error(value);\n}\n\nexport { invariant as default };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport resolvePathname from 'resolve-pathname';\nimport valueEqual from 'value-equal';\nimport warning from 'tiny-warning';\nimport invariant from 'tiny-invariant';\n\nfunction addLeadingSlash(path) {\n return path.charAt(0) === '/' ? path : '/' + path;\n}\nfunction stripLeadingSlash(path) {\n return path.charAt(0) === '/' ? path.substr(1) : path;\n}\nfunction hasBasename(path, prefix) {\n return path.toLowerCase().indexOf(prefix.toLowerCase()) === 0 && '/?#'.indexOf(path.charAt(prefix.length)) !== -1;\n}\nfunction stripBasename(path, prefix) {\n return hasBasename(path, prefix) ? path.substr(prefix.length) : path;\n}\nfunction stripTrailingSlash(path) {\n return path.charAt(path.length - 1) === '/' ? path.slice(0, -1) : path;\n}\nfunction parsePath(path) {\n var pathname = path || '/';\n var search = '';\n var hash = '';\n var hashIndex = pathname.indexOf('#');\n\n if (hashIndex !== -1) {\n hash = pathname.substr(hashIndex);\n pathname = pathname.substr(0, hashIndex);\n }\n\n var searchIndex = pathname.indexOf('?');\n\n if (searchIndex !== -1) {\n search = pathname.substr(searchIndex);\n pathname = pathname.substr(0, searchIndex);\n }\n\n return {\n pathname: pathname,\n search: search === '?' ? '' : search,\n hash: hash === '#' ? '' : hash\n };\n}\nfunction createPath(location) {\n var pathname = location.pathname,\n search = location.search,\n hash = location.hash;\n var path = pathname || '/';\n if (search && search !== '?') path += search.charAt(0) === '?' ? search : \"?\" + search;\n if (hash && hash !== '#') path += hash.charAt(0) === '#' ? hash : \"#\" + hash;\n return path;\n}\n\nfunction createLocation(path, state, key, currentLocation) {\n var location;\n\n if (typeof path === 'string') {\n // Two-arg form: push(path, state)\n location = parsePath(path);\n location.state = state;\n } else {\n // One-arg form: push(location)\n location = _extends({}, path);\n if (location.pathname === undefined) location.pathname = '';\n\n if (location.search) {\n if (location.search.charAt(0) !== '?') location.search = '?' + location.search;\n } else {\n location.search = '';\n }\n\n if (location.hash) {\n if (location.hash.charAt(0) !== '#') location.hash = '#' + location.hash;\n } else {\n location.hash = '';\n }\n\n if (state !== undefined && location.state === undefined) location.state = state;\n }\n\n try {\n location.pathname = decodeURI(location.pathname);\n } catch (e) {\n if (e instanceof URIError) {\n throw new URIError('Pathname \"' + location.pathname + '\" could not be decoded. ' + 'This is likely caused by an invalid percent-encoding.');\n } else {\n throw e;\n }\n }\n\n if (key) location.key = key;\n\n if (currentLocation) {\n // Resolve incomplete/relative pathname relative to current location.\n if (!location.pathname) {\n location.pathname = currentLocation.pathname;\n } else if (location.pathname.charAt(0) !== '/') {\n location.pathname = resolvePathname(location.pathname, currentLocation.pathname);\n }\n } else {\n // When there is no prior location and pathname is empty, set it to /\n if (!location.pathname) {\n location.pathname = '/';\n }\n }\n\n return location;\n}\nfunction locationsAreEqual(a, b) {\n return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash && a.key === b.key && valueEqual(a.state, b.state);\n}\n\nfunction createTransitionManager() {\n var prompt = null;\n\n function setPrompt(nextPrompt) {\n process.env.NODE_ENV !== \"production\" ? warning(prompt == null, 'A history supports only one prompt at a time') : void 0;\n prompt = nextPrompt;\n return function () {\n if (prompt === nextPrompt) prompt = null;\n };\n }\n\n function confirmTransitionTo(location, action, getUserConfirmation, callback) {\n // TODO: If another transition starts while we're still confirming\n // the previous one, we may end up in a weird state. Figure out the\n // best way to handle this.\n if (prompt != null) {\n var result = typeof prompt === 'function' ? prompt(location, action) : prompt;\n\n if (typeof result === 'string') {\n if (typeof getUserConfirmation === 'function') {\n getUserConfirmation(result, callback);\n } else {\n process.env.NODE_ENV !== \"production\" ? warning(false, 'A history needs a getUserConfirmation function in order to use a prompt message') : void 0;\n callback(true);\n }\n } else {\n // Return false from a transition hook to cancel the transition.\n callback(result !== false);\n }\n } else {\n callback(true);\n }\n }\n\n var listeners = [];\n\n function appendListener(fn) {\n var isActive = true;\n\n function listener() {\n if (isActive) fn.apply(void 0, arguments);\n }\n\n listeners.push(listener);\n return function () {\n isActive = false;\n listeners = listeners.filter(function (item) {\n return item !== listener;\n });\n };\n }\n\n function notifyListeners() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n listeners.forEach(function (listener) {\n return listener.apply(void 0, args);\n });\n }\n\n return {\n setPrompt: setPrompt,\n confirmTransitionTo: confirmTransitionTo,\n appendListener: appendListener,\n notifyListeners: notifyListeners\n };\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\nfunction getConfirmation(message, callback) {\n callback(window.confirm(message)); // eslint-disable-line no-alert\n}\n/**\n * Returns true if the HTML5 history API is supported. Taken from Modernizr.\n *\n * https://github.com/Modernizr/Modernizr/blob/master/LICENSE\n * https://github.com/Modernizr/Modernizr/blob/master/feature-detects/history.js\n * changed to avoid false negatives for Windows Phones: https://github.com/reactjs/react-router/issues/586\n */\n\nfunction supportsHistory() {\n var ua = window.navigator.userAgent;\n if ((ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) && ua.indexOf('Mobile Safari') !== -1 && ua.indexOf('Chrome') === -1 && ua.indexOf('Windows Phone') === -1) return false;\n return window.history && 'pushState' in window.history;\n}\n/**\n * Returns true if browser fires popstate on hash change.\n * IE10 and IE11 do not.\n */\n\nfunction supportsPopStateOnHashChange() {\n return window.navigator.userAgent.indexOf('Trident') === -1;\n}\n/**\n * Returns false if using go(n) with hash history causes a full page reload.\n */\n\nfunction supportsGoWithoutReloadUsingHash() {\n return window.navigator.userAgent.indexOf('Firefox') === -1;\n}\n/**\n * Returns true if a given popstate event is an extraneous WebKit event.\n * Accounts for the fact that Chrome on iOS fires real popstate events\n * containing undefined state when pressing the back button.\n */\n\nfunction isExtraneousPopstateEvent(event) {\n return event.state === undefined && navigator.userAgent.indexOf('CriOS') === -1;\n}\n\nvar PopStateEvent = 'popstate';\nvar HashChangeEvent = 'hashchange';\n\nfunction getHistoryState() {\n try {\n return window.history.state || {};\n } catch (e) {\n // IE 11 sometimes throws when accessing window.history.state\n // See https://github.com/ReactTraining/history/pull/289\n return {};\n }\n}\n/**\n * Creates a history object that uses the HTML5 history API including\n * pushState, replaceState, and the popstate event.\n */\n\n\nfunction createBrowserHistory(props) {\n if (props === void 0) {\n props = {};\n }\n\n !canUseDOM ? process.env.NODE_ENV !== \"production\" ? invariant(false, 'Browser history needs a DOM') : invariant(false) : void 0;\n var globalHistory = window.history;\n var canUseHistory = supportsHistory();\n var needsHashChangeListener = !supportsPopStateOnHashChange();\n var _props = props,\n _props$forceRefresh = _props.forceRefresh,\n forceRefresh = _props$forceRefresh === void 0 ? false : _props$forceRefresh,\n _props$getUserConfirm = _props.getUserConfirmation,\n getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,\n _props$keyLength = _props.keyLength,\n keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength;\n var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';\n\n function getDOMLocation(historyState) {\n var _ref = historyState || {},\n key = _ref.key,\n state = _ref.state;\n\n var _window$location = window.location,\n pathname = _window$location.pathname,\n search = _window$location.search,\n hash = _window$location.hash;\n var path = pathname + search + hash;\n process.env.NODE_ENV !== \"production\" ? warning(!basename || hasBasename(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path \"' + path + '\" to begin with \"' + basename + '\".') : void 0;\n if (basename) path = stripBasename(path, basename);\n return createLocation(path, state, key);\n }\n\n function createKey() {\n return Math.random().toString(36).substr(2, keyLength);\n }\n\n var transitionManager = createTransitionManager();\n\n function setState(nextState) {\n _extends(history, nextState);\n\n history.length = globalHistory.length;\n transitionManager.notifyListeners(history.location, history.action);\n }\n\n function handlePopState(event) {\n // Ignore extraneous popstate events in WebKit.\n if (isExtraneousPopstateEvent(event)) return;\n handlePop(getDOMLocation(event.state));\n }\n\n function handleHashChange() {\n handlePop(getDOMLocation(getHistoryState()));\n }\n\n var forceNextPop = false;\n\n function handlePop(location) {\n if (forceNextPop) {\n forceNextPop = false;\n setState();\n } else {\n var action = 'POP';\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (ok) {\n setState({\n action: action,\n location: location\n });\n } else {\n revertPop(location);\n }\n });\n }\n }\n\n function revertPop(fromLocation) {\n var toLocation = history.location; // TODO: We could probably make this more reliable by\n // keeping a list of keys we've seen in sessionStorage.\n // Instead, we just default to 0 for keys we don't know.\n\n var toIndex = allKeys.indexOf(toLocation.key);\n if (toIndex === -1) toIndex = 0;\n var fromIndex = allKeys.indexOf(fromLocation.key);\n if (fromIndex === -1) fromIndex = 0;\n var delta = toIndex - fromIndex;\n\n if (delta) {\n forceNextPop = true;\n go(delta);\n }\n }\n\n var initialLocation = getDOMLocation(getHistoryState());\n var allKeys = [initialLocation.key]; // Public interface\n\n function createHref(location) {\n return basename + createPath(location);\n }\n\n function push(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to push when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0;\n var action = 'PUSH';\n var location = createLocation(path, state, createKey(), history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n var href = createHref(location);\n var key = location.key,\n state = location.state;\n\n if (canUseHistory) {\n globalHistory.pushState({\n key: key,\n state: state\n }, null, href);\n\n if (forceRefresh) {\n window.location.href = href;\n } else {\n var prevIndex = allKeys.indexOf(history.location.key);\n var nextKeys = allKeys.slice(0, prevIndex + 1);\n nextKeys.push(location.key);\n allKeys = nextKeys;\n setState({\n action: action,\n location: location\n });\n }\n } else {\n process.env.NODE_ENV !== \"production\" ? warning(state === undefined, 'Browser history cannot push state in browsers that do not support HTML5 history') : void 0;\n window.location.href = href;\n }\n });\n }\n\n function replace(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to replace when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0;\n var action = 'REPLACE';\n var location = createLocation(path, state, createKey(), history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n var href = createHref(location);\n var key = location.key,\n state = location.state;\n\n if (canUseHistory) {\n globalHistory.replaceState({\n key: key,\n state: state\n }, null, href);\n\n if (forceRefresh) {\n window.location.replace(href);\n } else {\n var prevIndex = allKeys.indexOf(history.location.key);\n if (prevIndex !== -1) allKeys[prevIndex] = location.key;\n setState({\n action: action,\n location: location\n });\n }\n } else {\n process.env.NODE_ENV !== \"production\" ? warning(state === undefined, 'Browser history cannot replace state in browsers that do not support HTML5 history') : void 0;\n window.location.replace(href);\n }\n });\n }\n\n function go(n) {\n globalHistory.go(n);\n }\n\n function goBack() {\n go(-1);\n }\n\n function goForward() {\n go(1);\n }\n\n var listenerCount = 0;\n\n function checkDOMListeners(delta) {\n listenerCount += delta;\n\n if (listenerCount === 1 && delta === 1) {\n window.addEventListener(PopStateEvent, handlePopState);\n if (needsHashChangeListener) window.addEventListener(HashChangeEvent, handleHashChange);\n } else if (listenerCount === 0) {\n window.removeEventListener(PopStateEvent, handlePopState);\n if (needsHashChangeListener) window.removeEventListener(HashChangeEvent, handleHashChange);\n }\n }\n\n var isBlocked = false;\n\n function block(prompt) {\n if (prompt === void 0) {\n prompt = false;\n }\n\n var unblock = transitionManager.setPrompt(prompt);\n\n if (!isBlocked) {\n checkDOMListeners(1);\n isBlocked = true;\n }\n\n return function () {\n if (isBlocked) {\n isBlocked = false;\n checkDOMListeners(-1);\n }\n\n return unblock();\n };\n }\n\n function listen(listener) {\n var unlisten = transitionManager.appendListener(listener);\n checkDOMListeners(1);\n return function () {\n checkDOMListeners(-1);\n unlisten();\n };\n }\n\n var history = {\n length: globalHistory.length,\n action: 'POP',\n location: initialLocation,\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n goBack: goBack,\n goForward: goForward,\n block: block,\n listen: listen\n };\n return history;\n}\n\nvar HashChangeEvent$1 = 'hashchange';\nvar HashPathCoders = {\n hashbang: {\n encodePath: function encodePath(path) {\n return path.charAt(0) === '!' ? path : '!/' + stripLeadingSlash(path);\n },\n decodePath: function decodePath(path) {\n return path.charAt(0) === '!' ? path.substr(1) : path;\n }\n },\n noslash: {\n encodePath: stripLeadingSlash,\n decodePath: addLeadingSlash\n },\n slash: {\n encodePath: addLeadingSlash,\n decodePath: addLeadingSlash\n }\n};\n\nfunction stripHash(url) {\n var hashIndex = url.indexOf('#');\n return hashIndex === -1 ? url : url.slice(0, hashIndex);\n}\n\nfunction getHashPath() {\n // We can't use window.location.hash here because it's not\n // consistent across browsers - Firefox will pre-decode it!\n var href = window.location.href;\n var hashIndex = href.indexOf('#');\n return hashIndex === -1 ? '' : href.substring(hashIndex + 1);\n}\n\nfunction pushHashPath(path) {\n window.location.hash = path;\n}\n\nfunction replaceHashPath(path) {\n window.location.replace(stripHash(window.location.href) + '#' + path);\n}\n\nfunction createHashHistory(props) {\n if (props === void 0) {\n props = {};\n }\n\n !canUseDOM ? process.env.NODE_ENV !== \"production\" ? invariant(false, 'Hash history needs a DOM') : invariant(false) : void 0;\n var globalHistory = window.history;\n var canGoWithoutReload = supportsGoWithoutReloadUsingHash();\n var _props = props,\n _props$getUserConfirm = _props.getUserConfirmation,\n getUserConfirmation = _props$getUserConfirm === void 0 ? getConfirmation : _props$getUserConfirm,\n _props$hashType = _props.hashType,\n hashType = _props$hashType === void 0 ? 'slash' : _props$hashType;\n var basename = props.basename ? stripTrailingSlash(addLeadingSlash(props.basename)) : '';\n var _HashPathCoders$hashT = HashPathCoders[hashType],\n encodePath = _HashPathCoders$hashT.encodePath,\n decodePath = _HashPathCoders$hashT.decodePath;\n\n function getDOMLocation() {\n var path = decodePath(getHashPath());\n process.env.NODE_ENV !== \"production\" ? warning(!basename || hasBasename(path, basename), 'You are attempting to use a basename on a page whose URL path does not begin ' + 'with the basename. Expected path \"' + path + '\" to begin with \"' + basename + '\".') : void 0;\n if (basename) path = stripBasename(path, basename);\n return createLocation(path);\n }\n\n var transitionManager = createTransitionManager();\n\n function setState(nextState) {\n _extends(history, nextState);\n\n history.length = globalHistory.length;\n transitionManager.notifyListeners(history.location, history.action);\n }\n\n var forceNextPop = false;\n var ignorePath = null;\n\n function locationsAreEqual$$1(a, b) {\n return a.pathname === b.pathname && a.search === b.search && a.hash === b.hash;\n }\n\n function handleHashChange() {\n var path = getHashPath();\n var encodedPath = encodePath(path);\n\n if (path !== encodedPath) {\n // Ensure we always have a properly-encoded hash.\n replaceHashPath(encodedPath);\n } else {\n var location = getDOMLocation();\n var prevLocation = history.location;\n if (!forceNextPop && locationsAreEqual$$1(prevLocation, location)) return; // A hashchange doesn't always == location change.\n\n if (ignorePath === createPath(location)) return; // Ignore this change; we already setState in push/replace.\n\n ignorePath = null;\n handlePop(location);\n }\n }\n\n function handlePop(location) {\n if (forceNextPop) {\n forceNextPop = false;\n setState();\n } else {\n var action = 'POP';\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (ok) {\n setState({\n action: action,\n location: location\n });\n } else {\n revertPop(location);\n }\n });\n }\n }\n\n function revertPop(fromLocation) {\n var toLocation = history.location; // TODO: We could probably make this more reliable by\n // keeping a list of paths we've seen in sessionStorage.\n // Instead, we just default to 0 for paths we don't know.\n\n var toIndex = allPaths.lastIndexOf(createPath(toLocation));\n if (toIndex === -1) toIndex = 0;\n var fromIndex = allPaths.lastIndexOf(createPath(fromLocation));\n if (fromIndex === -1) fromIndex = 0;\n var delta = toIndex - fromIndex;\n\n if (delta) {\n forceNextPop = true;\n go(delta);\n }\n } // Ensure the hash is encoded properly before doing anything else.\n\n\n var path = getHashPath();\n var encodedPath = encodePath(path);\n if (path !== encodedPath) replaceHashPath(encodedPath);\n var initialLocation = getDOMLocation();\n var allPaths = [createPath(initialLocation)]; // Public interface\n\n function createHref(location) {\n var baseTag = document.querySelector('base');\n var href = '';\n\n if (baseTag && baseTag.getAttribute('href')) {\n href = stripHash(window.location.href);\n }\n\n return href + '#' + encodePath(basename + createPath(location));\n }\n\n function push(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(state === undefined, 'Hash history cannot push state; it is ignored') : void 0;\n var action = 'PUSH';\n var location = createLocation(path, undefined, undefined, history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n var path = createPath(location);\n var encodedPath = encodePath(basename + path);\n var hashChanged = getHashPath() !== encodedPath;\n\n if (hashChanged) {\n // We cannot tell if a hashchange was caused by a PUSH, so we'd\n // rather setState here and ignore the hashchange. The caveat here\n // is that other hash histories in the page will consider it a POP.\n ignorePath = path;\n pushHashPath(encodedPath);\n var prevIndex = allPaths.lastIndexOf(createPath(history.location));\n var nextPaths = allPaths.slice(0, prevIndex + 1);\n nextPaths.push(path);\n allPaths = nextPaths;\n setState({\n action: action,\n location: location\n });\n } else {\n process.env.NODE_ENV !== \"production\" ? warning(false, 'Hash history cannot PUSH the same path; a new entry will not be added to the history stack') : void 0;\n setState();\n }\n });\n }\n\n function replace(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(state === undefined, 'Hash history cannot replace state; it is ignored') : void 0;\n var action = 'REPLACE';\n var location = createLocation(path, undefined, undefined, history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n var path = createPath(location);\n var encodedPath = encodePath(basename + path);\n var hashChanged = getHashPath() !== encodedPath;\n\n if (hashChanged) {\n // We cannot tell if a hashchange was caused by a REPLACE, so we'd\n // rather setState here and ignore the hashchange. The caveat here\n // is that other hash histories in the page will consider it a POP.\n ignorePath = path;\n replaceHashPath(encodedPath);\n }\n\n var prevIndex = allPaths.indexOf(createPath(history.location));\n if (prevIndex !== -1) allPaths[prevIndex] = path;\n setState({\n action: action,\n location: location\n });\n });\n }\n\n function go(n) {\n process.env.NODE_ENV !== \"production\" ? warning(canGoWithoutReload, 'Hash history go(n) causes a full page reload in this browser') : void 0;\n globalHistory.go(n);\n }\n\n function goBack() {\n go(-1);\n }\n\n function goForward() {\n go(1);\n }\n\n var listenerCount = 0;\n\n function checkDOMListeners(delta) {\n listenerCount += delta;\n\n if (listenerCount === 1 && delta === 1) {\n window.addEventListener(HashChangeEvent$1, handleHashChange);\n } else if (listenerCount === 0) {\n window.removeEventListener(HashChangeEvent$1, handleHashChange);\n }\n }\n\n var isBlocked = false;\n\n function block(prompt) {\n if (prompt === void 0) {\n prompt = false;\n }\n\n var unblock = transitionManager.setPrompt(prompt);\n\n if (!isBlocked) {\n checkDOMListeners(1);\n isBlocked = true;\n }\n\n return function () {\n if (isBlocked) {\n isBlocked = false;\n checkDOMListeners(-1);\n }\n\n return unblock();\n };\n }\n\n function listen(listener) {\n var unlisten = transitionManager.appendListener(listener);\n checkDOMListeners(1);\n return function () {\n checkDOMListeners(-1);\n unlisten();\n };\n }\n\n var history = {\n length: globalHistory.length,\n action: 'POP',\n location: initialLocation,\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n goBack: goBack,\n goForward: goForward,\n block: block,\n listen: listen\n };\n return history;\n}\n\nfunction clamp(n, lowerBound, upperBound) {\n return Math.min(Math.max(n, lowerBound), upperBound);\n}\n/**\n * Creates a history object that stores locations in memory.\n */\n\n\nfunction createMemoryHistory(props) {\n if (props === void 0) {\n props = {};\n }\n\n var _props = props,\n getUserConfirmation = _props.getUserConfirmation,\n _props$initialEntries = _props.initialEntries,\n initialEntries = _props$initialEntries === void 0 ? ['/'] : _props$initialEntries,\n _props$initialIndex = _props.initialIndex,\n initialIndex = _props$initialIndex === void 0 ? 0 : _props$initialIndex,\n _props$keyLength = _props.keyLength,\n keyLength = _props$keyLength === void 0 ? 6 : _props$keyLength;\n var transitionManager = createTransitionManager();\n\n function setState(nextState) {\n _extends(history, nextState);\n\n history.length = history.entries.length;\n transitionManager.notifyListeners(history.location, history.action);\n }\n\n function createKey() {\n return Math.random().toString(36).substr(2, keyLength);\n }\n\n var index = clamp(initialIndex, 0, initialEntries.length - 1);\n var entries = initialEntries.map(function (entry) {\n return typeof entry === 'string' ? createLocation(entry, undefined, createKey()) : createLocation(entry, undefined, entry.key || createKey());\n }); // Public interface\n\n var createHref = createPath;\n\n function push(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to push when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0;\n var action = 'PUSH';\n var location = createLocation(path, state, createKey(), history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n var prevIndex = history.index;\n var nextIndex = prevIndex + 1;\n var nextEntries = history.entries.slice(0);\n\n if (nextEntries.length > nextIndex) {\n nextEntries.splice(nextIndex, nextEntries.length - nextIndex, location);\n } else {\n nextEntries.push(location);\n }\n\n setState({\n action: action,\n location: location,\n index: nextIndex,\n entries: nextEntries\n });\n });\n }\n\n function replace(path, state) {\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof path === 'object' && path.state !== undefined && state !== undefined), 'You should avoid providing a 2nd state argument to replace when the 1st ' + 'argument is a location-like object that already has state; it is ignored') : void 0;\n var action = 'REPLACE';\n var location = createLocation(path, state, createKey(), history.location);\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (!ok) return;\n history.entries[history.index] = location;\n setState({\n action: action,\n location: location\n });\n });\n }\n\n function go(n) {\n var nextIndex = clamp(history.index + n, 0, history.entries.length - 1);\n var action = 'POP';\n var location = history.entries[nextIndex];\n transitionManager.confirmTransitionTo(location, action, getUserConfirmation, function (ok) {\n if (ok) {\n setState({\n action: action,\n location: location,\n index: nextIndex\n });\n } else {\n // Mimic the behavior of DOM histories by\n // causing a render after a cancelled POP.\n setState();\n }\n });\n }\n\n function goBack() {\n go(-1);\n }\n\n function goForward() {\n go(1);\n }\n\n function canGo(n) {\n var nextIndex = history.index + n;\n return nextIndex >= 0 && nextIndex < history.entries.length;\n }\n\n function block(prompt) {\n if (prompt === void 0) {\n prompt = false;\n }\n\n return transitionManager.setPrompt(prompt);\n }\n\n function listen(listener) {\n return transitionManager.appendListener(listener);\n }\n\n var history = {\n length: entries.length,\n action: 'POP',\n location: entries[index],\n index: index,\n entries: entries,\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n goBack: goBack,\n goForward: goForward,\n canGo: canGo,\n block: block,\n listen: listen\n };\n return history;\n}\n\nexport { createBrowserHistory, createHashHistory, createMemoryHistory, createLocation, locationsAreEqual, parsePath, createPath };\n","import React, { Component } from 'react';\nimport _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport PropTypes from 'prop-types';\nimport warning from 'tiny-warning';\n\nvar MAX_SIGNED_31_BIT_INT = 1073741823;\nvar commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : {};\n\nfunction getUniqueId() {\n var key = '__global_unique_id__';\n return commonjsGlobal[key] = (commonjsGlobal[key] || 0) + 1;\n}\n\nfunction objectIs(x, y) {\n if (x === y) {\n return x !== 0 || 1 / x === 1 / y;\n } else {\n return x !== x && y !== y;\n }\n}\n\nfunction createEventEmitter(value) {\n var handlers = [];\n return {\n on: function on(handler) {\n handlers.push(handler);\n },\n off: function off(handler) {\n handlers = handlers.filter(function (h) {\n return h !== handler;\n });\n },\n get: function get() {\n return value;\n },\n set: function set(newValue, changedBits) {\n value = newValue;\n handlers.forEach(function (handler) {\n return handler(value, changedBits);\n });\n }\n };\n}\n\nfunction onlyChild(children) {\n return Array.isArray(children) ? children[0] : children;\n}\n\nfunction createReactContext(defaultValue, calculateChangedBits) {\n var _Provider$childContex, _Consumer$contextType;\n\n var contextProp = '__create-react-context-' + getUniqueId() + '__';\n\n var Provider = /*#__PURE__*/function (_Component) {\n _inheritsLoose(Provider, _Component);\n\n function Provider() {\n var _this;\n\n _this = _Component.apply(this, arguments) || this;\n _this.emitter = createEventEmitter(_this.props.value);\n return _this;\n }\n\n var _proto = Provider.prototype;\n\n _proto.getChildContext = function getChildContext() {\n var _ref;\n\n return _ref = {}, _ref[contextProp] = this.emitter, _ref;\n };\n\n _proto.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (this.props.value !== nextProps.value) {\n var oldValue = this.props.value;\n var newValue = nextProps.value;\n var changedBits;\n\n if (objectIs(oldValue, newValue)) {\n changedBits = 0;\n } else {\n changedBits = typeof calculateChangedBits === 'function' ? calculateChangedBits(oldValue, newValue) : MAX_SIGNED_31_BIT_INT;\n\n if (process.env.NODE_ENV !== 'production') {\n warning((changedBits & MAX_SIGNED_31_BIT_INT) === changedBits, 'calculateChangedBits: Expected the return value to be a ' + '31-bit integer. Instead received: ' + changedBits);\n }\n\n changedBits |= 0;\n\n if (changedBits !== 0) {\n this.emitter.set(nextProps.value, changedBits);\n }\n }\n }\n };\n\n _proto.render = function render() {\n return this.props.children;\n };\n\n return Provider;\n }(Component);\n\n Provider.childContextTypes = (_Provider$childContex = {}, _Provider$childContex[contextProp] = PropTypes.object.isRequired, _Provider$childContex);\n\n var Consumer = /*#__PURE__*/function (_Component2) {\n _inheritsLoose(Consumer, _Component2);\n\n function Consumer() {\n var _this2;\n\n _this2 = _Component2.apply(this, arguments) || this;\n _this2.state = {\n value: _this2.getValue()\n };\n\n _this2.onUpdate = function (newValue, changedBits) {\n var observedBits = _this2.observedBits | 0;\n\n if ((observedBits & changedBits) !== 0) {\n _this2.setState({\n value: _this2.getValue()\n });\n }\n };\n\n return _this2;\n }\n\n var _proto2 = Consumer.prototype;\n\n _proto2.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var observedBits = nextProps.observedBits;\n this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT : observedBits;\n };\n\n _proto2.componentDidMount = function componentDidMount() {\n if (this.context[contextProp]) {\n this.context[contextProp].on(this.onUpdate);\n }\n\n var observedBits = this.props.observedBits;\n this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT : observedBits;\n };\n\n _proto2.componentWillUnmount = function componentWillUnmount() {\n if (this.context[contextProp]) {\n this.context[contextProp].off(this.onUpdate);\n }\n };\n\n _proto2.getValue = function getValue() {\n if (this.context[contextProp]) {\n return this.context[contextProp].get();\n } else {\n return defaultValue;\n }\n };\n\n _proto2.render = function render() {\n return onlyChild(this.props.children)(this.state.value);\n };\n\n return Consumer;\n }(Component);\n\n Consumer.contextTypes = (_Consumer$contextType = {}, _Consumer$contextType[contextProp] = PropTypes.object, _Consumer$contextType);\n return {\n Provider: Provider,\n Consumer: Consumer\n };\n}\n\nvar index = React.createContext || createReactContext;\n\nexport default index;\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}","import _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { createMemoryHistory, createLocation, locationsAreEqual, createPath } from 'history';\nimport warning from 'tiny-warning';\nimport createContext from 'mini-create-react-context';\nimport invariant from 'tiny-invariant';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport pathToRegexp from 'path-to-regexp';\nimport { isValidElementType } from 'react-is';\nimport _objectWithoutPropertiesLoose from '@babel/runtime/helpers/esm/objectWithoutPropertiesLoose';\nimport hoistStatics from 'hoist-non-react-statics';\n\n// TODO: Replace with React.createContext once we can assume React 16+\n\nvar createNamedContext = function createNamedContext(name) {\n var context = createContext();\n context.displayName = name;\n return context;\n};\n\nvar historyContext = /*#__PURE__*/createNamedContext(\"Router-History\");\n\nvar context = /*#__PURE__*/createNamedContext(\"Router\");\n\n/**\n * The public API for putting history on context.\n */\n\nvar Router = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Router, _React$Component);\n\n Router.computeRootMatch = function computeRootMatch(pathname) {\n return {\n path: \"/\",\n url: \"/\",\n params: {},\n isExact: pathname === \"/\"\n };\n };\n\n function Router(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this;\n _this.state = {\n location: props.history.location\n }; // This is a bit of a hack. We have to start listening for location\n // changes here in the constructor in case there are any <Redirect>s\n // on the initial render. If there are, they will replace/push when\n // they mount and since cDM fires in children before parents, we may\n // get a new location before the <Router> is mounted.\n\n _this._isMounted = false;\n _this._pendingLocation = null;\n\n if (!props.staticContext) {\n _this.unlisten = props.history.listen(function (location) {\n _this._pendingLocation = location;\n });\n }\n\n return _this;\n }\n\n var _proto = Router.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n this._isMounted = true;\n\n if (this.unlisten) {\n // Any pre-mount location changes have been captured at\n // this point, so unregister the listener.\n this.unlisten();\n }\n\n if (!this.props.staticContext) {\n this.unlisten = this.props.history.listen(function (location) {\n if (_this2._isMounted) {\n _this2.setState({\n location: location\n });\n }\n });\n }\n\n if (this._pendingLocation) {\n this.setState({\n location: this._pendingLocation\n });\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (this.unlisten) {\n this.unlisten();\n this._isMounted = false;\n this._pendingLocation = null;\n }\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(context.Provider, {\n value: {\n history: this.props.history,\n location: this.state.location,\n match: Router.computeRootMatch(this.state.location.pathname),\n staticContext: this.props.staticContext\n }\n }, /*#__PURE__*/React.createElement(historyContext.Provider, {\n children: this.props.children || null,\n value: this.props.history\n }));\n };\n\n return Router;\n}(React.Component);\n\nif (process.env.NODE_ENV !== \"production\") {\n Router.propTypes = {\n children: PropTypes.node,\n history: PropTypes.object.isRequired,\n staticContext: PropTypes.object\n };\n\n Router.prototype.componentDidUpdate = function (prevProps) {\n process.env.NODE_ENV !== \"production\" ? warning(prevProps.history === this.props.history, \"You cannot change <Router history>\") : void 0;\n };\n}\n\n/**\n * The public API for a <Router> that stores location in memory.\n */\n\nvar MemoryRouter = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(MemoryRouter, _React$Component);\n\n function MemoryRouter() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this.history = createMemoryHistory(_this.props);\n return _this;\n }\n\n var _proto = MemoryRouter.prototype;\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(Router, {\n history: this.history,\n children: this.props.children\n });\n };\n\n return MemoryRouter;\n}(React.Component);\n\nif (process.env.NODE_ENV !== \"production\") {\n MemoryRouter.propTypes = {\n initialEntries: PropTypes.array,\n initialIndex: PropTypes.number,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number,\n children: PropTypes.node\n };\n\n MemoryRouter.prototype.componentDidMount = function () {\n process.env.NODE_ENV !== \"production\" ? warning(!this.props.history, \"<MemoryRouter> ignores the history prop. To use a custom history, \" + \"use `import { Router }` instead of `import { MemoryRouter as Router }`.\") : void 0;\n };\n}\n\nvar Lifecycle = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Lifecycle, _React$Component);\n\n function Lifecycle() {\n return _React$Component.apply(this, arguments) || this;\n }\n\n var _proto = Lifecycle.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n if (this.props.onMount) this.props.onMount.call(this, this);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n if (this.props.onUpdate) this.props.onUpdate.call(this, this, prevProps);\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (this.props.onUnmount) this.props.onUnmount.call(this, this);\n };\n\n _proto.render = function render() {\n return null;\n };\n\n return Lifecycle;\n}(React.Component);\n\n/**\n * The public API for prompting the user before navigating away from a screen.\n */\n\nfunction Prompt(_ref) {\n var message = _ref.message,\n _ref$when = _ref.when,\n when = _ref$when === void 0 ? true : _ref$when;\n return /*#__PURE__*/React.createElement(context.Consumer, null, function (context) {\n !context ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You should not use <Prompt> outside a <Router>\") : invariant(false) : void 0;\n if (!when || context.staticContext) return null;\n var method = context.history.block;\n return /*#__PURE__*/React.createElement(Lifecycle, {\n onMount: function onMount(self) {\n self.release = method(message);\n },\n onUpdate: function onUpdate(self, prevProps) {\n if (prevProps.message !== message) {\n self.release();\n self.release = method(message);\n }\n },\n onUnmount: function onUnmount(self) {\n self.release();\n },\n message: message\n });\n });\n}\n\nif (process.env.NODE_ENV !== \"production\") {\n var messageType = PropTypes.oneOfType([PropTypes.func, PropTypes.string]);\n Prompt.propTypes = {\n when: PropTypes.bool,\n message: messageType.isRequired\n };\n}\n\nvar cache = {};\nvar cacheLimit = 10000;\nvar cacheCount = 0;\n\nfunction compilePath(path) {\n if (cache[path]) return cache[path];\n var generator = pathToRegexp.compile(path);\n\n if (cacheCount < cacheLimit) {\n cache[path] = generator;\n cacheCount++;\n }\n\n return generator;\n}\n/**\n * Public API for generating a URL pathname from a path and parameters.\n */\n\n\nfunction generatePath(path, params) {\n if (path === void 0) {\n path = \"/\";\n }\n\n if (params === void 0) {\n params = {};\n }\n\n return path === \"/\" ? path : compilePath(path)(params, {\n pretty: true\n });\n}\n\n/**\n * The public API for navigating programmatically with a component.\n */\n\nfunction Redirect(_ref) {\n var computedMatch = _ref.computedMatch,\n to = _ref.to,\n _ref$push = _ref.push,\n push = _ref$push === void 0 ? false : _ref$push;\n return /*#__PURE__*/React.createElement(context.Consumer, null, function (context) {\n !context ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You should not use <Redirect> outside a <Router>\") : invariant(false) : void 0;\n var history = context.history,\n staticContext = context.staticContext;\n var method = push ? history.push : history.replace;\n var location = createLocation(computedMatch ? typeof to === \"string\" ? generatePath(to, computedMatch.params) : _extends({}, to, {\n pathname: generatePath(to.pathname, computedMatch.params)\n }) : to); // When rendering in a static context,\n // set the new location immediately.\n\n if (staticContext) {\n method(location);\n return null;\n }\n\n return /*#__PURE__*/React.createElement(Lifecycle, {\n onMount: function onMount() {\n method(location);\n },\n onUpdate: function onUpdate(self, prevProps) {\n var prevLocation = createLocation(prevProps.to);\n\n if (!locationsAreEqual(prevLocation, _extends({}, location, {\n key: prevLocation.key\n }))) {\n method(location);\n }\n },\n to: to\n });\n });\n}\n\nif (process.env.NODE_ENV !== \"production\") {\n Redirect.propTypes = {\n push: PropTypes.bool,\n from: PropTypes.string,\n to: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired\n };\n}\n\nvar cache$1 = {};\nvar cacheLimit$1 = 10000;\nvar cacheCount$1 = 0;\n\nfunction compilePath$1(path, options) {\n var cacheKey = \"\" + options.end + options.strict + options.sensitive;\n var pathCache = cache$1[cacheKey] || (cache$1[cacheKey] = {});\n if (pathCache[path]) return pathCache[path];\n var keys = [];\n var regexp = pathToRegexp(path, keys, options);\n var result = {\n regexp: regexp,\n keys: keys\n };\n\n if (cacheCount$1 < cacheLimit$1) {\n pathCache[path] = result;\n cacheCount$1++;\n }\n\n return result;\n}\n/**\n * Public API for matching a URL pathname to a path.\n */\n\n\nfunction matchPath(pathname, options) {\n if (options === void 0) {\n options = {};\n }\n\n if (typeof options === \"string\" || Array.isArray(options)) {\n options = {\n path: options\n };\n }\n\n var _options = options,\n path = _options.path,\n _options$exact = _options.exact,\n exact = _options$exact === void 0 ? false : _options$exact,\n _options$strict = _options.strict,\n strict = _options$strict === void 0 ? false : _options$strict,\n _options$sensitive = _options.sensitive,\n sensitive = _options$sensitive === void 0 ? false : _options$sensitive;\n var paths = [].concat(path);\n return paths.reduce(function (matched, path) {\n if (!path && path !== \"\") return null;\n if (matched) return matched;\n\n var _compilePath = compilePath$1(path, {\n end: exact,\n strict: strict,\n sensitive: sensitive\n }),\n regexp = _compilePath.regexp,\n keys = _compilePath.keys;\n\n var match = regexp.exec(pathname);\n if (!match) return null;\n var url = match[0],\n values = match.slice(1);\n var isExact = pathname === url;\n if (exact && !isExact) return null;\n return {\n path: path,\n // the path used to match\n url: path === \"/\" && url === \"\" ? \"/\" : url,\n // the matched portion of the URL\n isExact: isExact,\n // whether or not we matched exactly\n params: keys.reduce(function (memo, key, index) {\n memo[key.name] = values[index];\n return memo;\n }, {})\n };\n }, null);\n}\n\nfunction isEmptyChildren(children) {\n return React.Children.count(children) === 0;\n}\n\nfunction evalChildrenDev(children, props, path) {\n var value = children(props);\n process.env.NODE_ENV !== \"production\" ? warning(value !== undefined, \"You returned `undefined` from the `children` function of \" + (\"<Route\" + (path ? \" path=\\\"\" + path + \"\\\"\" : \"\") + \">, but you \") + \"should have returned a React element or `null`\") : void 0;\n return value || null;\n}\n/**\n * The public API for matching a single path and rendering.\n */\n\n\nvar Route = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Route, _React$Component);\n\n function Route() {\n return _React$Component.apply(this, arguments) || this;\n }\n\n var _proto = Route.prototype;\n\n _proto.render = function render() {\n var _this = this;\n\n return /*#__PURE__*/React.createElement(context.Consumer, null, function (context$1) {\n !context$1 ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You should not use <Route> outside a <Router>\") : invariant(false) : void 0;\n var location = _this.props.location || context$1.location;\n var match = _this.props.computedMatch ? _this.props.computedMatch // <Switch> already computed the match for us\n : _this.props.path ? matchPath(location.pathname, _this.props) : context$1.match;\n\n var props = _extends({}, context$1, {\n location: location,\n match: match\n });\n\n var _this$props = _this.props,\n children = _this$props.children,\n component = _this$props.component,\n render = _this$props.render; // Preact uses an empty array as children by\n // default, so use null if that's the case.\n\n if (Array.isArray(children) && isEmptyChildren(children)) {\n children = null;\n }\n\n return /*#__PURE__*/React.createElement(context.Provider, {\n value: props\n }, props.match ? children ? typeof children === \"function\" ? process.env.NODE_ENV !== \"production\" ? evalChildrenDev(children, props, _this.props.path) : children(props) : children : component ? /*#__PURE__*/React.createElement(component, props) : render ? render(props) : null : typeof children === \"function\" ? process.env.NODE_ENV !== \"production\" ? evalChildrenDev(children, props, _this.props.path) : children(props) : null);\n });\n };\n\n return Route;\n}(React.Component);\n\nif (process.env.NODE_ENV !== \"production\") {\n Route.propTypes = {\n children: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n component: function component(props, propName) {\n if (props[propName] && !isValidElementType(props[propName])) {\n return new Error(\"Invalid prop 'component' supplied to 'Route': the prop is not a valid React component\");\n }\n },\n exact: PropTypes.bool,\n location: PropTypes.object,\n path: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n render: PropTypes.func,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool\n };\n\n Route.prototype.componentDidMount = function () {\n process.env.NODE_ENV !== \"production\" ? warning(!(this.props.children && !isEmptyChildren(this.props.children) && this.props.component), \"You should not use <Route component> and <Route children> in the same route; <Route component> will be ignored\") : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!(this.props.children && !isEmptyChildren(this.props.children) && this.props.render), \"You should not use <Route render> and <Route children> in the same route; <Route render> will be ignored\") : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!(this.props.component && this.props.render), \"You should not use <Route component> and <Route render> in the same route; <Route render> will be ignored\") : void 0;\n };\n\n Route.prototype.componentDidUpdate = function (prevProps) {\n process.env.NODE_ENV !== \"production\" ? warning(!(this.props.location && !prevProps.location), '<Route> elements should not change from uncontrolled to controlled (or vice versa). You initially used no \"location\" prop and then provided one on a subsequent render.') : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!(!this.props.location && prevProps.location), '<Route> elements should not change from controlled to uncontrolled (or vice versa). You provided a \"location\" prop initially but omitted it on a subsequent render.') : void 0;\n };\n}\n\nfunction addLeadingSlash(path) {\n return path.charAt(0) === \"/\" ? path : \"/\" + path;\n}\n\nfunction addBasename(basename, location) {\n if (!basename) return location;\n return _extends({}, location, {\n pathname: addLeadingSlash(basename) + location.pathname\n });\n}\n\nfunction stripBasename(basename, location) {\n if (!basename) return location;\n var base = addLeadingSlash(basename);\n if (location.pathname.indexOf(base) !== 0) return location;\n return _extends({}, location, {\n pathname: location.pathname.substr(base.length)\n });\n}\n\nfunction createURL(location) {\n return typeof location === \"string\" ? location : createPath(location);\n}\n\nfunction staticHandler(methodName) {\n return function () {\n process.env.NODE_ENV !== \"production\" ? invariant(false, \"You cannot %s with <StaticRouter>\", methodName) : invariant(false) ;\n };\n}\n\nfunction noop() {}\n/**\n * The public top-level API for a \"static\" <Router>, so-called because it\n * can't actually change the current location. Instead, it just records\n * location changes in a context object. Useful mainly in testing and\n * server-rendering scenarios.\n */\n\n\nvar StaticRouter = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(StaticRouter, _React$Component);\n\n function StaticRouter() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n\n _this.handlePush = function (location) {\n return _this.navigateTo(location, \"PUSH\");\n };\n\n _this.handleReplace = function (location) {\n return _this.navigateTo(location, \"REPLACE\");\n };\n\n _this.handleListen = function () {\n return noop;\n };\n\n _this.handleBlock = function () {\n return noop;\n };\n\n return _this;\n }\n\n var _proto = StaticRouter.prototype;\n\n _proto.navigateTo = function navigateTo(location, action) {\n var _this$props = this.props,\n _this$props$basename = _this$props.basename,\n basename = _this$props$basename === void 0 ? \"\" : _this$props$basename,\n _this$props$context = _this$props.context,\n context = _this$props$context === void 0 ? {} : _this$props$context;\n context.action = action;\n context.location = addBasename(basename, createLocation(location));\n context.url = createURL(context.location);\n };\n\n _proto.render = function render() {\n var _this$props2 = this.props,\n _this$props2$basename = _this$props2.basename,\n basename = _this$props2$basename === void 0 ? \"\" : _this$props2$basename,\n _this$props2$context = _this$props2.context,\n context = _this$props2$context === void 0 ? {} : _this$props2$context,\n _this$props2$location = _this$props2.location,\n location = _this$props2$location === void 0 ? \"/\" : _this$props2$location,\n rest = _objectWithoutPropertiesLoose(_this$props2, [\"basename\", \"context\", \"location\"]);\n\n var history = {\n createHref: function createHref(path) {\n return addLeadingSlash(basename + createURL(path));\n },\n action: \"POP\",\n location: stripBasename(basename, createLocation(location)),\n push: this.handlePush,\n replace: this.handleReplace,\n go: staticHandler(\"go\"),\n goBack: staticHandler(\"goBack\"),\n goForward: staticHandler(\"goForward\"),\n listen: this.handleListen,\n block: this.handleBlock\n };\n return /*#__PURE__*/React.createElement(Router, _extends({}, rest, {\n history: history,\n staticContext: context\n }));\n };\n\n return StaticRouter;\n}(React.Component);\n\nif (process.env.NODE_ENV !== \"production\") {\n StaticRouter.propTypes = {\n basename: PropTypes.string,\n context: PropTypes.object,\n location: PropTypes.oneOfType([PropTypes.string, PropTypes.object])\n };\n\n StaticRouter.prototype.componentDidMount = function () {\n process.env.NODE_ENV !== \"production\" ? warning(!this.props.history, \"<StaticRouter> ignores the history prop. To use a custom history, \" + \"use `import { Router }` instead of `import { StaticRouter as Router }`.\") : void 0;\n };\n}\n\n/**\n * The public API for rendering the first <Route> that matches.\n */\n\nvar Switch = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Switch, _React$Component);\n\n function Switch() {\n return _React$Component.apply(this, arguments) || this;\n }\n\n var _proto = Switch.prototype;\n\n _proto.render = function render() {\n var _this = this;\n\n return /*#__PURE__*/React.createElement(context.Consumer, null, function (context) {\n !context ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You should not use <Switch> outside a <Router>\") : invariant(false) : void 0;\n var location = _this.props.location || context.location;\n var element, match; // We use React.Children.forEach instead of React.Children.toArray().find()\n // here because toArray adds keys to all child elements and we do not want\n // to trigger an unmount/remount for two <Route>s that render the same\n // component at different URLs.\n\n React.Children.forEach(_this.props.children, function (child) {\n if (match == null && /*#__PURE__*/React.isValidElement(child)) {\n element = child;\n var path = child.props.path || child.props.from;\n match = path ? matchPath(location.pathname, _extends({}, child.props, {\n path: path\n })) : context.match;\n }\n });\n return match ? /*#__PURE__*/React.cloneElement(element, {\n location: location,\n computedMatch: match\n }) : null;\n });\n };\n\n return Switch;\n}(React.Component);\n\nif (process.env.NODE_ENV !== \"production\") {\n Switch.propTypes = {\n children: PropTypes.node,\n location: PropTypes.object\n };\n\n Switch.prototype.componentDidUpdate = function (prevProps) {\n process.env.NODE_ENV !== \"production\" ? warning(!(this.props.location && !prevProps.location), '<Switch> elements should not change from uncontrolled to controlled (or vice versa). You initially used no \"location\" prop and then provided one on a subsequent render.') : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!(!this.props.location && prevProps.location), '<Switch> elements should not change from controlled to uncontrolled (or vice versa). You provided a \"location\" prop initially but omitted it on a subsequent render.') : void 0;\n };\n}\n\n/**\n * A public higher-order component to access the imperative API\n */\n\nfunction withRouter(Component) {\n var displayName = \"withRouter(\" + (Component.displayName || Component.name) + \")\";\n\n var C = function C(props) {\n var wrappedComponentRef = props.wrappedComponentRef,\n remainingProps = _objectWithoutPropertiesLoose(props, [\"wrappedComponentRef\"]);\n\n return /*#__PURE__*/React.createElement(context.Consumer, null, function (context) {\n !context ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You should not use <\" + displayName + \" /> outside a <Router>\") : invariant(false) : void 0;\n return /*#__PURE__*/React.createElement(Component, _extends({}, remainingProps, context, {\n ref: wrappedComponentRef\n }));\n });\n };\n\n C.displayName = displayName;\n C.WrappedComponent = Component;\n\n if (process.env.NODE_ENV !== \"production\") {\n C.propTypes = {\n wrappedComponentRef: PropTypes.oneOfType([PropTypes.string, PropTypes.func, PropTypes.object])\n };\n }\n\n return hoistStatics(C, Component);\n}\n\nvar useContext = React.useContext;\nfunction useHistory() {\n if (process.env.NODE_ENV !== \"production\") {\n !(typeof useContext === \"function\") ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You must use React >= 16.8 in order to use useHistory()\") : invariant(false) : void 0;\n }\n\n return useContext(historyContext);\n}\nfunction useLocation() {\n if (process.env.NODE_ENV !== \"production\") {\n !(typeof useContext === \"function\") ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You must use React >= 16.8 in order to use useLocation()\") : invariant(false) : void 0;\n }\n\n return useContext(context).location;\n}\nfunction useParams() {\n if (process.env.NODE_ENV !== \"production\") {\n !(typeof useContext === \"function\") ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You must use React >= 16.8 in order to use useParams()\") : invariant(false) : void 0;\n }\n\n var match = useContext(context).match;\n return match ? match.params : {};\n}\nfunction useRouteMatch(path) {\n if (process.env.NODE_ENV !== \"production\") {\n !(typeof useContext === \"function\") ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You must use React >= 16.8 in order to use useRouteMatch()\") : invariant(false) : void 0;\n }\n\n var location = useLocation();\n var match = useContext(context).match;\n return path ? matchPath(location.pathname, path) : match;\n}\n\nif (process.env.NODE_ENV !== \"production\") {\n if (typeof window !== \"undefined\") {\n var global = window;\n var key = \"__react_router_build__\";\n var buildNames = {\n cjs: \"CommonJS\",\n esm: \"ES modules\",\n umd: \"UMD\"\n };\n\n if (global[key] && global[key] !== \"esm\") {\n var initialBuildName = buildNames[global[key]];\n var secondaryBuildName = buildNames[\"esm\"]; // TODO: Add link to article that explains in detail how to avoid\n // loading 2 different builds.\n\n throw new Error(\"You are loading the \" + secondaryBuildName + \" build of React Router \" + (\"on a page that is already running the \" + initialBuildName + \" \") + \"build, so things won't work right.\");\n }\n\n global[key] = \"esm\";\n }\n}\n\nexport { MemoryRouter, Prompt, Redirect, Route, Router, StaticRouter, Switch, historyContext as __HistoryContext, context as __RouterContext, generatePath, matchPath, useHistory, useLocation, useParams, useRouteMatch, withRouter };\n//# sourceMappingURL=react-router.js.map\n","import { Router, __RouterContext, matchPath } from 'react-router';\nexport { MemoryRouter, Prompt, Redirect, Route, Router, StaticRouter, Switch, generatePath, matchPath, useHistory, useLocation, useParams, useRouteMatch, withRouter } from 'react-router';\nimport _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport React from 'react';\nimport { createBrowserHistory, createHashHistory, createLocation, createPath } from 'history';\nimport PropTypes from 'prop-types';\nimport warning from 'tiny-warning';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutPropertiesLoose from '@babel/runtime/helpers/esm/objectWithoutPropertiesLoose';\nimport invariant from 'tiny-invariant';\n\n/**\n * The public API for a <Router> that uses HTML5 history.\n */\n\nvar BrowserRouter = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(BrowserRouter, _React$Component);\n\n function BrowserRouter() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this.history = createBrowserHistory(_this.props);\n return _this;\n }\n\n var _proto = BrowserRouter.prototype;\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(Router, {\n history: this.history,\n children: this.props.children\n });\n };\n\n return BrowserRouter;\n}(React.Component);\n\nif (process.env.NODE_ENV !== \"production\") {\n BrowserRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n forceRefresh: PropTypes.bool,\n getUserConfirmation: PropTypes.func,\n keyLength: PropTypes.number\n };\n\n BrowserRouter.prototype.componentDidMount = function () {\n process.env.NODE_ENV !== \"production\" ? warning(!this.props.history, \"<BrowserRouter> ignores the history prop. To use a custom history, \" + \"use `import { Router }` instead of `import { BrowserRouter as Router }`.\") : void 0;\n };\n}\n\n/**\n * The public API for a <Router> that uses window.location.hash.\n */\n\nvar HashRouter = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(HashRouter, _React$Component);\n\n function HashRouter() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this.history = createHashHistory(_this.props);\n return _this;\n }\n\n var _proto = HashRouter.prototype;\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(Router, {\n history: this.history,\n children: this.props.children\n });\n };\n\n return HashRouter;\n}(React.Component);\n\nif (process.env.NODE_ENV !== \"production\") {\n HashRouter.propTypes = {\n basename: PropTypes.string,\n children: PropTypes.node,\n getUserConfirmation: PropTypes.func,\n hashType: PropTypes.oneOf([\"hashbang\", \"noslash\", \"slash\"])\n };\n\n HashRouter.prototype.componentDidMount = function () {\n process.env.NODE_ENV !== \"production\" ? warning(!this.props.history, \"<HashRouter> ignores the history prop. To use a custom history, \" + \"use `import { Router }` instead of `import { HashRouter as Router }`.\") : void 0;\n };\n}\n\nvar resolveToLocation = function resolveToLocation(to, currentLocation) {\n return typeof to === \"function\" ? to(currentLocation) : to;\n};\nvar normalizeToLocation = function normalizeToLocation(to, currentLocation) {\n return typeof to === \"string\" ? createLocation(to, null, null, currentLocation) : to;\n};\n\nvar forwardRefShim = function forwardRefShim(C) {\n return C;\n};\n\nvar forwardRef = React.forwardRef;\n\nif (typeof forwardRef === \"undefined\") {\n forwardRef = forwardRefShim;\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\nvar LinkAnchor = forwardRef(function (_ref, forwardedRef) {\n var innerRef = _ref.innerRef,\n navigate = _ref.navigate,\n _onClick = _ref.onClick,\n rest = _objectWithoutPropertiesLoose(_ref, [\"innerRef\", \"navigate\", \"onClick\"]);\n\n var target = rest.target;\n\n var props = _extends({}, rest, {\n onClick: function onClick(event) {\n try {\n if (_onClick) _onClick(event);\n } catch (ex) {\n event.preventDefault();\n throw ex;\n }\n\n if (!event.defaultPrevented && // onClick prevented default\n event.button === 0 && ( // ignore everything but left clicks\n !target || target === \"_self\") && // let browser handle \"target=_blank\" etc.\n !isModifiedEvent(event) // ignore clicks with modifier keys\n ) {\n event.preventDefault();\n navigate();\n }\n }\n }); // React 15 compat\n\n\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.ref = innerRef;\n }\n /* eslint-disable-next-line jsx-a11y/anchor-has-content */\n\n\n return /*#__PURE__*/React.createElement(\"a\", props);\n});\n\nif (process.env.NODE_ENV !== \"production\") {\n LinkAnchor.displayName = \"LinkAnchor\";\n}\n/**\n * The public API for rendering a history-aware <a>.\n */\n\n\nvar Link = forwardRef(function (_ref2, forwardedRef) {\n var _ref2$component = _ref2.component,\n component = _ref2$component === void 0 ? LinkAnchor : _ref2$component,\n replace = _ref2.replace,\n to = _ref2.to,\n innerRef = _ref2.innerRef,\n rest = _objectWithoutPropertiesLoose(_ref2, [\"component\", \"replace\", \"to\", \"innerRef\"]);\n\n return /*#__PURE__*/React.createElement(__RouterContext.Consumer, null, function (context) {\n !context ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You should not use <Link> outside a <Router>\") : invariant(false) : void 0;\n var history = context.history;\n var location = normalizeToLocation(resolveToLocation(to, context.location), context.location);\n var href = location ? history.createHref(location) : \"\";\n\n var props = _extends({}, rest, {\n href: href,\n navigate: function navigate() {\n var location = resolveToLocation(to, context.location);\n var isDuplicateNavigation = createPath(context.location) === createPath(normalizeToLocation(location));\n var method = replace || isDuplicateNavigation ? history.replace : history.push;\n method(location);\n }\n }); // React 15 compat\n\n\n if (forwardRefShim !== forwardRef) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return /*#__PURE__*/React.createElement(component, props);\n });\n});\n\nif (process.env.NODE_ENV !== \"production\") {\n var toType = PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.func]);\n var refType = PropTypes.oneOfType([PropTypes.string, PropTypes.func, PropTypes.shape({\n current: PropTypes.any\n })]);\n Link.displayName = \"Link\";\n Link.propTypes = {\n innerRef: refType,\n onClick: PropTypes.func,\n replace: PropTypes.bool,\n target: PropTypes.string,\n to: toType.isRequired\n };\n}\n\nvar forwardRefShim$1 = function forwardRefShim(C) {\n return C;\n};\n\nvar forwardRef$1 = React.forwardRef;\n\nif (typeof forwardRef$1 === \"undefined\") {\n forwardRef$1 = forwardRefShim$1;\n}\n\nfunction joinClassnames() {\n for (var _len = arguments.length, classnames = new Array(_len), _key = 0; _key < _len; _key++) {\n classnames[_key] = arguments[_key];\n }\n\n return classnames.filter(function (i) {\n return i;\n }).join(\" \");\n}\n/**\n * A <Link> wrapper that knows if it's \"active\" or not.\n */\n\n\nvar NavLink = forwardRef$1(function (_ref, forwardedRef) {\n var _ref$ariaCurrent = _ref[\"aria-current\"],\n ariaCurrent = _ref$ariaCurrent === void 0 ? \"page\" : _ref$ariaCurrent,\n _ref$activeClassName = _ref.activeClassName,\n activeClassName = _ref$activeClassName === void 0 ? \"active\" : _ref$activeClassName,\n activeStyle = _ref.activeStyle,\n classNameProp = _ref.className,\n exact = _ref.exact,\n isActiveProp = _ref.isActive,\n locationProp = _ref.location,\n sensitive = _ref.sensitive,\n strict = _ref.strict,\n styleProp = _ref.style,\n to = _ref.to,\n innerRef = _ref.innerRef,\n rest = _objectWithoutPropertiesLoose(_ref, [\"aria-current\", \"activeClassName\", \"activeStyle\", \"className\", \"exact\", \"isActive\", \"location\", \"sensitive\", \"strict\", \"style\", \"to\", \"innerRef\"]);\n\n return /*#__PURE__*/React.createElement(__RouterContext.Consumer, null, function (context) {\n !context ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You should not use <NavLink> outside a <Router>\") : invariant(false) : void 0;\n var currentLocation = locationProp || context.location;\n var toLocation = normalizeToLocation(resolveToLocation(to, currentLocation), currentLocation);\n var path = toLocation.pathname; // Regex taken from: https://github.com/pillarjs/path-to-regexp/blob/master/index.js#L202\n\n var escapedPath = path && path.replace(/([.+*?=^!:${}()[\\]|/\\\\])/g, \"\\\\$1\");\n var match = escapedPath ? matchPath(currentLocation.pathname, {\n path: escapedPath,\n exact: exact,\n sensitive: sensitive,\n strict: strict\n }) : null;\n var isActive = !!(isActiveProp ? isActiveProp(match, currentLocation) : match);\n var className = typeof classNameProp === \"function\" ? classNameProp(isActive) : classNameProp;\n var style = typeof styleProp === \"function\" ? styleProp(isActive) : styleProp;\n\n if (isActive) {\n className = joinClassnames(className, activeClassName);\n style = _extends({}, style, activeStyle);\n }\n\n var props = _extends({\n \"aria-current\": isActive && ariaCurrent || null,\n className: className,\n style: style,\n to: toLocation\n }, rest); // React 15 compat\n\n\n if (forwardRefShim$1 !== forwardRef$1) {\n props.ref = forwardedRef || innerRef;\n } else {\n props.innerRef = innerRef;\n }\n\n return /*#__PURE__*/React.createElement(Link, props);\n });\n});\n\nif (process.env.NODE_ENV !== \"production\") {\n NavLink.displayName = \"NavLink\";\n var ariaCurrentType = PropTypes.oneOf([\"page\", \"step\", \"location\", \"date\", \"time\", \"true\", \"false\"]);\n NavLink.propTypes = _extends({}, Link.propTypes, {\n \"aria-current\": ariaCurrentType,\n activeClassName: PropTypes.string,\n activeStyle: PropTypes.object,\n className: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n exact: PropTypes.bool,\n isActive: PropTypes.func,\n location: PropTypes.object,\n sensitive: PropTypes.bool,\n strict: PropTypes.bool,\n style: PropTypes.oneOfType([PropTypes.object, PropTypes.func])\n });\n}\n\nexport { BrowserRouter, HashRouter, Link, NavLink };\n//# sourceMappingURL=react-router-dom.js.map\n","import React from 'react';\nexport var ReactReduxContext = /*#__PURE__*/React.createContext(null);\n\nif (process.env.NODE_ENV !== 'production') {\n ReactReduxContext.displayName = 'ReactRedux';\n}\n\nexport default ReactReduxContext;","// Default to a dummy \"batch\" implementation that just runs the callback\nfunction defaultNoopBatch(callback) {\n callback();\n}\n\nvar batch = defaultNoopBatch; // Allow injecting another batching function later\n\nexport var setBatch = function setBatch(newBatch) {\n return batch = newBatch;\n}; // Supply a getter just to skip dealing with ESM bindings\n\nexport var getBatch = function getBatch() {\n return batch;\n};","import { getBatch } from './batch'; // encapsulates the subscription logic for connecting a component to the redux store, as\n// well as nesting subscriptions of descendant components, so that we can ensure the\n// ancestor components re-render before descendants\n\nfunction createListenerCollection() {\n var batch = getBatch();\n var first = null;\n var last = null;\n return {\n clear: function clear() {\n first = null;\n last = null;\n },\n notify: function notify() {\n batch(function () {\n var listener = first;\n\n while (listener) {\n listener.callback();\n listener = listener.next;\n }\n });\n },\n get: function get() {\n var listeners = [];\n var listener = first;\n\n while (listener) {\n listeners.push(listener);\n listener = listener.next;\n }\n\n return listeners;\n },\n subscribe: function subscribe(callback) {\n var isSubscribed = true;\n var listener = last = {\n callback: callback,\n next: null,\n prev: last\n };\n\n if (listener.prev) {\n listener.prev.next = listener;\n } else {\n first = listener;\n }\n\n return function unsubscribe() {\n if (!isSubscribed || first === null) return;\n isSubscribed = false;\n\n if (listener.next) {\n listener.next.prev = listener.prev;\n } else {\n last = listener.prev;\n }\n\n if (listener.prev) {\n listener.prev.next = listener.next;\n } else {\n first = listener.next;\n }\n };\n }\n };\n}\n\nvar nullListeners = {\n notify: function notify() {},\n get: function get() {\n return [];\n }\n};\nexport function createSubscription(store, parentSub) {\n var unsubscribe;\n var listeners = nullListeners;\n\n function addNestedSub(listener) {\n trySubscribe();\n return listeners.subscribe(listener);\n }\n\n function notifyNestedSubs() {\n listeners.notify();\n }\n\n function handleChangeWrapper() {\n if (subscription.onStateChange) {\n subscription.onStateChange();\n }\n }\n\n function isSubscribed() {\n return Boolean(unsubscribe);\n }\n\n function trySubscribe() {\n if (!unsubscribe) {\n unsubscribe = parentSub ? parentSub.addNestedSub(handleChangeWrapper) : store.subscribe(handleChangeWrapper);\n listeners = createListenerCollection();\n }\n }\n\n function tryUnsubscribe() {\n if (unsubscribe) {\n unsubscribe();\n unsubscribe = undefined;\n listeners.clear();\n listeners = nullListeners;\n }\n }\n\n var subscription = {\n addNestedSub: addNestedSub,\n notifyNestedSubs: notifyNestedSubs,\n handleChangeWrapper: handleChangeWrapper,\n isSubscribed: isSubscribed,\n trySubscribe: trySubscribe,\n tryUnsubscribe: tryUnsubscribe,\n getListeners: function getListeners() {\n return listeners;\n }\n };\n return subscription;\n}","import { useEffect, useLayoutEffect } from 'react'; // React currently throws a warning when using useLayoutEffect on the server.\n// To get around it, we can conditionally useEffect on the server (no-op) and\n// useLayoutEffect in the browser. We need useLayoutEffect to ensure the store\n// subscription callback always has the selector from the latest render commit\n// available, otherwise a store update may happen between render and the effect,\n// which may cause missed updates; we also must ensure the store subscription\n// is created synchronously, otherwise a store update may occur before the\n// subscription is created and an inconsistent state may be observed\n\nexport var useIsomorphicLayoutEffect = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined' ? useLayoutEffect : useEffect;","import React, { useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport { ReactReduxContext } from './Context';\nimport { createSubscription } from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\n\nfunction Provider(_ref) {\n var store = _ref.store,\n context = _ref.context,\n children = _ref.children;\n var contextValue = useMemo(function () {\n var subscription = createSubscription(store);\n return {\n store: store,\n subscription: subscription\n };\n }, [store]);\n var previousState = useMemo(function () {\n return store.getState();\n }, [store]);\n useIsomorphicLayoutEffect(function () {\n var subscription = contextValue.subscription;\n subscription.onStateChange = subscription.notifyNestedSubs;\n subscription.trySubscribe();\n\n if (previousState !== store.getState()) {\n subscription.notifyNestedSubs();\n }\n\n return function () {\n subscription.tryUnsubscribe();\n subscription.onStateChange = null;\n };\n }, [contextValue, previousState]);\n var Context = context || ReactReduxContext;\n return /*#__PURE__*/React.createElement(Context.Provider, {\n value: contextValue\n }, children);\n}\n\nif (process.env.NODE_ENV !== 'production') {\n Provider.propTypes = {\n store: PropTypes.shape({\n subscribe: PropTypes.func.isRequired,\n dispatch: PropTypes.func.isRequired,\n getState: PropTypes.func.isRequired\n }),\n context: PropTypes.object,\n children: PropTypes.any\n };\n}\n\nexport default Provider;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"getDisplayName\", \"methodName\", \"renderCountProp\", \"shouldHandleStateChanges\", \"storeKey\", \"withRef\", \"forwardRef\", \"context\"],\n _excluded2 = [\"reactReduxForwardedRef\"];\nimport hoistStatics from 'hoist-non-react-statics';\nimport React, { useContext, useMemo, useRef, useReducer } from 'react';\nimport { isValidElementType, isContextConsumer } from 'react-is';\nimport { createSubscription } from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\nimport { ReactReduxContext } from './Context'; // Define some constant arrays just to avoid re-creating these\n\nvar EMPTY_ARRAY = [];\nvar NO_SUBSCRIPTION_ARRAY = [null, null];\n\nvar stringifyComponent = function stringifyComponent(Comp) {\n try {\n return JSON.stringify(Comp);\n } catch (err) {\n return String(Comp);\n }\n};\n\nfunction storeStateUpdatesReducer(state, action) {\n var updateCount = state[1];\n return [action.payload, updateCount + 1];\n}\n\nfunction useIsomorphicLayoutEffectWithArgs(effectFunc, effectArgs, dependencies) {\n useIsomorphicLayoutEffect(function () {\n return effectFunc.apply(void 0, effectArgs);\n }, dependencies);\n}\n\nfunction captureWrapperProps(lastWrapperProps, lastChildProps, renderIsScheduled, wrapperProps, actualChildProps, childPropsFromStoreUpdate, notifyNestedSubs) {\n // We want to capture the wrapper props and child props we used for later comparisons\n lastWrapperProps.current = wrapperProps;\n lastChildProps.current = actualChildProps;\n renderIsScheduled.current = false; // If the render was from a store update, clear out that reference and cascade the subscriber update\n\n if (childPropsFromStoreUpdate.current) {\n childPropsFromStoreUpdate.current = null;\n notifyNestedSubs();\n }\n}\n\nfunction subscribeUpdates(shouldHandleStateChanges, store, subscription, childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, childPropsFromStoreUpdate, notifyNestedSubs, forceComponentUpdateDispatch) {\n // If we're not subscribed to the store, nothing to do here\n if (!shouldHandleStateChanges) return; // Capture values for checking if and when this component unmounts\n\n var didUnsubscribe = false;\n var lastThrownError = null; // We'll run this callback every time a store subscription update propagates to this component\n\n var checkForUpdates = function checkForUpdates() {\n if (didUnsubscribe) {\n // Don't run stale listeners.\n // Redux doesn't guarantee unsubscriptions happen until next dispatch.\n return;\n }\n\n var latestStoreState = store.getState();\n var newChildProps, error;\n\n try {\n // Actually run the selector with the most recent store state and wrapper props\n // to determine what the child props should be\n newChildProps = childPropsSelector(latestStoreState, lastWrapperProps.current);\n } catch (e) {\n error = e;\n lastThrownError = e;\n }\n\n if (!error) {\n lastThrownError = null;\n } // If the child props haven't changed, nothing to do here - cascade the subscription update\n\n\n if (newChildProps === lastChildProps.current) {\n if (!renderIsScheduled.current) {\n notifyNestedSubs();\n }\n } else {\n // Save references to the new child props. Note that we track the \"child props from store update\"\n // as a ref instead of a useState/useReducer because we need a way to determine if that value has\n // been processed. If this went into useState/useReducer, we couldn't clear out the value without\n // forcing another re-render, which we don't want.\n lastChildProps.current = newChildProps;\n childPropsFromStoreUpdate.current = newChildProps;\n renderIsScheduled.current = true; // If the child props _did_ change (or we caught an error), this wrapper component needs to re-render\n\n forceComponentUpdateDispatch({\n type: 'STORE_UPDATED',\n payload: {\n error: error\n }\n });\n }\n }; // Actually subscribe to the nearest connected ancestor (or store)\n\n\n subscription.onStateChange = checkForUpdates;\n subscription.trySubscribe(); // Pull data from the store after first render in case the store has\n // changed since we began.\n\n checkForUpdates();\n\n var unsubscribeWrapper = function unsubscribeWrapper() {\n didUnsubscribe = true;\n subscription.tryUnsubscribe();\n subscription.onStateChange = null;\n\n if (lastThrownError) {\n // It's possible that we caught an error due to a bad mapState function, but the\n // parent re-rendered without this component and we're about to unmount.\n // This shouldn't happen as long as we do top-down subscriptions correctly, but\n // if we ever do those wrong, this throw will surface the error in our tests.\n // In that case, throw the error from here so it doesn't get lost.\n throw lastThrownError;\n }\n };\n\n return unsubscribeWrapper;\n}\n\nvar initStateUpdates = function initStateUpdates() {\n return [null, 0];\n};\n\nexport default function connectAdvanced(\n/*\r\n selectorFactory is a func that is responsible for returning the selector function used to\r\n compute new props from state, props, and dispatch. For example:\r\n export default connectAdvanced((dispatch, options) => (state, props) => ({\r\n thing: state.things[props.thingId],\r\n saveThing: fields => dispatch(actionCreators.saveThing(props.thingId, fields)),\r\n }))(YourComponent)\r\n Access to dispatch is provided to the factory so selectorFactories can bind actionCreators\r\n outside of their selector as an optimization. Options passed to connectAdvanced are passed to\r\n the selectorFactory, along with displayName and WrappedComponent, as the second argument.\r\n Note that selectorFactory is responsible for all caching/memoization of inbound and outbound\r\n props. Do not use connectAdvanced directly without memoizing results between calls to your\r\n selector, otherwise the Connect component will re-render on every state or props change.\r\n*/\nselectorFactory, // options object:\n_ref) {\n if (_ref === void 0) {\n _ref = {};\n }\n\n var _ref2 = _ref,\n _ref2$getDisplayName = _ref2.getDisplayName,\n getDisplayName = _ref2$getDisplayName === void 0 ? function (name) {\n return \"ConnectAdvanced(\" + name + \")\";\n } : _ref2$getDisplayName,\n _ref2$methodName = _ref2.methodName,\n methodName = _ref2$methodName === void 0 ? 'connectAdvanced' : _ref2$methodName,\n _ref2$renderCountProp = _ref2.renderCountProp,\n renderCountProp = _ref2$renderCountProp === void 0 ? undefined : _ref2$renderCountProp,\n _ref2$shouldHandleSta = _ref2.shouldHandleStateChanges,\n shouldHandleStateChanges = _ref2$shouldHandleSta === void 0 ? true : _ref2$shouldHandleSta,\n _ref2$storeKey = _ref2.storeKey,\n storeKey = _ref2$storeKey === void 0 ? 'store' : _ref2$storeKey,\n _ref2$withRef = _ref2.withRef,\n withRef = _ref2$withRef === void 0 ? false : _ref2$withRef,\n _ref2$forwardRef = _ref2.forwardRef,\n forwardRef = _ref2$forwardRef === void 0 ? false : _ref2$forwardRef,\n _ref2$context = _ref2.context,\n context = _ref2$context === void 0 ? ReactReduxContext : _ref2$context,\n connectOptions = _objectWithoutPropertiesLoose(_ref2, _excluded);\n\n if (process.env.NODE_ENV !== 'production') {\n if (renderCountProp !== undefined) {\n throw new Error(\"renderCountProp is removed. render counting is built into the latest React Dev Tools profiling extension\");\n }\n\n if (withRef) {\n throw new Error('withRef is removed. To access the wrapped instance, use a ref on the connected component');\n }\n\n var customStoreWarningMessage = 'To use a custom Redux store for specific components, create a custom React context with ' + \"React.createContext(), and pass the context object to React Redux's Provider and specific components\" + ' like: <Provider context={MyContext}><ConnectedComponent context={MyContext} /></Provider>. ' + 'You may also pass a {context : MyContext} option to connect';\n\n if (storeKey !== 'store') {\n throw new Error('storeKey has been removed and does not do anything. ' + customStoreWarningMessage);\n }\n }\n\n var Context = context;\n return function wrapWithConnect(WrappedComponent) {\n if (process.env.NODE_ENV !== 'production' && !isValidElementType(WrappedComponent)) {\n throw new Error(\"You must pass a component to the function returned by \" + (methodName + \". Instead received \" + stringifyComponent(WrappedComponent)));\n }\n\n var wrappedComponentName = WrappedComponent.displayName || WrappedComponent.name || 'Component';\n var displayName = getDisplayName(wrappedComponentName);\n\n var selectorFactoryOptions = _extends({}, connectOptions, {\n getDisplayName: getDisplayName,\n methodName: methodName,\n renderCountProp: renderCountProp,\n shouldHandleStateChanges: shouldHandleStateChanges,\n storeKey: storeKey,\n displayName: displayName,\n wrappedComponentName: wrappedComponentName,\n WrappedComponent: WrappedComponent\n });\n\n var pure = connectOptions.pure;\n\n function createChildSelector(store) {\n return selectorFactory(store.dispatch, selectorFactoryOptions);\n } // If we aren't running in \"pure\" mode, we don't want to memoize values.\n // To avoid conditionally calling hooks, we fall back to a tiny wrapper\n // that just executes the given callback immediately.\n\n\n var usePureOnlyMemo = pure ? useMemo : function (callback) {\n return callback();\n };\n\n function ConnectFunction(props) {\n var _useMemo = useMemo(function () {\n // Distinguish between actual \"data\" props that were passed to the wrapper component,\n // and values needed to control behavior (forwarded refs, alternate context instances).\n // To maintain the wrapperProps object reference, memoize this destructuring.\n var reactReduxForwardedRef = props.reactReduxForwardedRef,\n wrapperProps = _objectWithoutPropertiesLoose(props, _excluded2);\n\n return [props.context, reactReduxForwardedRef, wrapperProps];\n }, [props]),\n propsContext = _useMemo[0],\n reactReduxForwardedRef = _useMemo[1],\n wrapperProps = _useMemo[2];\n\n var ContextToUse = useMemo(function () {\n // Users may optionally pass in a custom context instance to use instead of our ReactReduxContext.\n // Memoize the check that determines which context instance we should use.\n return propsContext && propsContext.Consumer && isContextConsumer( /*#__PURE__*/React.createElement(propsContext.Consumer, null)) ? propsContext : Context;\n }, [propsContext, Context]); // Retrieve the store and ancestor subscription via context, if available\n\n var contextValue = useContext(ContextToUse); // The store _must_ exist as either a prop or in context.\n // We'll check to see if it _looks_ like a Redux store first.\n // This allows us to pass through a `store` prop that is just a plain value.\n\n var didStoreComeFromProps = Boolean(props.store) && Boolean(props.store.getState) && Boolean(props.store.dispatch);\n var didStoreComeFromContext = Boolean(contextValue) && Boolean(contextValue.store);\n\n if (process.env.NODE_ENV !== 'production' && !didStoreComeFromProps && !didStoreComeFromContext) {\n throw new Error(\"Could not find \\\"store\\\" in the context of \" + (\"\\\"\" + displayName + \"\\\". Either wrap the root component in a <Provider>, \") + \"or pass a custom React context provider to <Provider> and the corresponding \" + (\"React context consumer to \" + displayName + \" in connect options.\"));\n } // Based on the previous check, one of these must be true\n\n\n var store = didStoreComeFromProps ? props.store : contextValue.store;\n var childPropsSelector = useMemo(function () {\n // The child props selector needs the store reference as an input.\n // Re-create this selector whenever the store changes.\n return createChildSelector(store);\n }, [store]);\n\n var _useMemo2 = useMemo(function () {\n if (!shouldHandleStateChanges) return NO_SUBSCRIPTION_ARRAY; // This Subscription's source should match where store came from: props vs. context. A component\n // connected to the store via props shouldn't use subscription from context, or vice versa.\n\n // This Subscription's source should match where store came from: props vs. context. A component\n // connected to the store via props shouldn't use subscription from context, or vice versa.\n var subscription = createSubscription(store, didStoreComeFromProps ? null : contextValue.subscription); // `notifyNestedSubs` is duplicated to handle the case where the component is unmounted in\n // the middle of the notification loop, where `subscription` will then be null. This can\n // probably be avoided if Subscription's listeners logic is changed to not call listeners\n // that have been unsubscribed in the middle of the notification loop.\n\n // `notifyNestedSubs` is duplicated to handle the case where the component is unmounted in\n // the middle of the notification loop, where `subscription` will then be null. This can\n // probably be avoided if Subscription's listeners logic is changed to not call listeners\n // that have been unsubscribed in the middle of the notification loop.\n var notifyNestedSubs = subscription.notifyNestedSubs.bind(subscription);\n return [subscription, notifyNestedSubs];\n }, [store, didStoreComeFromProps, contextValue]),\n subscription = _useMemo2[0],\n notifyNestedSubs = _useMemo2[1]; // Determine what {store, subscription} value should be put into nested context, if necessary,\n // and memoize that value to avoid unnecessary context updates.\n\n\n var overriddenContextValue = useMemo(function () {\n if (didStoreComeFromProps) {\n // This component is directly subscribed to a store from props.\n // We don't want descendants reading from this store - pass down whatever\n // the existing context value is from the nearest connected ancestor.\n return contextValue;\n } // Otherwise, put this component's subscription instance into context, so that\n // connected descendants won't update until after this component is done\n\n\n return _extends({}, contextValue, {\n subscription: subscription\n });\n }, [didStoreComeFromProps, contextValue, subscription]); // We need to force this wrapper component to re-render whenever a Redux store update\n // causes a change to the calculated child component props (or we caught an error in mapState)\n\n var _useReducer = useReducer(storeStateUpdatesReducer, EMPTY_ARRAY, initStateUpdates),\n _useReducer$ = _useReducer[0],\n previousStateUpdateResult = _useReducer$[0],\n forceComponentUpdateDispatch = _useReducer[1]; // Propagate any mapState/mapDispatch errors upwards\n\n\n if (previousStateUpdateResult && previousStateUpdateResult.error) {\n throw previousStateUpdateResult.error;\n } // Set up refs to coordinate values between the subscription effect and the render logic\n\n\n var lastChildProps = useRef();\n var lastWrapperProps = useRef(wrapperProps);\n var childPropsFromStoreUpdate = useRef();\n var renderIsScheduled = useRef(false);\n var actualChildProps = usePureOnlyMemo(function () {\n // Tricky logic here:\n // - This render may have been triggered by a Redux store update that produced new child props\n // - However, we may have gotten new wrapper props after that\n // If we have new child props, and the same wrapper props, we know we should use the new child props as-is.\n // But, if we have new wrapper props, those might change the child props, so we have to recalculate things.\n // So, we'll use the child props from store update only if the wrapper props are the same as last time.\n if (childPropsFromStoreUpdate.current && wrapperProps === lastWrapperProps.current) {\n return childPropsFromStoreUpdate.current;\n } // TODO We're reading the store directly in render() here. Bad idea?\n // This will likely cause Bad Things (TM) to happen in Concurrent Mode.\n // Note that we do this because on renders _not_ caused by store updates, we need the latest store state\n // to determine what the child props should be.\n\n\n return childPropsSelector(store.getState(), wrapperProps);\n }, [store, previousStateUpdateResult, wrapperProps]); // We need this to execute synchronously every time we re-render. However, React warns\n // about useLayoutEffect in SSR, so we try to detect environment and fall back to\n // just useEffect instead to avoid the warning, since neither will run anyway.\n\n useIsomorphicLayoutEffectWithArgs(captureWrapperProps, [lastWrapperProps, lastChildProps, renderIsScheduled, wrapperProps, actualChildProps, childPropsFromStoreUpdate, notifyNestedSubs]); // Our re-subscribe logic only runs when the store/subscription setup changes\n\n useIsomorphicLayoutEffectWithArgs(subscribeUpdates, [shouldHandleStateChanges, store, subscription, childPropsSelector, lastWrapperProps, lastChildProps, renderIsScheduled, childPropsFromStoreUpdate, notifyNestedSubs, forceComponentUpdateDispatch], [store, subscription, childPropsSelector]); // Now that all that's done, we can finally try to actually render the child component.\n // We memoize the elements for the rendered child component as an optimization.\n\n var renderedWrappedComponent = useMemo(function () {\n return /*#__PURE__*/React.createElement(WrappedComponent, _extends({}, actualChildProps, {\n ref: reactReduxForwardedRef\n }));\n }, [reactReduxForwardedRef, WrappedComponent, actualChildProps]); // If React sees the exact same element reference as last time, it bails out of re-rendering\n // that child, same as if it was wrapped in React.memo() or returned false from shouldComponentUpdate.\n\n var renderedChild = useMemo(function () {\n if (shouldHandleStateChanges) {\n // If this component is subscribed to store updates, we need to pass its own\n // subscription instance down to our descendants. That means rendering the same\n // Context instance, and putting a different value into the context.\n return /*#__PURE__*/React.createElement(ContextToUse.Provider, {\n value: overriddenContextValue\n }, renderedWrappedComponent);\n }\n\n return renderedWrappedComponent;\n }, [ContextToUse, renderedWrappedComponent, overriddenContextValue]);\n return renderedChild;\n } // If we're in \"pure\" mode, ensure our wrapper component only re-renders when incoming props have changed.\n\n\n var Connect = pure ? React.memo(ConnectFunction) : ConnectFunction;\n Connect.WrappedComponent = WrappedComponent;\n Connect.displayName = ConnectFunction.displayName = displayName;\n\n if (forwardRef) {\n var forwarded = React.forwardRef(function forwardConnectRef(props, ref) {\n return /*#__PURE__*/React.createElement(Connect, _extends({}, props, {\n reactReduxForwardedRef: ref\n }));\n });\n forwarded.displayName = displayName;\n forwarded.WrappedComponent = WrappedComponent;\n return hoistStatics(forwarded, WrappedComponent);\n }\n\n return hoistStatics(Connect, WrappedComponent);\n };\n}","export default function bindActionCreators(actionCreators, dispatch) {\n var boundActionCreators = {};\n\n var _loop = function _loop(key) {\n var actionCreator = actionCreators[key];\n\n if (typeof actionCreator === 'function') {\n boundActionCreators[key] = function () {\n return dispatch(actionCreator.apply(void 0, arguments));\n };\n }\n };\n\n for (var key in actionCreators) {\n _loop(key);\n }\n\n return boundActionCreators;\n}","import verifyPlainObject from '../utils/verifyPlainObject';\nexport function wrapMapToPropsConstant(getConstant) {\n return function initConstantSelector(dispatch, options) {\n var constant = getConstant(dispatch, options);\n\n function constantSelector() {\n return constant;\n }\n\n constantSelector.dependsOnOwnProps = false;\n return constantSelector;\n };\n} // dependsOnOwnProps is used by createMapToPropsProxy to determine whether to pass props as args\n// to the mapToProps function being wrapped. It is also used by makePurePropsSelector to determine\n// whether mapToProps needs to be invoked when props have changed.\n//\n// A length of one signals that mapToProps does not depend on props from the parent component.\n// A length of zero is assumed to mean mapToProps is getting args via arguments or ...args and\n// therefore not reporting its length accurately..\n\nexport function getDependsOnOwnProps(mapToProps) {\n return mapToProps.dependsOnOwnProps !== null && mapToProps.dependsOnOwnProps !== undefined ? Boolean(mapToProps.dependsOnOwnProps) : mapToProps.length !== 1;\n} // Used by whenMapStateToPropsIsFunction and whenMapDispatchToPropsIsFunction,\n// this function wraps mapToProps in a proxy function which does several things:\n//\n// * Detects whether the mapToProps function being called depends on props, which\n// is used by selectorFactory to decide if it should reinvoke on props changes.\n//\n// * On first call, handles mapToProps if returns another function, and treats that\n// new function as the true mapToProps for subsequent calls.\n//\n// * On first call, verifies the first result is a plain object, in order to warn\n// the developer that their mapToProps function is not returning a valid result.\n//\n\nexport function wrapMapToPropsFunc(mapToProps, methodName) {\n return function initProxySelector(dispatch, _ref) {\n var displayName = _ref.displayName;\n\n var proxy = function mapToPropsProxy(stateOrDispatch, ownProps) {\n return proxy.dependsOnOwnProps ? proxy.mapToProps(stateOrDispatch, ownProps) : proxy.mapToProps(stateOrDispatch);\n }; // allow detectFactoryAndVerify to get ownProps\n\n\n proxy.dependsOnOwnProps = true;\n\n proxy.mapToProps = function detectFactoryAndVerify(stateOrDispatch, ownProps) {\n proxy.mapToProps = mapToProps;\n proxy.dependsOnOwnProps = getDependsOnOwnProps(mapToProps);\n var props = proxy(stateOrDispatch, ownProps);\n\n if (typeof props === 'function') {\n proxy.mapToProps = props;\n proxy.dependsOnOwnProps = getDependsOnOwnProps(props);\n props = proxy(stateOrDispatch, ownProps);\n }\n\n if (process.env.NODE_ENV !== 'production') verifyPlainObject(props, displayName, methodName);\n return props;\n };\n\n return proxy;\n };\n}","import bindActionCreators from '../utils/bindActionCreators';\nimport { wrapMapToPropsConstant, wrapMapToPropsFunc } from './wrapMapToProps';\nexport function whenMapDispatchToPropsIsFunction(mapDispatchToProps) {\n return typeof mapDispatchToProps === 'function' ? wrapMapToPropsFunc(mapDispatchToProps, 'mapDispatchToProps') : undefined;\n}\nexport function whenMapDispatchToPropsIsMissing(mapDispatchToProps) {\n return !mapDispatchToProps ? wrapMapToPropsConstant(function (dispatch) {\n return {\n dispatch: dispatch\n };\n }) : undefined;\n}\nexport function whenMapDispatchToPropsIsObject(mapDispatchToProps) {\n return mapDispatchToProps && typeof mapDispatchToProps === 'object' ? wrapMapToPropsConstant(function (dispatch) {\n return bindActionCreators(mapDispatchToProps, dispatch);\n }) : undefined;\n}\nexport default [whenMapDispatchToPropsIsFunction, whenMapDispatchToPropsIsMissing, whenMapDispatchToPropsIsObject];","import { wrapMapToPropsConstant, wrapMapToPropsFunc } from './wrapMapToProps';\nexport function whenMapStateToPropsIsFunction(mapStateToProps) {\n return typeof mapStateToProps === 'function' ? wrapMapToPropsFunc(mapStateToProps, 'mapStateToProps') : undefined;\n}\nexport function whenMapStateToPropsIsMissing(mapStateToProps) {\n return !mapStateToProps ? wrapMapToPropsConstant(function () {\n return {};\n }) : undefined;\n}\nexport default [whenMapStateToPropsIsFunction, whenMapStateToPropsIsMissing];","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport verifyPlainObject from '../utils/verifyPlainObject';\nexport function defaultMergeProps(stateProps, dispatchProps, ownProps) {\n return _extends({}, ownProps, stateProps, dispatchProps);\n}\nexport function wrapMergePropsFunc(mergeProps) {\n return function initMergePropsProxy(dispatch, _ref) {\n var displayName = _ref.displayName,\n pure = _ref.pure,\n areMergedPropsEqual = _ref.areMergedPropsEqual;\n var hasRunOnce = false;\n var mergedProps;\n return function mergePropsProxy(stateProps, dispatchProps, ownProps) {\n var nextMergedProps = mergeProps(stateProps, dispatchProps, ownProps);\n\n if (hasRunOnce) {\n if (!pure || !areMergedPropsEqual(nextMergedProps, mergedProps)) mergedProps = nextMergedProps;\n } else {\n hasRunOnce = true;\n mergedProps = nextMergedProps;\n if (process.env.NODE_ENV !== 'production') verifyPlainObject(mergedProps, displayName, 'mergeProps');\n }\n\n return mergedProps;\n };\n };\n}\nexport function whenMergePropsIsFunction(mergeProps) {\n return typeof mergeProps === 'function' ? wrapMergePropsFunc(mergeProps) : undefined;\n}\nexport function whenMergePropsIsOmitted(mergeProps) {\n return !mergeProps ? function () {\n return defaultMergeProps;\n } : undefined;\n}\nexport default [whenMergePropsIsFunction, whenMergePropsIsOmitted];","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"pure\", \"areStatesEqual\", \"areOwnPropsEqual\", \"areStatePropsEqual\", \"areMergedPropsEqual\"];\nimport connectAdvanced from '../components/connectAdvanced';\nimport shallowEqual from '../utils/shallowEqual';\nimport defaultMapDispatchToPropsFactories from './mapDispatchToProps';\nimport defaultMapStateToPropsFactories from './mapStateToProps';\nimport defaultMergePropsFactories from './mergeProps';\nimport defaultSelectorFactory from './selectorFactory';\n/*\r\n connect is a facade over connectAdvanced. It turns its args into a compatible\r\n selectorFactory, which has the signature:\r\n\r\n (dispatch, options) => (nextState, nextOwnProps) => nextFinalProps\r\n \r\n connect passes its args to connectAdvanced as options, which will in turn pass them to\r\n selectorFactory each time a Connect component instance is instantiated or hot reloaded.\r\n\r\n selectorFactory returns a final props selector from its mapStateToProps,\r\n mapStateToPropsFactories, mapDispatchToProps, mapDispatchToPropsFactories, mergeProps,\r\n mergePropsFactories, and pure args.\r\n\r\n The resulting final props selector is called by the Connect component instance whenever\r\n it receives new props or store state.\r\n */\n\nfunction match(arg, factories, name) {\n for (var i = factories.length - 1; i >= 0; i--) {\n var result = factories[i](arg);\n if (result) return result;\n }\n\n return function (dispatch, options) {\n throw new Error(\"Invalid value of type \" + typeof arg + \" for \" + name + \" argument when connecting component \" + options.wrappedComponentName + \".\");\n };\n}\n\nfunction strictEqual(a, b) {\n return a === b;\n} // createConnect with default args builds the 'official' connect behavior. Calling it with\n// different options opens up some testing and extensibility scenarios\n\n\nexport function createConnect(_temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$connectHOC = _ref.connectHOC,\n connectHOC = _ref$connectHOC === void 0 ? connectAdvanced : _ref$connectHOC,\n _ref$mapStateToPropsF = _ref.mapStateToPropsFactories,\n mapStateToPropsFactories = _ref$mapStateToPropsF === void 0 ? defaultMapStateToPropsFactories : _ref$mapStateToPropsF,\n _ref$mapDispatchToPro = _ref.mapDispatchToPropsFactories,\n mapDispatchToPropsFactories = _ref$mapDispatchToPro === void 0 ? defaultMapDispatchToPropsFactories : _ref$mapDispatchToPro,\n _ref$mergePropsFactor = _ref.mergePropsFactories,\n mergePropsFactories = _ref$mergePropsFactor === void 0 ? defaultMergePropsFactories : _ref$mergePropsFactor,\n _ref$selectorFactory = _ref.selectorFactory,\n selectorFactory = _ref$selectorFactory === void 0 ? defaultSelectorFactory : _ref$selectorFactory;\n\n return function connect(mapStateToProps, mapDispatchToProps, mergeProps, _ref2) {\n if (_ref2 === void 0) {\n _ref2 = {};\n }\n\n var _ref3 = _ref2,\n _ref3$pure = _ref3.pure,\n pure = _ref3$pure === void 0 ? true : _ref3$pure,\n _ref3$areStatesEqual = _ref3.areStatesEqual,\n areStatesEqual = _ref3$areStatesEqual === void 0 ? strictEqual : _ref3$areStatesEqual,\n _ref3$areOwnPropsEqua = _ref3.areOwnPropsEqual,\n areOwnPropsEqual = _ref3$areOwnPropsEqua === void 0 ? shallowEqual : _ref3$areOwnPropsEqua,\n _ref3$areStatePropsEq = _ref3.areStatePropsEqual,\n areStatePropsEqual = _ref3$areStatePropsEq === void 0 ? shallowEqual : _ref3$areStatePropsEq,\n _ref3$areMergedPropsE = _ref3.areMergedPropsEqual,\n areMergedPropsEqual = _ref3$areMergedPropsE === void 0 ? shallowEqual : _ref3$areMergedPropsE,\n extraOptions = _objectWithoutPropertiesLoose(_ref3, _excluded);\n\n var initMapStateToProps = match(mapStateToProps, mapStateToPropsFactories, 'mapStateToProps');\n var initMapDispatchToProps = match(mapDispatchToProps, mapDispatchToPropsFactories, 'mapDispatchToProps');\n var initMergeProps = match(mergeProps, mergePropsFactories, 'mergeProps');\n return connectHOC(selectorFactory, _extends({\n // used in error messages\n methodName: 'connect',\n // used to compute Connect's displayName from the wrapped component's displayName.\n getDisplayName: function getDisplayName(name) {\n return \"Connect(\" + name + \")\";\n },\n // if mapStateToProps is falsy, the Connect component doesn't subscribe to store state changes\n shouldHandleStateChanges: Boolean(mapStateToProps),\n // passed through to selectorFactory\n initMapStateToProps: initMapStateToProps,\n initMapDispatchToProps: initMapDispatchToProps,\n initMergeProps: initMergeProps,\n pure: pure,\n areStatesEqual: areStatesEqual,\n areOwnPropsEqual: areOwnPropsEqual,\n areStatePropsEqual: areStatePropsEqual,\n areMergedPropsEqual: areMergedPropsEqual\n }, extraOptions));\n };\n}\nexport default /*#__PURE__*/createConnect();","import { useContext } from 'react';\nimport { ReactReduxContext } from '../components/Context';\n/**\r\n * A hook to access the value of the `ReactReduxContext`. This is a low-level\r\n * hook that you should usually not need to call directly.\r\n *\r\n * @returns {any} the value of the `ReactReduxContext`\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useReduxContext } from 'react-redux'\r\n *\r\n * export const CounterComponent = ({ value }) => {\r\n * const { store } = useReduxContext()\r\n * return <div>{store.getState()}</div>\r\n * }\r\n */\n\nexport function useReduxContext() {\n var contextValue = useContext(ReactReduxContext);\n\n if (process.env.NODE_ENV !== 'production' && !contextValue) {\n throw new Error('could not find react-redux context value; please ensure the component is wrapped in a <Provider>');\n }\n\n return contextValue;\n}","import { useContext } from 'react';\nimport { ReactReduxContext } from '../components/Context';\nimport { useReduxContext as useDefaultReduxContext } from './useReduxContext';\n/**\r\n * Hook factory, which creates a `useStore` hook bound to a given context.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\r\n * @returns {Function} A `useStore` hook bound to the specified context.\r\n */\n\nexport function createStoreHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useReduxContext = context === ReactReduxContext ? useDefaultReduxContext : function () {\n return useContext(context);\n };\n return function useStore() {\n var _useReduxContext = useReduxContext(),\n store = _useReduxContext.store;\n\n return store;\n };\n}\n/**\r\n * A hook to access the redux store.\r\n *\r\n * @returns {any} the redux store\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useStore } from 'react-redux'\r\n *\r\n * export const ExampleComponent = () => {\r\n * const store = useStore()\r\n * return <div>{store.getState()}</div>\r\n * }\r\n */\n\nexport var useStore = /*#__PURE__*/createStoreHook();","import { ReactReduxContext } from '../components/Context';\nimport { useStore as useDefaultStore, createStoreHook } from './useStore';\n/**\r\n * Hook factory, which creates a `useDispatch` hook bound to a given context.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\r\n * @returns {Function} A `useDispatch` hook bound to the specified context.\r\n */\n\nexport function createDispatchHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useStore = context === ReactReduxContext ? useDefaultStore : createStoreHook(context);\n return function useDispatch() {\n var store = useStore();\n return store.dispatch;\n };\n}\n/**\r\n * A hook to access the redux `dispatch` function.\r\n *\r\n * @returns {any|function} redux store's `dispatch` function\r\n *\r\n * @example\r\n *\r\n * import React, { useCallback } from 'react'\r\n * import { useDispatch } from 'react-redux'\r\n *\r\n * export const CounterComponent = ({ value }) => {\r\n * const dispatch = useDispatch()\r\n * const increaseCounter = useCallback(() => dispatch({ type: 'increase-counter' }), [])\r\n * return (\r\n * <div>\r\n * <span>{value}</span>\r\n * <button onClick={increaseCounter}>Increase counter</button>\r\n * </div>\r\n * )\r\n * }\r\n */\n\nexport var useDispatch = /*#__PURE__*/createDispatchHook();","import { useReducer, useRef, useMemo, useContext, useDebugValue } from 'react';\nimport { useReduxContext as useDefaultReduxContext } from './useReduxContext';\nimport { createSubscription } from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\nimport { ReactReduxContext } from '../components/Context';\n\nvar refEquality = function refEquality(a, b) {\n return a === b;\n};\n\nfunction useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub) {\n var _useReducer = useReducer(function (s) {\n return s + 1;\n }, 0),\n forceRender = _useReducer[1];\n\n var subscription = useMemo(function () {\n return createSubscription(store, contextSub);\n }, [store, contextSub]);\n var latestSubscriptionCallbackError = useRef();\n var latestSelector = useRef();\n var latestStoreState = useRef();\n var latestSelectedState = useRef();\n var storeState = store.getState();\n var selectedState;\n\n try {\n if (selector !== latestSelector.current || storeState !== latestStoreState.current || latestSubscriptionCallbackError.current) {\n var newSelectedState = selector(storeState); // ensure latest selected state is reused so that a custom equality function can result in identical references\n\n if (latestSelectedState.current === undefined || !equalityFn(newSelectedState, latestSelectedState.current)) {\n selectedState = newSelectedState;\n } else {\n selectedState = latestSelectedState.current;\n }\n } else {\n selectedState = latestSelectedState.current;\n }\n } catch (err) {\n if (latestSubscriptionCallbackError.current) {\n err.message += \"\\nThe error may be correlated with this previous error:\\n\" + latestSubscriptionCallbackError.current.stack + \"\\n\\n\";\n }\n\n throw err;\n }\n\n useIsomorphicLayoutEffect(function () {\n latestSelector.current = selector;\n latestStoreState.current = storeState;\n latestSelectedState.current = selectedState;\n latestSubscriptionCallbackError.current = undefined;\n });\n useIsomorphicLayoutEffect(function () {\n function checkForUpdates() {\n try {\n var newStoreState = store.getState(); // Avoid calling selector multiple times if the store's state has not changed\n\n if (newStoreState === latestStoreState.current) {\n return;\n }\n\n var _newSelectedState = latestSelector.current(newStoreState);\n\n if (equalityFn(_newSelectedState, latestSelectedState.current)) {\n return;\n }\n\n latestSelectedState.current = _newSelectedState;\n latestStoreState.current = newStoreState;\n } catch (err) {\n // we ignore all errors here, since when the component\n // is re-rendered, the selectors are called again, and\n // will throw again, if neither props nor store state\n // changed\n latestSubscriptionCallbackError.current = err;\n }\n\n forceRender();\n }\n\n subscription.onStateChange = checkForUpdates;\n subscription.trySubscribe();\n checkForUpdates();\n return function () {\n return subscription.tryUnsubscribe();\n };\n }, [store, subscription]);\n return selectedState;\n}\n/**\r\n * Hook factory, which creates a `useSelector` hook bound to a given context.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your `<Provider>`.\r\n * @returns {Function} A `useSelector` hook bound to the specified context.\r\n */\n\n\nexport function createSelectorHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useReduxContext = context === ReactReduxContext ? useDefaultReduxContext : function () {\n return useContext(context);\n };\n return function useSelector(selector, equalityFn) {\n if (equalityFn === void 0) {\n equalityFn = refEquality;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (!selector) {\n throw new Error(\"You must pass a selector to useSelector\");\n }\n\n if (typeof selector !== 'function') {\n throw new Error(\"You must pass a function as a selector to useSelector\");\n }\n\n if (typeof equalityFn !== 'function') {\n throw new Error(\"You must pass a function as an equality function to useSelector\");\n }\n }\n\n var _useReduxContext = useReduxContext(),\n store = _useReduxContext.store,\n contextSub = _useReduxContext.subscription;\n\n var selectedState = useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub);\n useDebugValue(selectedState);\n return selectedState;\n };\n}\n/**\r\n * A hook to access the redux store's state. This hook takes a selector function\r\n * as an argument. The selector is called with the store state.\r\n *\r\n * This hook takes an optional equality comparison function as the second parameter\r\n * that allows you to customize the way the selected state is compared to determine\r\n * whether the component needs to be re-rendered.\r\n *\r\n * @param {Function} selector the selector function\r\n * @param {Function=} equalityFn the function that will be used to determine equality\r\n *\r\n * @returns {any} the selected state\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useSelector } from 'react-redux'\r\n *\r\n * export const CounterComponent = () => {\r\n * const counter = useSelector(state => state.counter)\r\n * return <div>{counter}</div>\r\n * }\r\n */\n\nexport var useSelector = /*#__PURE__*/createSelectorHook();","import Provider from './components/Provider';\nimport connectAdvanced from './components/connectAdvanced';\nimport { ReactReduxContext } from './components/Context';\nimport connect from './connect/connect';\nimport { useDispatch, createDispatchHook } from './hooks/useDispatch';\nimport { useSelector, createSelectorHook } from './hooks/useSelector';\nimport { useStore, createStoreHook } from './hooks/useStore';\nimport shallowEqual from './utils/shallowEqual';\nexport { Provider, connectAdvanced, ReactReduxContext, connect, useDispatch, createDispatchHook, useSelector, createSelectorHook, useStore, createStoreHook, shallowEqual };","/* eslint-disable import/no-unresolved */\nexport { unstable_batchedUpdates } from 'react-dom';","export * from './exports';\nimport { unstable_batchedUpdates as batch } from './utils/reactBatchedUpdates';\nimport { setBatch } from './utils/batch'; // Enable batched updates in our subscriptions for use\n// with standard React renderers (ReactDOM, React Native)\n\nsetBatch(batch);\nexport { batch };","import t,{Component as e}from\"react\";import r from\"prop-types\";import n from\"react-fast-compare\";import i from\"invariant\";import o from\"shallowequal\";function a(){return(a=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t}).apply(this,arguments)}function s(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,c(t,e)}function c(t,e){return(c=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function u(t,e){if(null==t)return{};var r,n,i={},o=Object.keys(t);for(n=0;n<o.length;n++)e.indexOf(r=o[n])>=0||(i[r]=t[r]);return i}var l={BASE:\"base\",BODY:\"body\",HEAD:\"head\",HTML:\"html\",LINK:\"link\",META:\"meta\",NOSCRIPT:\"noscript\",SCRIPT:\"script\",STYLE:\"style\",TITLE:\"title\",FRAGMENT:\"Symbol(react.fragment)\"},p={rel:[\"amphtml\",\"canonical\",\"alternate\"]},f={type:[\"application/ld+json\"]},d={charset:\"\",name:[\"robots\",\"description\"],property:[\"og:type\",\"og:title\",\"og:url\",\"og:image\",\"og:image:alt\",\"og:description\",\"twitter:url\",\"twitter:title\",\"twitter:description\",\"twitter:image\",\"twitter:image:alt\",\"twitter:card\",\"twitter:site\"]},h=Object.keys(l).map(function(t){return l[t]}),m={accesskey:\"accessKey\",charset:\"charSet\",class:\"className\",contenteditable:\"contentEditable\",contextmenu:\"contextMenu\",\"http-equiv\":\"httpEquiv\",itemprop:\"itemProp\",tabindex:\"tabIndex\"},y=Object.keys(m).reduce(function(t,e){return t[m[e]]=e,t},{}),T=function(t,e){for(var r=t.length-1;r>=0;r-=1){var n=t[r];if(Object.prototype.hasOwnProperty.call(n,e))return n[e]}return null},g=function(t){var e=T(t,l.TITLE),r=T(t,\"titleTemplate\");if(Array.isArray(e)&&(e=e.join(\"\")),r&&e)return r.replace(/%s/g,function(){return e});var n=T(t,\"defaultTitle\");return e||n||void 0},b=function(t){return T(t,\"onChangeClientState\")||function(){}},v=function(t,e){return e.filter(function(e){return void 0!==e[t]}).map(function(e){return e[t]}).reduce(function(t,e){return a({},t,e)},{})},A=function(t,e){return e.filter(function(t){return void 0!==t[l.BASE]}).map(function(t){return t[l.BASE]}).reverse().reduce(function(e,r){if(!e.length)for(var n=Object.keys(r),i=0;i<n.length;i+=1){var o=n[i].toLowerCase();if(-1!==t.indexOf(o)&&r[o])return e.concat(r)}return e},[])},C=function(t,e,r){var n={};return r.filter(function(e){return!!Array.isArray(e[t])||(void 0!==e[t]&&console&&\"function\"==typeof console.warn&&console.warn(\"Helmet: \"+t+' should be of type \"Array\". Instead found type \"'+typeof e[t]+'\"'),!1)}).map(function(e){return e[t]}).reverse().reduce(function(t,r){var i={};r.filter(function(t){for(var r,o=Object.keys(t),a=0;a<o.length;a+=1){var s=o[a],c=s.toLowerCase();-1===e.indexOf(c)||\"rel\"===r&&\"canonical\"===t[r].toLowerCase()||\"rel\"===c&&\"stylesheet\"===t[c].toLowerCase()||(r=c),-1===e.indexOf(s)||\"innerHTML\"!==s&&\"cssText\"!==s&&\"itemprop\"!==s||(r=s)}if(!r||!t[r])return!1;var u=t[r].toLowerCase();return n[r]||(n[r]={}),i[r]||(i[r]={}),!n[r][u]&&(i[r][u]=!0,!0)}).reverse().forEach(function(e){return t.push(e)});for(var o=Object.keys(i),s=0;s<o.length;s+=1){var c=o[s],u=a({},n[c],i[c]);n[c]=u}return t},[]).reverse()},O=function(t,e){if(Array.isArray(t)&&t.length)for(var r=0;r<t.length;r+=1)if(t[r][e])return!0;return!1},S=function(t){return Array.isArray(t)?t.join(\"\"):t},E=function(t,e){return Array.isArray(t)?t.reduce(function(t,r){return function(t,e){for(var r=Object.keys(t),n=0;n<r.length;n+=1)if(e[r[n]]&&e[r[n]].includes(t[r[n]]))return!0;return!1}(r,e)?t.priority.push(r):t.default.push(r),t},{priority:[],default:[]}):{default:t}},I=function(t,e){var r;return a({},t,((r={})[e]=void 0,r))},P=[l.NOSCRIPT,l.SCRIPT,l.STYLE],w=function(t,e){return void 0===e&&(e=!0),!1===e?String(t):String(t).replace(/&/g,\"&\").replace(/</g,\"<\").replace(/>/g,\">\").replace(/\"/g,\""\").replace(/'/g,\"'\")},x=function(t){return Object.keys(t).reduce(function(e,r){var n=void 0!==t[r]?r+'=\"'+t[r]+'\"':\"\"+r;return e?e+\" \"+n:n},\"\")},L=function(t,e){return void 0===e&&(e={}),Object.keys(t).reduce(function(e,r){return e[m[r]||r]=t[r],e},e)},j=function(e,r){return r.map(function(r,n){var i,o=((i={key:n})[\"data-rh\"]=!0,i);return Object.keys(r).forEach(function(t){var e=m[t]||t;\"innerHTML\"===e||\"cssText\"===e?o.dangerouslySetInnerHTML={__html:r.innerHTML||r.cssText}:o[e]=r[t]}),t.createElement(e,o)})},M=function(e,r,n){switch(e){case l.TITLE:return{toComponent:function(){return n=r.titleAttributes,(i={key:e=r.title})[\"data-rh\"]=!0,o=L(n,i),[t.createElement(l.TITLE,o,e)];var e,n,i,o},toString:function(){return function(t,e,r,n){var i=x(r),o=S(e);return i?\"<\"+t+' data-rh=\"true\" '+i+\">\"+w(o,n)+\"</\"+t+\">\":\"<\"+t+' data-rh=\"true\">'+w(o,n)+\"</\"+t+\">\"}(e,r.title,r.titleAttributes,n)}};case\"bodyAttributes\":case\"htmlAttributes\":return{toComponent:function(){return L(r)},toString:function(){return x(r)}};default:return{toComponent:function(){return j(e,r)},toString:function(){return function(t,e,r){return e.reduce(function(e,n){var i=Object.keys(n).filter(function(t){return!(\"innerHTML\"===t||\"cssText\"===t)}).reduce(function(t,e){var i=void 0===n[e]?e:e+'=\"'+w(n[e],r)+'\"';return t?t+\" \"+i:i},\"\"),o=n.innerHTML||n.cssText||\"\",a=-1===P.indexOf(t);return e+\"<\"+t+' data-rh=\"true\" '+i+(a?\"/>\":\">\"+o+\"</\"+t+\">\")},\"\")}(e,r,n)}}}},k=function(t){var e=t.baseTag,r=t.bodyAttributes,n=t.encode,i=t.htmlAttributes,o=t.noscriptTags,a=t.styleTags,s=t.title,c=void 0===s?\"\":s,u=t.titleAttributes,h=t.linkTags,m=t.metaTags,y=t.scriptTags,T={toComponent:function(){},toString:function(){return\"\"}};if(t.prioritizeSeoTags){var g=function(t){var e=t.linkTags,r=t.scriptTags,n=t.encode,i=E(t.metaTags,d),o=E(e,p),a=E(r,f);return{priorityMethods:{toComponent:function(){return[].concat(j(l.META,i.priority),j(l.LINK,o.priority),j(l.SCRIPT,a.priority))},toString:function(){return M(l.META,i.priority,n)+\" \"+M(l.LINK,o.priority,n)+\" \"+M(l.SCRIPT,a.priority,n)}},metaTags:i.default,linkTags:o.default,scriptTags:a.default}}(t);T=g.priorityMethods,h=g.linkTags,m=g.metaTags,y=g.scriptTags}return{priority:T,base:M(l.BASE,e,n),bodyAttributes:M(\"bodyAttributes\",r,n),htmlAttributes:M(\"htmlAttributes\",i,n),link:M(l.LINK,h,n),meta:M(l.META,m,n),noscript:M(l.NOSCRIPT,o,n),script:M(l.SCRIPT,y,n),style:M(l.STYLE,a,n),title:M(l.TITLE,{title:c,titleAttributes:u},n)}},H=[],N=function(t,e){var r=this;void 0===e&&(e=\"undefined\"!=typeof document),this.instances=[],this.value={setHelmet:function(t){r.context.helmet=t},helmetInstances:{get:function(){return r.canUseDOM?H:r.instances},add:function(t){(r.canUseDOM?H:r.instances).push(t)},remove:function(t){var e=(r.canUseDOM?H:r.instances).indexOf(t);(r.canUseDOM?H:r.instances).splice(e,1)}}},this.context=t,this.canUseDOM=e,e||(t.helmet=k({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:\"\",titleAttributes:{}}))},R=t.createContext({}),D=r.shape({setHelmet:r.func,helmetInstances:r.shape({get:r.func,add:r.func,remove:r.func})}),U=\"undefined\"!=typeof document,q=function(e){function r(t){var n;return(n=e.call(this,t)||this).helmetData=new N(n.props.context,r.canUseDOM),n}return s(r,e),r.prototype.render=function(){return t.createElement(R.Provider,{value:this.helmetData.value},this.props.children)},r}(e);q.canUseDOM=U,q.propTypes={context:r.shape({helmet:r.shape()}),children:r.node.isRequired},q.defaultProps={context:{}},q.displayName=\"HelmetProvider\";var Y=function(t,e){var r,n=document.head||document.querySelector(l.HEAD),i=n.querySelectorAll(t+\"[data-rh]\"),o=[].slice.call(i),a=[];return e&&e.length&&e.forEach(function(e){var n=document.createElement(t);for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(\"innerHTML\"===i?n.innerHTML=e.innerHTML:\"cssText\"===i?n.styleSheet?n.styleSheet.cssText=e.cssText:n.appendChild(document.createTextNode(e.cssText)):n.setAttribute(i,void 0===e[i]?\"\":e[i]));n.setAttribute(\"data-rh\",\"true\"),o.some(function(t,e){return r=e,n.isEqualNode(t)})?o.splice(r,1):a.push(n)}),o.forEach(function(t){return t.parentNode.removeChild(t)}),a.forEach(function(t){return n.appendChild(t)}),{oldTags:o,newTags:a}},B=function(t,e){var r=document.getElementsByTagName(t)[0];if(r){for(var n=r.getAttribute(\"data-rh\"),i=n?n.split(\",\"):[],o=[].concat(i),a=Object.keys(e),s=0;s<a.length;s+=1){var c=a[s],u=e[c]||\"\";r.getAttribute(c)!==u&&r.setAttribute(c,u),-1===i.indexOf(c)&&i.push(c);var l=o.indexOf(c);-1!==l&&o.splice(l,1)}for(var p=o.length-1;p>=0;p-=1)r.removeAttribute(o[p]);i.length===o.length?r.removeAttribute(\"data-rh\"):r.getAttribute(\"data-rh\")!==a.join(\",\")&&r.setAttribute(\"data-rh\",a.join(\",\"))}},K=function(t,e){var r=t.baseTag,n=t.htmlAttributes,i=t.linkTags,o=t.metaTags,a=t.noscriptTags,s=t.onChangeClientState,c=t.scriptTags,u=t.styleTags,p=t.title,f=t.titleAttributes;B(l.BODY,t.bodyAttributes),B(l.HTML,n),function(t,e){void 0!==t&&document.title!==t&&(document.title=S(t)),B(l.TITLE,e)}(p,f);var d={baseTag:Y(l.BASE,r),linkTags:Y(l.LINK,i),metaTags:Y(l.META,o),noscriptTags:Y(l.NOSCRIPT,a),scriptTags:Y(l.SCRIPT,c),styleTags:Y(l.STYLE,u)},h={},m={};Object.keys(d).forEach(function(t){var e=d[t],r=e.newTags,n=e.oldTags;r.length&&(h[t]=r),n.length&&(m[t]=d[t].oldTags)}),e&&e(),s(t,h,m)},_=null,z=function(t){function e(){for(var e,r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];return(e=t.call.apply(t,[this].concat(n))||this).rendered=!1,e}s(e,t);var r=e.prototype;return r.shouldComponentUpdate=function(t){return!o(t,this.props)},r.componentDidUpdate=function(){this.emitChange()},r.componentWillUnmount=function(){this.props.context.helmetInstances.remove(this),this.emitChange()},r.emitChange=function(){var t,e,r=this.props.context,n=r.setHelmet,i=null,o=(t=r.helmetInstances.get().map(function(t){var e=a({},t.props);return delete e.context,e}),{baseTag:A([\"href\"],t),bodyAttributes:v(\"bodyAttributes\",t),defer:T(t,\"defer\"),encode:T(t,\"encodeSpecialCharacters\"),htmlAttributes:v(\"htmlAttributes\",t),linkTags:C(l.LINK,[\"rel\",\"href\"],t),metaTags:C(l.META,[\"name\",\"charset\",\"http-equiv\",\"property\",\"itemprop\"],t),noscriptTags:C(l.NOSCRIPT,[\"innerHTML\"],t),onChangeClientState:b(t),scriptTags:C(l.SCRIPT,[\"src\",\"innerHTML\"],t),styleTags:C(l.STYLE,[\"cssText\"],t),title:g(t),titleAttributes:v(\"titleAttributes\",t),prioritizeSeoTags:O(t,\"prioritizeSeoTags\")});q.canUseDOM?(e=o,_&&cancelAnimationFrame(_),e.defer?_=requestAnimationFrame(function(){K(e,function(){_=null})}):(K(e),_=null)):k&&(i=k(o)),n(i)},r.init=function(){this.rendered||(this.rendered=!0,this.props.context.helmetInstances.add(this),this.emitChange())},r.render=function(){return this.init(),null},e}(e);z.propTypes={context:D.isRequired},z.displayName=\"HelmetDispatcher\";var F=[\"children\"],G=[\"children\"],W=function(e){function r(){return e.apply(this,arguments)||this}s(r,e);var o=r.prototype;return o.shouldComponentUpdate=function(t){return!n(I(this.props,\"helmetData\"),I(t,\"helmetData\"))},o.mapNestedChildrenToProps=function(t,e){if(!e)return null;switch(t.type){case l.SCRIPT:case l.NOSCRIPT:return{innerHTML:e};case l.STYLE:return{cssText:e};default:throw new Error(\"<\"+t.type+\" /> elements are self-closing and can not contain children. Refer to our API for more information.\")}},o.flattenArrayTypeChildren=function(t){var e,r=t.child,n=t.arrayTypeChildren;return a({},n,((e={})[r.type]=[].concat(n[r.type]||[],[a({},t.newChildProps,this.mapNestedChildrenToProps(r,t.nestedChildren))]),e))},o.mapObjectTypeChildren=function(t){var e,r,n=t.child,i=t.newProps,o=t.newChildProps,s=t.nestedChildren;switch(n.type){case l.TITLE:return a({},i,((e={})[n.type]=s,e.titleAttributes=a({},o),e));case l.BODY:return a({},i,{bodyAttributes:a({},o)});case l.HTML:return a({},i,{htmlAttributes:a({},o)});default:return a({},i,((r={})[n.type]=a({},o),r))}},o.mapArrayTypeChildrenToProps=function(t,e){var r=a({},e);return Object.keys(t).forEach(function(e){var n;r=a({},r,((n={})[e]=t[e],n))}),r},o.warnOnInvalidChildren=function(t,e){return i(h.some(function(e){return t.type===e}),\"function\"==typeof t.type?\"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.\":\"Only elements types \"+h.join(\", \")+\" are allowed. Helmet does not support rendering <\"+t.type+\"> elements. Refer to our API for more information.\"),i(!e||\"string\"==typeof e||Array.isArray(e)&&!e.some(function(t){return\"string\"!=typeof t}),\"Helmet expects a string as a child of <\"+t.type+\">. Did you forget to wrap your children in braces? ( <\"+t.type+\">{``}</\"+t.type+\"> ) Refer to our API for more information.\"),!0},o.mapChildrenToProps=function(e,r){var n=this,i={};return t.Children.forEach(e,function(t){if(t&&t.props){var e=t.props,o=e.children,a=u(e,F),s=Object.keys(a).reduce(function(t,e){return t[y[e]||e]=a[e],t},{}),c=t.type;switch(\"symbol\"==typeof c?c=c.toString():n.warnOnInvalidChildren(t,o),c){case l.FRAGMENT:r=n.mapChildrenToProps(o,r);break;case l.LINK:case l.META:case l.NOSCRIPT:case l.SCRIPT:case l.STYLE:i=n.flattenArrayTypeChildren({child:t,arrayTypeChildren:i,newChildProps:s,nestedChildren:o});break;default:r=n.mapObjectTypeChildren({child:t,newProps:r,newChildProps:s,nestedChildren:o})}}}),this.mapArrayTypeChildrenToProps(i,r)},o.render=function(){var e=this.props,r=e.children,n=u(e,G),i=a({},n),o=n.helmetData;return r&&(i=this.mapChildrenToProps(r,i)),!o||o instanceof N||(o=new N(o.context,o.instances)),o?t.createElement(z,a({},i,{context:o.value,helmetData:void 0})):t.createElement(R.Consumer,null,function(e){return t.createElement(z,a({},i,{context:e}))})},r}(e);W.propTypes={base:r.object,bodyAttributes:r.object,children:r.oneOfType([r.arrayOf(r.node),r.node]),defaultTitle:r.string,defer:r.bool,encodeSpecialCharacters:r.bool,htmlAttributes:r.object,link:r.arrayOf(r.object),meta:r.arrayOf(r.object),noscript:r.arrayOf(r.object),onChangeClientState:r.func,script:r.arrayOf(r.object),style:r.arrayOf(r.object),title:r.string,titleAttributes:r.object,titleTemplate:r.string,prioritizeSeoTags:r.bool,helmetData:r.object},W.defaultProps={defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1},W.displayName=\"Helmet\";export{W as Helmet,N as HelmetData,q as HelmetProvider};\n//# sourceMappingURL=index.module.js.map\n","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"GQxYmQ49K7OBPBjwv5on\",\"content\":\"U5bBaroSF4tklZoE8und\",\"app_loading\":\"PMDkbIQ2xtkmE2okqWOq\",\"app_loading_wrapper\":\"rO3X_blWmJJnrUGRzTMA\",\"app_loading_icon\":\"g7Ej3oyQyCT1p9pGBAQL\",\"appLoadingIcon\":\"ihSqZ05sxqXGvx6wADVK\",\"app_loading_label\":\"FNCKbCrWrCosAmDesl5p\",\"appLoadingError\":\"bLZyfi56TRcjjQrWi9iE\",\"megadropdown_wrapper\":\"IMNr7FHzuFrZGzmTy2Go\",\"modal_wrapper\":\"S4LeSdXVWNPpFBJsg3sE\"};","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","export default (url: URL, params: {[name: string]: string}): URL => {\r\n const newURL = new URL(url.toString());\r\n\r\n for (const key in params) {\r\n newURL.searchParams.append(key, params[key].toString());\r\n }\r\n\r\n return newURL;\r\n};\r\n","export default (): boolean => {\r\n return typeof (window) !== \"undefined\" && typeof (window.document) !== \"undefined\";\r\n};\r\n","import isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nexport default (): string => {\r\n if (isBrowserContext()) {\r\n return window.location.origin;\r\n }\r\n else {\r\n if (globalThis.origin) {\r\n return globalThis.origin as string;\r\n }\r\n else {\r\n throw Error(\"Server origin is null\");\r\n }\r\n }\r\n};","import addUrlParams from \"./addUrlParams\";\r\nimport getUmbracoEndPoint from \"./UmbracoEndPoint\";\r\n\r\nexport default (request: string, params?: { [name: string]: string }): URL => {\r\n let baseURL: string;\r\n let url: URL;\r\n\r\n if (!process.env.NODE_ENV || process.env.NODE_ENV === \"development\") {\r\n baseURL = \"http://localhost:44301/\";\r\n } else {\r\n baseURL = getUmbracoEndPoint() + \"/\";\r\n }\r\n\r\n if (request && request.startsWith(\"http\")) {\r\n url = new URL(request);\r\n }\r\n\r\n url = new URL(request, baseURL);\r\n\r\n if (params) {\r\n url = addUrlParams(url, params);\r\n }\r\n\r\n return url;\r\n};\r\n","import urlBuilder from \"./urlBuilder\";\r\nimport { PAGE_TYPE } from \"../pages/page.types\";\r\nimport getUmbracoEndPoint from \"./UmbracoEndPoint\";\r\n\r\ninterface ContentByRouteResponse {\r\n redirectUrl?: string;\r\n result: PAGE_TYPE;\r\n statusCode: number;\r\n statusText?: string;\r\n}\r\n\r\nexport default async (route: string): Promise<ContentByRouteResponse> => {\r\n const url = urlBuilder(\"/api/content/url\", { url: route });\r\n\r\n const response = await fetch(url.toString(), {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n \"Origin\": getUmbracoEndPoint(),\r\n \"X-Request-Domain\": getUmbracoEndPoint()\r\n },\r\n body: undefined\r\n });\r\n\r\n return await response.json();\r\n};","import { Action, Dispatch } from \"redux\";\r\nimport { PAGE_TYPE } from \"../pages/page.types\";\r\nimport fetchContentByRoute from \"../helpers/fetchContentByRoute\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nexport const UPDATE_PAGE = \"UPDATE_PAGE\";\r\n\r\nexport interface UpdatePageAction extends Action {\r\n type: typeof UPDATE_PAGE;\r\n content: PAGE_TYPE;\r\n statusCode: number;\r\n redirectUrl?: string;\r\n}\r\n\r\nexport const thunkUpdatePage = (url: string, history?: any) => async (dispatch: Dispatch): Promise<void> => {\r\n try {\r\n if (!url) {\r\n throw new Error();\r\n }\r\n\r\n const pageResponse = await fetchContentByRoute(url);\r\n\r\n if ((pageResponse.result?.umbracoRedirect || pageResponse.redirectUrl) && isBrowserContext()) {\r\n window.location.href = pageResponse.result?.umbracoRedirect ?? pageResponse.redirectUrl ?? \"/\";\r\n }\r\n else if (typeof (pageResponse.result) !== \"undefined\") {\r\n const action: UpdatePageAction = {\r\n type: UPDATE_PAGE,\r\n content: pageResponse.result,\r\n statusCode: pageResponse.statusCode,\r\n redirectUrl: pageResponse.result.umbracoRedirect\r\n };\r\n\r\n if (typeof (history) !== \"undefined\") {\r\n history.replace({\r\n pathname: history.location.pathname,\r\n search: history.location.search,\r\n hash: history.location.hash,\r\n state: {\r\n ...history.location.state,\r\n page: pageResponse.result\r\n }\r\n });\r\n }\r\n\r\n dispatch(action);\r\n }\r\n }\r\n catch {\r\n // TODO: Retry loading the page every 2 seconds\r\n\r\n const action: UpdatePageAction = {\r\n type: UPDATE_PAGE,\r\n content: {\r\n _contentType: \"errorPage\",\r\n _name: \"500 - An error occured\",\r\n _url: url\r\n },\r\n statusCode: 500\r\n };\r\n\r\n dispatch(action);\r\n }\r\n};\r\n\r\nexport type PageAction = UpdatePageAction;\r\n","import urlBuilder from \"./urlBuilder\";\r\nimport { PAGE_TYPE } from \"../pages/page.types\";\r\nimport getUmbracoEndPoint from \"./UmbracoEndPoint\";\r\n\r\ninterface ContentByTypeResponse {\r\n result: PAGE_TYPE;\r\n statusCode: number;\r\n statusText?: string;\r\n}\r\n\r\nexport default async (route: string): Promise<ContentByTypeResponse> => {\r\n const url = urlBuilder(\"/api/settings\", { route: route });\r\n\r\n const response = await fetch(url.toString(), {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n \"Origin\": getUmbracoEndPoint(),\r\n \"X-Request-Domain\": getUmbracoEndPoint()\r\n },\r\n body: undefined\r\n });\r\n\r\n return await response.json();\r\n};","import { Action, Dispatch } from \"redux\";\r\nimport { SiteSetting } from \"../models/settings.model\";\r\nimport { UpdatePageAction, UPDATE_PAGE } from \"./page.actions\";\r\nimport fetchSiteSettings from \"../helpers/fetchSiteSettings\";\r\n\r\nexport const GET_SITE_SETTINGS = \"GET_SITE_SETTINGS\";\r\n\r\nexport interface GetSiteSettingsAction extends Action {\r\n type: typeof GET_SITE_SETTINGS;\r\n content: SiteSetting;\r\n}\r\n\r\nlet siteSettingsCache: (Promise<any> | undefined) = undefined;\r\nexport const thunkGetSiteSettings = (url: string) => async (dispatch: Dispatch): Promise<void> => {\r\n try {\r\n if (!url) {\r\n throw new Error();\r\n }\r\n\r\n // Check for cached site settings.\r\n const request = typeof(siteSettingsCache) !== \"undefined\" ? siteSettingsCache : fetchSiteSettings(url);\r\n siteSettingsCache = request;\r\n\r\n const response = await request;\r\n\r\n if (response && response._contentType === \"siteSettings\") {\r\n const action: GetSiteSettingsAction = {\r\n type: GET_SITE_SETTINGS,\r\n content: response\r\n };\r\n\r\n dispatch(action);\r\n }\r\n }\r\n catch {\r\n const action: UpdatePageAction = {\r\n type: UPDATE_PAGE,\r\n content: {\r\n _contentType: \"errorPage\",\r\n _name: \"An error occured\",\r\n _url: url\r\n },\r\n statusCode: 500\r\n };\r\n\r\n dispatch(action);\r\n }\r\n};\r\n\r\nexport type SiteSettingsAction = GetSiteSettingsAction;","import urlBuilder from \"./urlBuilder\";\r\nimport getUmbracoEndPoint from \"./UmbracoEndPoint\";\r\n\r\ninterface DictionaryResponse {\r\n [key: string]: string;\r\n}\r\n\r\nexport default async (route: string): Promise<DictionaryResponse> => {\r\n const url = urlBuilder(\"/api/translations\", { route: route });\r\n\r\n const response = await fetch(url.toString(),\r\n {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n \"Origin\": getUmbracoEndPoint(),\r\n \"X-Request-Domain\": getUmbracoEndPoint()\r\n },\r\n body: undefined\r\n });\r\n\r\n return await response.json();\r\n};","import { Action, Dispatch } from \"redux\";\r\nimport fetchDictionary from \"app/umbraco/helpers/fetchDictionary\";\r\n\r\nexport const LOAD_DICTIONARY = \"LOAD_DICTIONARY\";\r\n\r\nexport interface LoadDictionaryAction extends Action {\r\n type: typeof LOAD_DICTIONARY;\r\n translations: { [key: string]: string };\r\n}\r\n\r\nexport const thunkLoadDictionary = (url: string) => async (dispatch: Dispatch): Promise<void> => {\r\n try {\r\n if (!url) {\r\n throw new Error();\r\n }\r\n\r\n const response = await fetchDictionary(url);\r\n if (response) {\r\n const action: LoadDictionaryAction = {\r\n type: LOAD_DICTIONARY,\r\n translations: response\r\n };\r\n\r\n dispatch(action);\r\n }\r\n }\r\n catch {\r\n // TODO: Make catching for dictionary\r\n }\r\n};\r\n\r\nexport type DictionaryAction = LoadDictionaryAction;","const combineClasses = (classNames: (string | undefined)[]): string => {\r\n if (!classNames || classNames.length === 0) {\r\n return \"\";\r\n }\r\n\r\n const result: string[] = [];\r\n classNames.forEach((className: string | undefined) => {\r\n if (typeof (className) === \"undefined\" || className === \"\") {\r\n return;\r\n }\r\n\r\n result.push(className);\r\n });\r\n\r\n return result.join(\" \");\r\n};\r\n\r\nexport default combineClasses;","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"kdBGuczmFxWQgOK1B8iW\",\"columns\":\"w0jEEAiEjgQ75KsEQpJN\",\"column\":\"Sgm_rkhKensPDRG2l_cS\",\"column_headline\":\"uLgh092wV_27vOSBFpGH\",\"column_button\":\"qBlBMGqcJGdoYs_ZSkXo\",\"column_text\":\"Dx6vYsSuc8bpvtbXPUS1\",\"bottom\":\"cjthNeqkcvohDqGrTz9y\",\"links\":\"bQIg0eOqbv7gBovi66dk\",\"link_button\":\"v45AQnT5j2GOou3Au2QC\",\"social\":\"fetz77wOOlSXEjSKCTjH\",\"social_link\":\"MwdUIcrxeTX4Ko5GVS04\"};","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"hVK7SvaJqIdhi7hHLPjn\",\"icon\":\"mNSnVwq9XZ9UDDcUdKA8\",\"fadeIn\":\"BnpJEmvFJm5cOKrvJ_Vo\",\"ratio\":\"PwfGnB1iQzZRsLkDvClU\"};","import React, { FunctionComponent, Suspense, lazy } from \"react\";\r\nimport styles from \"./IconViewer.module.scss\";\r\nimport IconViewerProps from \"./IconViewerProps.interface\";\r\n\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst Anchor = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Anchor\"));\r\nconst ArrowBottomLeft = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/ArrowBottomLeft\"));\r\nconst ArrowBottomRight = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/ArrowBottomRight\"));\r\nconst ArrowLeft = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/ArrowLeft\"));\r\nconst ArrowRight = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/ArrowRight\"));\r\nconst ArrowTopRight = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/ArrowTopRight\"));\r\nconst ChevronRight = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/ChevronRight\"));\r\nconst Download = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Download\"));\r\nconst Email = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Email\"));\r\nconst Facebook = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Facebook\"));\r\nconst Handshake = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Handshake\"));\r\nconst Instagram = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Instagram\"));\r\nconst LinkedIn = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/LinkedIn\"));\r\nconst Logo = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Logo\"));\r\nconst Magnet = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Magnet\"));\r\nconst Pause = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Pause\"));\r\nconst Phone = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Phone\"));\r\nconst Play = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Play\"));\r\nconst Quote = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Quote\"));\r\nconst Search = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Search\"));\r\nconst Twitter = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Twitter\"));\r\nconst YouTube = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/YouTube\"));\r\nconst Talent = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Talent\"));\r\nconst Talents = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Talents\"));\r\nconst Tools = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Tools\"));\r\nconst Lighthouse = lazy(() => import(/* webpackChunkName: \"Icons\" */\"./Icons/Lighthouse\"));\r\n\r\nconst ICON_TYPES: { [key: string]: any } = {\r\n // Static\r\n \"anchor\": Anchor,\r\n \"arrow-bottom-left\": ArrowBottomLeft,\r\n \"arrow-bottom-right\": ArrowBottomRight,\r\n \"arrow-top-right\": ArrowTopRight,\r\n \"arrow-left\": ArrowLeft,\r\n \"arrow-right\": ArrowRight,\r\n \"chevron-right\": ChevronRight,\r\n \"download\": Download,\r\n \"email\": Email,\r\n \"facebook\": Facebook,\r\n \"handshake\": Handshake,\r\n \"instagram\": Instagram,\r\n \"linkedin\": LinkedIn,\r\n \"logo\": Logo,\r\n \"magnet\": Magnet,\r\n \"lighthouse\": Lighthouse,\r\n \"pause\": Pause,\r\n \"phone\": Phone,\r\n \"play\": Play,\r\n \"quote\": Quote,\r\n \"search\": Search,\r\n \"twitter\": Twitter,\r\n \"youtube\": YouTube,\r\n \"talent\": Talent,\r\n \"talents\": Talents,\r\n \"tools\": Tools,\r\n};\r\n\r\nconst IconViewer: FunctionComponent<IconViewerProps> = (props) => {\r\n const Icon = props.name ? ICON_TYPES[props.name] : null;\r\n\r\n return (\r\n <div className={combineClasses([styles.wrapper, props.className])}>\r\n {isBrowserContext() ? (\r\n <Suspense fallback={null}>\r\n {Icon ? (\r\n <Icon className={styles.icon} />\r\n ) : null}\r\n </Suspense>\r\n ) : null}\r\n\r\n <svg viewBox={`0 0 ${props.aspectRatioX ?? 1} ${props.aspectRatioY ?? 1}`} className={styles.ratio} preserveAspectRatio=\"xMidYMid\" xmlSpace=\"preserve\" version=\"1.1\"></svg>\r\n </div>\r\n );\r\n};\r\n\r\nexport default IconViewer;","import getUmbracoEndPoint from \"app/umbraco/helpers/UmbracoEndPoint\";\r\n\r\nexport default (url: string | undefined): string => {\r\n const origin = getUmbracoEndPoint();\r\n\r\n if (!url) {\r\n return \"\";\r\n }\r\n\r\n url = url.toString()\r\n .replace(new RegExp(origin, \"g\"), \"\")\r\n .replace(new RegExp(\"http://localhost:3000\", \"g\"), \"\")\r\n .replace(new RegExp(\"https://stage.wls.frontend.heyday.dk\", \"g\"), \"\")\r\n .replace(new RegExp(\"https://www.work-live-stay.dk\", \"g\"), \"\");\r\n\r\n return url.toString();\r\n};","import React, { Fragment, FunctionComponent } from \"react\";\r\nimport AnchorProps from \"./AnchorProps.interface\";\r\n\r\nimport { Link, useHistory, useLocation } from \"react-router-dom\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\nimport getRelativeUrl from \"helpers/getRelativeUrl\";\r\n\r\nconst Anchor: FunctionComponent<AnchorProps> = (props) => {\r\n const link = typeof (props.to) === \"string\" ? getRelativeUrl(props.to) : \"\";\r\n\r\n const location = useLocation<any>();\r\n const history = useHistory();\r\n\r\n const saveScrollYState = () => {\r\n if (isBrowserContext()) {\r\n history.replace({\r\n pathname: location.pathname,\r\n search: location.search,\r\n hash: location.hash,\r\n state: {\r\n ...location.state,\r\n scrollY: window.scrollY\r\n }\r\n });\r\n }\r\n };\r\n\r\n return (\r\n <Fragment>\r\n {props.modal ? (\r\n <span style={props.style} aria-label={props.aria} className={props.className} onClick={props.onClick}>\r\n {props.children}\r\n </span>\r\n ) : !props.to ? (\r\n <div className={props.className}>{props.children}</div>\r\n )\r\n : typeof (link) === \"string\" && (link.startsWith(\"http\") || link.indexOf(\"#\") > 0) ? (\r\n <a aria-label={props.aria} style={props.style} className={props.className} href={link} target=\"_blank\" rel=\"noreferrer\">{props.children}</a>\r\n ) : (\r\n <Link aria-label={props.aria} style={props.style} className={props.className} to={link} onClick={() => saveScrollYState()}>{props.children}</Link>\r\n )}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default Anchor;","import React, { FunctionComponent } from \"react\";\r\nimport styles from \"./Footer.module.scss\";\r\nimport FooterProps from \"./Footer.interface\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\n\r\nconst Footer: FunctionComponent<FooterProps> = (props) => {\r\n return (\r\n <footer className={styles.wrapper}>\r\n {/* Columns */}\r\n <div className={styles.columns}>\r\n {props.settings?.footerColumns?.map((column: any, index: number) => {\r\n return (\r\n <div className={styles.column} key={column.contentUdi}>\r\n <h4 className={styles.column_headline}>{column.content.headline}</h4>\r\n\r\n {column.content.buttons && column.content.buttons?.map((button: any, bIndex: number) => {\r\n return (\r\n <Anchor key={bIndex} to={button.content.link} className={styles.column_button}>{button.content.label}</Anchor>\r\n );\r\n })}\r\n </div>\r\n );\r\n })}\r\n </div>\r\n\r\n <div className={styles.bottom}>\r\n {/* Links */}\r\n <div className={styles.links}>\r\n {props.settings?.footerLinks?.map((link: any, lIndex: number) => {\r\n return (\r\n <Anchor key={lIndex} to={link.content.link} className={styles.link_button}>{link.content.label}</Anchor>\r\n );\r\n })}\r\n </div>\r\n\r\n {/* Social */}\r\n <div className={styles.social}>\r\n {/* Facebook */}\r\n {props.settings?.socialFacebookUrl ? (\r\n <Anchor aria=\"Facebook\" className={styles.social_link} to={props.settings?.socialFacebookUrl}>\r\n <IconViewer name=\"facebook\" />\r\n </Anchor>\r\n ) : null}\r\n\r\n {/* Instagram */}\r\n {props.settings?.socialInstagramUrl ? (\r\n <Anchor aria=\"Instagram\" className={styles.social_link} to={props.settings?.socialInstagramUrl}>\r\n <IconViewer name=\"instagram\" />\r\n </Anchor>\r\n ) : null}\r\n\r\n {/* LinkedIn */}\r\n {props.settings?.socialLinkedinUrl ? (\r\n <Anchor aria=\"LinkedIn\" className={styles.social_link} to={props.settings?.socialLinkedinUrl}>\r\n <IconViewer name=\"linkedin\" />\r\n </Anchor>\r\n ) : null}\r\n\r\n {/* Twitter */}\r\n {props.settings?.socialTwitterUrl ? (\r\n <Anchor aria=\"Twitter\" className={styles.social_link} to={props.settings?.socialTwitterUrl}>\r\n <IconViewer name=\"twitter\" />\r\n </Anchor>\r\n ) : null}\r\n\r\n {/* YouTube */}\r\n {props.settings?.socialYoutubeUrl ? (\r\n <Anchor aria=\"Youtube\" className={styles.social_link} to={props.settings?.socialYoutubeUrl}>\r\n <IconViewer name=\"youtube\" />\r\n </Anchor>\r\n ) : null}\r\n </div>\r\n </div>\r\n </footer>\r\n );\r\n};\r\n\r\nexport default Footer;","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"BU0GPFRxukT0RFBuT9Kr\",\"header\":\"gPJluFI0o2JxgnPeLRCO\",\"inner\":\"IeC8Q4yssqn3y8Ba33Dl\",\"header_circle\":\"Jp_m4CDmwAo5CcqBHCwC\",\"hamburger_menu_background_outer\":\"M_kb3yIQ7DYdyLZDznEB\",\"logo\":\"mDf3a2ht5vBj5KGPmSag\",\"breadcrumb_wrapper\":\"nfFKGYop0tN0NKdHzzh_\",\"hamburger_menu_button\":\"cLX34lrrKANWutJpR28U\",\"hamburger_menu_background\":\"XsncvGih9Sbj0I6YcqRK\",\"menu_wrapper\":\"ppWLpFn9986K4ZItvogw\",\"mobile_menu_wrapper\":\"vBan4mRG2kdXevzl1BuO\",\"white_breadcrumbs\":\"IpySYnCZHi5tKThSn6AQ\",\"menu_right\":\"pVHv3RwcnjVng9eHPrYj\",\"search_button\":\"ZC4WPIJJVbDD46A44v1v\",\"search_icon\":\"WYFgs43MZTakhxthZiGe\"};","import { Action } from \"redux\";\r\n\r\nexport const OPEN_MOBILE_MENU = \"OPEN_MOBILE_MENU\";\r\nexport const OPEN_MEGA_DROPDOWN_MENU = \"OPEN_MEGA_DROPDOWN_MENU\";\r\nexport const OPEN_MODAL = \"OPEN_MODAL\";\r\nexport const CLOSE_ALL_OVERLAYS = \"CLOSE_ALL_OVERLAYS\";\r\n\r\nexport interface CloseAllOverlaysAction extends Action {\r\n type: typeof CLOSE_ALL_OVERLAYS;\r\n}\r\n\r\nexport interface OpenMobileMenuAction extends Action {\r\n type: typeof OPEN_MOBILE_MENU;\r\n menu?: any;\r\n subMenu?: any;\r\n}\r\n\r\nexport interface OpenMegaDropdownMenuAction extends Action {\r\n type: typeof OPEN_MEGA_DROPDOWN_MENU;\r\n menu?: any;\r\n subMenu?: any;\r\n}\r\n\r\nexport interface OpenModalAction extends Action {\r\n type: typeof OPEN_MODAL;\r\n stickyLink?: any;\r\n modal?: any;\r\n}\r\n\r\nexport type OverlayAction = CloseAllOverlaysAction | OpenMobileMenuAction | OpenMegaDropdownMenuAction | OpenModalAction;\r\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","var createDefinition = function (propNames) { return ({\n isEnabled: function (props) { return propNames.some(function (name) { return !!props[name]; }); },\n}); };\nvar featureDefinitions = {\n measureLayout: createDefinition([\"layout\", \"layoutId\", \"drag\"]),\n animation: createDefinition([\n \"animate\",\n \"exit\",\n \"variants\",\n \"whileHover\",\n \"whileTap\",\n \"whileFocus\",\n \"whileDrag\",\n \"whileInView\",\n ]),\n exit: createDefinition([\"exit\"]),\n drag: createDefinition([\"drag\", \"dragControls\"]),\n focus: createDefinition([\"whileFocus\"]),\n hover: createDefinition([\"whileHover\", \"onHoverStart\", \"onHoverEnd\"]),\n tap: createDefinition([\"whileTap\", \"onTap\", \"onTapStart\", \"onTapCancel\"]),\n pan: createDefinition([\n \"onPan\",\n \"onPanStart\",\n \"onPanSessionStart\",\n \"onPanEnd\",\n ]),\n inView: createDefinition([\n \"whileInView\",\n \"onViewportEnter\",\n \"onViewportLeave\",\n ]),\n};\nfunction loadFeatures(features) {\n for (var key in features) {\n if (features[key] === null)\n continue;\n if (key === \"projectionNodeConstructor\") {\n featureDefinitions.projectionNodeConstructor = features[key];\n }\n else {\n featureDefinitions[key].Component = features[key];\n }\n }\n}\n\nexport { featureDefinitions, loadFeatures };\n","import { createContext } from 'react';\n\nvar LazyContext = createContext({ strict: false });\n\nexport { LazyContext };\n","import { __assign } from 'tslib';\nimport * as React from 'react';\nimport { useContext } from 'react';\nimport { featureDefinitions } from './definitions.mjs';\nimport { invariant } from 'hey-listen';\nimport { LazyContext } from '../../context/LazyContext.mjs';\n\nvar featureNames = Object.keys(featureDefinitions);\nvar numFeatures = featureNames.length;\n/**\n * Load features via renderless components based on the provided MotionProps.\n */\nfunction useFeatures(props, visualElement, preloadedFeatures) {\n var features = [];\n var lazyContext = useContext(LazyContext);\n if (!visualElement)\n return null;\n /**\n * If we're in development mode, check to make sure we're not rendering a motion component\n * as a child of LazyMotion, as this will break the file-size benefits of using it.\n */\n if (process.env.NODE_ENV !== \"production\" &&\n preloadedFeatures &&\n lazyContext.strict) {\n invariant(false, \"You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.\");\n }\n for (var i = 0; i < numFeatures; i++) {\n var name_1 = featureNames[i];\n var _a = featureDefinitions[name_1], isEnabled = _a.isEnabled, Component = _a.Component;\n /**\n * It might be possible in the future to use this moment to\n * dynamically request functionality. In initial tests this\n * was producing a lot of duplication amongst bundles.\n */\n if (isEnabled(props) && Component) {\n features.push(React.createElement(Component, __assign({ key: name_1 }, props, { visualElement: visualElement })));\n }\n }\n return features;\n}\n\nexport { useFeatures };\n","import { createContext } from 'react';\n\n/**\n * @public\n */\nvar MotionConfigContext = createContext({\n transformPagePoint: function (p) { return p; },\n isStatic: false,\n});\n\nexport { MotionConfigContext };\n","import { createContext, useContext } from 'react';\n\nvar MotionContext = createContext({});\nfunction useVisualElementContext() {\n return useContext(MotionContext).visualElement;\n}\n\nexport { MotionContext, useVisualElementContext };\n","import { createContext } from 'react';\n\n/**\n * @public\n */\nvar PresenceContext = createContext(null);\n\nexport { PresenceContext };\n","var isBrowser = typeof window !== \"undefined\";\n\nexport { isBrowser };\n","import { useLayoutEffect, useEffect } from 'react';\nimport { isBrowser } from './is-browser.mjs';\n\nvar useIsomorphicLayoutEffect = isBrowser ? useLayoutEffect : useEffect;\n\nexport { useIsomorphicLayoutEffect };\n","import { useContext, useRef, useEffect } from 'react';\nimport { PresenceContext } from '../../context/PresenceContext.mjs';\nimport { useVisualElementContext } from '../../context/MotionContext/index.mjs';\nimport { useIsomorphicLayoutEffect } from '../../utils/use-isomorphic-effect.mjs';\nimport { LazyContext } from '../../context/LazyContext.mjs';\n\nfunction useVisualElement(Component, visualState, props, createVisualElement) {\n var lazyContext = useContext(LazyContext);\n var parent = useVisualElementContext();\n var presenceContext = useContext(PresenceContext);\n var visualElementRef = useRef(undefined);\n /**\n * If we haven't preloaded a renderer, check to see if we have one lazy-loaded\n */\n if (!createVisualElement)\n createVisualElement = lazyContext.renderer;\n if (!visualElementRef.current && createVisualElement) {\n visualElementRef.current = createVisualElement(Component, {\n visualState: visualState,\n parent: parent,\n props: props,\n presenceId: presenceContext === null || presenceContext === void 0 ? void 0 : presenceContext.id,\n blockInitialAnimation: (presenceContext === null || presenceContext === void 0 ? void 0 : presenceContext.initial) === false,\n });\n }\n var visualElement = visualElementRef.current;\n useIsomorphicLayoutEffect(function () {\n visualElement === null || visualElement === void 0 ? void 0 : visualElement.syncRender();\n });\n useEffect(function () {\n var _a;\n (_a = visualElement === null || visualElement === void 0 ? void 0 : visualElement.animationState) === null || _a === void 0 ? void 0 : _a.animateChanges();\n });\n useIsomorphicLayoutEffect(function () { return function () { return visualElement === null || visualElement === void 0 ? void 0 : visualElement.notifyUnmount(); }; }, []);\n return visualElement;\n}\n\nexport { useVisualElement };\n","function isRefObject(ref) {\n return (typeof ref === \"object\" &&\n Object.prototype.hasOwnProperty.call(ref, \"current\"));\n}\n\nexport { isRefObject };\n","import { useCallback } from 'react';\nimport { isRefObject } from '../../utils/is-ref-object.mjs';\n\n/**\n * Creates a ref function that, when called, hydrates the provided\n * external ref and VisualElement.\n */\nfunction useMotionRef(visualState, visualElement, externalRef) {\n return useCallback(function (instance) {\n var _a;\n instance && ((_a = visualState.mount) === null || _a === void 0 ? void 0 : _a.call(visualState, instance));\n if (visualElement) {\n instance\n ? visualElement.mount(instance)\n : visualElement.unmount();\n }\n if (externalRef) {\n if (typeof externalRef === \"function\") {\n externalRef(instance);\n }\n else if (isRefObject(externalRef)) {\n externalRef.current = instance;\n }\n }\n }, \n /**\n * Only pass a new ref callback to React if we've received a visual element\n * factory. Otherwise we'll be mounting/remounting every time externalRef\n * or other dependencies change.\n */\n [visualElement]);\n}\n\nexport { useMotionRef };\n","/**\n * Decides if the supplied variable is an array of variant labels\n */\nfunction isVariantLabels(v) {\n return Array.isArray(v);\n}\n/**\n * Decides if the supplied variable is variant label\n */\nfunction isVariantLabel(v) {\n return typeof v === \"string\" || isVariantLabels(v);\n}\n/**\n * Creates an object containing the latest state of every MotionValue on a VisualElement\n */\nfunction getCurrent(visualElement) {\n var current = {};\n visualElement.forEachValue(function (value, key) { return (current[key] = value.get()); });\n return current;\n}\n/**\n * Creates an object containing the latest velocity of every MotionValue on a VisualElement\n */\nfunction getVelocity(visualElement) {\n var velocity = {};\n visualElement.forEachValue(function (value, key) { return (velocity[key] = value.getVelocity()); });\n return velocity;\n}\nfunction resolveVariantFromProps(props, definition, custom, currentValues, currentVelocity) {\n var _a;\n if (currentValues === void 0) { currentValues = {}; }\n if (currentVelocity === void 0) { currentVelocity = {}; }\n /**\n * If the variant definition is a function, resolve.\n */\n if (typeof definition === \"function\") {\n definition = definition(custom !== null && custom !== void 0 ? custom : props.custom, currentValues, currentVelocity);\n }\n /**\n * If the variant definition is a variant label, or\n * the function returned a variant label, resolve.\n */\n if (typeof definition === \"string\") {\n definition = (_a = props.variants) === null || _a === void 0 ? void 0 : _a[definition];\n }\n /**\n * At this point we've resolved both functions and variant labels,\n * but the resolved variant label might itself have been a function.\n * If so, resolve. This can only have returned a valid target object.\n */\n if (typeof definition === \"function\") {\n definition = definition(custom !== null && custom !== void 0 ? custom : props.custom, currentValues, currentVelocity);\n }\n return definition;\n}\nfunction resolveVariant(visualElement, definition, custom) {\n var props = visualElement.getProps();\n return resolveVariantFromProps(props, definition, custom !== null && custom !== void 0 ? custom : props.custom, getCurrent(visualElement), getVelocity(visualElement));\n}\nfunction checkIfControllingVariants(props) {\n var _a;\n return (typeof ((_a = props.animate) === null || _a === void 0 ? void 0 : _a.start) === \"function\" ||\n isVariantLabel(props.initial) ||\n isVariantLabel(props.animate) ||\n isVariantLabel(props.whileHover) ||\n isVariantLabel(props.whileDrag) ||\n isVariantLabel(props.whileTap) ||\n isVariantLabel(props.whileFocus) ||\n isVariantLabel(props.exit));\n}\nfunction checkIfVariantNode(props) {\n return Boolean(checkIfControllingVariants(props) || props.variants);\n}\n\nexport { checkIfControllingVariants, checkIfVariantNode, isVariantLabel, isVariantLabels, resolveVariant, resolveVariantFromProps };\n","import { checkIfControllingVariants, isVariantLabel } from '../../render/utils/variants.mjs';\n\nfunction getCurrentTreeVariants(props, context) {\n if (checkIfControllingVariants(props)) {\n var initial = props.initial, animate = props.animate;\n return {\n initial: initial === false || isVariantLabel(initial)\n ? initial\n : undefined,\n animate: isVariantLabel(animate) ? animate : undefined,\n };\n }\n return props.inherit !== false ? context : {};\n}\n\nexport { getCurrentTreeVariants };\n","import { useMemo, useContext } from 'react';\nimport { MotionContext } from './index.mjs';\nimport { getCurrentTreeVariants } from './utils.mjs';\n\nfunction useCreateMotionContext(props) {\n var _a = getCurrentTreeVariants(props, useContext(MotionContext)), initial = _a.initial, animate = _a.animate;\n return useMemo(function () { return ({ initial: initial, animate: animate }); }, [variantLabelsAsDependency(initial), variantLabelsAsDependency(animate)]);\n}\nfunction variantLabelsAsDependency(prop) {\n return Array.isArray(prop) ? prop.join(\" \") : prop;\n}\n\nexport { useCreateMotionContext };\n","import { useRef } from 'react';\n\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */\nfunction useConstant(init) {\n var ref = useRef(null);\n if (ref.current === null) {\n ref.current = init();\n }\n return ref.current;\n}\n\nexport { useConstant };\n","const defaultTimestep = (1 / 60) * 1000;\nconst getCurrentTime = typeof performance !== \"undefined\"\n ? () => performance.now()\n : () => Date.now();\nconst onNextFrame = typeof window !== \"undefined\"\n ? (callback) => window.requestAnimationFrame(callback)\n : (callback) => setTimeout(() => callback(getCurrentTime()), defaultTimestep);\n\nexport { defaultTimestep, onNextFrame };\n","function createRenderStep(runNextFrame) {\n let toRun = [];\n let toRunNextFrame = [];\n let numToRun = 0;\n let isProcessing = false;\n let flushNextFrame = false;\n const toKeepAlive = new WeakSet();\n const step = {\n schedule: (callback, keepAlive = false, immediate = false) => {\n const addToCurrentFrame = immediate && isProcessing;\n const buffer = addToCurrentFrame ? toRun : toRunNextFrame;\n if (keepAlive)\n toKeepAlive.add(callback);\n if (buffer.indexOf(callback) === -1) {\n buffer.push(callback);\n if (addToCurrentFrame && isProcessing)\n numToRun = toRun.length;\n }\n return callback;\n },\n cancel: (callback) => {\n const index = toRunNextFrame.indexOf(callback);\n if (index !== -1)\n toRunNextFrame.splice(index, 1);\n toKeepAlive.delete(callback);\n },\n process: (frameData) => {\n if (isProcessing) {\n flushNextFrame = true;\n return;\n }\n isProcessing = true;\n [toRun, toRunNextFrame] = [toRunNextFrame, toRun];\n toRunNextFrame.length = 0;\n numToRun = toRun.length;\n if (numToRun) {\n for (let i = 0; i < numToRun; i++) {\n const callback = toRun[i];\n callback(frameData);\n if (toKeepAlive.has(callback)) {\n step.schedule(callback);\n runNextFrame();\n }\n }\n }\n isProcessing = false;\n if (flushNextFrame) {\n flushNextFrame = false;\n step.process(frameData);\n }\n },\n };\n return step;\n}\n\nexport { createRenderStep };\n","import { onNextFrame, defaultTimestep } from './on-next-frame.mjs';\nimport { createRenderStep } from './create-render-step.mjs';\n\nconst maxElapsed = 40;\nlet useDefaultElapsed = true;\nlet runNextFrame = false;\nlet isProcessing = false;\nconst frame = {\n delta: 0,\n timestamp: 0,\n};\nconst stepsOrder = [\n \"read\",\n \"update\",\n \"preRender\",\n \"render\",\n \"postRender\",\n];\nconst steps = stepsOrder.reduce((acc, key) => {\n acc[key] = createRenderStep(() => (runNextFrame = true));\n return acc;\n}, {});\nconst sync = stepsOrder.reduce((acc, key) => {\n const step = steps[key];\n acc[key] = (process, keepAlive = false, immediate = false) => {\n if (!runNextFrame)\n startLoop();\n return step.schedule(process, keepAlive, immediate);\n };\n return acc;\n}, {});\nconst cancelSync = stepsOrder.reduce((acc, key) => {\n acc[key] = steps[key].cancel;\n return acc;\n}, {});\nconst flushSync = stepsOrder.reduce((acc, key) => {\n acc[key] = () => steps[key].process(frame);\n return acc;\n}, {});\nconst processStep = (stepId) => steps[stepId].process(frame);\nconst processFrame = (timestamp) => {\n runNextFrame = false;\n frame.delta = useDefaultElapsed\n ? defaultTimestep\n : Math.max(Math.min(timestamp - frame.timestamp, maxElapsed), 1);\n frame.timestamp = timestamp;\n isProcessing = true;\n stepsOrder.forEach(processStep);\n isProcessing = false;\n if (runNextFrame) {\n useDefaultElapsed = false;\n onNextFrame(processFrame);\n }\n};\nconst startLoop = () => {\n runNextFrame = true;\n useDefaultElapsed = true;\n if (!isProcessing)\n onNextFrame(processFrame);\n};\nconst getFrameData = () => frame;\n\nexport default sync;\nexport { cancelSync, flushSync, getFrameData };\n","const mix = (from, to, progress) => -progress * from + progress * to + from;\n\nexport { mix };\n","function velocityPerSecond(velocity, frameDuration) {\n return frameDuration ? velocity * (1000 / frameDuration) : 0;\n}\n\nexport { velocityPerSecond };\n","import { __read } from 'tslib';\n\nfunction addUniqueItem(arr, item) {\n arr.indexOf(item) === -1 && arr.push(item);\n}\nfunction removeItem(arr, item) {\n var index = arr.indexOf(item);\n index > -1 && arr.splice(index, 1);\n}\n// Adapted from array-move\nfunction moveItem(_a, fromIndex, toIndex) {\n var _b = __read(_a), arr = _b.slice(0);\n var startIndex = fromIndex < 0 ? arr.length + fromIndex : fromIndex;\n if (startIndex >= 0 && startIndex < arr.length) {\n var endIndex = toIndex < 0 ? arr.length + toIndex : toIndex;\n var _c = __read(arr.splice(fromIndex, 1), 1), item = _c[0];\n arr.splice(endIndex, 0, item);\n }\n return arr;\n}\n\nexport { addUniqueItem, moveItem, removeItem };\n","import { addUniqueItem, removeItem } from './array.mjs';\n\nvar SubscriptionManager = /** @class */ (function () {\n function SubscriptionManager() {\n this.subscriptions = [];\n }\n SubscriptionManager.prototype.add = function (handler) {\n var _this = this;\n addUniqueItem(this.subscriptions, handler);\n return function () { return removeItem(_this.subscriptions, handler); };\n };\n SubscriptionManager.prototype.notify = function (a, b, c) {\n var numSubscriptions = this.subscriptions.length;\n if (!numSubscriptions)\n return;\n if (numSubscriptions === 1) {\n /**\n * If there's only a single handler we can just call it without invoking a loop.\n */\n this.subscriptions[0](a, b, c);\n }\n else {\n for (var i = 0; i < numSubscriptions; i++) {\n /**\n * Check whether the handler exists before firing as it's possible\n * the subscriptions were modified during this loop running.\n */\n var handler = this.subscriptions[i];\n handler && handler(a, b, c);\n }\n }\n };\n SubscriptionManager.prototype.getSize = function () {\n return this.subscriptions.length;\n };\n SubscriptionManager.prototype.clear = function () {\n this.subscriptions.length = 0;\n };\n return SubscriptionManager;\n}());\n\nexport { SubscriptionManager };\n","import sync, { getFrameData } from 'framesync';\nimport { velocityPerSecond } from 'popmotion';\nimport { SubscriptionManager } from '../utils/subscription-manager.mjs';\n\nvar isFloat = function (value) {\n return !isNaN(parseFloat(value));\n};\n/**\n * `MotionValue` is used to track the state and velocity of motion values.\n *\n * @public\n */\nvar MotionValue = /** @class */ (function () {\n /**\n * @param init - The initiating value\n * @param config - Optional configuration options\n *\n * - `transformer`: A function to transform incoming values with.\n *\n * @internal\n */\n function MotionValue(init) {\n var _this = this;\n /**\n * Duration, in milliseconds, since last updating frame.\n *\n * @internal\n */\n this.timeDelta = 0;\n /**\n * Timestamp of the last time this `MotionValue` was updated.\n *\n * @internal\n */\n this.lastUpdated = 0;\n /**\n * Functions to notify when the `MotionValue` updates.\n *\n * @internal\n */\n this.updateSubscribers = new SubscriptionManager();\n /**\n * Functions to notify when the velocity updates.\n *\n * @internal\n */\n this.velocityUpdateSubscribers = new SubscriptionManager();\n /**\n * Functions to notify when the `MotionValue` updates and `render` is set to `true`.\n *\n * @internal\n */\n this.renderSubscribers = new SubscriptionManager();\n /**\n * Tracks whether this value can output a velocity. Currently this is only true\n * if the value is numerical, but we might be able to widen the scope here and support\n * other value types.\n *\n * @internal\n */\n this.canTrackVelocity = false;\n this.updateAndNotify = function (v, render) {\n if (render === void 0) { render = true; }\n _this.prev = _this.current;\n _this.current = v;\n // Update timestamp\n var _a = getFrameData(), delta = _a.delta, timestamp = _a.timestamp;\n if (_this.lastUpdated !== timestamp) {\n _this.timeDelta = delta;\n _this.lastUpdated = timestamp;\n sync.postRender(_this.scheduleVelocityCheck);\n }\n // Update update subscribers\n if (_this.prev !== _this.current) {\n _this.updateSubscribers.notify(_this.current);\n }\n // Update velocity subscribers\n if (_this.velocityUpdateSubscribers.getSize()) {\n _this.velocityUpdateSubscribers.notify(_this.getVelocity());\n }\n // Update render subscribers\n if (render) {\n _this.renderSubscribers.notify(_this.current);\n }\n };\n /**\n * Schedule a velocity check for the next frame.\n *\n * This is an instanced and bound function to prevent generating a new\n * function once per frame.\n *\n * @internal\n */\n this.scheduleVelocityCheck = function () { return sync.postRender(_this.velocityCheck); };\n /**\n * Updates `prev` with `current` if the value hasn't been updated this frame.\n * This ensures velocity calculations return `0`.\n *\n * This is an instanced and bound function to prevent generating a new\n * function once per frame.\n *\n * @internal\n */\n this.velocityCheck = function (_a) {\n var timestamp = _a.timestamp;\n if (timestamp !== _this.lastUpdated) {\n _this.prev = _this.current;\n _this.velocityUpdateSubscribers.notify(_this.getVelocity());\n }\n };\n this.hasAnimated = false;\n this.prev = this.current = init;\n this.canTrackVelocity = isFloat(this.current);\n }\n /**\n * Adds a function that will be notified when the `MotionValue` is updated.\n *\n * It returns a function that, when called, will cancel the subscription.\n *\n * When calling `onChange` inside a React component, it should be wrapped with the\n * `useEffect` hook. As it returns an unsubscribe function, this should be returned\n * from the `useEffect` function to ensure you don't add duplicate subscribers..\n *\n * ```jsx\n * export const MyComponent = () => {\n * const x = useMotionValue(0)\n * const y = useMotionValue(0)\n * const opacity = useMotionValue(1)\n *\n * useEffect(() => {\n * function updateOpacity() {\n * const maxXY = Math.max(x.get(), y.get())\n * const newOpacity = transform(maxXY, [0, 100], [1, 0])\n * opacity.set(newOpacity)\n * }\n *\n * const unsubscribeX = x.onChange(updateOpacity)\n * const unsubscribeY = y.onChange(updateOpacity)\n *\n * return () => {\n * unsubscribeX()\n * unsubscribeY()\n * }\n * }, [])\n *\n * return <motion.div style={{ x }} />\n * }\n * ```\n *\n * @internalremarks\n *\n * We could look into a `useOnChange` hook if the above lifecycle management proves confusing.\n *\n * ```jsx\n * useOnChange(x, () => {})\n * ```\n *\n * @param subscriber - A function that receives the latest value.\n * @returns A function that, when called, will cancel this subscription.\n *\n * @public\n */\n MotionValue.prototype.onChange = function (subscription) {\n return this.updateSubscribers.add(subscription);\n };\n MotionValue.prototype.clearListeners = function () {\n this.updateSubscribers.clear();\n };\n /**\n * Adds a function that will be notified when the `MotionValue` requests a render.\n *\n * @param subscriber - A function that's provided the latest value.\n * @returns A function that, when called, will cancel this subscription.\n *\n * @internal\n */\n MotionValue.prototype.onRenderRequest = function (subscription) {\n // Render immediately\n subscription(this.get());\n return this.renderSubscribers.add(subscription);\n };\n /**\n * Attaches a passive effect to the `MotionValue`.\n *\n * @internal\n */\n MotionValue.prototype.attach = function (passiveEffect) {\n this.passiveEffect = passiveEffect;\n };\n /**\n * Sets the state of the `MotionValue`.\n *\n * @remarks\n *\n * ```jsx\n * const x = useMotionValue(0)\n * x.set(10)\n * ```\n *\n * @param latest - Latest value to set.\n * @param render - Whether to notify render subscribers. Defaults to `true`\n *\n * @public\n */\n MotionValue.prototype.set = function (v, render) {\n if (render === void 0) { render = true; }\n if (!render || !this.passiveEffect) {\n this.updateAndNotify(v, render);\n }\n else {\n this.passiveEffect(v, this.updateAndNotify);\n }\n };\n /**\n * Returns the latest state of `MotionValue`\n *\n * @returns - The latest state of `MotionValue`\n *\n * @public\n */\n MotionValue.prototype.get = function () {\n return this.current;\n };\n /**\n * @public\n */\n MotionValue.prototype.getPrevious = function () {\n return this.prev;\n };\n /**\n * Returns the latest velocity of `MotionValue`\n *\n * @returns - The latest velocity of `MotionValue`. Returns `0` if the state is non-numerical.\n *\n * @public\n */\n MotionValue.prototype.getVelocity = function () {\n // This could be isFloat(this.prev) && isFloat(this.current), but that would be wasteful\n return this.canTrackVelocity\n ? // These casts could be avoided if parseFloat would be typed better\n velocityPerSecond(parseFloat(this.current) -\n parseFloat(this.prev), this.timeDelta)\n : 0;\n };\n /**\n * Registers a new animation to control this `MotionValue`. Only one\n * animation can drive a `MotionValue` at one time.\n *\n * ```jsx\n * value.start()\n * ```\n *\n * @param animation - A function that starts the provided animation\n *\n * @internal\n */\n MotionValue.prototype.start = function (animation) {\n var _this = this;\n this.stop();\n return new Promise(function (resolve) {\n _this.hasAnimated = true;\n _this.stopAnimation = animation(resolve);\n }).then(function () { return _this.clearAnimation(); });\n };\n /**\n * Stop the currently active animation.\n *\n * @public\n */\n MotionValue.prototype.stop = function () {\n if (this.stopAnimation)\n this.stopAnimation();\n this.clearAnimation();\n };\n /**\n * Returns `true` if this value is currently animating.\n *\n * @public\n */\n MotionValue.prototype.isAnimating = function () {\n return !!this.stopAnimation;\n };\n MotionValue.prototype.clearAnimation = function () {\n this.stopAnimation = null;\n };\n /**\n * Destroy and clean up subscribers to this `MotionValue`.\n *\n * The `MotionValue` hooks like `useMotionValue` and `useTransform` automatically\n * handle the lifecycle of the returned `MotionValue`, so this method is only necessary if you've manually\n * created a `MotionValue` via the `motionValue` function.\n *\n * @public\n */\n MotionValue.prototype.destroy = function () {\n this.updateSubscribers.clear();\n this.renderSubscribers.clear();\n this.stop();\n };\n return MotionValue;\n}());\n/**\n * @internal\n */\nfunction motionValue(init) {\n return new MotionValue(init);\n}\n\nexport { MotionValue, motionValue };\n","var isMotionValue = function (value) {\n return Boolean(value !== null && typeof value === \"object\" && value.getVelocity);\n};\n\nexport { isMotionValue };\n","var warning = function () { };\r\nvar invariant = function () { };\r\nif (process.env.NODE_ENV !== 'production') {\r\n warning = function (check, message) {\r\n if (!check && typeof console !== 'undefined') {\r\n console.warn(message);\r\n }\r\n };\r\n invariant = function (check, message) {\r\n if (!check) {\r\n throw new Error(message);\r\n }\r\n };\r\n}\n\nexport { invariant, warning };\n","const clamp = (min, max, v) => Math.min(Math.max(v, min), max);\n\nexport { clamp };\n","import { warning } from 'hey-listen';\nimport { clamp } from '../../utils/clamp.mjs';\n\nconst safeMin = 0.001;\nconst minDuration = 0.01;\nconst maxDuration = 10.0;\nconst minDamping = 0.05;\nconst maxDamping = 1;\nfunction findSpring({ duration = 800, bounce = 0.25, velocity = 0, mass = 1, }) {\n let envelope;\n let derivative;\n warning(duration <= maxDuration * 1000, \"Spring duration must be 10 seconds or less\");\n let dampingRatio = 1 - bounce;\n dampingRatio = clamp(minDamping, maxDamping, dampingRatio);\n duration = clamp(minDuration, maxDuration, duration / 1000);\n if (dampingRatio < 1) {\n envelope = (undampedFreq) => {\n const exponentialDecay = undampedFreq * dampingRatio;\n const delta = exponentialDecay * duration;\n const a = exponentialDecay - velocity;\n const b = calcAngularFreq(undampedFreq, dampingRatio);\n const c = Math.exp(-delta);\n return safeMin - (a / b) * c;\n };\n derivative = (undampedFreq) => {\n const exponentialDecay = undampedFreq * dampingRatio;\n const delta = exponentialDecay * duration;\n const d = delta * velocity + velocity;\n const e = Math.pow(dampingRatio, 2) * Math.pow(undampedFreq, 2) * duration;\n const f = Math.exp(-delta);\n const g = calcAngularFreq(Math.pow(undampedFreq, 2), dampingRatio);\n const factor = -envelope(undampedFreq) + safeMin > 0 ? -1 : 1;\n return (factor * ((d - e) * f)) / g;\n };\n }\n else {\n envelope = (undampedFreq) => {\n const a = Math.exp(-undampedFreq * duration);\n const b = (undampedFreq - velocity) * duration + 1;\n return -safeMin + a * b;\n };\n derivative = (undampedFreq) => {\n const a = Math.exp(-undampedFreq * duration);\n const b = (velocity - undampedFreq) * (duration * duration);\n return a * b;\n };\n }\n const initialGuess = 5 / duration;\n const undampedFreq = approximateRoot(envelope, derivative, initialGuess);\n duration = duration * 1000;\n if (isNaN(undampedFreq)) {\n return {\n stiffness: 100,\n damping: 10,\n duration,\n };\n }\n else {\n const stiffness = Math.pow(undampedFreq, 2) * mass;\n return {\n stiffness,\n damping: dampingRatio * 2 * Math.sqrt(mass * stiffness),\n duration,\n };\n }\n}\nconst rootIterations = 12;\nfunction approximateRoot(envelope, derivative, initialGuess) {\n let result = initialGuess;\n for (let i = 1; i < rootIterations; i++) {\n result = result - envelope(result) / derivative(result);\n }\n return result;\n}\nfunction calcAngularFreq(undampedFreq, dampingRatio) {\n return undampedFreq * Math.sqrt(1 - dampingRatio * dampingRatio);\n}\n\nexport { calcAngularFreq, findSpring, maxDamping, maxDuration, minDamping, minDuration };\n","import { __rest } from 'tslib';\nimport { findSpring, calcAngularFreq } from '../utils/find-spring.mjs';\n\nconst durationKeys = [\"duration\", \"bounce\"];\nconst physicsKeys = [\"stiffness\", \"damping\", \"mass\"];\nfunction isSpringType(options, keys) {\n return keys.some((key) => options[key] !== undefined);\n}\nfunction getSpringOptions(options) {\n let springOptions = Object.assign({ velocity: 0.0, stiffness: 100, damping: 10, mass: 1.0, isResolvedFromDuration: false }, options);\n if (!isSpringType(options, physicsKeys) &&\n isSpringType(options, durationKeys)) {\n const derived = findSpring(options);\n springOptions = Object.assign(Object.assign(Object.assign({}, springOptions), derived), { velocity: 0.0, mass: 1.0 });\n springOptions.isResolvedFromDuration = true;\n }\n return springOptions;\n}\nfunction spring(_a) {\n var { from = 0.0, to = 1.0, restSpeed = 2, restDelta } = _a, options = __rest(_a, [\"from\", \"to\", \"restSpeed\", \"restDelta\"]);\n const state = { done: false, value: from };\n let { stiffness, damping, mass, velocity, duration, isResolvedFromDuration, } = getSpringOptions(options);\n let resolveSpring = zero;\n let resolveVelocity = zero;\n function createSpring() {\n const initialVelocity = velocity ? -(velocity / 1000) : 0.0;\n const initialDelta = to - from;\n const dampingRatio = damping / (2 * Math.sqrt(stiffness * mass));\n const undampedAngularFreq = Math.sqrt(stiffness / mass) / 1000;\n if (restDelta === undefined) {\n restDelta = Math.min(Math.abs(to - from) / 100, 0.4);\n }\n if (dampingRatio < 1) {\n const angularFreq = calcAngularFreq(undampedAngularFreq, dampingRatio);\n resolveSpring = (t) => {\n const envelope = Math.exp(-dampingRatio * undampedAngularFreq * t);\n return (to -\n envelope *\n (((initialVelocity +\n dampingRatio * undampedAngularFreq * initialDelta) /\n angularFreq) *\n Math.sin(angularFreq * t) +\n initialDelta * Math.cos(angularFreq * t)));\n };\n resolveVelocity = (t) => {\n const envelope = Math.exp(-dampingRatio * undampedAngularFreq * t);\n return (dampingRatio *\n undampedAngularFreq *\n envelope *\n ((Math.sin(angularFreq * t) *\n (initialVelocity +\n dampingRatio *\n undampedAngularFreq *\n initialDelta)) /\n angularFreq +\n initialDelta * Math.cos(angularFreq * t)) -\n envelope *\n (Math.cos(angularFreq * t) *\n (initialVelocity +\n dampingRatio *\n undampedAngularFreq *\n initialDelta) -\n angularFreq *\n initialDelta *\n Math.sin(angularFreq * t)));\n };\n }\n else if (dampingRatio === 1) {\n resolveSpring = (t) => to -\n Math.exp(-undampedAngularFreq * t) *\n (initialDelta +\n (initialVelocity + undampedAngularFreq * initialDelta) *\n t);\n }\n else {\n const dampedAngularFreq = undampedAngularFreq * Math.sqrt(dampingRatio * dampingRatio - 1);\n resolveSpring = (t) => {\n const envelope = Math.exp(-dampingRatio * undampedAngularFreq * t);\n const freqForT = Math.min(dampedAngularFreq * t, 300);\n return (to -\n (envelope *\n ((initialVelocity +\n dampingRatio * undampedAngularFreq * initialDelta) *\n Math.sinh(freqForT) +\n dampedAngularFreq *\n initialDelta *\n Math.cosh(freqForT))) /\n dampedAngularFreq);\n };\n }\n }\n createSpring();\n return {\n next: (t) => {\n const current = resolveSpring(t);\n if (!isResolvedFromDuration) {\n const currentVelocity = resolveVelocity(t) * 1000;\n const isBelowVelocityThreshold = Math.abs(currentVelocity) <= restSpeed;\n const isBelowDisplacementThreshold = Math.abs(to - current) <= restDelta;\n state.done =\n isBelowVelocityThreshold && isBelowDisplacementThreshold;\n }\n else {\n state.done = t >= duration;\n }\n state.value = state.done ? to : current;\n return state;\n },\n flipTarget: () => {\n velocity = -velocity;\n [from, to] = [to, from];\n createSpring();\n },\n };\n}\nspring.needsInterpolation = (a, b) => typeof a === \"string\" || typeof b === \"string\";\nconst zero = (_t) => 0;\n\nexport { spring };\n","const progress = (from, to, value) => {\n const toFromDifference = to - from;\n return toFromDifference === 0 ? 1 : (value - from) / toFromDifference;\n};\n\nexport { progress };\n","const clamp = (min, max) => (v) => Math.max(Math.min(v, max), min);\nconst sanitize = (v) => (v % 1 ? Number(v.toFixed(5)) : v);\nconst floatRegex = /(-)?([\\d]*\\.?[\\d])+/g;\nconst colorRegex = /(#[0-9a-f]{6}|#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\\((-?[\\d\\.]+%?[,\\s]+){2,3}\\s*\\/*\\s*[\\d\\.]+%?\\))/gi;\nconst singleColorRegex = /^(#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\\((-?[\\d\\.]+%?[,\\s]+){2,3}\\s*\\/*\\s*[\\d\\.]+%?\\))$/i;\nfunction isString(v) {\n return typeof v === 'string';\n}\n\nexport { clamp, colorRegex, floatRegex, isString, sanitize, singleColorRegex };\n","import { clamp } from '../utils.mjs';\n\nconst number = {\n test: (v) => typeof v === 'number',\n parse: parseFloat,\n transform: (v) => v,\n};\nconst alpha = Object.assign(Object.assign({}, number), { transform: clamp(0, 1) });\nconst scale = Object.assign(Object.assign({}, number), { default: 1 });\n\nexport { alpha, number, scale };\n","import { isString, singleColorRegex, floatRegex } from '../utils.mjs';\n\nconst isColorString = (type, testProp) => (v) => {\n return Boolean((isString(v) && singleColorRegex.test(v) && v.startsWith(type)) ||\n (testProp && Object.prototype.hasOwnProperty.call(v, testProp)));\n};\nconst splitColor = (aName, bName, cName) => (v) => {\n if (!isString(v))\n return v;\n const [a, b, c, alpha] = v.match(floatRegex);\n return {\n [aName]: parseFloat(a),\n [bName]: parseFloat(b),\n [cName]: parseFloat(c),\n alpha: alpha !== undefined ? parseFloat(alpha) : 1,\n };\n};\n\nexport { isColorString, splitColor };\n","import { number, alpha } from '../numbers/index.mjs';\nimport { sanitize, clamp } from '../utils.mjs';\nimport { isColorString, splitColor } from './utils.mjs';\n\nconst clampRgbUnit = clamp(0, 255);\nconst rgbUnit = Object.assign(Object.assign({}, number), { transform: (v) => Math.round(clampRgbUnit(v)) });\nconst rgba = {\n test: isColorString('rgb', 'red'),\n parse: splitColor('red', 'green', 'blue'),\n transform: ({ red, green, blue, alpha: alpha$1 = 1 }) => 'rgba(' +\n rgbUnit.transform(red) +\n ', ' +\n rgbUnit.transform(green) +\n ', ' +\n rgbUnit.transform(blue) +\n ', ' +\n sanitize(alpha.transform(alpha$1)) +\n ')',\n};\n\nexport { rgbUnit, rgba };\n","import { rgba } from './rgba.mjs';\nimport { isColorString } from './utils.mjs';\n\nfunction parseHex(v) {\n let r = '';\n let g = '';\n let b = '';\n let a = '';\n if (v.length > 5) {\n r = v.substr(1, 2);\n g = v.substr(3, 2);\n b = v.substr(5, 2);\n a = v.substr(7, 2);\n }\n else {\n r = v.substr(1, 1);\n g = v.substr(2, 1);\n b = v.substr(3, 1);\n a = v.substr(4, 1);\n r += r;\n g += g;\n b += b;\n a += a;\n }\n return {\n red: parseInt(r, 16),\n green: parseInt(g, 16),\n blue: parseInt(b, 16),\n alpha: a ? parseInt(a, 16) / 255 : 1,\n };\n}\nconst hex = {\n test: isColorString('#'),\n parse: parseHex,\n transform: rgba.transform,\n};\n\nexport { hex };\n","import { isString } from '../utils.mjs';\n\nconst createUnitType = (unit) => ({\n test: (v) => isString(v) && v.endsWith(unit) && v.split(' ').length === 1,\n parse: parseFloat,\n transform: (v) => `${v}${unit}`,\n});\nconst degrees = createUnitType('deg');\nconst percent = createUnitType('%');\nconst px = createUnitType('px');\nconst vh = createUnitType('vh');\nconst vw = createUnitType('vw');\nconst progressPercentage = Object.assign(Object.assign({}, percent), { parse: (v) => percent.parse(v) / 100, transform: (v) => percent.transform(v * 100) });\n\nexport { degrees, percent, progressPercentage, px, vh, vw };\n","import { alpha } from '../numbers/index.mjs';\nimport { percent } from '../numbers/units.mjs';\nimport { sanitize } from '../utils.mjs';\nimport { isColorString, splitColor } from './utils.mjs';\n\nconst hsla = {\n test: isColorString('hsl', 'hue'),\n parse: splitColor('hue', 'saturation', 'lightness'),\n transform: ({ hue, saturation, lightness, alpha: alpha$1 = 1 }) => {\n return ('hsla(' +\n Math.round(hue) +\n ', ' +\n percent.transform(sanitize(saturation)) +\n ', ' +\n percent.transform(sanitize(lightness)) +\n ', ' +\n sanitize(alpha.transform(alpha$1)) +\n ')');\n },\n};\n\nexport { hsla };\n","function hueToRgb(p, q, t) {\n if (t < 0)\n t += 1;\n if (t > 1)\n t -= 1;\n if (t < 1 / 6)\n return p + (q - p) * 6 * t;\n if (t < 1 / 2)\n return q;\n if (t < 2 / 3)\n return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n}\nfunction hslaToRgba({ hue, saturation, lightness, alpha }) {\n hue /= 360;\n saturation /= 100;\n lightness /= 100;\n let red = 0;\n let green = 0;\n let blue = 0;\n if (!saturation) {\n red = green = blue = lightness;\n }\n else {\n const q = lightness < 0.5\n ? lightness * (1 + saturation)\n : lightness + saturation - lightness * saturation;\n const p = 2 * lightness - q;\n red = hueToRgb(p, q, hue + 1 / 3);\n green = hueToRgb(p, q, hue);\n blue = hueToRgb(p, q, hue - 1 / 3);\n }\n return {\n red: Math.round(red * 255),\n green: Math.round(green * 255),\n blue: Math.round(blue * 255),\n alpha,\n };\n}\n\nexport { hslaToRgba };\n","import { mix } from './mix.mjs';\nimport { hsla, rgba, hex } from 'style-value-types';\nimport { invariant } from 'hey-listen';\nimport { hslaToRgba } from './hsla-to-rgba.mjs';\n\nconst mixLinearColor = (from, to, v) => {\n const fromExpo = from * from;\n const toExpo = to * to;\n return Math.sqrt(Math.max(0, v * (toExpo - fromExpo) + fromExpo));\n};\nconst colorTypes = [hex, rgba, hsla];\nconst getColorType = (v) => colorTypes.find((type) => type.test(v));\nconst notAnimatable = (color) => `'${color}' is not an animatable color. Use the equivalent color code instead.`;\nconst mixColor = (from, to) => {\n let fromColorType = getColorType(from);\n let toColorType = getColorType(to);\n invariant(!!fromColorType, notAnimatable(from));\n invariant(!!toColorType, notAnimatable(to));\n let fromColor = fromColorType.parse(from);\n let toColor = toColorType.parse(to);\n if (fromColorType === hsla) {\n fromColor = hslaToRgba(fromColor);\n fromColorType = rgba;\n }\n if (toColorType === hsla) {\n toColor = hslaToRgba(toColor);\n toColorType = rgba;\n }\n const blended = Object.assign({}, fromColor);\n return (v) => {\n for (const key in blended) {\n if (key !== \"alpha\") {\n blended[key] = mixLinearColor(fromColor[key], toColor[key], v);\n }\n }\n blended.alpha = mix(fromColor.alpha, toColor.alpha, v);\n return fromColorType.transform(blended);\n };\n};\n\nexport { mixColor, mixLinearColor };\n","import { isString } from '../utils.mjs';\nimport { hex } from './hex.mjs';\nimport { hsla } from './hsla.mjs';\nimport { rgba } from './rgba.mjs';\n\nconst color = {\n test: (v) => rgba.test(v) || hex.test(v) || hsla.test(v),\n parse: (v) => {\n if (rgba.test(v)) {\n return rgba.parse(v);\n }\n else if (hsla.test(v)) {\n return hsla.parse(v);\n }\n else {\n return hex.parse(v);\n }\n },\n transform: (v) => {\n return isString(v)\n ? v\n : v.hasOwnProperty('red')\n ? rgba.transform(v)\n : hsla.transform(v);\n },\n};\n\nexport { color };\n","import { color } from '../color/index.mjs';\nimport { number } from '../numbers/index.mjs';\nimport { isString, floatRegex, colorRegex, sanitize } from '../utils.mjs';\n\nconst colorToken = '${c}';\nconst numberToken = '${n}';\nfunction test(v) {\n var _a, _b, _c, _d;\n return (isNaN(v) &&\n isString(v) &&\n ((_b = (_a = v.match(floatRegex)) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) + ((_d = (_c = v.match(colorRegex)) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : 0) > 0);\n}\nfunction analyse(v) {\n if (typeof v === 'number')\n v = `${v}`;\n const values = [];\n let numColors = 0;\n const colors = v.match(colorRegex);\n if (colors) {\n numColors = colors.length;\n v = v.replace(colorRegex, colorToken);\n values.push(...colors.map(color.parse));\n }\n const numbers = v.match(floatRegex);\n if (numbers) {\n v = v.replace(floatRegex, numberToken);\n values.push(...numbers.map(number.parse));\n }\n return { values, numColors, tokenised: v };\n}\nfunction parse(v) {\n return analyse(v).values;\n}\nfunction createTransformer(v) {\n const { values, numColors, tokenised } = analyse(v);\n const numValues = values.length;\n return (v) => {\n let output = tokenised;\n for (let i = 0; i < numValues; i++) {\n output = output.replace(i < numColors ? colorToken : numberToken, i < numColors ? color.transform(v[i]) : sanitize(v[i]));\n }\n return output;\n };\n}\nconst convertNumbersToZero = (v) => typeof v === 'number' ? 0 : v;\nfunction getAnimatableNone(v) {\n const parsed = parse(v);\n const transformer = createTransformer(v);\n return transformer(parsed.map(convertNumbersToZero));\n}\nconst complex = { test, parse, createTransformer, getAnimatableNone };\n\nexport { complex };\n","const zeroPoint = {\n x: 0,\n y: 0,\n z: 0\n};\nconst isNum = (v) => typeof v === 'number';\n\nexport { isNum, zeroPoint };\n","const combineFunctions = (a, b) => (v) => b(a(v));\nconst pipe = (...transformers) => transformers.reduce(combineFunctions);\n\nexport { pipe };\n","import { complex, color } from 'style-value-types';\nimport { mix } from './mix.mjs';\nimport { mixColor } from './mix-color.mjs';\nimport { isNum } from './inc.mjs';\nimport { pipe } from './pipe.mjs';\nimport { warning } from 'hey-listen';\n\nfunction getMixer(origin, target) {\n if (isNum(origin)) {\n return (v) => mix(origin, target, v);\n }\n else if (color.test(origin)) {\n return mixColor(origin, target);\n }\n else {\n return mixComplex(origin, target);\n }\n}\nconst mixArray = (from, to) => {\n const output = [...from];\n const numValues = output.length;\n const blendValue = from.map((fromThis, i) => getMixer(fromThis, to[i]));\n return (v) => {\n for (let i = 0; i < numValues; i++) {\n output[i] = blendValue[i](v);\n }\n return output;\n };\n};\nconst mixObject = (origin, target) => {\n const output = Object.assign(Object.assign({}, origin), target);\n const blendValue = {};\n for (const key in output) {\n if (origin[key] !== undefined && target[key] !== undefined) {\n blendValue[key] = getMixer(origin[key], target[key]);\n }\n }\n return (v) => {\n for (const key in blendValue) {\n output[key] = blendValue[key](v);\n }\n return output;\n };\n};\nfunction analyse(value) {\n const parsed = complex.parse(value);\n const numValues = parsed.length;\n let numNumbers = 0;\n let numRGB = 0;\n let numHSL = 0;\n for (let i = 0; i < numValues; i++) {\n if (numNumbers || typeof parsed[i] === \"number\") {\n numNumbers++;\n }\n else {\n if (parsed[i].hue !== undefined) {\n numHSL++;\n }\n else {\n numRGB++;\n }\n }\n }\n return { parsed, numNumbers, numRGB, numHSL };\n}\nconst mixComplex = (origin, target) => {\n const template = complex.createTransformer(target);\n const originStats = analyse(origin);\n const targetStats = analyse(target);\n const canInterpolate = originStats.numHSL === targetStats.numHSL &&\n originStats.numRGB === targetStats.numRGB &&\n originStats.numNumbers >= targetStats.numNumbers;\n if (canInterpolate) {\n return pipe(mixArray(originStats.parsed, targetStats.parsed), template);\n }\n else {\n warning(true, `Complex values '${origin}' and '${target}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`);\n return (p) => `${p > 0 ? target : origin}`;\n }\n};\n\nexport { mixArray, mixComplex, mixObject };\n","import { progress } from './progress.mjs';\nimport { mix } from './mix.mjs';\nimport { mixColor } from './mix-color.mjs';\nimport { mixComplex, mixArray, mixObject } from './mix-complex.mjs';\nimport { color } from 'style-value-types';\nimport { clamp } from './clamp.mjs';\nimport { pipe } from './pipe.mjs';\nimport { invariant } from 'hey-listen';\n\nconst mixNumber = (from, to) => (p) => mix(from, to, p);\nfunction detectMixerFactory(v) {\n if (typeof v === 'number') {\n return mixNumber;\n }\n else if (typeof v === 'string') {\n if (color.test(v)) {\n return mixColor;\n }\n else {\n return mixComplex;\n }\n }\n else if (Array.isArray(v)) {\n return mixArray;\n }\n else if (typeof v === 'object') {\n return mixObject;\n }\n}\nfunction createMixers(output, ease, customMixer) {\n const mixers = [];\n const mixerFactory = customMixer || detectMixerFactory(output[0]);\n const numMixers = output.length - 1;\n for (let i = 0; i < numMixers; i++) {\n let mixer = mixerFactory(output[i], output[i + 1]);\n if (ease) {\n const easingFunction = Array.isArray(ease) ? ease[i] : ease;\n mixer = pipe(easingFunction, mixer);\n }\n mixers.push(mixer);\n }\n return mixers;\n}\nfunction fastInterpolate([from, to], [mixer]) {\n return (v) => mixer(progress(from, to, v));\n}\nfunction slowInterpolate(input, mixers) {\n const inputLength = input.length;\n const lastInputIndex = inputLength - 1;\n return (v) => {\n let mixerIndex = 0;\n let foundMixerIndex = false;\n if (v <= input[0]) {\n foundMixerIndex = true;\n }\n else if (v >= input[lastInputIndex]) {\n mixerIndex = lastInputIndex - 1;\n foundMixerIndex = true;\n }\n if (!foundMixerIndex) {\n let i = 1;\n for (; i < inputLength; i++) {\n if (input[i] > v || i === lastInputIndex) {\n break;\n }\n }\n mixerIndex = i - 1;\n }\n const progressInRange = progress(input[mixerIndex], input[mixerIndex + 1], v);\n return mixers[mixerIndex](progressInRange);\n };\n}\nfunction interpolate(input, output, { clamp: isClamp = true, ease, mixer } = {}) {\n const inputLength = input.length;\n invariant(inputLength === output.length, 'Both input and output ranges must be the same length');\n invariant(!ease || !Array.isArray(ease) || ease.length === inputLength - 1, 'Array of easing functions must be of length `input.length - 1`, as it applies to the transitions **between** the defined values.');\n if (input[0] > input[inputLength - 1]) {\n input = [].concat(input);\n output = [].concat(output);\n input.reverse();\n output.reverse();\n }\n const mixers = createMixers(output, ease, mixer);\n const interpolator = inputLength === 2\n ? fastInterpolate(input, mixers)\n : slowInterpolate(input, mixers);\n return isClamp\n ? (v) => interpolator(clamp(input[0], input[inputLength - 1], v))\n : interpolator;\n}\n\nexport { interpolate };\n","const reverseEasing = easing => p => 1 - easing(1 - p);\nconst mirrorEasing = easing => p => p <= 0.5 ? easing(2 * p) / 2 : (2 - easing(2 * (1 - p))) / 2;\nconst createExpoIn = (power) => p => Math.pow(p, power);\nconst createBackIn = (power) => p => p * p * ((power + 1) * p - power);\nconst createAnticipate = (power) => {\n const backEasing = createBackIn(power);\n return p => (p *= 2) < 1\n ? 0.5 * backEasing(p)\n : 0.5 * (2 - Math.pow(2, -10 * (p - 1)));\n};\n\nexport { createAnticipate, createBackIn, createExpoIn, mirrorEasing, reverseEasing };\n","import { createExpoIn, reverseEasing, mirrorEasing, createBackIn, createAnticipate } from './utils.mjs';\n\nconst DEFAULT_OVERSHOOT_STRENGTH = 1.525;\nconst BOUNCE_FIRST_THRESHOLD = 4.0 / 11.0;\nconst BOUNCE_SECOND_THRESHOLD = 8.0 / 11.0;\nconst BOUNCE_THIRD_THRESHOLD = 9.0 / 10.0;\nconst linear = p => p;\nconst easeIn = createExpoIn(2);\nconst easeOut = reverseEasing(easeIn);\nconst easeInOut = mirrorEasing(easeIn);\nconst circIn = p => 1 - Math.sin(Math.acos(p));\nconst circOut = reverseEasing(circIn);\nconst circInOut = mirrorEasing(circOut);\nconst backIn = createBackIn(DEFAULT_OVERSHOOT_STRENGTH);\nconst backOut = reverseEasing(backIn);\nconst backInOut = mirrorEasing(backIn);\nconst anticipate = createAnticipate(DEFAULT_OVERSHOOT_STRENGTH);\nconst ca = 4356.0 / 361.0;\nconst cb = 35442.0 / 1805.0;\nconst cc = 16061.0 / 1805.0;\nconst bounceOut = (p) => {\n if (p === 1 || p === 0)\n return p;\n const p2 = p * p;\n return p < BOUNCE_FIRST_THRESHOLD\n ? 7.5625 * p2\n : p < BOUNCE_SECOND_THRESHOLD\n ? 9.075 * p2 - 9.9 * p + 3.4\n : p < BOUNCE_THIRD_THRESHOLD\n ? ca * p2 - cb * p + cc\n : 10.8 * p * p - 20.52 * p + 10.72;\n};\nconst bounceIn = reverseEasing(bounceOut);\nconst bounceInOut = (p) => p < 0.5\n ? 0.5 * (1.0 - bounceOut(1.0 - p * 2.0))\n : 0.5 * bounceOut(p * 2.0 - 1.0) + 0.5;\n\nexport { anticipate, backIn, backInOut, backOut, bounceIn, bounceInOut, bounceOut, circIn, circInOut, circOut, easeIn, easeInOut, easeOut, linear };\n","import { interpolate } from '../../utils/interpolate.mjs';\nimport { easeInOut } from '../../easing/index.mjs';\n\nfunction defaultEasing(values, easing) {\n return values.map(() => easing || easeInOut).splice(0, values.length - 1);\n}\nfunction defaultOffset(values) {\n const numValues = values.length;\n return values.map((_value, i) => i !== 0 ? i / (numValues - 1) : 0);\n}\nfunction convertOffsetToTimes(offset, duration) {\n return offset.map((o) => o * duration);\n}\nfunction keyframes({ from = 0, to = 1, ease, offset, duration = 300, }) {\n const state = { done: false, value: from };\n const values = Array.isArray(to) ? to : [from, to];\n const times = convertOffsetToTimes(offset && offset.length === values.length\n ? offset\n : defaultOffset(values), duration);\n function createInterpolator() {\n return interpolate(times, values, {\n ease: Array.isArray(ease) ? ease : defaultEasing(values, ease),\n });\n }\n let interpolator = createInterpolator();\n return {\n next: (t) => {\n state.value = interpolator(t);\n state.done = t >= duration;\n return state;\n },\n flipTarget: () => {\n values.reverse();\n interpolator = createInterpolator();\n },\n };\n}\n\nexport { convertOffsetToTimes, defaultEasing, defaultOffset, keyframes };\n","function decay({ velocity = 0, from = 0, power = 0.8, timeConstant = 350, restDelta = 0.5, modifyTarget, }) {\n const state = { done: false, value: from };\n let amplitude = power * velocity;\n const ideal = from + amplitude;\n const target = modifyTarget === undefined ? ideal : modifyTarget(ideal);\n if (target !== ideal)\n amplitude = target - from;\n return {\n next: (t) => {\n const delta = -amplitude * Math.exp(-t / timeConstant);\n state.done = !(delta > restDelta || delta < -restDelta);\n state.value = state.done ? target : target + delta;\n return state;\n },\n flipTarget: () => { },\n };\n}\n\nexport { decay };\n","import { spring } from '../generators/spring.mjs';\nimport { keyframes } from '../generators/keyframes.mjs';\nimport { decay } from '../generators/decay.mjs';\n\nconst types = { keyframes, spring, decay };\nfunction detectAnimationFromOptions(config) {\n if (Array.isArray(config.to)) {\n return keyframes;\n }\n else if (types[config.type]) {\n return types[config.type];\n }\n const keys = new Set(Object.keys(config));\n if (keys.has(\"ease\") ||\n (keys.has(\"duration\") && !keys.has(\"dampingRatio\"))) {\n return keyframes;\n }\n else if (keys.has(\"dampingRatio\") ||\n keys.has(\"stiffness\") ||\n keys.has(\"mass\") ||\n keys.has(\"damping\") ||\n keys.has(\"restSpeed\") ||\n keys.has(\"restDelta\")) {\n return spring;\n }\n return keyframes;\n}\n\nexport { detectAnimationFromOptions };\n","function loopElapsed(elapsed, duration, delay = 0) {\n return elapsed - duration - delay;\n}\nfunction reverseElapsed(elapsed, duration, delay = 0, isForwardPlayback = true) {\n return isForwardPlayback\n ? loopElapsed(duration + -elapsed, duration, delay)\n : duration - (elapsed - duration) + delay;\n}\nfunction hasRepeatDelayElapsed(elapsed, duration, delay, isForwardPlayback) {\n return isForwardPlayback ? elapsed >= duration + delay : elapsed <= -delay;\n}\n\nexport { hasRepeatDelayElapsed, loopElapsed, reverseElapsed };\n","import { __rest } from 'tslib';\nimport { detectAnimationFromOptions } from './utils/detect-animation-from-options.mjs';\nimport sync, { cancelSync } from 'framesync';\nimport { interpolate } from '../utils/interpolate.mjs';\nimport { hasRepeatDelayElapsed, reverseElapsed, loopElapsed } from './utils/elapsed.mjs';\n\nconst framesync = (update) => {\n const passTimestamp = ({ delta }) => update(delta);\n return {\n start: () => sync.update(passTimestamp, true),\n stop: () => cancelSync.update(passTimestamp),\n };\n};\nfunction animate(_a) {\n var _b, _c;\n var { from, autoplay = true, driver = framesync, elapsed = 0, repeat: repeatMax = 0, repeatType = \"loop\", repeatDelay = 0, onPlay, onStop, onComplete, onRepeat, onUpdate } = _a, options = __rest(_a, [\"from\", \"autoplay\", \"driver\", \"elapsed\", \"repeat\", \"repeatType\", \"repeatDelay\", \"onPlay\", \"onStop\", \"onComplete\", \"onRepeat\", \"onUpdate\"]);\n let { to } = options;\n let driverControls;\n let repeatCount = 0;\n let computedDuration = options.duration;\n let latest;\n let isComplete = false;\n let isForwardPlayback = true;\n let interpolateFromNumber;\n const animator = detectAnimationFromOptions(options);\n if ((_c = (_b = animator).needsInterpolation) === null || _c === void 0 ? void 0 : _c.call(_b, from, to)) {\n interpolateFromNumber = interpolate([0, 100], [from, to], {\n clamp: false,\n });\n from = 0;\n to = 100;\n }\n const animation = animator(Object.assign(Object.assign({}, options), { from, to }));\n function repeat() {\n repeatCount++;\n if (repeatType === \"reverse\") {\n isForwardPlayback = repeatCount % 2 === 0;\n elapsed = reverseElapsed(elapsed, computedDuration, repeatDelay, isForwardPlayback);\n }\n else {\n elapsed = loopElapsed(elapsed, computedDuration, repeatDelay);\n if (repeatType === \"mirror\")\n animation.flipTarget();\n }\n isComplete = false;\n onRepeat && onRepeat();\n }\n function complete() {\n driverControls.stop();\n onComplete && onComplete();\n }\n function update(delta) {\n if (!isForwardPlayback)\n delta = -delta;\n elapsed += delta;\n if (!isComplete) {\n const state = animation.next(Math.max(0, elapsed));\n latest = state.value;\n if (interpolateFromNumber)\n latest = interpolateFromNumber(latest);\n isComplete = isForwardPlayback ? state.done : elapsed <= 0;\n }\n onUpdate === null || onUpdate === void 0 ? void 0 : onUpdate(latest);\n if (isComplete) {\n if (repeatCount === 0)\n computedDuration !== null && computedDuration !== void 0 ? computedDuration : (computedDuration = elapsed);\n if (repeatCount < repeatMax) {\n hasRepeatDelayElapsed(elapsed, computedDuration, repeatDelay, isForwardPlayback) && repeat();\n }\n else {\n complete();\n }\n }\n }\n function play() {\n onPlay === null || onPlay === void 0 ? void 0 : onPlay();\n driverControls = driver(update);\n driverControls.start();\n }\n autoplay && play();\n return {\n stop: () => {\n onStop === null || onStop === void 0 ? void 0 : onStop();\n driverControls.stop();\n },\n };\n}\n\nexport { animate };\n","import { animate } from './index.mjs';\nimport { velocityPerSecond } from '../utils/velocity-per-second.mjs';\nimport { getFrameData } from 'framesync';\n\nfunction inertia({ from = 0, velocity = 0, min, max, power = 0.8, timeConstant = 750, bounceStiffness = 500, bounceDamping = 10, restDelta = 1, modifyTarget, driver, onUpdate, onComplete, onStop, }) {\n let currentAnimation;\n function isOutOfBounds(v) {\n return (min !== undefined && v < min) || (max !== undefined && v > max);\n }\n function boundaryNearest(v) {\n if (min === undefined)\n return max;\n if (max === undefined)\n return min;\n return Math.abs(min - v) < Math.abs(max - v) ? min : max;\n }\n function startAnimation(options) {\n currentAnimation === null || currentAnimation === void 0 ? void 0 : currentAnimation.stop();\n currentAnimation = animate(Object.assign(Object.assign({}, options), { driver, onUpdate: (v) => {\n var _a;\n onUpdate === null || onUpdate === void 0 ? void 0 : onUpdate(v);\n (_a = options.onUpdate) === null || _a === void 0 ? void 0 : _a.call(options, v);\n }, onComplete,\n onStop }));\n }\n function startSpring(options) {\n startAnimation(Object.assign({ type: \"spring\", stiffness: bounceStiffness, damping: bounceDamping, restDelta }, options));\n }\n if (isOutOfBounds(from)) {\n startSpring({ from, velocity, to: boundaryNearest(from) });\n }\n else {\n let target = power * velocity + from;\n if (typeof modifyTarget !== \"undefined\")\n target = modifyTarget(target);\n const boundary = boundaryNearest(target);\n const heading = boundary === min ? -1 : 1;\n let prev;\n let current;\n const checkBoundary = (v) => {\n prev = current;\n current = v;\n velocity = velocityPerSecond(v - prev, getFrameData().delta);\n if ((heading === 1 && v > boundary) ||\n (heading === -1 && v < boundary)) {\n startSpring({ from: v, to: boundary, velocity });\n }\n };\n startAnimation({\n type: \"decay\",\n from,\n velocity,\n timeConstant,\n power,\n restDelta,\n modifyTarget,\n onUpdate: isOutOfBounds(target) ? checkBoundary : undefined,\n });\n }\n return {\n stop: () => currentAnimation === null || currentAnimation === void 0 ? void 0 : currentAnimation.stop(),\n };\n}\n\nexport { inertia };\n","/**\n * Converts seconds to milliseconds\n *\n * @param seconds - Time in seconds.\n * @return milliseconds - Converted time in milliseconds.\n */\nvar secondsToMilliseconds = function (seconds) { return seconds * 1000; };\n\nexport { secondsToMilliseconds };\n","import { linear } from './index.mjs';\n\nconst a = (a1, a2) => 1.0 - 3.0 * a2 + 3.0 * a1;\nconst b = (a1, a2) => 3.0 * a2 - 6.0 * a1;\nconst c = (a1) => 3.0 * a1;\nconst calcBezier = (t, a1, a2) => ((a(a1, a2) * t + b(a1, a2)) * t + c(a1)) * t;\nconst getSlope = (t, a1, a2) => 3.0 * a(a1, a2) * t * t + 2.0 * b(a1, a2) * t + c(a1);\nconst subdivisionPrecision = 0.0000001;\nconst subdivisionMaxIterations = 10;\nfunction binarySubdivide(aX, aA, aB, mX1, mX2) {\n let currentX;\n let currentT;\n let i = 0;\n do {\n currentT = aA + (aB - aA) / 2.0;\n currentX = calcBezier(currentT, mX1, mX2) - aX;\n if (currentX > 0.0) {\n aB = currentT;\n }\n else {\n aA = currentT;\n }\n } while (Math.abs(currentX) > subdivisionPrecision &&\n ++i < subdivisionMaxIterations);\n return currentT;\n}\nconst newtonIterations = 8;\nconst newtonMinSlope = 0.001;\nfunction newtonRaphsonIterate(aX, aGuessT, mX1, mX2) {\n for (let i = 0; i < newtonIterations; ++i) {\n const currentSlope = getSlope(aGuessT, mX1, mX2);\n if (currentSlope === 0.0) {\n return aGuessT;\n }\n const currentX = calcBezier(aGuessT, mX1, mX2) - aX;\n aGuessT -= currentX / currentSlope;\n }\n return aGuessT;\n}\nconst kSplineTableSize = 11;\nconst kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);\nfunction cubicBezier(mX1, mY1, mX2, mY2) {\n if (mX1 === mY1 && mX2 === mY2)\n return linear;\n const sampleValues = new Float32Array(kSplineTableSize);\n for (let i = 0; i < kSplineTableSize; ++i) {\n sampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);\n }\n function getTForX(aX) {\n let intervalStart = 0.0;\n let currentSample = 1;\n const lastSample = kSplineTableSize - 1;\n for (; currentSample !== lastSample && sampleValues[currentSample] <= aX; ++currentSample) {\n intervalStart += kSampleStepSize;\n }\n --currentSample;\n const dist = (aX - sampleValues[currentSample]) /\n (sampleValues[currentSample + 1] - sampleValues[currentSample]);\n const guessForT = intervalStart + dist * kSampleStepSize;\n const initialSlope = getSlope(guessForT, mX1, mX2);\n if (initialSlope >= newtonMinSlope) {\n return newtonRaphsonIterate(aX, guessForT, mX1, mX2);\n }\n else if (initialSlope === 0.0) {\n return guessForT;\n }\n else {\n return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);\n }\n }\n return (t) => t === 0 || t === 1 ? t : calcBezier(getTForX(t), mY1, mY2);\n}\n\nexport { cubicBezier };\n","import { __read } from 'tslib';\nimport { invariant } from 'hey-listen';\nimport { cubicBezier, linear, easeIn, easeInOut, easeOut, circIn, circInOut, circOut, backIn, backInOut, backOut, anticipate, bounceIn, bounceInOut, bounceOut } from 'popmotion';\n\nvar easingLookup = {\n linear: linear,\n easeIn: easeIn,\n easeInOut: easeInOut,\n easeOut: easeOut,\n circIn: circIn,\n circInOut: circInOut,\n circOut: circOut,\n backIn: backIn,\n backInOut: backInOut,\n backOut: backOut,\n anticipate: anticipate,\n bounceIn: bounceIn,\n bounceInOut: bounceInOut,\n bounceOut: bounceOut,\n};\nvar easingDefinitionToFunction = function (definition) {\n if (Array.isArray(definition)) {\n // If cubic bezier definition, create bezier curve\n invariant(definition.length === 4, \"Cubic bezier arrays must contain four numerical values.\");\n var _a = __read(definition, 4), x1 = _a[0], y1 = _a[1], x2 = _a[2], y2 = _a[3];\n return cubicBezier(x1, y1, x2, y2);\n }\n else if (typeof definition === \"string\") {\n // Else lookup from table\n invariant(easingLookup[definition] !== undefined, \"Invalid easing type '\".concat(definition, \"'\"));\n return easingLookup[definition];\n }\n return definition;\n};\nvar isEasingArray = function (ease) {\n return Array.isArray(ease) && typeof ease[0] !== \"number\";\n};\n\nexport { easingDefinitionToFunction, isEasingArray };\n","import { complex } from 'style-value-types';\n\n/**\n * Check if a value is animatable. Examples:\n *\n * ✅: 100, \"100px\", \"#fff\"\n * âŒ: \"block\", \"url(2.jpg)\"\n * @param value\n *\n * @internal\n */\nvar isAnimatable = function (key, value) {\n // If the list of keys tat might be non-animatable grows, replace with Set\n if (key === \"zIndex\")\n return false;\n // If it's a number or a keyframes array, we can animate it. We might at some point\n // need to do a deep isAnimatable check of keyframes, or let Popmotion handle this,\n // but for now lets leave it like this for performance reasons\n if (typeof value === \"number\" || Array.isArray(value))\n return true;\n if (typeof value === \"string\" && // It's animatable if we have a string\n complex.test(value) && // And it contains numbers and/or colors\n !value.startsWith(\"url(\") // Unless it starts with \"url(\"\n ) {\n return true;\n }\n return false;\n};\n\nexport { isAnimatable };\n","var isKeyframesTarget = function (v) {\n return Array.isArray(v);\n};\n\nexport { isKeyframesTarget };\n","import { __assign } from 'tslib';\nimport { isKeyframesTarget } from './is-keyframes-target.mjs';\n\nvar underDampedSpring = function () { return ({\n type: \"spring\",\n stiffness: 500,\n damping: 25,\n restSpeed: 10,\n}); };\nvar criticallyDampedSpring = function (to) { return ({\n type: \"spring\",\n stiffness: 550,\n damping: to === 0 ? 2 * Math.sqrt(550) : 30,\n restSpeed: 10,\n}); };\nvar linearTween = function () { return ({\n type: \"keyframes\",\n ease: \"linear\",\n duration: 0.3,\n}); };\nvar keyframes = function (values) { return ({\n type: \"keyframes\",\n duration: 0.8,\n values: values,\n}); };\nvar defaultTransitions = {\n x: underDampedSpring,\n y: underDampedSpring,\n z: underDampedSpring,\n rotate: underDampedSpring,\n rotateX: underDampedSpring,\n rotateY: underDampedSpring,\n rotateZ: underDampedSpring,\n scaleX: criticallyDampedSpring,\n scaleY: criticallyDampedSpring,\n scale: criticallyDampedSpring,\n opacity: linearTween,\n backgroundColor: linearTween,\n color: linearTween,\n default: criticallyDampedSpring,\n};\nvar getDefaultTransition = function (valueKey, to) {\n var transitionFactory;\n if (isKeyframesTarget(to)) {\n transitionFactory = keyframes;\n }\n else {\n transitionFactory =\n defaultTransitions[valueKey] || defaultTransitions.default;\n }\n return __assign({ to: to }, transitionFactory(to));\n};\n\nexport { criticallyDampedSpring, getDefaultTransition, linearTween, underDampedSpring };\n","import { complex } from './index.mjs';\nimport { floatRegex } from '../utils.mjs';\n\nconst maxDefaults = new Set(['brightness', 'contrast', 'saturate', 'opacity']);\nfunction applyDefaultFilter(v) {\n let [name, value] = v.slice(0, -1).split('(');\n if (name === 'drop-shadow')\n return v;\n const [number] = value.match(floatRegex) || [];\n if (!number)\n return v;\n const unit = value.replace(number, '');\n let defaultValue = maxDefaults.has(name) ? 1 : 0;\n if (number !== value)\n defaultValue *= 100;\n return name + '(' + defaultValue + unit + ')';\n}\nconst functionRegex = /([a-z-]*)\\(.*?\\)/g;\nconst filter = Object.assign(Object.assign({}, complex), { getAnimatableNone: (v) => {\n const functions = v.match(functionRegex);\n return functions ? functions.map(applyDefaultFilter).join(' ') : v;\n } });\n\nexport { filter };\n","import { __assign } from 'tslib';\nimport { number } from 'style-value-types';\n\nvar int = __assign(__assign({}, number), { transform: Math.round });\n\nexport { int };\n","import { px, degrees, scale, alpha, progressPercentage } from 'style-value-types';\nimport { int } from './type-int.mjs';\n\nvar numberValueTypes = {\n // Border props\n borderWidth: px,\n borderTopWidth: px,\n borderRightWidth: px,\n borderBottomWidth: px,\n borderLeftWidth: px,\n borderRadius: px,\n radius: px,\n borderTopLeftRadius: px,\n borderTopRightRadius: px,\n borderBottomRightRadius: px,\n borderBottomLeftRadius: px,\n // Positioning props\n width: px,\n maxWidth: px,\n height: px,\n maxHeight: px,\n size: px,\n top: px,\n right: px,\n bottom: px,\n left: px,\n // Spacing props\n padding: px,\n paddingTop: px,\n paddingRight: px,\n paddingBottom: px,\n paddingLeft: px,\n margin: px,\n marginTop: px,\n marginRight: px,\n marginBottom: px,\n marginLeft: px,\n // Transform props\n rotate: degrees,\n rotateX: degrees,\n rotateY: degrees,\n rotateZ: degrees,\n scale: scale,\n scaleX: scale,\n scaleY: scale,\n scaleZ: scale,\n skew: degrees,\n skewX: degrees,\n skewY: degrees,\n distance: px,\n translateX: px,\n translateY: px,\n translateZ: px,\n x: px,\n y: px,\n z: px,\n perspective: px,\n transformPerspective: px,\n opacity: alpha,\n originX: progressPercentage,\n originY: progressPercentage,\n originZ: px,\n // Misc\n zIndex: int,\n // SVG\n fillOpacity: alpha,\n strokeOpacity: alpha,\n numOctaves: int,\n};\n\nexport { numberValueTypes };\n","import { __assign } from 'tslib';\nimport { color, filter } from 'style-value-types';\nimport { numberValueTypes } from './number.mjs';\n\n/**\n * A map of default value types for common values\n */\nvar defaultValueTypes = __assign(__assign({}, numberValueTypes), { \n // Color props\n color: color, backgroundColor: color, outlineColor: color, fill: color, stroke: color, \n // Border props\n borderColor: color, borderTopColor: color, borderRightColor: color, borderBottomColor: color, borderLeftColor: color, filter: filter, WebkitFilter: filter });\n/**\n * Gets the default ValueType for the provided value key\n */\nvar getDefaultValueType = function (key) { return defaultValueTypes[key]; };\n\nexport { defaultValueTypes, getDefaultValueType };\n","import { filter, complex } from 'style-value-types';\nimport { getDefaultValueType } from './defaults.mjs';\n\nfunction getAnimatableNone(key, value) {\n var _a;\n var defaultValueType = getDefaultValueType(key);\n if (defaultValueType !== filter)\n defaultValueType = complex;\n // If value is not recognised as animatable, ie \"none\", create an animatable version origin based on the target\n return (_a = defaultValueType.getAnimatableNone) === null || _a === void 0 ? void 0 : _a.call(defaultValueType, value);\n}\n\nexport { getAnimatableNone };\n","var instantAnimationState = {\n current: false,\n};\n\nexport { instantAnimationState };\n","import { isKeyframesTarget } from '../animation/utils/is-keyframes-target.mjs';\n\nvar isCustomValue = function (v) {\n return Boolean(v && typeof v === \"object\" && v.mix && v.toValue);\n};\nvar resolveFinalValueInKeyframes = function (v) {\n // TODO maybe throw if v.length - 1 is placeholder token?\n return isKeyframesTarget(v) ? v[v.length - 1] || 0 : v;\n};\n\nexport { isCustomValue, resolveFinalValueInKeyframes };\n","import { __assign, __rest, __spreadArray, __read } from 'tslib';\nimport { inertia, animate } from 'popmotion';\nimport { secondsToMilliseconds } from '../../utils/time-conversion.mjs';\nimport { isEasingArray, easingDefinitionToFunction } from './easing.mjs';\nimport { isAnimatable } from './is-animatable.mjs';\nimport { getDefaultTransition } from './default-transitions.mjs';\nimport { warning } from 'hey-listen';\nimport { getAnimatableNone } from '../../render/dom/value-types/animatable-none.mjs';\nimport { instantAnimationState } from '../../utils/use-instant-transition-state.mjs';\nimport { resolveFinalValueInKeyframes } from '../../utils/resolve-value.mjs';\n\n/**\n * Decide whether a transition is defined on a given Transition.\n * This filters out orchestration options and returns true\n * if any options are left.\n */\nfunction isTransitionDefined(_a) {\n _a.when; _a.delay; _a.delayChildren; _a.staggerChildren; _a.staggerDirection; _a.repeat; _a.repeatType; _a.repeatDelay; _a.from; var transition = __rest(_a, [\"when\", \"delay\", \"delayChildren\", \"staggerChildren\", \"staggerDirection\", \"repeat\", \"repeatType\", \"repeatDelay\", \"from\"]);\n return !!Object.keys(transition).length;\n}\nvar legacyRepeatWarning = false;\n/**\n * Convert Framer Motion's Transition type into Popmotion-compatible options.\n */\nfunction convertTransitionToAnimationOptions(_a) {\n var ease = _a.ease, times = _a.times, yoyo = _a.yoyo, flip = _a.flip, loop = _a.loop, transition = __rest(_a, [\"ease\", \"times\", \"yoyo\", \"flip\", \"loop\"]);\n var options = __assign({}, transition);\n if (times)\n options[\"offset\"] = times;\n /**\n * Convert any existing durations from seconds to milliseconds\n */\n if (transition.duration)\n options[\"duration\"] = secondsToMilliseconds(transition.duration);\n if (transition.repeatDelay)\n options.repeatDelay = secondsToMilliseconds(transition.repeatDelay);\n /**\n * Map easing names to Popmotion's easing functions\n */\n if (ease) {\n options[\"ease\"] = isEasingArray(ease)\n ? ease.map(easingDefinitionToFunction)\n : easingDefinitionToFunction(ease);\n }\n /**\n * Support legacy transition API\n */\n if (transition.type === \"tween\")\n options.type = \"keyframes\";\n /**\n * TODO: These options are officially removed from the API.\n */\n if (yoyo || loop || flip) {\n warning(!legacyRepeatWarning, \"yoyo, loop and flip have been removed from the API. Replace with repeat and repeatType options.\");\n legacyRepeatWarning = true;\n if (yoyo) {\n options.repeatType = \"reverse\";\n }\n else if (loop) {\n options.repeatType = \"loop\";\n }\n else if (flip) {\n options.repeatType = \"mirror\";\n }\n options.repeat = loop || yoyo || flip || transition.repeat;\n }\n /**\n * TODO: Popmotion 9 has the ability to automatically detect whether to use\n * a keyframes or spring animation, but does so by detecting velocity and other spring options.\n * It'd be good to introduce a similar thing here.\n */\n if (transition.type !== \"spring\")\n options.type = \"keyframes\";\n return options;\n}\n/**\n * Get the delay for a value by checking Transition with decreasing specificity.\n */\nfunction getDelayFromTransition(transition, key) {\n var _a, _b;\n var valueTransition = getValueTransition(transition, key) || {};\n return (_b = (_a = valueTransition.delay) !== null && _a !== void 0 ? _a : transition.delay) !== null && _b !== void 0 ? _b : 0;\n}\nfunction hydrateKeyframes(options) {\n if (Array.isArray(options.to) && options.to[0] === null) {\n options.to = __spreadArray([], __read(options.to), false);\n options.to[0] = options.from;\n }\n return options;\n}\nfunction getPopmotionAnimationOptions(transition, options, key) {\n var _a;\n if (Array.isArray(options.to)) {\n (_a = transition.duration) !== null && _a !== void 0 ? _a : (transition.duration = 0.8);\n }\n hydrateKeyframes(options);\n /**\n * Get a default transition if none is determined to be defined.\n */\n if (!isTransitionDefined(transition)) {\n transition = __assign(__assign({}, transition), getDefaultTransition(key, options.to));\n }\n return __assign(__assign({}, options), convertTransitionToAnimationOptions(transition));\n}\n/**\n *\n */\nfunction getAnimation(key, value, target, transition, onComplete) {\n var _a;\n var valueTransition = getValueTransition(transition, key);\n var origin = (_a = valueTransition.from) !== null && _a !== void 0 ? _a : value.get();\n var isTargetAnimatable = isAnimatable(key, target);\n if (origin === \"none\" && isTargetAnimatable && typeof target === \"string\") {\n /**\n * If we're trying to animate from \"none\", try and get an animatable version\n * of the target. This could be improved to work both ways.\n */\n origin = getAnimatableNone(key, target);\n }\n else if (isZero(origin) && typeof target === \"string\") {\n origin = getZeroUnit(target);\n }\n else if (!Array.isArray(target) &&\n isZero(target) &&\n typeof origin === \"string\") {\n target = getZeroUnit(origin);\n }\n var isOriginAnimatable = isAnimatable(key, origin);\n warning(isOriginAnimatable === isTargetAnimatable, \"You are trying to animate \".concat(key, \" from \\\"\").concat(origin, \"\\\" to \\\"\").concat(target, \"\\\". \").concat(origin, \" is not an animatable value - to enable this animation set \").concat(origin, \" to a value animatable to \").concat(target, \" via the `style` property.\"));\n function start() {\n var options = {\n from: origin,\n to: target,\n velocity: value.getVelocity(),\n onComplete: onComplete,\n onUpdate: function (v) { return value.set(v); },\n };\n return valueTransition.type === \"inertia\" ||\n valueTransition.type === \"decay\"\n ? inertia(__assign(__assign({}, options), valueTransition))\n : animate(__assign(__assign({}, getPopmotionAnimationOptions(valueTransition, options, key)), { onUpdate: function (v) {\n var _a;\n options.onUpdate(v);\n (_a = valueTransition.onUpdate) === null || _a === void 0 ? void 0 : _a.call(valueTransition, v);\n }, onComplete: function () {\n var _a;\n options.onComplete();\n (_a = valueTransition.onComplete) === null || _a === void 0 ? void 0 : _a.call(valueTransition);\n } }));\n }\n function set() {\n var _a, _b;\n var finalTarget = resolveFinalValueInKeyframes(target);\n value.set(finalTarget);\n onComplete();\n (_a = valueTransition === null || valueTransition === void 0 ? void 0 : valueTransition.onUpdate) === null || _a === void 0 ? void 0 : _a.call(valueTransition, finalTarget);\n (_b = valueTransition === null || valueTransition === void 0 ? void 0 : valueTransition.onComplete) === null || _b === void 0 ? void 0 : _b.call(valueTransition);\n return { stop: function () { } };\n }\n return !isOriginAnimatable ||\n !isTargetAnimatable ||\n valueTransition.type === false\n ? set\n : start;\n}\nfunction isZero(value) {\n return (value === 0 ||\n (typeof value === \"string\" &&\n parseFloat(value) === 0 &&\n value.indexOf(\" \") === -1));\n}\nfunction getZeroUnit(potentialUnitType) {\n return typeof potentialUnitType === \"number\"\n ? 0\n : getAnimatableNone(\"\", potentialUnitType);\n}\nfunction getValueTransition(transition, key) {\n return transition[key] || transition[\"default\"] || transition;\n}\n/**\n * Start animation on a MotionValue. This function is an interface between\n * Framer Motion and Popmotion\n *\n * @internal\n */\nfunction startAnimation(key, value, target, transition) {\n if (transition === void 0) { transition = {}; }\n if (instantAnimationState.current) {\n transition = { type: false };\n }\n return value.start(function (onComplete) {\n var delayTimer;\n var controls;\n var animation = getAnimation(key, value, target, transition, onComplete);\n var delay = getDelayFromTransition(transition, key);\n var start = function () { return (controls = animation()); };\n if (delay) {\n delayTimer = setTimeout(start, secondsToMilliseconds(delay));\n }\n else {\n start();\n }\n return function () {\n clearTimeout(delayTimer);\n controls === null || controls === void 0 ? void 0 : controls.stop();\n };\n });\n}\n\nexport { convertTransitionToAnimationOptions, getDelayFromTransition, getPopmotionAnimationOptions, getValueTransition, getZeroUnit, hydrateKeyframes, isTransitionDefined, isZero, startAnimation };\n","import { motionValue } from '../value/index.mjs';\nimport { isMotionValue } from '../value/utils/is-motion-value.mjs';\nimport { startAnimation } from './utils/transitions.mjs';\n\n/**\n * Animate a single value or a `MotionValue`.\n *\n * The first argument is either a `MotionValue` to animate, or an initial animation value.\n *\n * The second is either a value to animate to, or an array of keyframes to animate through.\n *\n * The third argument can be either tween or spring options, and optional lifecycle methods: `onUpdate`, `onPlay`, `onComplete`, `onRepeat` and `onStop`.\n *\n * Returns `AnimationPlaybackControls`, currently just a `stop` method.\n *\n * ```javascript\n * const x = useMotionValue(0)\n *\n * useEffect(() => {\n * const controls = animate(x, 100, {\n * type: \"spring\",\n * stiffness: 2000,\n * onComplete: v => {}\n * })\n *\n * return controls.stop\n * })\n * ```\n *\n * @public\n */\nfunction animate(from, to, transition) {\n if (transition === void 0) { transition = {}; }\n var value = isMotionValue(from) ? from : motionValue(from);\n startAnimation(\"\", value, to, transition);\n return {\n stop: function () { return value.stop(); },\n isAnimating: function () { return value.isAnimating(); },\n };\n}\n\nexport { animate };\n","import { mix, progress, linear, circOut } from 'popmotion';\nimport { px, percent } from 'style-value-types';\n\nvar borders = [\"TopLeft\", \"TopRight\", \"BottomLeft\", \"BottomRight\"];\nvar numBorders = borders.length;\nvar asNumber = function (value) {\n return typeof value === \"string\" ? parseFloat(value) : value;\n};\nvar isPx = function (value) {\n return typeof value === \"number\" || px.test(value);\n};\nfunction mixValues(target, follow, lead, progress, shouldCrossfadeOpacity, isOnlyMember) {\n var _a, _b, _c, _d;\n if (shouldCrossfadeOpacity) {\n target.opacity = mix(0, \n // (follow?.opacity as number) ?? 0,\n // TODO Reinstate this if only child\n (_a = lead.opacity) !== null && _a !== void 0 ? _a : 1, easeCrossfadeIn(progress));\n target.opacityExit = mix((_b = follow.opacity) !== null && _b !== void 0 ? _b : 1, 0, easeCrossfadeOut(progress));\n }\n else if (isOnlyMember) {\n target.opacity = mix((_c = follow.opacity) !== null && _c !== void 0 ? _c : 1, (_d = lead.opacity) !== null && _d !== void 0 ? _d : 1, progress);\n }\n /**\n * Mix border radius\n */\n for (var i = 0; i < numBorders; i++) {\n var borderLabel = \"border\".concat(borders[i], \"Radius\");\n var followRadius = getRadius(follow, borderLabel);\n var leadRadius = getRadius(lead, borderLabel);\n if (followRadius === undefined && leadRadius === undefined)\n continue;\n followRadius || (followRadius = 0);\n leadRadius || (leadRadius = 0);\n var canMix = followRadius === 0 ||\n leadRadius === 0 ||\n isPx(followRadius) === isPx(leadRadius);\n if (canMix) {\n target[borderLabel] = Math.max(mix(asNumber(followRadius), asNumber(leadRadius), progress), 0);\n if (percent.test(leadRadius) || percent.test(followRadius)) {\n target[borderLabel] += \"%\";\n }\n }\n else {\n target[borderLabel] = leadRadius;\n }\n }\n /**\n * Mix rotation\n */\n if (follow.rotate || lead.rotate) {\n target.rotate = mix(follow.rotate || 0, lead.rotate || 0, progress);\n }\n}\nfunction getRadius(values, radiusName) {\n var _a;\n return (_a = values[radiusName]) !== null && _a !== void 0 ? _a : values.borderRadius;\n}\n// /**\n// * We only want to mix the background color if there's a follow element\n// * that we're not crossfading opacity between. For instance with switch\n// * AnimateSharedLayout animations, this helps the illusion of a continuous\n// * element being animated but also cuts down on the number of paints triggered\n// * for elements where opacity is doing that work for us.\n// */\n// if (\n// !hasFollowElement &&\n// latestLeadValues.backgroundColor &&\n// latestFollowValues.backgroundColor\n// ) {\n// /**\n// * This isn't ideal performance-wise as mixColor is creating a new function every frame.\n// * We could probably create a mixer that runs at the start of the animation but\n// * the idea behind the crossfader is that it runs dynamically between two potentially\n// * changing targets (ie opacity or borderRadius may be animating independently via variants)\n// */\n// leadState.backgroundColor = followState.backgroundColor = mixColor(\n// latestFollowValues.backgroundColor as string,\n// latestLeadValues.backgroundColor as string\n// )(p)\n// }\nvar easeCrossfadeIn = compress(0, 0.5, circOut);\nvar easeCrossfadeOut = compress(0.5, 0.95, linear);\nfunction compress(min, max, easing) {\n return function (p) {\n // Could replace ifs with clamp\n if (p < min)\n return 0;\n if (p > max)\n return 1;\n return easing(progress(min, max, p));\n };\n}\n\nexport { mixValues };\n","/**\n * Reset an axis to the provided origin box.\n *\n * This is a mutative operation.\n */\nfunction copyAxisInto(axis, originAxis) {\n axis.min = originAxis.min;\n axis.max = originAxis.max;\n}\n/**\n * Reset a box to the provided origin box.\n *\n * This is a mutative operation.\n */\nfunction copyBoxInto(box, originBox) {\n copyAxisInto(box.x, originBox.x);\n copyAxisInto(box.y, originBox.y);\n}\n\nexport { copyAxisInto, copyBoxInto };\n","function isIdentityScale(scale) {\n return scale === undefined || scale === 1;\n}\nfunction hasScale(_a) {\n var scale = _a.scale, scaleX = _a.scaleX, scaleY = _a.scaleY;\n return (!isIdentityScale(scale) ||\n !isIdentityScale(scaleX) ||\n !isIdentityScale(scaleY));\n}\nfunction hasTransform(values) {\n return (hasScale(values) ||\n hasTranslate(values.x) ||\n hasTranslate(values.y) ||\n values.z ||\n values.rotate ||\n values.rotateX ||\n values.rotateY);\n}\nfunction hasTranslate(value) {\n return value && value !== \"0%\";\n}\n\nexport { hasScale, hasTransform };\n","import { __read } from 'tslib';\nimport { mix } from 'popmotion';\nimport { hasTransform } from '../utils/has-transform.mjs';\n\n/**\n * Scales a point based on a factor and an originPoint\n */\nfunction scalePoint(point, scale, originPoint) {\n var distanceFromOrigin = point - originPoint;\n var scaled = scale * distanceFromOrigin;\n return originPoint + scaled;\n}\n/**\n * Applies a translate/scale delta to a point\n */\nfunction applyPointDelta(point, translate, scale, originPoint, boxScale) {\n if (boxScale !== undefined) {\n point = scalePoint(point, boxScale, originPoint);\n }\n return scalePoint(point, scale, originPoint) + translate;\n}\n/**\n * Applies a translate/scale delta to an axis\n */\nfunction applyAxisDelta(axis, translate, scale, originPoint, boxScale) {\n if (translate === void 0) { translate = 0; }\n if (scale === void 0) { scale = 1; }\n axis.min = applyPointDelta(axis.min, translate, scale, originPoint, boxScale);\n axis.max = applyPointDelta(axis.max, translate, scale, originPoint, boxScale);\n}\n/**\n * Applies a translate/scale delta to a box\n */\nfunction applyBoxDelta(box, _a) {\n var x = _a.x, y = _a.y;\n applyAxisDelta(box.x, x.translate, x.scale, x.originPoint);\n applyAxisDelta(box.y, y.translate, y.scale, y.originPoint);\n}\n/**\n * Apply a tree of deltas to a box. We do this to calculate the effect of all the transforms\n * in a tree upon our box before then calculating how to project it into our desired viewport-relative box\n *\n * This is the final nested loop within updateLayoutDelta for future refactoring\n */\nfunction applyTreeDeltas(box, treeScale, treePath, isSharedTransition) {\n var _a, _b;\n if (isSharedTransition === void 0) { isSharedTransition = false; }\n var treeLength = treePath.length;\n if (!treeLength)\n return;\n // Reset the treeScale\n treeScale.x = treeScale.y = 1;\n var node;\n var delta;\n for (var i = 0; i < treeLength; i++) {\n node = treePath[i];\n delta = node.projectionDelta;\n if (((_b = (_a = node.instance) === null || _a === void 0 ? void 0 : _a.style) === null || _b === void 0 ? void 0 : _b.display) === \"contents\")\n continue;\n if (isSharedTransition &&\n node.options.layoutScroll &&\n node.scroll &&\n node !== node.root) {\n transformBox(box, { x: -node.scroll.x, y: -node.scroll.y });\n }\n if (delta) {\n // Incoporate each ancestor's scale into a culmulative treeScale for this component\n treeScale.x *= delta.x.scale;\n treeScale.y *= delta.y.scale;\n // Apply each ancestor's calculated delta into this component's recorded layout box\n applyBoxDelta(box, delta);\n }\n if (isSharedTransition && hasTransform(node.latestValues)) {\n transformBox(box, node.latestValues);\n }\n }\n}\nfunction translateAxis(axis, distance) {\n axis.min = axis.min + distance;\n axis.max = axis.max + distance;\n}\n/**\n * Apply a transform to an axis from the latest resolved motion values.\n * This function basically acts as a bridge between a flat motion value map\n * and applyAxisDelta\n */\nfunction transformAxis(axis, transforms, _a) {\n var _b = __read(_a, 3), key = _b[0], scaleKey = _b[1], originKey = _b[2];\n var axisOrigin = transforms[originKey] !== undefined ? transforms[originKey] : 0.5;\n var originPoint = mix(axis.min, axis.max, axisOrigin);\n // Apply the axis delta to the final axis\n applyAxisDelta(axis, transforms[key], transforms[scaleKey], originPoint, transforms.scale);\n}\n/**\n * The names of the motion values we want to apply as translation, scale and origin.\n */\nvar xKeys = [\"x\", \"scaleX\", \"originX\"];\nvar yKeys = [\"y\", \"scaleY\", \"originY\"];\n/**\n * Apply a transform to a box from the latest resolved motion values.\n */\nfunction transformBox(box, transform) {\n transformAxis(box.x, transform, xKeys);\n transformAxis(box.y, transform, yKeys);\n}\n\nexport { applyAxisDelta, applyBoxDelta, applyPointDelta, applyTreeDeltas, scalePoint, transformAxis, transformBox, translateAxis };\n","const isPoint = (point) => point.hasOwnProperty('x') && point.hasOwnProperty('y');\n\nexport { isPoint };\n","import { isPoint } from './is-point.mjs';\n\nconst isPoint3D = (point) => isPoint(point) && point.hasOwnProperty('z');\n\nexport { isPoint3D };\n","import { isPoint } from './is-point.mjs';\nimport { isPoint3D } from './is-point-3d.mjs';\nimport { isNum } from './inc.mjs';\n\nconst distance1D = (a, b) => Math.abs(a - b);\nfunction distance(a, b) {\n if (isNum(a) && isNum(b)) {\n return distance1D(a, b);\n }\n else if (isPoint(a) && isPoint(b)) {\n const xDelta = distance1D(a.x, b.x);\n const yDelta = distance1D(a.y, b.y);\n const zDelta = isPoint3D(a) && isPoint3D(b) ? distance1D(a.z, b.z) : 0;\n return Math.sqrt(Math.pow(xDelta, 2) + Math.pow(yDelta, 2) + Math.pow(zDelta, 2));\n }\n}\n\nexport { distance };\n","import { mix, distance } from 'popmotion';\n\nfunction calcLength(axis) {\n return axis.max - axis.min;\n}\nfunction isNear(value, target, maxDistance) {\n if (target === void 0) { target = 0; }\n if (maxDistance === void 0) { maxDistance = 0.01; }\n return distance(value, target) < maxDistance;\n}\nfunction calcAxisDelta(delta, source, target, origin) {\n if (origin === void 0) { origin = 0.5; }\n delta.origin = origin;\n delta.originPoint = mix(source.min, source.max, delta.origin);\n delta.scale = calcLength(target) / calcLength(source);\n if (isNear(delta.scale, 1, 0.0001) || isNaN(delta.scale))\n delta.scale = 1;\n delta.translate =\n mix(target.min, target.max, delta.origin) - delta.originPoint;\n if (isNear(delta.translate) || isNaN(delta.translate))\n delta.translate = 0;\n}\nfunction calcBoxDelta(delta, source, target, origin) {\n calcAxisDelta(delta.x, source.x, target.x, origin === null || origin === void 0 ? void 0 : origin.originX);\n calcAxisDelta(delta.y, source.y, target.y, origin === null || origin === void 0 ? void 0 : origin.originY);\n}\nfunction calcRelativeAxis(target, relative, parent) {\n target.min = parent.min + relative.min;\n target.max = target.min + calcLength(relative);\n}\nfunction calcRelativeBox(target, relative, parent) {\n calcRelativeAxis(target.x, relative.x, parent.x);\n calcRelativeAxis(target.y, relative.y, parent.y);\n}\nfunction calcRelativeAxisPosition(target, layout, parent) {\n target.min = layout.min - parent.min;\n target.max = target.min + calcLength(layout);\n}\nfunction calcRelativePosition(target, layout, parent) {\n calcRelativeAxisPosition(target.x, layout.x, parent.x);\n calcRelativeAxisPosition(target.y, layout.y, parent.y);\n}\n\nexport { calcAxisDelta, calcBoxDelta, calcLength, calcRelativeAxis, calcRelativeAxisPosition, calcRelativeBox, calcRelativePosition, isNear };\n","import { __read } from 'tslib';\nimport { mix } from 'popmotion';\nimport { percent } from 'style-value-types';\nimport { scalePoint } from './delta-apply.mjs';\n\n/**\n * Remove a delta from a point. This is essentially the steps of applyPointDelta in reverse\n */\nfunction removePointDelta(point, translate, scale, originPoint, boxScale) {\n point -= translate;\n point = scalePoint(point, 1 / scale, originPoint);\n if (boxScale !== undefined) {\n point = scalePoint(point, 1 / boxScale, originPoint);\n }\n return point;\n}\n/**\n * Remove a delta from an axis. This is essentially the steps of applyAxisDelta in reverse\n */\nfunction removeAxisDelta(axis, translate, scale, origin, boxScale, originAxis, sourceAxis) {\n if (translate === void 0) { translate = 0; }\n if (scale === void 0) { scale = 1; }\n if (origin === void 0) { origin = 0.5; }\n if (originAxis === void 0) { originAxis = axis; }\n if (sourceAxis === void 0) { sourceAxis = axis; }\n if (percent.test(translate)) {\n translate = parseFloat(translate);\n var relativeProgress = mix(sourceAxis.min, sourceAxis.max, translate / 100);\n translate = relativeProgress - sourceAxis.min;\n }\n if (typeof translate !== \"number\")\n return;\n var originPoint = mix(originAxis.min, originAxis.max, origin);\n if (axis === originAxis)\n originPoint -= translate;\n axis.min = removePointDelta(axis.min, translate, scale, originPoint, boxScale);\n axis.max = removePointDelta(axis.max, translate, scale, originPoint, boxScale);\n}\n/**\n * Remove a transforms from an axis. This is essentially the steps of applyAxisTransforms in reverse\n * and acts as a bridge between motion values and removeAxisDelta\n */\nfunction removeAxisTransforms(axis, transforms, _a, origin, sourceAxis) {\n var _b = __read(_a, 3), key = _b[0], scaleKey = _b[1], originKey = _b[2];\n removeAxisDelta(axis, transforms[key], transforms[scaleKey], transforms[originKey], transforms.scale, origin, sourceAxis);\n}\n/**\n * The names of the motion values we want to apply as translation, scale and origin.\n */\nvar xKeys = [\"x\", \"scaleX\", \"originX\"];\nvar yKeys = [\"y\", \"scaleY\", \"originY\"];\n/**\n * Remove a transforms from an box. This is essentially the steps of applyAxisBox in reverse\n * and acts as a bridge between motion values and removeAxisDelta\n */\nfunction removeBoxTransforms(box, transforms, originBox, sourceBox) {\n removeAxisTransforms(box.x, transforms, xKeys, originBox === null || originBox === void 0 ? void 0 : originBox.x, sourceBox === null || sourceBox === void 0 ? void 0 : sourceBox.x);\n removeAxisTransforms(box.y, transforms, yKeys, originBox === null || originBox === void 0 ? void 0 : originBox.y, sourceBox === null || sourceBox === void 0 ? void 0 : sourceBox.y);\n}\n\nexport { removeAxisDelta, removeAxisTransforms, removeBoxTransforms, removePointDelta };\n","var createAxisDelta = function () { return ({\n translate: 0,\n scale: 1,\n origin: 0,\n originPoint: 0,\n}); };\nvar createDelta = function () { return ({\n x: createAxisDelta(),\n y: createAxisDelta(),\n}); };\nvar createAxis = function () { return ({ min: 0, max: 0 }); };\nvar createBox = function () { return ({\n x: createAxis(),\n y: createAxis(),\n}); };\n\nexport { createAxis, createAxisDelta, createBox, createDelta };\n","function isAxisDeltaZero(delta) {\n return delta.translate === 0 && delta.scale === 1;\n}\nfunction isDeltaZero(delta) {\n return isAxisDeltaZero(delta.x) && isAxisDeltaZero(delta.y);\n}\nfunction boxEquals(a, b) {\n return (a.x.min === b.x.min &&\n a.x.max === b.x.max &&\n a.y.min === b.y.min &&\n a.y.max === b.y.max);\n}\n\nexport { boxEquals, isDeltaZero };\n","import { addUniqueItem, removeItem } from '../../utils/array.mjs';\n\nvar NodeStack = /** @class */ (function () {\n function NodeStack() {\n this.members = [];\n }\n NodeStack.prototype.add = function (node) {\n addUniqueItem(this.members, node);\n node.scheduleRender();\n };\n NodeStack.prototype.remove = function (node) {\n removeItem(this.members, node);\n if (node === this.prevLead) {\n this.prevLead = undefined;\n }\n if (node === this.lead) {\n var prevLead = this.members[this.members.length - 1];\n if (prevLead) {\n this.promote(prevLead);\n }\n }\n };\n NodeStack.prototype.relegate = function (node) {\n var indexOfNode = this.members.findIndex(function (member) { return node === member; });\n if (indexOfNode === 0)\n return false;\n /**\n * Find the next projection node that is present\n */\n var prevLead;\n for (var i = indexOfNode; i >= 0; i--) {\n var member = this.members[i];\n if (member.isPresent !== false) {\n prevLead = member;\n break;\n }\n }\n if (prevLead) {\n this.promote(prevLead);\n return true;\n }\n else {\n return false;\n }\n };\n NodeStack.prototype.promote = function (node, preserveFollowOpacity) {\n var _a;\n var prevLead = this.lead;\n if (node === prevLead)\n return;\n this.prevLead = prevLead;\n this.lead = node;\n node.show();\n if (prevLead) {\n prevLead.instance && prevLead.scheduleRender();\n node.scheduleRender();\n node.resumeFrom = prevLead;\n if (preserveFollowOpacity) {\n node.resumeFrom.preserveOpacity = true;\n }\n if (prevLead.snapshot) {\n node.snapshot = prevLead.snapshot;\n node.snapshot.latestValues =\n prevLead.animationValues || prevLead.latestValues;\n node.snapshot.isShared = true;\n }\n if ((_a = node.root) === null || _a === void 0 ? void 0 : _a.isUpdating) {\n node.isLayoutDirty = true;\n }\n var crossfade = node.options.crossfade;\n if (crossfade === false) {\n prevLead.hide();\n }\n /**\n * TODO:\n * - Test border radius when previous node was deleted\n * - boxShadow mixing\n * - Shared between element A in scrolled container and element B (scroll stays the same or changes)\n * - Shared between element A in transformed container and element B (transform stays the same or changes)\n * - Shared between element A in scrolled page and element B (scroll stays the same or changes)\n * ---\n * - Crossfade opacity of root nodes\n * - layoutId changes after animation\n * - layoutId changes mid animation\n */\n }\n };\n NodeStack.prototype.exitAnimationComplete = function () {\n this.members.forEach(function (node) {\n var _a, _b, _c, _d, _e;\n (_b = (_a = node.options).onExitComplete) === null || _b === void 0 ? void 0 : _b.call(_a);\n (_e = (_c = node.resumingFrom) === null || _c === void 0 ? void 0 : (_d = _c.options).onExitComplete) === null || _e === void 0 ? void 0 : _e.call(_d);\n });\n };\n NodeStack.prototype.scheduleRender = function () {\n this.members.forEach(function (node) {\n node.instance && node.scheduleRender(false);\n });\n };\n /**\n * Clear any leads that have been removed this render to prevent them from being\n * used in future animations and to prevent memory leaks\n */\n NodeStack.prototype.removeLeadSnapshot = function () {\n if (this.lead && this.lead.snapshot) {\n this.lead.snapshot = undefined;\n }\n };\n return NodeStack;\n}());\n\nexport { NodeStack };\n","var scaleCorrectors = {};\nfunction addScaleCorrector(correctors) {\n Object.assign(scaleCorrectors, correctors);\n}\n\nexport { addScaleCorrector, scaleCorrectors };\n","var identityProjection = \"translate3d(0px, 0px, 0) scale(1, 1)\";\nfunction buildProjectionTransform(delta, treeScale, latestTransform) {\n /**\n * The translations we use to calculate are always relative to the viewport coordinate space.\n * But when we apply scales, we also scale the coordinate space of an element and its children.\n * For instance if we have a treeScale (the culmination of all parent scales) of 0.5 and we need\n * to move an element 100 pixels, we actually need to move it 200 in within that scaled space.\n */\n var xTranslate = delta.x.translate / treeScale.x;\n var yTranslate = delta.y.translate / treeScale.y;\n var transform = \"translate3d(\".concat(xTranslate, \"px, \").concat(yTranslate, \"px, 0) \");\n if (latestTransform) {\n var rotate = latestTransform.rotate, rotateX = latestTransform.rotateX, rotateY = latestTransform.rotateY;\n if (rotate)\n transform += \"rotate(\".concat(rotate, \"deg) \");\n if (rotateX)\n transform += \"rotateX(\".concat(rotateX, \"deg) \");\n if (rotateY)\n transform += \"rotateY(\".concat(rotateY, \"deg) \");\n }\n transform += \"scale(\".concat(delta.x.scale, \", \").concat(delta.y.scale, \")\");\n return transform === identityProjection ? \"none\" : transform;\n}\n\nexport { buildProjectionTransform, identityProjection };\n","function eachAxis(callback) {\n return [callback(\"x\"), callback(\"y\")];\n}\n\nexport { eachAxis };\n","/**\n * A list of all transformable axes. We'll use this list to generated a version\n * of each axes for each transform.\n */\nvar transformAxes = [\"\", \"X\", \"Y\", \"Z\"];\n/**\n * An ordered array of each transformable value. By default, transform values\n * will be sorted to this order.\n */\nvar order = [\"translate\", \"scale\", \"rotate\", \"skew\"];\n/**\n * Generate a list of every possible transform key.\n */\nvar transformProps = [\"transformPerspective\", \"x\", \"y\", \"z\"];\norder.forEach(function (operationKey) {\n return transformAxes.forEach(function (axesKey) {\n return transformProps.push(operationKey + axesKey);\n });\n});\n/**\n * A function to use with Array.sort to sort transform keys by their default order.\n */\nfunction sortTransformProps(a, b) {\n return transformProps.indexOf(a) - transformProps.indexOf(b);\n}\n/**\n * A quick lookup for transform props.\n */\nvar transformPropSet = new Set(transformProps);\nfunction isTransformProp(key) {\n return transformPropSet.has(key);\n}\n/**\n * A quick lookup for transform origin props\n */\nvar transformOriginProps = new Set([\"originX\", \"originY\", \"originZ\"]);\nfunction isTransformOriginProp(key) {\n return transformOriginProps.has(key);\n}\n\nexport { isTransformOriginProp, isTransformProp, sortTransformProps, transformAxes, transformProps };\n","var compareByDepth = function (a, b) {\n return a.depth - b.depth;\n};\n\nexport { compareByDepth };\n","import { addUniqueItem, removeItem } from '../../utils/array.mjs';\nimport { compareByDepth } from './compare-by-depth.mjs';\n\nvar FlatTree = /** @class */ (function () {\n function FlatTree() {\n this.children = [];\n this.isDirty = false;\n }\n FlatTree.prototype.add = function (child) {\n addUniqueItem(this.children, child);\n this.isDirty = true;\n };\n FlatTree.prototype.remove = function (child) {\n removeItem(this.children, child);\n this.isDirty = true;\n };\n FlatTree.prototype.forEach = function (callback) {\n this.isDirty && this.children.sort(compareByDepth);\n this.isDirty = false;\n this.children.forEach(callback);\n };\n return FlatTree;\n}());\n\nexport { FlatTree };\n","import { isCustomValue } from '../../utils/resolve-value.mjs';\nimport { isMotionValue } from './is-motion-value.mjs';\n\n/**\n * If the provided value is a MotionValue, this returns the actual value, otherwise just the value itself\n *\n * TODO: Remove and move to library\n *\n * @internal\n */\nfunction resolveMotionValue(value) {\n var unwrappedValue = isMotionValue(value) ? value.get() : value;\n return isCustomValue(unwrappedValue)\n ? unwrappedValue.toValue()\n : unwrappedValue;\n}\n\nexport { resolveMotionValue };\n","import { __spreadArray, __read, __assign } from 'tslib';\nimport sync, { cancelSync, flushSync } from 'framesync';\nimport { mix } from 'popmotion';\nimport { animate } from '../../animation/animate.mjs';\nimport { SubscriptionManager } from '../../utils/subscription-manager.mjs';\nimport { mixValues } from '../animation/mix-values.mjs';\nimport { copyBoxInto } from '../geometry/copy.mjs';\nimport { translateAxis, transformBox, applyBoxDelta, applyTreeDeltas } from '../geometry/delta-apply.mjs';\nimport { calcRelativePosition, calcRelativeBox, calcBoxDelta, calcLength } from '../geometry/delta-calc.mjs';\nimport { removeBoxTransforms } from '../geometry/delta-remove.mjs';\nimport { createBox, createDelta } from '../geometry/models.mjs';\nimport { getValueTransition } from '../../animation/utils/transitions.mjs';\nimport { boxEquals, isDeltaZero } from '../geometry/utils.mjs';\nimport { NodeStack } from '../shared/stack.mjs';\nimport { scaleCorrectors } from '../styles/scale-correction.mjs';\nimport { buildProjectionTransform } from '../styles/transform.mjs';\nimport { eachAxis } from '../utils/each-axis.mjs';\nimport { hasTransform, hasScale } from '../utils/has-transform.mjs';\nimport { transformAxes } from '../../render/html/utils/transform.mjs';\nimport { FlatTree } from '../../render/utils/flat-tree.mjs';\nimport { resolveMotionValue } from '../../value/utils/resolve-motion-value.mjs';\n\n/**\n * We use 1000 as the animation target as 0-1000 maps better to pixels than 0-1\n * which has a noticeable difference in spring animations\n */\nvar animationTarget = 1000;\n/**\n * This should only ever be modified on the client otherwise it'll\n * persist through server requests. If we need instanced states we\n * could lazy-init via root.\n */\nvar globalProjectionState = {\n /**\n * Global flag as to whether the tree has animated since the last time\n * we resized the window\n */\n hasAnimatedSinceResize: true,\n /**\n * We set this to true once, on the first update. Any nodes added to the tree beyond that\n * update will be given a `data-projection-id` attribute.\n */\n hasEverUpdated: false,\n};\nfunction createProjectionNode(_a) {\n var attachResizeListener = _a.attachResizeListener, defaultParent = _a.defaultParent, measureScroll = _a.measureScroll, resetTransform = _a.resetTransform;\n return /** @class */ (function () {\n function ProjectionNode(id, latestValues, parent) {\n var _this = this;\n if (latestValues === void 0) { latestValues = {}; }\n if (parent === void 0) { parent = defaultParent === null || defaultParent === void 0 ? void 0 : defaultParent(); }\n /**\n * A Set containing all this component's children. This is used to iterate\n * through the children.\n *\n * TODO: This could be faster to iterate as a flat array stored on the root node.\n */\n this.children = new Set();\n /**\n * Options for the node. We use this to configure what kind of layout animations\n * we should perform (if any).\n */\n this.options = {};\n /**\n * We use this to detect when its safe to shut down part of a projection tree.\n * We have to keep projecting children for scale correction and relative projection\n * until all their parents stop performing layout animations.\n */\n this.isTreeAnimating = false;\n this.isAnimationBlocked = false;\n /**\n * Flag to true if we think this layout has been changed. We can't always know this,\n * currently we set it to true every time a component renders, or if it has a layoutDependency\n * if that has changed between renders. Additionally, components can be grouped by LayoutGroup\n * and if one node is dirtied, they all are.\n */\n this.isLayoutDirty = false;\n /**\n * Block layout updates for instant layout transitions throughout the tree.\n */\n this.updateManuallyBlocked = false;\n this.updateBlockedByResize = false;\n /**\n * Set to true between the start of the first `willUpdate` call and the end of the `didUpdate`\n * call.\n */\n this.isUpdating = false;\n /**\n * If this is an SVG element we currently disable projection transforms\n */\n this.isSVG = false;\n /**\n * Flag to true (during promotion) if a node doing an instant layout transition needs to reset\n * its projection styles.\n */\n this.needsReset = false;\n /**\n * Flags whether this node should have its transform reset prior to measuring.\n */\n this.shouldResetTransform = false;\n /**\n * An object representing the calculated contextual/accumulated/tree scale.\n * This will be used to scale calculcated projection transforms, as these are\n * calculated in screen-space but need to be scaled for elements to actually\n * make it to their calculated destinations.\n *\n * TODO: Lazy-init\n */\n this.treeScale = { x: 1, y: 1 };\n /**\n *\n */\n this.eventHandlers = new Map();\n // Note: Currently only running on root node\n this.potentialNodes = new Map();\n this.checkUpdateFailed = function () {\n if (_this.isUpdating) {\n _this.isUpdating = false;\n _this.clearAllSnapshots();\n }\n };\n this.updateProjection = function () {\n _this.nodes.forEach(resolveTargetDelta);\n _this.nodes.forEach(calcProjection);\n };\n this.hasProjected = false;\n this.isVisible = true;\n /**\n * Animation\n */\n this.animationProgress = 0;\n /**\n * Shared layout\n */\n // TODO Only running on root node\n this.sharedNodes = new Map();\n this.id = id;\n this.latestValues = latestValues;\n this.root = parent ? parent.root || parent : this;\n this.path = parent ? __spreadArray(__spreadArray([], __read(parent.path), false), [parent], false) : [];\n this.parent = parent;\n this.depth = parent ? parent.depth + 1 : 0;\n id && this.root.registerPotentialNode(id, this);\n for (var i = 0; i < this.path.length; i++) {\n this.path[i].shouldResetTransform = true;\n }\n if (this.root === this)\n this.nodes = new FlatTree();\n }\n ProjectionNode.prototype.addEventListener = function (name, handler) {\n if (!this.eventHandlers.has(name)) {\n this.eventHandlers.set(name, new SubscriptionManager());\n }\n return this.eventHandlers.get(name).add(handler);\n };\n ProjectionNode.prototype.notifyListeners = function (name) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n var subscriptionManager = this.eventHandlers.get(name);\n subscriptionManager === null || subscriptionManager === void 0 ? void 0 : subscriptionManager.notify.apply(subscriptionManager, __spreadArray([], __read(args), false));\n };\n ProjectionNode.prototype.hasListeners = function (name) {\n return this.eventHandlers.has(name);\n };\n ProjectionNode.prototype.registerPotentialNode = function (id, node) {\n this.potentialNodes.set(id, node);\n };\n /**\n * Lifecycles\n */\n ProjectionNode.prototype.mount = function (instance, isLayoutDirty) {\n var _this = this;\n var _a;\n if (isLayoutDirty === void 0) { isLayoutDirty = false; }\n if (this.instance)\n return;\n this.isSVG =\n instance instanceof SVGElement && instance.tagName !== \"svg\";\n this.instance = instance;\n var _b = this.options, layoutId = _b.layoutId, layout = _b.layout, visualElement = _b.visualElement;\n if (visualElement && !visualElement.getInstance()) {\n visualElement.mount(instance);\n }\n this.root.nodes.add(this);\n (_a = this.parent) === null || _a === void 0 ? void 0 : _a.children.add(this);\n this.id && this.root.potentialNodes.delete(this.id);\n if (isLayoutDirty && (layout || layoutId)) {\n this.isLayoutDirty = true;\n }\n if (attachResizeListener) {\n var unblockTimeout_1;\n var resizeUnblockUpdate_1 = function () {\n return (_this.root.updateBlockedByResize = false);\n };\n attachResizeListener(instance, function () {\n _this.root.updateBlockedByResize = true;\n clearTimeout(unblockTimeout_1);\n unblockTimeout_1 = setTimeout(resizeUnblockUpdate_1, 250);\n if (globalProjectionState.hasAnimatedSinceResize) {\n globalProjectionState.hasAnimatedSinceResize = false;\n _this.nodes.forEach(finishAnimation);\n }\n });\n }\n if (layoutId) {\n this.root.registerSharedNode(layoutId, this);\n }\n // Only register the handler if it requires layout animation\n if (this.options.animate !== false &&\n visualElement &&\n (layoutId || layout)) {\n this.addEventListener(\"didUpdate\", function (_a) {\n var _b, _c, _d, _e, _f;\n var delta = _a.delta, hasLayoutChanged = _a.hasLayoutChanged, hasRelativeTargetChanged = _a.hasRelativeTargetChanged, newLayout = _a.layout;\n if (_this.isTreeAnimationBlocked()) {\n _this.target = undefined;\n _this.relativeTarget = undefined;\n return;\n }\n // TODO: Check here if an animation exists\n var layoutTransition = (_c = (_b = _this.options.transition) !== null && _b !== void 0 ? _b : visualElement.getDefaultTransition()) !== null && _c !== void 0 ? _c : defaultLayoutTransition;\n var onLayoutAnimationComplete = visualElement.getProps().onLayoutAnimationComplete;\n /**\n * The target layout of the element might stay the same,\n * but its position relative to its parent has changed.\n */\n var targetChanged = !_this.targetLayout ||\n !boxEquals(_this.targetLayout, newLayout) ||\n hasRelativeTargetChanged;\n /**\n * If the layout hasn't seemed to have changed, it might be that the\n * element is visually in the same place in the document but its position\n * relative to its parent has indeed changed. So here we check for that.\n */\n var hasOnlyRelativeTargetChanged = !hasLayoutChanged && hasRelativeTargetChanged;\n if (((_d = _this.resumeFrom) === null || _d === void 0 ? void 0 : _d.instance) ||\n hasOnlyRelativeTargetChanged ||\n (hasLayoutChanged &&\n (targetChanged || !_this.currentAnimation))) {\n if (_this.resumeFrom) {\n _this.resumingFrom = _this.resumeFrom;\n _this.resumingFrom.resumingFrom = undefined;\n }\n _this.setAnimationOrigin(delta, hasOnlyRelativeTargetChanged);\n _this.startAnimation(__assign(__assign({}, getValueTransition(layoutTransition, \"layout\")), { onComplete: onLayoutAnimationComplete }));\n }\n else {\n _this.isLead() && ((_f = (_e = _this.options).onExitComplete) === null || _f === void 0 ? void 0 : _f.call(_e));\n }\n _this.targetLayout = newLayout;\n });\n }\n };\n ProjectionNode.prototype.unmount = function () {\n var _a, _b;\n this.options.layoutId && this.willUpdate();\n this.root.nodes.remove(this);\n (_a = this.getStack()) === null || _a === void 0 ? void 0 : _a.remove(this);\n (_b = this.parent) === null || _b === void 0 ? void 0 : _b.children.delete(this);\n this.instance = undefined;\n cancelSync.preRender(this.updateProjection);\n };\n // only on the root\n ProjectionNode.prototype.blockUpdate = function () {\n this.updateManuallyBlocked = true;\n };\n ProjectionNode.prototype.unblockUpdate = function () {\n this.updateManuallyBlocked = false;\n };\n ProjectionNode.prototype.isUpdateBlocked = function () {\n return this.updateManuallyBlocked || this.updateBlockedByResize;\n };\n ProjectionNode.prototype.isTreeAnimationBlocked = function () {\n var _a;\n return (this.isAnimationBlocked ||\n ((_a = this.parent) === null || _a === void 0 ? void 0 : _a.isTreeAnimationBlocked()) ||\n false);\n };\n // Note: currently only running on root node\n ProjectionNode.prototype.startUpdate = function () {\n var _a;\n if (this.isUpdateBlocked())\n return;\n this.isUpdating = true;\n (_a = this.nodes) === null || _a === void 0 ? void 0 : _a.forEach(resetRotation);\n };\n ProjectionNode.prototype.willUpdate = function (shouldNotifyListeners) {\n var _a, _b, _c;\n if (shouldNotifyListeners === void 0) { shouldNotifyListeners = true; }\n if (this.root.isUpdateBlocked()) {\n (_b = (_a = this.options).onExitComplete) === null || _b === void 0 ? void 0 : _b.call(_a);\n return;\n }\n !this.root.isUpdating && this.root.startUpdate();\n if (this.isLayoutDirty)\n return;\n this.isLayoutDirty = true;\n for (var i = 0; i < this.path.length; i++) {\n var node = this.path[i];\n node.shouldResetTransform = true;\n /**\n * TODO: Check we haven't updated the scroll\n * since the last didUpdate\n */\n node.updateScroll();\n }\n var _d = this.options, layoutId = _d.layoutId, layout = _d.layout;\n if (layoutId === undefined && !layout)\n return;\n var transformTemplate = (_c = this.options.visualElement) === null || _c === void 0 ? void 0 : _c.getProps().transformTemplate;\n this.prevTransformTemplateValue = transformTemplate === null || transformTemplate === void 0 ? void 0 : transformTemplate(this.latestValues, \"\");\n this.updateSnapshot();\n shouldNotifyListeners && this.notifyListeners(\"willUpdate\");\n };\n // Note: Currently only running on root node\n ProjectionNode.prototype.didUpdate = function () {\n var updateWasBlocked = this.isUpdateBlocked();\n // When doing an instant transition, we skip the layout update,\n // but should still clean up the measurements so that the next\n // snapshot could be taken correctly.\n if (updateWasBlocked) {\n this.unblockUpdate();\n this.clearAllSnapshots();\n this.nodes.forEach(clearMeasurements);\n return;\n }\n if (!this.isUpdating)\n return;\n this.isUpdating = false;\n /**\n * Search for and mount newly-added projection elements.\n *\n * TODO: Every time a new component is rendered we could search up the tree for\n * the closest mounted node and query from there rather than document.\n */\n if (this.potentialNodes.size) {\n this.potentialNodes.forEach(mountNodeEarly);\n this.potentialNodes.clear();\n }\n /**\n * Write\n */\n this.nodes.forEach(resetTransformStyle);\n /**\n * Read ==================\n */\n // Update layout measurements of updated children\n this.nodes.forEach(updateLayout);\n /**\n * Write\n */\n // Notify listeners that the layout is updated\n this.nodes.forEach(notifyLayoutUpdate);\n this.clearAllSnapshots();\n // Flush any scheduled updates\n flushSync.update();\n flushSync.preRender();\n flushSync.render();\n };\n ProjectionNode.prototype.clearAllSnapshots = function () {\n this.nodes.forEach(clearSnapshot);\n this.sharedNodes.forEach(removeLeadSnapshots);\n };\n ProjectionNode.prototype.scheduleUpdateProjection = function () {\n sync.preRender(this.updateProjection, false, true);\n };\n ProjectionNode.prototype.scheduleCheckAfterUnmount = function () {\n var _this = this;\n /**\n * If the unmounting node is in a layoutGroup and did trigger a willUpdate,\n * we manually call didUpdate to give a chance to the siblings to animate.\n * Otherwise, cleanup all snapshots to prevents future nodes from reusing them.\n */\n sync.postRender(function () {\n if (_this.isLayoutDirty) {\n _this.root.didUpdate();\n }\n else {\n _this.root.checkUpdateFailed();\n }\n });\n };\n /**\n * Update measurements\n */\n ProjectionNode.prototype.updateSnapshot = function () {\n if (this.snapshot || !this.instance)\n return;\n var measured = this.measure();\n var layout = this.removeTransform(this.removeElementScroll(measured));\n roundBox(layout);\n this.snapshot = {\n measured: measured,\n layout: layout,\n latestValues: {},\n };\n };\n ProjectionNode.prototype.updateLayout = function () {\n var _a;\n if (!this.instance)\n return;\n // TODO: Incorporate into a forwarded scroll offset\n this.updateScroll();\n if (!(this.options.alwaysMeasureLayout && this.isLead()) &&\n !this.isLayoutDirty) {\n return;\n }\n /**\n * When a node is mounted, it simply resumes from the prevLead's\n * snapshot instead of taking a new one, but the ancestors scroll\n * might have updated while the prevLead is unmounted. We need to\n * update the scroll again to make sure the layout we measure is\n * up to date.\n */\n if (this.resumeFrom && !this.resumeFrom.instance) {\n for (var i = 0; i < this.path.length; i++) {\n var node = this.path[i];\n node.updateScroll();\n }\n }\n var measured = this.measure();\n roundBox(measured);\n var prevLayout = this.layout;\n this.layout = {\n measured: measured,\n actual: this.removeElementScroll(measured),\n };\n this.layoutCorrected = createBox();\n this.isLayoutDirty = false;\n this.projectionDelta = undefined;\n this.notifyListeners(\"measure\", this.layout.actual);\n (_a = this.options.visualElement) === null || _a === void 0 ? void 0 : _a.notifyLayoutMeasure(this.layout.actual, prevLayout === null || prevLayout === void 0 ? void 0 : prevLayout.actual);\n };\n ProjectionNode.prototype.updateScroll = function () {\n if (this.options.layoutScroll && this.instance) {\n this.scroll = measureScroll(this.instance);\n }\n };\n ProjectionNode.prototype.resetTransform = function () {\n var _a;\n if (!resetTransform)\n return;\n var isResetRequested = this.isLayoutDirty || this.shouldResetTransform;\n var hasProjection = this.projectionDelta && !isDeltaZero(this.projectionDelta);\n var transformTemplate = (_a = this.options.visualElement) === null || _a === void 0 ? void 0 : _a.getProps().transformTemplate;\n var transformTemplateValue = transformTemplate === null || transformTemplate === void 0 ? void 0 : transformTemplate(this.latestValues, \"\");\n var transformTemplateHasChanged = transformTemplateValue !== this.prevTransformTemplateValue;\n if (isResetRequested &&\n (hasProjection ||\n hasTransform(this.latestValues) ||\n transformTemplateHasChanged)) {\n resetTransform(this.instance, transformTemplateValue);\n this.shouldResetTransform = false;\n this.scheduleRender();\n }\n };\n ProjectionNode.prototype.measure = function () {\n var visualElement = this.options.visualElement;\n if (!visualElement)\n return createBox();\n var box = visualElement.measureViewportBox();\n // Remove viewport scroll to give page-relative coordinates\n var scroll = this.root.scroll;\n if (scroll) {\n translateAxis(box.x, scroll.x);\n translateAxis(box.y, scroll.y);\n }\n return box;\n };\n ProjectionNode.prototype.removeElementScroll = function (box) {\n var boxWithoutScroll = createBox();\n copyBoxInto(boxWithoutScroll, box);\n /**\n * Performance TODO: Keep a cumulative scroll offset down the tree\n * rather than loop back up the path.\n */\n for (var i = 0; i < this.path.length; i++) {\n var node = this.path[i];\n var scroll_1 = node.scroll, options = node.options;\n if (node !== this.root && scroll_1 && options.layoutScroll) {\n translateAxis(boxWithoutScroll.x, scroll_1.x);\n translateAxis(boxWithoutScroll.y, scroll_1.y);\n }\n }\n return boxWithoutScroll;\n };\n ProjectionNode.prototype.applyTransform = function (box, transformOnly) {\n if (transformOnly === void 0) { transformOnly = false; }\n var withTransforms = createBox();\n copyBoxInto(withTransforms, box);\n for (var i = 0; i < this.path.length; i++) {\n var node = this.path[i];\n if (!transformOnly &&\n node.options.layoutScroll &&\n node.scroll &&\n node !== node.root) {\n transformBox(withTransforms, {\n x: -node.scroll.x,\n y: -node.scroll.y,\n });\n }\n if (!hasTransform(node.latestValues))\n continue;\n transformBox(withTransforms, node.latestValues);\n }\n if (hasTransform(this.latestValues)) {\n transformBox(withTransforms, this.latestValues);\n }\n return withTransforms;\n };\n ProjectionNode.prototype.removeTransform = function (box) {\n var _a;\n var boxWithoutTransform = createBox();\n copyBoxInto(boxWithoutTransform, box);\n for (var i = 0; i < this.path.length; i++) {\n var node = this.path[i];\n if (!node.instance)\n continue;\n if (!hasTransform(node.latestValues))\n continue;\n hasScale(node.latestValues) && node.updateSnapshot();\n var sourceBox = createBox();\n var nodeBox = node.measure();\n copyBoxInto(sourceBox, nodeBox);\n removeBoxTransforms(boxWithoutTransform, node.latestValues, (_a = node.snapshot) === null || _a === void 0 ? void 0 : _a.layout, sourceBox);\n }\n if (hasTransform(this.latestValues)) {\n removeBoxTransforms(boxWithoutTransform, this.latestValues);\n }\n return boxWithoutTransform;\n };\n /**\n *\n */\n ProjectionNode.prototype.setTargetDelta = function (delta) {\n this.targetDelta = delta;\n this.root.scheduleUpdateProjection();\n };\n ProjectionNode.prototype.setOptions = function (options) {\n var _a;\n this.options = __assign(__assign(__assign({}, this.options), options), { crossfade: (_a = options.crossfade) !== null && _a !== void 0 ? _a : true });\n };\n ProjectionNode.prototype.clearMeasurements = function () {\n this.scroll = undefined;\n this.layout = undefined;\n this.snapshot = undefined;\n this.prevTransformTemplateValue = undefined;\n this.targetDelta = undefined;\n this.target = undefined;\n this.isLayoutDirty = false;\n };\n /**\n * Frame calculations\n */\n ProjectionNode.prototype.resolveTargetDelta = function () {\n var _a;\n var _b = this.options, layout = _b.layout, layoutId = _b.layoutId;\n /**\n * If we have no layout, we can't perform projection, so early return\n */\n if (!this.layout || !(layout || layoutId))\n return;\n /**\n * If we don't have a targetDelta but do have a layout, we can attempt to resolve\n * a relativeParent. This will allow a component to perform scale correction\n * even if no animation has started.\n */\n // TODO If this is unsuccessful this currently happens every frame\n if (!this.targetDelta && !this.relativeTarget) {\n // TODO: This is a semi-repetition of further down this function, make DRY\n this.relativeParent = this.getClosestProjectingParent();\n if (this.relativeParent && this.relativeParent.layout) {\n this.relativeTarget = createBox();\n this.relativeTargetOrigin = createBox();\n calcRelativePosition(this.relativeTargetOrigin, this.layout.actual, this.relativeParent.layout.actual);\n copyBoxInto(this.relativeTarget, this.relativeTargetOrigin);\n }\n }\n /**\n * If we have no relative target or no target delta our target isn't valid\n * for this frame.\n */\n if (!this.relativeTarget && !this.targetDelta)\n return;\n /**\n * Lazy-init target data structure\n */\n if (!this.target) {\n this.target = createBox();\n this.targetWithTransforms = createBox();\n }\n /**\n * If we've got a relative box for this component, resolve it into a target relative to the parent.\n */\n if (this.relativeTarget &&\n this.relativeTargetOrigin &&\n ((_a = this.relativeParent) === null || _a === void 0 ? void 0 : _a.target)) {\n calcRelativeBox(this.target, this.relativeTarget, this.relativeParent.target);\n /**\n * If we've only got a targetDelta, resolve it into a target\n */\n }\n else if (this.targetDelta) {\n if (Boolean(this.resumingFrom)) {\n // TODO: This is creating a new object every frame\n this.target = this.applyTransform(this.layout.actual);\n }\n else {\n copyBoxInto(this.target, this.layout.actual);\n }\n applyBoxDelta(this.target, this.targetDelta);\n }\n else {\n /**\n * If no target, use own layout as target\n */\n copyBoxInto(this.target, this.layout.actual);\n }\n /**\n * If we've been told to attempt to resolve a relative target, do so.\n */\n if (this.attemptToResolveRelativeTarget) {\n this.attemptToResolveRelativeTarget = false;\n this.relativeParent = this.getClosestProjectingParent();\n if (this.relativeParent &&\n Boolean(this.relativeParent.resumingFrom) ===\n Boolean(this.resumingFrom) &&\n !this.relativeParent.options.layoutScroll &&\n this.relativeParent.target) {\n this.relativeTarget = createBox();\n this.relativeTargetOrigin = createBox();\n calcRelativePosition(this.relativeTargetOrigin, this.target, this.relativeParent.target);\n copyBoxInto(this.relativeTarget, this.relativeTargetOrigin);\n }\n }\n };\n ProjectionNode.prototype.getClosestProjectingParent = function () {\n if (!this.parent || hasTransform(this.parent.latestValues))\n return undefined;\n if ((this.parent.relativeTarget || this.parent.targetDelta) &&\n this.parent.layout) {\n return this.parent;\n }\n else {\n return this.parent.getClosestProjectingParent();\n }\n };\n ProjectionNode.prototype.calcProjection = function () {\n var _a;\n var _b = this.options, layout = _b.layout, layoutId = _b.layoutId;\n /**\n * If this section of the tree isn't animating we can\n * delete our target sources for the following frame.\n */\n this.isTreeAnimating = Boolean(((_a = this.parent) === null || _a === void 0 ? void 0 : _a.isTreeAnimating) ||\n this.currentAnimation ||\n this.pendingAnimation);\n if (!this.isTreeAnimating) {\n this.targetDelta = this.relativeTarget = undefined;\n }\n if (!this.layout || !(layout || layoutId))\n return;\n var lead = this.getLead();\n /**\n * Reset the corrected box with the latest values from box, as we're then going\n * to perform mutative operations on it.\n */\n copyBoxInto(this.layoutCorrected, this.layout.actual);\n /**\n * Apply all the parent deltas to this box to produce the corrected box. This\n * is the layout box, as it will appear on screen as a result of the transforms of its parents.\n */\n applyTreeDeltas(this.layoutCorrected, this.treeScale, this.path, Boolean(this.resumingFrom) || this !== lead);\n var target = lead.target;\n if (!target)\n return;\n if (!this.projectionDelta) {\n this.projectionDelta = createDelta();\n this.projectionDeltaWithTransform = createDelta();\n }\n var prevTreeScaleX = this.treeScale.x;\n var prevTreeScaleY = this.treeScale.y;\n var prevProjectionTransform = this.projectionTransform;\n /**\n * Update the delta between the corrected box and the target box before user-set transforms were applied.\n * This will allow us to calculate the corrected borderRadius and boxShadow to compensate\n * for our layout reprojection, but still allow them to be scaled correctly by the user.\n * It might be that to simplify this we may want to accept that user-set scale is also corrected\n * and we wouldn't have to keep and calc both deltas, OR we could support a user setting\n * to allow people to choose whether these styles are corrected based on just the\n * layout reprojection or the final bounding box.\n */\n calcBoxDelta(this.projectionDelta, this.layoutCorrected, target, this.latestValues);\n this.projectionTransform = buildProjectionTransform(this.projectionDelta, this.treeScale);\n if (this.projectionTransform !== prevProjectionTransform ||\n this.treeScale.x !== prevTreeScaleX ||\n this.treeScale.y !== prevTreeScaleY) {\n this.hasProjected = true;\n this.scheduleRender();\n this.notifyListeners(\"projectionUpdate\", target);\n }\n };\n ProjectionNode.prototype.hide = function () {\n this.isVisible = false;\n // TODO: Schedule render\n };\n ProjectionNode.prototype.show = function () {\n this.isVisible = true;\n // TODO: Schedule render\n };\n ProjectionNode.prototype.scheduleRender = function (notifyAll) {\n var _a, _b, _c;\n if (notifyAll === void 0) { notifyAll = true; }\n (_b = (_a = this.options).scheduleRender) === null || _b === void 0 ? void 0 : _b.call(_a);\n notifyAll && ((_c = this.getStack()) === null || _c === void 0 ? void 0 : _c.scheduleRender());\n if (this.resumingFrom && !this.resumingFrom.instance) {\n this.resumingFrom = undefined;\n }\n };\n ProjectionNode.prototype.setAnimationOrigin = function (delta, hasOnlyRelativeTargetChanged) {\n var _this = this;\n var _a;\n if (hasOnlyRelativeTargetChanged === void 0) { hasOnlyRelativeTargetChanged = false; }\n var snapshot = this.snapshot;\n var snapshotLatestValues = (snapshot === null || snapshot === void 0 ? void 0 : snapshot.latestValues) || {};\n var mixedValues = __assign({}, this.latestValues);\n var targetDelta = createDelta();\n this.relativeTarget = this.relativeTargetOrigin = undefined;\n this.attemptToResolveRelativeTarget = !hasOnlyRelativeTargetChanged;\n var relativeLayout = createBox();\n var isSharedLayoutAnimation = snapshot === null || snapshot === void 0 ? void 0 : snapshot.isShared;\n var isOnlyMember = (((_a = this.getStack()) === null || _a === void 0 ? void 0 : _a.members.length) || 0) <= 1;\n var shouldCrossfadeOpacity = Boolean(isSharedLayoutAnimation &&\n !isOnlyMember &&\n this.options.crossfade === true &&\n !this.path.some(hasOpacityCrossfade));\n this.mixTargetDelta = function (latest) {\n var _a;\n var progress = latest / 1000;\n mixAxisDelta(targetDelta.x, delta.x, progress);\n mixAxisDelta(targetDelta.y, delta.y, progress);\n _this.setTargetDelta(targetDelta);\n if (_this.relativeTarget &&\n _this.relativeTargetOrigin &&\n _this.layout &&\n ((_a = _this.relativeParent) === null || _a === void 0 ? void 0 : _a.layout)) {\n calcRelativePosition(relativeLayout, _this.layout.actual, _this.relativeParent.layout.actual);\n mixBox(_this.relativeTarget, _this.relativeTargetOrigin, relativeLayout, progress);\n }\n if (isSharedLayoutAnimation) {\n _this.animationValues = mixedValues;\n mixValues(mixedValues, snapshotLatestValues, _this.latestValues, progress, shouldCrossfadeOpacity, isOnlyMember);\n }\n _this.root.scheduleUpdateProjection();\n _this.scheduleRender();\n };\n this.mixTargetDelta(0);\n };\n ProjectionNode.prototype.startAnimation = function (options) {\n var _this = this;\n var _a, _b;\n (_a = this.currentAnimation) === null || _a === void 0 ? void 0 : _a.stop();\n if (this.resumingFrom) {\n (_b = this.resumingFrom.currentAnimation) === null || _b === void 0 ? void 0 : _b.stop();\n }\n if (this.pendingAnimation) {\n cancelSync.update(this.pendingAnimation);\n this.pendingAnimation = undefined;\n }\n /**\n * Start the animation in the next frame to have a frame with progress 0,\n * where the target is the same as when the animation started, so we can\n * calculate the relative positions correctly for instant transitions.\n */\n this.pendingAnimation = sync.update(function () {\n globalProjectionState.hasAnimatedSinceResize = true;\n _this.currentAnimation = animate(0, animationTarget, __assign(__assign({}, options), { onUpdate: function (latest) {\n var _a;\n _this.mixTargetDelta(latest);\n (_a = options.onUpdate) === null || _a === void 0 ? void 0 : _a.call(options, latest);\n }, onComplete: function () {\n var _a;\n (_a = options.onComplete) === null || _a === void 0 ? void 0 : _a.call(options);\n _this.completeAnimation();\n } }));\n if (_this.resumingFrom) {\n _this.resumingFrom.currentAnimation = _this.currentAnimation;\n }\n _this.pendingAnimation = undefined;\n });\n };\n ProjectionNode.prototype.completeAnimation = function () {\n var _a;\n if (this.resumingFrom) {\n this.resumingFrom.currentAnimation = undefined;\n this.resumingFrom.preserveOpacity = undefined;\n }\n (_a = this.getStack()) === null || _a === void 0 ? void 0 : _a.exitAnimationComplete();\n this.resumingFrom =\n this.currentAnimation =\n this.animationValues =\n undefined;\n this.notifyListeners(\"animationComplete\");\n };\n ProjectionNode.prototype.finishAnimation = function () {\n var _a;\n if (this.currentAnimation) {\n (_a = this.mixTargetDelta) === null || _a === void 0 ? void 0 : _a.call(this, animationTarget);\n this.currentAnimation.stop();\n }\n this.completeAnimation();\n };\n ProjectionNode.prototype.applyTransformsToTarget = function () {\n var _a = this.getLead(), targetWithTransforms = _a.targetWithTransforms, target = _a.target, layout = _a.layout, latestValues = _a.latestValues;\n if (!targetWithTransforms || !target || !layout)\n return;\n copyBoxInto(targetWithTransforms, target);\n /**\n * Apply the latest user-set transforms to the targetBox to produce the targetBoxFinal.\n * This is the final box that we will then project into by calculating a transform delta and\n * applying it to the corrected box.\n */\n transformBox(targetWithTransforms, latestValues);\n /**\n * Update the delta between the corrected box and the final target box, after\n * user-set transforms are applied to it. This will be used by the renderer to\n * create a transform style that will reproject the element from its actual layout\n * into the desired bounding box.\n */\n calcBoxDelta(this.projectionDeltaWithTransform, this.layoutCorrected, targetWithTransforms, latestValues);\n };\n ProjectionNode.prototype.registerSharedNode = function (layoutId, node) {\n var _a, _b, _c;\n if (!this.sharedNodes.has(layoutId)) {\n this.sharedNodes.set(layoutId, new NodeStack());\n }\n var stack = this.sharedNodes.get(layoutId);\n stack.add(node);\n node.promote({\n transition: (_a = node.options.initialPromotionConfig) === null || _a === void 0 ? void 0 : _a.transition,\n preserveFollowOpacity: (_c = (_b = node.options.initialPromotionConfig) === null || _b === void 0 ? void 0 : _b.shouldPreserveFollowOpacity) === null || _c === void 0 ? void 0 : _c.call(_b, node),\n });\n };\n ProjectionNode.prototype.isLead = function () {\n var stack = this.getStack();\n return stack ? stack.lead === this : true;\n };\n ProjectionNode.prototype.getLead = function () {\n var _a;\n var layoutId = this.options.layoutId;\n return layoutId ? ((_a = this.getStack()) === null || _a === void 0 ? void 0 : _a.lead) || this : this;\n };\n ProjectionNode.prototype.getPrevLead = function () {\n var _a;\n var layoutId = this.options.layoutId;\n return layoutId ? (_a = this.getStack()) === null || _a === void 0 ? void 0 : _a.prevLead : undefined;\n };\n ProjectionNode.prototype.getStack = function () {\n var layoutId = this.options.layoutId;\n if (layoutId)\n return this.root.sharedNodes.get(layoutId);\n };\n ProjectionNode.prototype.promote = function (_a) {\n var _b = _a === void 0 ? {} : _a, needsReset = _b.needsReset, transition = _b.transition, preserveFollowOpacity = _b.preserveFollowOpacity;\n var stack = this.getStack();\n if (stack)\n stack.promote(this, preserveFollowOpacity);\n if (needsReset) {\n this.projectionDelta = undefined;\n this.needsReset = true;\n }\n if (transition)\n this.setOptions({ transition: transition });\n };\n ProjectionNode.prototype.relegate = function () {\n var stack = this.getStack();\n if (stack) {\n return stack.relegate(this);\n }\n else {\n return false;\n }\n };\n ProjectionNode.prototype.resetRotation = function () {\n var visualElement = this.options.visualElement;\n if (!visualElement)\n return;\n // If there's no detected rotation values, we can early return without a forced render.\n var hasRotate = false;\n // Keep a record of all the values we've reset\n var resetValues = {};\n // Check the rotate value of all axes and reset to 0\n for (var i = 0; i < transformAxes.length; i++) {\n var axis = transformAxes[i];\n var key = \"rotate\" + axis;\n // If this rotation doesn't exist as a motion value, then we don't\n // need to reset it\n if (!visualElement.getStaticValue(key)) {\n continue;\n }\n hasRotate = true;\n // Record the rotation and then temporarily set it to 0\n resetValues[key] = visualElement.getStaticValue(key);\n visualElement.setStaticValue(key, 0);\n }\n // If there's no rotation values, we don't need to do any more.\n if (!hasRotate)\n return;\n // Force a render of this element to apply the transform with all rotations\n // set to 0.\n visualElement === null || visualElement === void 0 ? void 0 : visualElement.syncRender();\n // Put back all the values we reset\n for (var key in resetValues) {\n visualElement.setStaticValue(key, resetValues[key]);\n }\n // Schedule a render for the next frame. This ensures we won't visually\n // see the element with the reset rotate value applied.\n visualElement.scheduleRender();\n };\n ProjectionNode.prototype.getProjectionStyles = function (styleProp) {\n var _a, _b, _c, _d, _e, _f;\n if (styleProp === void 0) { styleProp = {}; }\n // TODO: Return lifecycle-persistent object\n var styles = {};\n if (!this.instance || this.isSVG)\n return styles;\n if (!this.isVisible) {\n return { visibility: \"hidden\" };\n }\n else {\n styles.visibility = \"\";\n }\n var transformTemplate = (_a = this.options.visualElement) === null || _a === void 0 ? void 0 : _a.getProps().transformTemplate;\n if (this.needsReset) {\n this.needsReset = false;\n styles.opacity = \"\";\n styles.pointerEvents =\n resolveMotionValue(styleProp.pointerEvents) || \"\";\n styles.transform = transformTemplate\n ? transformTemplate(this.latestValues, \"\")\n : \"none\";\n return styles;\n }\n var lead = this.getLead();\n if (!this.projectionDelta || !this.layout || !lead.target) {\n var emptyStyles = {};\n if (this.options.layoutId) {\n emptyStyles.opacity = (_b = this.latestValues.opacity) !== null && _b !== void 0 ? _b : 1;\n emptyStyles.pointerEvents =\n resolveMotionValue(styleProp.pointerEvents) || \"\";\n }\n if (this.hasProjected && !hasTransform(this.latestValues)) {\n emptyStyles.transform = transformTemplate\n ? transformTemplate({}, \"\")\n : \"none\";\n this.hasProjected = false;\n }\n return emptyStyles;\n }\n var valuesToRender = lead.animationValues || lead.latestValues;\n this.applyTransformsToTarget();\n styles.transform = buildProjectionTransform(this.projectionDeltaWithTransform, this.treeScale, valuesToRender);\n if (transformTemplate) {\n styles.transform = transformTemplate(valuesToRender, styles.transform);\n }\n var _g = this.projectionDelta, x = _g.x, y = _g.y;\n styles.transformOrigin = \"\".concat(x.origin * 100, \"% \").concat(y.origin * 100, \"% 0\");\n if (lead.animationValues) {\n /**\n * If the lead component is animating, assign this either the entering/leaving\n * opacity\n */\n styles.opacity =\n lead === this\n ? (_d = (_c = valuesToRender.opacity) !== null && _c !== void 0 ? _c : this.latestValues.opacity) !== null && _d !== void 0 ? _d : 1\n : this.preserveOpacity\n ? this.latestValues.opacity\n : valuesToRender.opacityExit;\n }\n else {\n /**\n * Or we're not animating at all, set the lead component to its actual\n * opacity and other components to hidden.\n */\n styles.opacity =\n lead === this\n ? (_e = valuesToRender.opacity) !== null && _e !== void 0 ? _e : \"\"\n : (_f = valuesToRender.opacityExit) !== null && _f !== void 0 ? _f : 0;\n }\n /**\n * Apply scale correction\n */\n for (var key in scaleCorrectors) {\n if (valuesToRender[key] === undefined)\n continue;\n var _h = scaleCorrectors[key], correct = _h.correct, applyTo = _h.applyTo;\n var corrected = correct(valuesToRender[key], lead);\n if (applyTo) {\n var num = applyTo.length;\n for (var i = 0; i < num; i++) {\n styles[applyTo[i]] = corrected;\n }\n }\n else {\n styles[key] = corrected;\n }\n }\n /**\n * Disable pointer events on follow components. This is to ensure\n * that if a follow component covers a lead component it doesn't block\n * pointer events on the lead.\n */\n if (this.options.layoutId) {\n styles.pointerEvents =\n lead === this\n ? resolveMotionValue(styleProp.pointerEvents) || \"\"\n : \"none\";\n }\n return styles;\n };\n ProjectionNode.prototype.clearSnapshot = function () {\n this.resumeFrom = this.snapshot = undefined;\n };\n // Only run on root\n ProjectionNode.prototype.resetTree = function () {\n this.root.nodes.forEach(function (node) { var _a; return (_a = node.currentAnimation) === null || _a === void 0 ? void 0 : _a.stop(); });\n this.root.nodes.forEach(clearMeasurements);\n this.root.sharedNodes.clear();\n };\n return ProjectionNode;\n }());\n}\nfunction updateLayout(node) {\n node.updateLayout();\n}\nfunction notifyLayoutUpdate(node) {\n var _a, _b, _c, _d;\n var snapshot = (_b = (_a = node.resumeFrom) === null || _a === void 0 ? void 0 : _a.snapshot) !== null && _b !== void 0 ? _b : node.snapshot;\n if (node.isLead() &&\n node.layout &&\n snapshot &&\n node.hasListeners(\"didUpdate\")) {\n var _e = node.layout, layout_1 = _e.actual, measuredLayout = _e.measured;\n // TODO Maybe we want to also resize the layout snapshot so we don't trigger\n // animations for instance if layout=\"size\" and an element has only changed position\n if (node.options.animationType === \"size\") {\n eachAxis(function (axis) {\n var axisSnapshot = snapshot.isShared\n ? snapshot.measured[axis]\n : snapshot.layout[axis];\n var length = calcLength(axisSnapshot);\n axisSnapshot.min = layout_1[axis].min;\n axisSnapshot.max = axisSnapshot.min + length;\n });\n }\n else if (node.options.animationType === \"position\") {\n eachAxis(function (axis) {\n var axisSnapshot = snapshot.isShared\n ? snapshot.measured[axis]\n : snapshot.layout[axis];\n var length = calcLength(layout_1[axis]);\n axisSnapshot.max = axisSnapshot.min + length;\n });\n }\n var layoutDelta = createDelta();\n calcBoxDelta(layoutDelta, layout_1, snapshot.layout);\n var visualDelta = createDelta();\n if (snapshot.isShared) {\n calcBoxDelta(visualDelta, node.applyTransform(measuredLayout, true), snapshot.measured);\n }\n else {\n calcBoxDelta(visualDelta, layout_1, snapshot.layout);\n }\n var hasLayoutChanged = !isDeltaZero(layoutDelta);\n var hasRelativeTargetChanged = false;\n if (!node.resumeFrom) {\n node.relativeParent = node.getClosestProjectingParent();\n /**\n * If the relativeParent is itself resuming from a different element then\n * the relative snapshot is not relavent\n */\n if (node.relativeParent && !node.relativeParent.resumeFrom) {\n var _f = node.relativeParent, parentSnapshot = _f.snapshot, parentLayout = _f.layout;\n if (parentSnapshot && parentLayout) {\n var relativeSnapshot = createBox();\n calcRelativePosition(relativeSnapshot, snapshot.layout, parentSnapshot.layout);\n var relativeLayout = createBox();\n calcRelativePosition(relativeLayout, layout_1, parentLayout.actual);\n if (!boxEquals(relativeSnapshot, relativeLayout)) {\n hasRelativeTargetChanged = true;\n }\n }\n }\n }\n node.notifyListeners(\"didUpdate\", {\n layout: layout_1,\n snapshot: snapshot,\n delta: visualDelta,\n layoutDelta: layoutDelta,\n hasLayoutChanged: hasLayoutChanged,\n hasRelativeTargetChanged: hasRelativeTargetChanged,\n });\n }\n else if (node.isLead()) {\n (_d = (_c = node.options).onExitComplete) === null || _d === void 0 ? void 0 : _d.call(_c);\n }\n /**\n * Clearing transition\n * TODO: Investigate why this transition is being passed in as {type: false } from Framer\n * and why we need it at all\n */\n node.options.transition = undefined;\n}\nfunction clearSnapshot(node) {\n node.clearSnapshot();\n}\nfunction clearMeasurements(node) {\n node.clearMeasurements();\n}\nfunction resetTransformStyle(node) {\n node.resetTransform();\n}\nfunction finishAnimation(node) {\n node.finishAnimation();\n node.targetDelta = node.relativeTarget = node.target = undefined;\n}\nfunction resolveTargetDelta(node) {\n node.resolveTargetDelta();\n}\nfunction calcProjection(node) {\n node.calcProjection();\n}\nfunction resetRotation(node) {\n node.resetRotation();\n}\nfunction removeLeadSnapshots(stack) {\n stack.removeLeadSnapshot();\n}\nfunction mixAxisDelta(output, delta, p) {\n output.translate = mix(delta.translate, 0, p);\n output.scale = mix(delta.scale, 1, p);\n output.origin = delta.origin;\n output.originPoint = delta.originPoint;\n}\nfunction mixAxis(output, from, to, p) {\n output.min = mix(from.min, to.min, p);\n output.max = mix(from.max, to.max, p);\n}\nfunction mixBox(output, from, to, p) {\n mixAxis(output.x, from.x, to.x, p);\n mixAxis(output.y, from.y, to.y, p);\n}\nfunction hasOpacityCrossfade(node) {\n return (node.animationValues && node.animationValues.opacityExit !== undefined);\n}\nvar defaultLayoutTransition = {\n duration: 0.45,\n ease: [0.4, 0, 0.1, 1],\n};\nfunction mountNodeEarly(node, id) {\n /**\n * Rather than searching the DOM from document we can search the\n * path for the deepest mounted ancestor and search from there\n */\n var searchNode = node.root;\n for (var i = node.path.length - 1; i >= 0; i--) {\n if (Boolean(node.path[i].instance)) {\n searchNode = node.path[i];\n break;\n }\n }\n var searchElement = searchNode && searchNode !== node.root ? searchNode.instance : document;\n var element = searchElement.querySelector(\"[data-projection-id=\\\"\".concat(id, \"\\\"]\"));\n if (element)\n node.mount(element, true);\n}\nfunction roundAxis(axis) {\n axis.min = Math.round(axis.min);\n axis.max = Math.round(axis.max);\n}\nfunction roundBox(box) {\n roundAxis(box.x);\n roundAxis(box.y);\n}\n\nexport { createProjectionNode, globalProjectionState, mixAxis, mixAxisDelta, mixBox };\n","import { useConstant } from '../../utils/use-constant.mjs';\nimport { globalProjectionState } from './create-projection-node.mjs';\n\nvar id = 1;\nfunction useProjectionId() {\n return useConstant(function () {\n if (globalProjectionState.hasEverUpdated) {\n return id++;\n }\n });\n}\n\nexport { useProjectionId };\n","import { createContext } from 'react';\n\n/**\n * @internal\n */\nvar LayoutGroupContext = createContext({});\n\nexport { LayoutGroupContext };\n","import { createContext } from 'react';\n\n/**\n * @internal\n */\nvar SwitchLayoutGroupContext = createContext({});\n\nexport { SwitchLayoutGroupContext };\n","import { isRefObject } from '../../utils/is-ref-object.mjs';\nimport { useContext } from 'react';\nimport { SwitchLayoutGroupContext } from '../../context/SwitchLayoutGroupContext.mjs';\n\nfunction useProjection(projectionId, _a, visualElement, ProjectionNodeConstructor) {\n var _b;\n var layoutId = _a.layoutId, layout = _a.layout, drag = _a.drag, dragConstraints = _a.dragConstraints, layoutScroll = _a.layoutScroll;\n var initialPromotionConfig = useContext(SwitchLayoutGroupContext);\n if (!ProjectionNodeConstructor ||\n !visualElement ||\n (visualElement === null || visualElement === void 0 ? void 0 : visualElement.projection)) {\n return;\n }\n visualElement.projection = new ProjectionNodeConstructor(projectionId, visualElement.getLatestValues(), (_b = visualElement.parent) === null || _b === void 0 ? void 0 : _b.projection);\n visualElement.projection.setOptions({\n layoutId: layoutId,\n layout: layout,\n alwaysMeasureLayout: Boolean(drag) || (dragConstraints && isRefObject(dragConstraints)),\n visualElement: visualElement,\n scheduleRender: function () { return visualElement.scheduleRender(); },\n /**\n * TODO: Update options in an effect. This could be tricky as it'll be too late\n * to update by the time layout animations run.\n * We also need to fix this safeToRemove by linking it up to the one returned by usePresence,\n * ensuring it gets called if there's no potential layout animations.\n *\n */\n animationType: typeof layout === \"string\" ? layout : \"both\",\n initialPromotionConfig: initialPromotionConfig,\n layoutScroll: layoutScroll,\n });\n}\n\nexport { useProjection };\n","import { __extends } from 'tslib';\nimport React__default from 'react';\n\nvar VisualElementHandler = /** @class */ (function (_super) {\n __extends(VisualElementHandler, _super);\n function VisualElementHandler() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n /**\n * Update visual element props as soon as we know this update is going to be commited.\n */\n VisualElementHandler.prototype.getSnapshotBeforeUpdate = function () {\n this.updateProps();\n return null;\n };\n VisualElementHandler.prototype.componentDidUpdate = function () { };\n VisualElementHandler.prototype.updateProps = function () {\n var _a = this.props, visualElement = _a.visualElement, props = _a.props;\n if (visualElement)\n visualElement.setProps(props);\n };\n VisualElementHandler.prototype.render = function () {\n return this.props.children;\n };\n return VisualElementHandler;\n}(React__default.Component));\n\nexport { VisualElementHandler };\n","import { __assign } from 'tslib';\nimport * as React from 'react';\nimport { forwardRef, useContext } from 'react';\nimport { useFeatures } from './features/use-features.mjs';\nimport { MotionConfigContext } from '../context/MotionConfigContext.mjs';\nimport { MotionContext } from '../context/MotionContext/index.mjs';\nimport { useVisualElement } from './utils/use-visual-element.mjs';\nimport { useMotionRef } from './utils/use-motion-ref.mjs';\nimport { useCreateMotionContext } from '../context/MotionContext/create.mjs';\nimport { loadFeatures, featureDefinitions } from './features/definitions.mjs';\nimport { isBrowser } from '../utils/is-browser.mjs';\nimport { useProjectionId } from '../projection/node/id.mjs';\nimport { LayoutGroupContext } from '../context/LayoutGroupContext.mjs';\nimport { useProjection } from './features/use-projection.mjs';\nimport { VisualElementHandler } from './utils/VisualElementHandler.mjs';\n\n/**\n * Create a `motion` component.\n *\n * This function accepts a Component argument, which can be either a string (ie \"div\"\n * for `motion.div`), or an actual React component.\n *\n * Alongside this is a config option which provides a way of rendering the provided\n * component \"offline\", or outside the React render cycle.\n *\n * @internal\n */\nfunction createMotionComponent(_a) {\n var preloadedFeatures = _a.preloadedFeatures, createVisualElement = _a.createVisualElement, projectionNodeConstructor = _a.projectionNodeConstructor, useRender = _a.useRender, useVisualState = _a.useVisualState, Component = _a.Component;\n preloadedFeatures && loadFeatures(preloadedFeatures);\n function MotionComponent(props, externalRef) {\n var layoutId = useLayoutId(props);\n props = __assign(__assign({}, props), { layoutId: layoutId });\n /**\n * If we're rendering in a static environment, we only visually update the component\n * as a result of a React-rerender rather than interactions or animations. This\n * means we don't need to load additional memory structures like VisualElement,\n * or any gesture/animation features.\n */\n var config = useContext(MotionConfigContext);\n var features = null;\n var context = useCreateMotionContext(props);\n /**\n * Create a unique projection ID for this component. If a new component is added\n * during a layout animation we'll use this to query the DOM and hydrate its ref early, allowing\n * us to measure it as soon as any layout effect flushes pending layout animations.\n *\n * Performance note: It'd be better not to have to search the DOM for these elements.\n * For newly-entering components it could be enough to only correct treeScale, in which\n * case we could mount in a scale-correction mode. This wouldn't be enough for\n * shared element transitions however. Perhaps for those we could revert to a root node\n * that gets forceRendered and layout animations are triggered on its layout effect.\n */\n var projectionId = config.isStatic ? undefined : useProjectionId();\n /**\n *\n */\n var visualState = useVisualState(props, config.isStatic);\n if (!config.isStatic && isBrowser) {\n /**\n * Create a VisualElement for this component. A VisualElement provides a common\n * interface to renderer-specific APIs (ie DOM/Three.js etc) as well as\n * providing a way of rendering to these APIs outside of the React render loop\n * for more performant animations and interactions\n */\n context.visualElement = useVisualElement(Component, visualState, __assign(__assign({}, config), props), createVisualElement);\n useProjection(projectionId, props, context.visualElement, projectionNodeConstructor ||\n featureDefinitions.projectionNodeConstructor);\n /**\n * Load Motion gesture and animation features. These are rendered as renderless\n * components so each feature can optionally make use of React lifecycle methods.\n */\n features = useFeatures(props, context.visualElement, preloadedFeatures);\n }\n /**\n * The mount order and hierarchy is specific to ensure our element ref\n * is hydrated by the time features fire their effects.\n */\n return (React.createElement(VisualElementHandler, { visualElement: context.visualElement, props: __assign(__assign({}, config), props) },\n features,\n React.createElement(MotionContext.Provider, { value: context }, useRender(Component, props, projectionId, useMotionRef(visualState, context.visualElement, externalRef), visualState, config.isStatic, context.visualElement))));\n }\n return forwardRef(MotionComponent);\n}\nfunction useLayoutId(_a) {\n var _b;\n var layoutId = _a.layoutId;\n var layoutGroupId = (_b = useContext(LayoutGroupContext)) === null || _b === void 0 ? void 0 : _b.id;\n return layoutGroupId && layoutId !== undefined\n ? layoutGroupId + \"-\" + layoutId\n : layoutId;\n}\n\nexport { createMotionComponent };\n","import { createMotionComponent } from '../../motion/index.mjs';\n\n/**\n * Convert any React component into a `motion` component. The provided component\n * **must** use `React.forwardRef` to the underlying DOM component you want to animate.\n *\n * ```jsx\n * const Component = React.forwardRef((props, ref) => {\n * return <div ref={ref} />\n * })\n *\n * const MotionComponent = motion(Component)\n * ```\n *\n * @public\n */\nfunction createMotionProxy(createConfig) {\n function custom(Component, customMotionComponentConfig) {\n if (customMotionComponentConfig === void 0) { customMotionComponentConfig = {}; }\n return createMotionComponent(createConfig(Component, customMotionComponentConfig));\n }\n if (typeof Proxy === \"undefined\") {\n return custom;\n }\n /**\n * A cache of generated `motion` components, e.g `motion.div`, `motion.input` etc.\n * Rather than generating them anew every render.\n */\n var componentCache = new Map();\n return new Proxy(custom, {\n /**\n * Called when `motion` is referenced with a prop: `motion.div`, `motion.input` etc.\n * The prop name is passed through as `key` and we can use that to generate a `motion`\n * DOM component with that name.\n */\n get: function (_target, key) {\n /**\n * If this element doesn't exist in the component cache, create it and cache.\n */\n if (!componentCache.has(key)) {\n componentCache.set(key, custom(key));\n }\n return componentCache.get(key);\n },\n });\n}\n\nexport { createMotionProxy };\n","/**\n * We keep these listed seperately as we use the lowercase tag names as part\n * of the runtime bundle to detect SVG components\n */\nvar lowercaseSVGElements = [\n \"animate\",\n \"circle\",\n \"defs\",\n \"desc\",\n \"ellipse\",\n \"g\",\n \"image\",\n \"line\",\n \"filter\",\n \"marker\",\n \"mask\",\n \"metadata\",\n \"path\",\n \"pattern\",\n \"polygon\",\n \"polyline\",\n \"rect\",\n \"stop\",\n \"svg\",\n \"switch\",\n \"symbol\",\n \"text\",\n \"tspan\",\n \"use\",\n \"view\",\n];\n\nexport { lowercaseSVGElements };\n","import { lowercaseSVGElements } from '../../svg/lowercase-elements.mjs';\n\nfunction isSVGComponent(Component) {\n if (\n /**\n * If it's not a string, it's a custom React component. Currently we only support\n * HTML custom React components.\n */\n typeof Component !== \"string\" ||\n /**\n * If it contains a dash, the element is a custom HTML webcomponent.\n */\n Component.includes(\"-\")) {\n return false;\n }\n else if (\n /**\n * If it's in our list of lowercase SVG tags, it's an SVG component\n */\n lowercaseSVGElements.indexOf(Component) > -1 ||\n /**\n * If it contains a capital letter, it's an SVG component\n */\n /[A-Z]/.test(Component)) {\n return true;\n }\n return false;\n}\n\nexport { isSVGComponent };\n","import { scaleCorrectors } from '../../projection/styles/scale-correction.mjs';\nimport { isTransformProp, isTransformOriginProp } from '../../render/html/utils/transform.mjs';\n\nfunction isForcedMotionValue(key, _a) {\n var layout = _a.layout, layoutId = _a.layoutId;\n return (isTransformProp(key) ||\n isTransformOriginProp(key) ||\n ((layout || layoutId !== undefined) &&\n (!!scaleCorrectors[key] || key === \"opacity\")));\n}\n\nexport { isForcedMotionValue };\n","import { sortTransformProps } from './transform.mjs';\n\nvar translateAlias = {\n x: \"translateX\",\n y: \"translateY\",\n z: \"translateZ\",\n transformPerspective: \"perspective\",\n};\n/**\n * Build a CSS transform style from individual x/y/scale etc properties.\n *\n * This outputs with a default order of transforms/scales/rotations, this can be customised by\n * providing a transformTemplate function.\n */\nfunction buildTransform(_a, _b, transformIsDefault, transformTemplate) {\n var transform = _a.transform, transformKeys = _a.transformKeys;\n var _c = _b.enableHardwareAcceleration, enableHardwareAcceleration = _c === void 0 ? true : _c, _d = _b.allowTransformNone, allowTransformNone = _d === void 0 ? true : _d;\n // The transform string we're going to build into.\n var transformString = \"\";\n // Transform keys into their default order - this will determine the output order.\n transformKeys.sort(sortTransformProps);\n // Track whether the defined transform has a defined z so we don't add a\n // second to enable hardware acceleration\n var transformHasZ = false;\n // Loop over each transform and build them into transformString\n var numTransformKeys = transformKeys.length;\n for (var i = 0; i < numTransformKeys; i++) {\n var key = transformKeys[i];\n transformString += \"\".concat(translateAlias[key] || key, \"(\").concat(transform[key], \") \");\n if (key === \"z\")\n transformHasZ = true;\n }\n if (!transformHasZ && enableHardwareAcceleration) {\n transformString += \"translateZ(0)\";\n }\n else {\n transformString = transformString.trim();\n }\n // If we have a custom `transform` template, pass our transform values and\n // generated transformString to that before returning\n if (transformTemplate) {\n transformString = transformTemplate(transform, transformIsDefault ? \"\" : transformString);\n }\n else if (allowTransformNone && transformIsDefault) {\n transformString = \"none\";\n }\n return transformString;\n}\n/**\n * Build a transformOrigin style. Uses the same defaults as the browser for\n * undefined origins.\n */\nfunction buildTransformOrigin(_a) {\n var _b = _a.originX, originX = _b === void 0 ? \"50%\" : _b, _c = _a.originY, originY = _c === void 0 ? \"50%\" : _c, _d = _a.originZ, originZ = _d === void 0 ? 0 : _d;\n return \"\".concat(originX, \" \").concat(originY, \" \").concat(originZ);\n}\n\nexport { buildTransform, buildTransformOrigin };\n","/**\n * Returns true if the provided key is a CSS variable\n */\nfunction isCSSVariable(key) {\n return key.startsWith(\"--\");\n}\n\nexport { isCSSVariable };\n","/**\n * Provided a value and a ValueType, returns the value as that value type.\n */\nvar getValueAsType = function (value, type) {\n return type && typeof value === \"number\"\n ? type.transform(value)\n : value;\n};\n\nexport { getValueAsType };\n","import { buildTransform, buildTransformOrigin } from './build-transform.mjs';\nimport { isCSSVariable } from '../../dom/utils/is-css-variable.mjs';\nimport { isTransformProp, isTransformOriginProp } from './transform.mjs';\nimport { getValueAsType } from '../../dom/value-types/get-as-type.mjs';\nimport { numberValueTypes } from '../../dom/value-types/number.mjs';\n\nfunction buildHTMLStyles(state, latestValues, options, transformTemplate) {\n var _a;\n var style = state.style, vars = state.vars, transform = state.transform, transformKeys = state.transformKeys, transformOrigin = state.transformOrigin;\n // Empty the transformKeys array. As we're throwing out refs to its items\n // this might not be as cheap as suspected. Maybe using the array as a buffer\n // with a manual incrementation would be better.\n transformKeys.length = 0;\n // Track whether we encounter any transform or transformOrigin values.\n var hasTransform = false;\n var hasTransformOrigin = false;\n // Does the calculated transform essentially equal \"none\"?\n var transformIsNone = true;\n /**\n * Loop over all our latest animated values and decide whether to handle them\n * as a style or CSS variable.\n *\n * Transforms and transform origins are kept seperately for further processing.\n */\n for (var key in latestValues) {\n var value = latestValues[key];\n /**\n * If this is a CSS variable we don't do any further processing.\n */\n if (isCSSVariable(key)) {\n vars[key] = value;\n continue;\n }\n // Convert the value to its default value type, ie 0 -> \"0px\"\n var valueType = numberValueTypes[key];\n var valueAsType = getValueAsType(value, valueType);\n if (isTransformProp(key)) {\n // If this is a transform, flag to enable further transform processing\n hasTransform = true;\n transform[key] = valueAsType;\n transformKeys.push(key);\n // If we already know we have a non-default transform, early return\n if (!transformIsNone)\n continue;\n // Otherwise check to see if this is a default transform\n if (value !== ((_a = valueType.default) !== null && _a !== void 0 ? _a : 0))\n transformIsNone = false;\n }\n else if (isTransformOriginProp(key)) {\n transformOrigin[key] = valueAsType;\n // If this is a transform origin, flag and enable further transform-origin processing\n hasTransformOrigin = true;\n }\n else {\n style[key] = valueAsType;\n }\n }\n if (hasTransform) {\n style.transform = buildTransform(state, options, transformIsNone, transformTemplate);\n }\n else if (transformTemplate) {\n style.transform = transformTemplate({}, \"\");\n }\n else if (!latestValues.transform && style.transform) {\n style.transform = \"none\";\n }\n if (hasTransformOrigin) {\n style.transformOrigin = buildTransformOrigin(transformOrigin);\n }\n}\n\nexport { buildHTMLStyles };\n","var createHtmlRenderState = function () { return ({\n style: {},\n transform: {},\n transformKeys: [],\n transformOrigin: {},\n vars: {},\n}); };\n\nexport { createHtmlRenderState };\n","import { __assign } from 'tslib';\nimport { useMemo } from 'react';\nimport { isForcedMotionValue } from '../../motion/utils/is-forced-motion-value.mjs';\nimport { isMotionValue } from '../../value/utils/is-motion-value.mjs';\nimport { buildHTMLStyles } from './utils/build-styles.mjs';\nimport { createHtmlRenderState } from './utils/create-render-state.mjs';\n\nfunction copyRawValuesOnly(target, source, props) {\n for (var key in source) {\n if (!isMotionValue(source[key]) && !isForcedMotionValue(key, props)) {\n target[key] = source[key];\n }\n }\n}\nfunction useInitialMotionValues(_a, visualState, isStatic) {\n var transformTemplate = _a.transformTemplate;\n return useMemo(function () {\n var state = createHtmlRenderState();\n buildHTMLStyles(state, visualState, { enableHardwareAcceleration: !isStatic }, transformTemplate);\n var vars = state.vars, style = state.style;\n return __assign(__assign({}, vars), style);\n }, [visualState]);\n}\nfunction useStyle(props, visualState, isStatic) {\n var styleProp = props.style || {};\n var style = {};\n /**\n * Copy non-Motion Values straight into style\n */\n copyRawValuesOnly(style, styleProp, props);\n Object.assign(style, useInitialMotionValues(props, visualState, isStatic));\n if (props.transformValues) {\n style = props.transformValues(style);\n }\n return style;\n}\nfunction useHTMLProps(props, visualState, isStatic) {\n // The `any` isn't ideal but it is the type of createElement props argument\n var htmlProps = {};\n var style = useStyle(props, visualState, isStatic);\n if (Boolean(props.drag) && props.dragListener !== false) {\n // Disable the ghost element when a user drags\n htmlProps.draggable = false;\n // Disable text selection\n style.userSelect =\n style.WebkitUserSelect =\n style.WebkitTouchCallout =\n \"none\";\n // Disable scrolling on the draggable direction\n style.touchAction =\n props.drag === true\n ? \"none\"\n : \"pan-\".concat(props.drag === \"x\" ? \"y\" : \"x\");\n }\n htmlProps.style = style;\n return htmlProps;\n}\n\nexport { copyRawValuesOnly, useHTMLProps, useStyle };\n","/**\n * A list of all valid MotionProps.\n *\n * @internalremarks\n * This doesn't throw if a `MotionProp` name is missing - it should.\n */\nvar validMotionProps = new Set([\n \"initial\",\n \"animate\",\n \"exit\",\n \"style\",\n \"variants\",\n \"transition\",\n \"transformTemplate\",\n \"transformValues\",\n \"custom\",\n \"inherit\",\n \"layout\",\n \"layoutId\",\n \"layoutDependency\",\n \"onLayoutAnimationComplete\",\n \"onLayoutMeasure\",\n \"onBeforeLayoutMeasure\",\n \"onAnimationStart\",\n \"onAnimationComplete\",\n \"onUpdate\",\n \"onDragStart\",\n \"onDrag\",\n \"onDragEnd\",\n \"onMeasureDragConstraints\",\n \"onDirectionLock\",\n \"onDragTransitionEnd\",\n \"drag\",\n \"dragControls\",\n \"dragListener\",\n \"dragConstraints\",\n \"dragDirectionLock\",\n \"dragSnapToOrigin\",\n \"_dragX\",\n \"_dragY\",\n \"dragElastic\",\n \"dragMomentum\",\n \"dragPropagation\",\n \"dragTransition\",\n \"whileDrag\",\n \"onPan\",\n \"onPanStart\",\n \"onPanEnd\",\n \"onPanSessionStart\",\n \"onTap\",\n \"onTapStart\",\n \"onTapCancel\",\n \"onHoverStart\",\n \"onHoverEnd\",\n \"whileFocus\",\n \"whileTap\",\n \"whileHover\",\n \"whileInView\",\n \"onViewportEnter\",\n \"onViewportLeave\",\n \"viewport\",\n \"layoutScroll\",\n]);\n/**\n * Check whether a prop name is a valid `MotionProp` key.\n *\n * @param key - Name of the property to check\n * @returns `true` is key is a valid `MotionProp`.\n *\n * @public\n */\nfunction isValidMotionProp(key) {\n return validMotionProps.has(key);\n}\n\nexport { isValidMotionProp };\n","import { isValidMotionProp } from '../../../motion/utils/valid-prop.mjs';\n\nvar shouldForward = function (key) { return !isValidMotionProp(key); };\nfunction loadExternalIsValidProp(isValidProp) {\n if (!isValidProp)\n return;\n // Explicitly filter our events\n shouldForward = function (key) {\n return key.startsWith(\"on\") ? !isValidMotionProp(key) : isValidProp(key);\n };\n}\n/**\n * Emotion and Styled Components both allow users to pass through arbitrary props to their components\n * to dynamically generate CSS. They both use the `@emotion/is-prop-valid` package to determine which\n * of these should be passed to the underlying DOM node.\n *\n * However, when styling a Motion component `styled(motion.div)`, both packages pass through *all* props\n * as it's seen as an arbitrary component rather than a DOM node. Motion only allows arbitrary props\n * passed through the `custom` prop so it doesn't *need* the payload or computational overhead of\n * `@emotion/is-prop-valid`, however to fix this problem we need to use it.\n *\n * By making it an optionalDependency we can offer this functionality only in the situations where it's\n * actually required.\n */\ntry {\n /**\n * We attempt to import this package but require won't be defined in esm environments, in that case\n * isPropValid will have to be provided via `MotionContext`. In a 6.0.0 this should probably be removed\n * in favour of explicit injection.\n */\n loadExternalIsValidProp(require(\"@emotion/is-prop-valid\").default);\n}\ncatch (_a) {\n // We don't need to actually do anything here - the fallback is the existing `isPropValid`.\n}\nfunction filterProps(props, isDom, forwardMotionProps) {\n var filteredProps = {};\n for (var key in props) {\n if (shouldForward(key) ||\n (forwardMotionProps === true && isValidMotionProp(key)) ||\n (!isDom && !isValidMotionProp(key)) ||\n // If trying to use native HTML drag events, forward drag listeners\n (props[\"draggable\"] && key.startsWith(\"onDrag\"))) {\n filteredProps[key] = props[key];\n }\n }\n return filteredProps;\n}\n\nexport { filterProps, loadExternalIsValidProp };\n","import { px } from 'style-value-types';\n\nfunction calcOrigin(origin, offset, size) {\n return typeof origin === \"string\"\n ? origin\n : px.transform(offset + size * origin);\n}\n/**\n * The SVG transform origin defaults are different to CSS and is less intuitive,\n * so we use the measured dimensions of the SVG to reconcile these.\n */\nfunction calcSVGTransformOrigin(dimensions, originX, originY) {\n var pxOriginX = calcOrigin(originX, dimensions.x, dimensions.width);\n var pxOriginY = calcOrigin(originY, dimensions.y, dimensions.height);\n return \"\".concat(pxOriginX, \" \").concat(pxOriginY);\n}\n\nexport { calcSVGTransformOrigin };\n","import { px } from 'style-value-types';\n\nvar dashKeys = {\n offset: \"stroke-dashoffset\",\n array: \"stroke-dasharray\",\n};\nvar camelKeys = {\n offset: \"strokeDashoffset\",\n array: \"strokeDasharray\",\n};\n/**\n * Build SVG path properties. Uses the path's measured length to convert\n * our custom pathLength, pathSpacing and pathOffset into stroke-dashoffset\n * and stroke-dasharray attributes.\n *\n * This function is mutative to reduce per-frame GC.\n */\nfunction buildSVGPath(attrs, length, spacing, offset, useDashCase) {\n if (spacing === void 0) { spacing = 1; }\n if (offset === void 0) { offset = 0; }\n if (useDashCase === void 0) { useDashCase = true; }\n // Normalise path length by setting SVG attribute pathLength to 1\n attrs.pathLength = 1;\n // We use dash case when setting attributes directly to the DOM node and camel case\n // when defining props on a React component.\n var keys = useDashCase ? dashKeys : camelKeys;\n // Build the dash offset\n attrs[keys.offset] = px.transform(-offset);\n // Build the dash array\n var pathLength = px.transform(length);\n var pathSpacing = px.transform(spacing);\n attrs[keys.array] = \"\".concat(pathLength, \" \").concat(pathSpacing);\n}\n\nexport { buildSVGPath };\n","import { __rest } from 'tslib';\nimport { buildHTMLStyles } from '../../html/utils/build-styles.mjs';\nimport { calcSVGTransformOrigin } from './transform-origin.mjs';\nimport { buildSVGPath } from './path.mjs';\n\n/**\n * Build SVG visual attrbutes, like cx and style.transform\n */\nfunction buildSVGAttrs(state, _a, options, transformTemplate) {\n var attrX = _a.attrX, attrY = _a.attrY, originX = _a.originX, originY = _a.originY, pathLength = _a.pathLength, _b = _a.pathSpacing, pathSpacing = _b === void 0 ? 1 : _b, _c = _a.pathOffset, pathOffset = _c === void 0 ? 0 : _c, \n // This is object creation, which we try to avoid per-frame.\n latest = __rest(_a, [\"attrX\", \"attrY\", \"originX\", \"originY\", \"pathLength\", \"pathSpacing\", \"pathOffset\"]);\n buildHTMLStyles(state, latest, options, transformTemplate);\n state.attrs = state.style;\n state.style = {};\n var attrs = state.attrs, style = state.style, dimensions = state.dimensions;\n /**\n * However, we apply transforms as CSS transforms. So if we detect a transform we take it from attrs\n * and copy it into style.\n */\n if (attrs.transform) {\n if (dimensions)\n style.transform = attrs.transform;\n delete attrs.transform;\n }\n // Parse transformOrigin\n if (dimensions &&\n (originX !== undefined || originY !== undefined || style.transform)) {\n style.transformOrigin = calcSVGTransformOrigin(dimensions, originX !== undefined ? originX : 0.5, originY !== undefined ? originY : 0.5);\n }\n // Treat x/y not as shortcuts but as actual attributes\n if (attrX !== undefined)\n attrs.x = attrX;\n if (attrY !== undefined)\n attrs.y = attrY;\n // Build SVG path if one has been defined\n if (pathLength !== undefined) {\n buildSVGPath(attrs, pathLength, pathSpacing, pathOffset, false);\n }\n}\n\nexport { buildSVGAttrs };\n","import { __assign } from 'tslib';\nimport { createHtmlRenderState } from '../../html/utils/create-render-state.mjs';\n\nvar createSvgRenderState = function () { return (__assign(__assign({}, createHtmlRenderState()), { attrs: {} })); };\n\nexport { createSvgRenderState };\n","import { __assign } from 'tslib';\nimport { useMemo } from 'react';\nimport { copyRawValuesOnly } from '../html/use-props.mjs';\nimport { buildSVGAttrs } from './utils/build-attrs.mjs';\nimport { createSvgRenderState } from './utils/create-render-state.mjs';\n\nfunction useSVGProps(props, visualState) {\n var visualProps = useMemo(function () {\n var state = createSvgRenderState();\n buildSVGAttrs(state, visualState, { enableHardwareAcceleration: false }, props.transformTemplate);\n return __assign(__assign({}, state.attrs), { style: __assign({}, state.style) });\n }, [visualState]);\n if (props.style) {\n var rawStyles = {};\n copyRawValuesOnly(rawStyles, props.style, props);\n visualProps.style = __assign(__assign({}, rawStyles), visualProps.style);\n }\n return visualProps;\n}\n\nexport { useSVGProps };\n","import { __assign } from 'tslib';\nimport { createElement } from 'react';\nimport { useHTMLProps } from '../html/use-props.mjs';\nimport { filterProps } from './utils/filter-props.mjs';\nimport { isSVGComponent } from './utils/is-svg-component.mjs';\nimport { useSVGProps } from '../svg/use-props.mjs';\n\nfunction createUseRender(forwardMotionProps) {\n if (forwardMotionProps === void 0) { forwardMotionProps = false; }\n var useRender = function (Component, props, projectionId, ref, _a, isStatic) {\n var latestValues = _a.latestValues;\n var useVisualProps = isSVGComponent(Component)\n ? useSVGProps\n : useHTMLProps;\n var visualProps = useVisualProps(props, latestValues, isStatic);\n var filteredProps = filterProps(props, typeof Component === \"string\", forwardMotionProps);\n var elementProps = __assign(__assign(__assign({}, filteredProps), visualProps), { ref: ref });\n if (projectionId) {\n elementProps[\"data-projection-id\"] = projectionId;\n }\n return createElement(Component, elementProps);\n };\n return useRender;\n}\n\nexport { createUseRender };\n","var CAMEL_CASE_PATTERN = /([a-z])([A-Z])/g;\nvar REPLACE_TEMPLATE = \"$1-$2\";\n/**\n * Convert camelCase to dash-case properties.\n */\nvar camelToDash = function (str) {\n return str.replace(CAMEL_CASE_PATTERN, REPLACE_TEMPLATE).toLowerCase();\n};\n\nexport { camelToDash };\n","function renderHTML(element, _a, styleProp, projection) {\n var style = _a.style, vars = _a.vars;\n Object.assign(element.style, style, projection && projection.getProjectionStyles(styleProp));\n // Loop over any CSS variables and assign those.\n for (var key in vars) {\n element.style.setProperty(key, vars[key]);\n }\n}\n\nexport { renderHTML };\n","/**\n * A set of attribute names that are always read/written as camel case.\n */\nvar camelCaseAttributes = new Set([\n \"baseFrequency\",\n \"diffuseConstant\",\n \"kernelMatrix\",\n \"kernelUnitLength\",\n \"keySplines\",\n \"keyTimes\",\n \"limitingConeAngle\",\n \"markerHeight\",\n \"markerWidth\",\n \"numOctaves\",\n \"targetX\",\n \"targetY\",\n \"surfaceScale\",\n \"specularConstant\",\n \"specularExponent\",\n \"stdDeviation\",\n \"tableValues\",\n \"viewBox\",\n \"gradientTransform\",\n \"pathLength\",\n]);\n\nexport { camelCaseAttributes };\n","import { camelToDash } from '../../dom/utils/camel-to-dash.mjs';\nimport { renderHTML } from '../../html/utils/render.mjs';\nimport { camelCaseAttributes } from './camel-case-attrs.mjs';\n\nfunction renderSVG(element, renderState) {\n renderHTML(element, renderState);\n for (var key in renderState.attrs) {\n element.setAttribute(!camelCaseAttributes.has(key) ? camelToDash(key) : key, renderState.attrs[key]);\n }\n}\n\nexport { renderSVG };\n","import { isForcedMotionValue } from '../../../motion/utils/is-forced-motion-value.mjs';\nimport { isMotionValue } from '../../../value/utils/is-motion-value.mjs';\n\nfunction scrapeMotionValuesFromProps(props) {\n var style = props.style;\n var newValues = {};\n for (var key in style) {\n if (isMotionValue(style[key]) || isForcedMotionValue(key, props)) {\n newValues[key] = style[key];\n }\n }\n return newValues;\n}\n\nexport { scrapeMotionValuesFromProps };\n","import { isMotionValue } from '../../../value/utils/is-motion-value.mjs';\nimport { scrapeMotionValuesFromProps as scrapeMotionValuesFromProps$1 } from '../../html/utils/scrape-motion-values.mjs';\n\nfunction scrapeMotionValuesFromProps(props) {\n var newValues = scrapeMotionValuesFromProps$1(props);\n for (var key in props) {\n if (isMotionValue(props[key])) {\n var targetKey = key === \"x\" || key === \"y\" ? \"attr\" + key.toUpperCase() : key;\n newValues[targetKey] = props[key];\n }\n }\n return newValues;\n}\n\nexport { scrapeMotionValuesFromProps };\n","function isAnimationControls(v) {\n return typeof v === \"object\" && typeof v.start === \"function\";\n}\n\nexport { isAnimationControls };\n","import { __rest } from 'tslib';\nimport { useContext } from 'react';\nimport { isAnimationControls } from '../../animation/utils/is-animation-controls.mjs';\nimport { PresenceContext } from '../../context/PresenceContext.mjs';\nimport { checkIfControllingVariants, checkIfVariantNode, resolveVariantFromProps } from '../../render/utils/variants.mjs';\nimport { useConstant } from '../../utils/use-constant.mjs';\nimport { resolveMotionValue } from '../../value/utils/resolve-motion-value.mjs';\nimport { MotionContext } from '../../context/MotionContext/index.mjs';\n\nfunction makeState(_a, props, context, presenceContext) {\n var scrapeMotionValuesFromProps = _a.scrapeMotionValuesFromProps, createRenderState = _a.createRenderState, onMount = _a.onMount;\n var state = {\n latestValues: makeLatestValues(props, context, presenceContext, scrapeMotionValuesFromProps),\n renderState: createRenderState(),\n };\n if (onMount) {\n state.mount = function (instance) { return onMount(props, instance, state); };\n }\n return state;\n}\nvar makeUseVisualState = function (config) {\n return function (props, isStatic) {\n var context = useContext(MotionContext);\n var presenceContext = useContext(PresenceContext);\n return isStatic\n ? makeState(config, props, context, presenceContext)\n : useConstant(function () {\n return makeState(config, props, context, presenceContext);\n });\n };\n};\nfunction makeLatestValues(props, context, presenceContext, scrapeMotionValues) {\n var values = {};\n var blockInitialAnimation = (presenceContext === null || presenceContext === void 0 ? void 0 : presenceContext.initial) === false;\n var motionValues = scrapeMotionValues(props);\n for (var key in motionValues) {\n values[key] = resolveMotionValue(motionValues[key]);\n }\n var initial = props.initial, animate = props.animate;\n var isControllingVariants = checkIfControllingVariants(props);\n var isVariantNode = checkIfVariantNode(props);\n if (context &&\n isVariantNode &&\n !isControllingVariants &&\n props.inherit !== false) {\n initial !== null && initial !== void 0 ? initial : (initial = context.initial);\n animate !== null && animate !== void 0 ? animate : (animate = context.animate);\n }\n var initialAnimationIsBlocked = blockInitialAnimation || initial === false;\n var variantToSet = initialAnimationIsBlocked ? animate : initial;\n if (variantToSet &&\n typeof variantToSet !== \"boolean\" &&\n !isAnimationControls(variantToSet)) {\n var list = Array.isArray(variantToSet) ? variantToSet : [variantToSet];\n list.forEach(function (definition) {\n var resolved = resolveVariantFromProps(props, definition);\n if (!resolved)\n return;\n var transitionEnd = resolved.transitionEnd; resolved.transition; var target = __rest(resolved, [\"transitionEnd\", \"transition\"]);\n for (var key in target) {\n var valueTarget = target[key];\n if (Array.isArray(valueTarget)) {\n /**\n * Take final keyframe if the initial animation is blocked because\n * we want to initialise at the end of that blocked animation.\n */\n var index = initialAnimationIsBlocked\n ? valueTarget.length - 1\n : 0;\n valueTarget = valueTarget[index];\n }\n if (valueTarget !== null) {\n values[key] = valueTarget;\n }\n }\n for (var key in transitionEnd)\n values[key] = transitionEnd[key];\n });\n }\n return values;\n}\n\nexport { makeUseVisualState };\n","import { renderSVG } from './utils/render.mjs';\nimport { scrapeMotionValuesFromProps } from './utils/scrape-motion-values.mjs';\nimport { makeUseVisualState } from '../../motion/utils/use-visual-state.mjs';\nimport { createSvgRenderState } from './utils/create-render-state.mjs';\nimport { buildSVGAttrs } from './utils/build-attrs.mjs';\n\nvar svgMotionConfig = {\n useVisualState: makeUseVisualState({\n scrapeMotionValuesFromProps: scrapeMotionValuesFromProps,\n createRenderState: createSvgRenderState,\n onMount: function (props, instance, _a) {\n var renderState = _a.renderState, latestValues = _a.latestValues;\n try {\n renderState.dimensions =\n typeof instance.getBBox ===\n \"function\"\n ? instance.getBBox()\n : instance.getBoundingClientRect();\n }\n catch (e) {\n // Most likely trying to measure an unrendered element under Firefox\n renderState.dimensions = {\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n };\n }\n buildSVGAttrs(renderState, latestValues, { enableHardwareAcceleration: false }, props.transformTemplate);\n // TODO: Replace with direct assignment\n renderSVG(instance, renderState);\n },\n }),\n};\n\nexport { svgMotionConfig };\n","import { makeUseVisualState } from '../../motion/utils/use-visual-state.mjs';\nimport { scrapeMotionValuesFromProps } from './utils/scrape-motion-values.mjs';\nimport { createHtmlRenderState } from './utils/create-render-state.mjs';\n\nvar htmlMotionConfig = {\n useVisualState: makeUseVisualState({\n scrapeMotionValuesFromProps: scrapeMotionValuesFromProps,\n createRenderState: createHtmlRenderState,\n }),\n};\n\nexport { htmlMotionConfig };\n","import { __assign } from 'tslib';\nimport { isSVGComponent } from './is-svg-component.mjs';\nimport { createUseRender } from '../use-render.mjs';\nimport { svgMotionConfig } from '../../svg/config-motion.mjs';\nimport { htmlMotionConfig } from '../../html/config-motion.mjs';\n\nfunction createDomMotionConfig(Component, _a, preloadedFeatures, createVisualElement, projectionNodeConstructor) {\n var _b = _a.forwardMotionProps, forwardMotionProps = _b === void 0 ? false : _b;\n var baseConfig = isSVGComponent(Component)\n ? svgMotionConfig\n : htmlMotionConfig;\n return __assign(__assign({}, baseConfig), { preloadedFeatures: preloadedFeatures, useRender: createUseRender(forwardMotionProps), createVisualElement: createVisualElement, projectionNodeConstructor: projectionNodeConstructor, Component: Component });\n}\n\nexport { createDomMotionConfig };\n","var AnimationType;\n(function (AnimationType) {\n AnimationType[\"Animate\"] = \"animate\";\n AnimationType[\"Hover\"] = \"whileHover\";\n AnimationType[\"Tap\"] = \"whileTap\";\n AnimationType[\"Drag\"] = \"whileDrag\";\n AnimationType[\"Focus\"] = \"whileFocus\";\n AnimationType[\"InView\"] = \"whileInView\";\n AnimationType[\"Exit\"] = \"exit\";\n})(AnimationType || (AnimationType = {}));\n\nexport { AnimationType };\n","import { useEffect } from 'react';\n\nfunction addDomEvent(target, eventName, handler, options) {\n target.addEventListener(eventName, handler, options);\n return function () { return target.removeEventListener(eventName, handler, options); };\n}\n/**\n * Attaches an event listener directly to the provided DOM element.\n *\n * Bypassing React's event system can be desirable, for instance when attaching non-passive\n * event handlers.\n *\n * ```jsx\n * const ref = useRef(null)\n *\n * useDomEvent(ref, 'wheel', onWheel, { passive: false })\n *\n * return <div ref={ref} />\n * ```\n *\n * @param ref - React.RefObject that's been provided to the element you want to bind the listener to.\n * @param eventName - Name of the event you want listen for.\n * @param handler - Function to fire when receiving the event.\n * @param options - Options to pass to `Event.addEventListener`.\n *\n * @public\n */\nfunction useDomEvent(ref, eventName, handler, options) {\n useEffect(function () {\n var element = ref.current;\n if (handler && element) {\n return addDomEvent(element, eventName, handler, options);\n }\n }, [ref, eventName, handler, options]);\n}\n\nexport { addDomEvent, useDomEvent };\n","import { AnimationType } from '../render/utils/types.mjs';\nimport { useDomEvent } from '../events/use-dom-event.mjs';\n\n/**\n *\n * @param props\n * @param ref\n * @internal\n */\nfunction useFocusGesture(_a) {\n var whileFocus = _a.whileFocus, visualElement = _a.visualElement;\n var onFocus = function () {\n var _a;\n (_a = visualElement.animationState) === null || _a === void 0 ? void 0 : _a.setActive(AnimationType.Focus, true);\n };\n var onBlur = function () {\n var _a;\n (_a = visualElement.animationState) === null || _a === void 0 ? void 0 : _a.setActive(AnimationType.Focus, false);\n };\n useDomEvent(visualElement, \"focus\", whileFocus ? onFocus : undefined);\n useDomEvent(visualElement, \"blur\", whileFocus ? onBlur : undefined);\n}\n\nexport { useFocusGesture };\n","function isMouseEvent(event) {\n // PointerEvent inherits from MouseEvent so we can't use a straight instanceof check.\n if (typeof PointerEvent !== \"undefined\" && event instanceof PointerEvent) {\n return !!(event.pointerType === \"mouse\");\n }\n return event instanceof MouseEvent;\n}\nfunction isTouchEvent(event) {\n var hasTouches = !!event.touches;\n return hasTouches;\n}\n\nexport { isMouseEvent, isTouchEvent };\n","import { isTouchEvent } from '../gestures/utils/event-type.mjs';\n\n/**\n * Filters out events not attached to the primary pointer (currently left mouse button)\n * @param eventHandler\n */\nfunction filterPrimaryPointer(eventHandler) {\n return function (event) {\n var isMouseEvent = event instanceof MouseEvent;\n var isPrimaryPointer = !isMouseEvent ||\n (isMouseEvent && event.button === 0);\n if (isPrimaryPointer) {\n eventHandler(event);\n }\n };\n}\nvar defaultPagePoint = { pageX: 0, pageY: 0 };\nfunction pointFromTouch(e, pointType) {\n if (pointType === void 0) { pointType = \"page\"; }\n var primaryTouch = e.touches[0] || e.changedTouches[0];\n var point = primaryTouch || defaultPagePoint;\n return {\n x: point[pointType + \"X\"],\n y: point[pointType + \"Y\"],\n };\n}\nfunction pointFromMouse(point, pointType) {\n if (pointType === void 0) { pointType = \"page\"; }\n return {\n x: point[pointType + \"X\"],\n y: point[pointType + \"Y\"],\n };\n}\nfunction extractEventInfo(event, pointType) {\n if (pointType === void 0) { pointType = \"page\"; }\n return {\n point: isTouchEvent(event)\n ? pointFromTouch(event, pointType)\n : pointFromMouse(event, pointType),\n };\n}\nvar wrapHandler = function (handler, shouldFilterPrimaryPointer) {\n if (shouldFilterPrimaryPointer === void 0) { shouldFilterPrimaryPointer = false; }\n var listener = function (event) {\n return handler(event, extractEventInfo(event));\n };\n return shouldFilterPrimaryPointer\n ? filterPrimaryPointer(listener)\n : listener;\n};\n\nexport { extractEventInfo, wrapHandler };\n","import { isBrowser } from '../utils/is-browser.mjs';\n\n// We check for event support via functions in case they've been mocked by a testing suite.\nvar supportsPointerEvents = function () {\n return isBrowser && window.onpointerdown === null;\n};\nvar supportsTouchEvents = function () {\n return isBrowser && window.ontouchstart === null;\n};\nvar supportsMouseEvents = function () {\n return isBrowser && window.onmousedown === null;\n};\n\nexport { supportsMouseEvents, supportsPointerEvents, supportsTouchEvents };\n","import { useDomEvent, addDomEvent } from './use-dom-event.mjs';\nimport { wrapHandler } from './event-info.mjs';\nimport { supportsPointerEvents, supportsTouchEvents, supportsMouseEvents } from './utils.mjs';\n\nvar mouseEventNames = {\n pointerdown: \"mousedown\",\n pointermove: \"mousemove\",\n pointerup: \"mouseup\",\n pointercancel: \"mousecancel\",\n pointerover: \"mouseover\",\n pointerout: \"mouseout\",\n pointerenter: \"mouseenter\",\n pointerleave: \"mouseleave\",\n};\nvar touchEventNames = {\n pointerdown: \"touchstart\",\n pointermove: \"touchmove\",\n pointerup: \"touchend\",\n pointercancel: \"touchcancel\",\n};\nfunction getPointerEventName(name) {\n if (supportsPointerEvents()) {\n return name;\n }\n else if (supportsTouchEvents()) {\n return touchEventNames[name];\n }\n else if (supportsMouseEvents()) {\n return mouseEventNames[name];\n }\n return name;\n}\nfunction addPointerEvent(target, eventName, handler, options) {\n return addDomEvent(target, getPointerEventName(eventName), wrapHandler(handler, eventName === \"pointerdown\"), options);\n}\nfunction usePointerEvent(ref, eventName, handler, options) {\n return useDomEvent(ref, getPointerEventName(eventName), handler && wrapHandler(handler, eventName === \"pointerdown\"), options);\n}\n\nexport { addPointerEvent, usePointerEvent };\n","function createLock(name) {\n var lock = null;\n return function () {\n var openLock = function () {\n lock = null;\n };\n if (lock === null) {\n lock = name;\n return openLock;\n }\n return false;\n };\n}\nvar globalHorizontalLock = createLock(\"dragHorizontal\");\nvar globalVerticalLock = createLock(\"dragVertical\");\nfunction getGlobalLock(drag) {\n var lock = false;\n if (drag === \"y\") {\n lock = globalVerticalLock();\n }\n else if (drag === \"x\") {\n lock = globalHorizontalLock();\n }\n else {\n var openHorizontal_1 = globalHorizontalLock();\n var openVertical_1 = globalVerticalLock();\n if (openHorizontal_1 && openVertical_1) {\n lock = function () {\n openHorizontal_1();\n openVertical_1();\n };\n }\n else {\n // Release the locks because we don't use them\n if (openHorizontal_1)\n openHorizontal_1();\n if (openVertical_1)\n openVertical_1();\n }\n }\n return lock;\n}\nfunction isDragActive() {\n // Check the gesture lock - if we get it, it means no drag gesture is active\n // and we can safely fire the tap gesture.\n var openGestureLock = getGlobalLock(true);\n if (!openGestureLock)\n return true;\n openGestureLock();\n return false;\n}\n\nexport { createLock, getGlobalLock, isDragActive };\n","import { isMouseEvent } from './utils/event-type.mjs';\nimport { AnimationType } from '../render/utils/types.mjs';\nimport { usePointerEvent } from '../events/use-pointer-event.mjs';\nimport { isDragActive } from './drag/utils/lock.mjs';\n\nfunction createHoverEvent(visualElement, isActive, callback) {\n return function (event, info) {\n var _a;\n if (!isMouseEvent(event) || isDragActive())\n return;\n /**\n * Ensure we trigger animations before firing event callback\n */\n (_a = visualElement.animationState) === null || _a === void 0 ? void 0 : _a.setActive(AnimationType.Hover, isActive);\n callback === null || callback === void 0 ? void 0 : callback(event, info);\n };\n}\nfunction useHoverGesture(_a) {\n var onHoverStart = _a.onHoverStart, onHoverEnd = _a.onHoverEnd, whileHover = _a.whileHover, visualElement = _a.visualElement;\n usePointerEvent(visualElement, \"pointerenter\", onHoverStart || whileHover\n ? createHoverEvent(visualElement, true, onHoverStart)\n : undefined);\n usePointerEvent(visualElement, \"pointerleave\", onHoverEnd || whileHover\n ? createHoverEvent(visualElement, false, onHoverEnd)\n : undefined);\n}\n\nexport { useHoverGesture };\n","/**\n * Recursively traverse up the tree to check whether the provided child node\n * is the parent or a descendant of it.\n *\n * @param parent - Element to find\n * @param child - Element to test against parent\n */\nvar isNodeOrChild = function (parent, child) {\n if (!child) {\n return false;\n }\n else if (parent === child) {\n return true;\n }\n else {\n return isNodeOrChild(parent, child.parentElement);\n }\n};\n\nexport { isNodeOrChild };\n","import { useEffect } from 'react';\n\nfunction useUnmountEffect(callback) {\n return useEffect(function () { return function () { return callback(); }; }, []);\n}\n\nexport { useUnmountEffect };\n","import { useRef } from 'react';\nimport { isNodeOrChild } from './utils/is-node-or-child.mjs';\nimport { usePointerEvent, addPointerEvent } from '../events/use-pointer-event.mjs';\nimport { useUnmountEffect } from '../utils/use-unmount-effect.mjs';\nimport { pipe } from 'popmotion';\nimport { AnimationType } from '../render/utils/types.mjs';\nimport { isDragActive } from './drag/utils/lock.mjs';\n\n/**\n * @param handlers -\n * @internal\n */\nfunction useTapGesture(_a) {\n var onTap = _a.onTap, onTapStart = _a.onTapStart, onTapCancel = _a.onTapCancel, whileTap = _a.whileTap, visualElement = _a.visualElement;\n var hasPressListeners = onTap || onTapStart || onTapCancel || whileTap;\n var isPressing = useRef(false);\n var cancelPointerEndListeners = useRef(null);\n function removePointerEndListener() {\n var _a;\n (_a = cancelPointerEndListeners.current) === null || _a === void 0 ? void 0 : _a.call(cancelPointerEndListeners);\n cancelPointerEndListeners.current = null;\n }\n function checkPointerEnd() {\n var _a;\n removePointerEndListener();\n isPressing.current = false;\n (_a = visualElement.animationState) === null || _a === void 0 ? void 0 : _a.setActive(AnimationType.Tap, false);\n return !isDragActive();\n }\n function onPointerUp(event, info) {\n if (!checkPointerEnd())\n return;\n /**\n * We only count this as a tap gesture if the event.target is the same\n * as, or a child of, this component's element\n */\n !isNodeOrChild(visualElement.getInstance(), event.target)\n ? onTapCancel === null || onTapCancel === void 0 ? void 0 : onTapCancel(event, info)\n : onTap === null || onTap === void 0 ? void 0 : onTap(event, info);\n }\n function onPointerCancel(event, info) {\n if (!checkPointerEnd())\n return;\n onTapCancel === null || onTapCancel === void 0 ? void 0 : onTapCancel(event, info);\n }\n function onPointerDown(event, info) {\n var _a;\n removePointerEndListener();\n if (isPressing.current)\n return;\n isPressing.current = true;\n cancelPointerEndListeners.current = pipe(addPointerEvent(window, \"pointerup\", onPointerUp), addPointerEvent(window, \"pointercancel\", onPointerCancel));\n /**\n * Ensure we trigger animations before firing event callback\n */\n (_a = visualElement.animationState) === null || _a === void 0 ? void 0 : _a.setActive(AnimationType.Tap, true);\n onTapStart === null || onTapStart === void 0 ? void 0 : onTapStart(event, info);\n }\n usePointerEvent(visualElement, \"pointerdown\", hasPressListeners ? onPointerDown : undefined);\n useUnmountEffect(removePointerEndListener);\n}\n\nexport { useTapGesture };\n","import { __rest, __assign } from 'tslib';\n\n/**\n * Map an IntersectionHandler callback to an element. We only ever make one handler for one\n * element, so even though these handlers might all be triggered by different\n * observers, we can keep them in the same map.\n */\nvar observerCallbacks = new WeakMap();\n/**\n * Multiple observers can be created for multiple element/document roots. Each with\n * different settings. So here we store dictionaries of observers to each root,\n * using serialised settings (threshold/margin) as lookup keys.\n */\nvar observers = new WeakMap();\nvar fireObserverCallback = function (entry) {\n var _a;\n (_a = observerCallbacks.get(entry.target)) === null || _a === void 0 ? void 0 : _a(entry);\n};\nvar fireAllObserverCallbacks = function (entries) {\n entries.forEach(fireObserverCallback);\n};\nfunction initIntersectionObserver(_a) {\n var root = _a.root, options = __rest(_a, [\"root\"]);\n var lookupRoot = root || document;\n /**\n * If we don't have an observer lookup map for this root, create one.\n */\n if (!observers.has(lookupRoot)) {\n observers.set(lookupRoot, {});\n }\n var rootObservers = observers.get(lookupRoot);\n var key = JSON.stringify(options);\n /**\n * If we don't have an observer for this combination of root and settings,\n * create one.\n */\n if (!rootObservers[key]) {\n rootObservers[key] = new IntersectionObserver(fireAllObserverCallbacks, __assign({ root: root }, options));\n }\n return rootObservers[key];\n}\nfunction observeIntersection(element, options, callback) {\n var rootInteresectionObserver = initIntersectionObserver(options);\n observerCallbacks.set(element, callback);\n rootInteresectionObserver.observe(element);\n return function () {\n observerCallbacks.delete(element);\n rootInteresectionObserver.unobserve(element);\n };\n}\n\nexport { observeIntersection };\n","import { useRef, useEffect } from 'react';\nimport { AnimationType } from '../../../render/utils/types.mjs';\nimport { warnOnce } from '../../../utils/warn-once.mjs';\nimport { observeIntersection } from './observers.mjs';\n\nfunction useViewport(_a) {\n var visualElement = _a.visualElement, whileInView = _a.whileInView, onViewportEnter = _a.onViewportEnter, onViewportLeave = _a.onViewportLeave, _b = _a.viewport, viewport = _b === void 0 ? {} : _b;\n var state = useRef({\n hasEnteredView: false,\n isInView: false,\n });\n var shouldObserve = Boolean(whileInView || onViewportEnter || onViewportLeave);\n if (viewport.once && state.current.hasEnteredView)\n shouldObserve = false;\n var useObserver = typeof IntersectionObserver === \"undefined\"\n ? useMissingIntersectionObserver\n : useIntersectionObserver;\n useObserver(shouldObserve, state.current, visualElement, viewport);\n}\nvar thresholdNames = {\n some: 0,\n all: 1,\n};\nfunction useIntersectionObserver(shouldObserve, state, visualElement, _a) {\n var root = _a.root, rootMargin = _a.margin, _b = _a.amount, amount = _b === void 0 ? \"some\" : _b, once = _a.once;\n useEffect(function () {\n if (!shouldObserve)\n return;\n var options = {\n root: root === null || root === void 0 ? void 0 : root.current,\n rootMargin: rootMargin,\n threshold: typeof amount === \"number\" ? amount : thresholdNames[amount],\n };\n var intersectionCallback = function (entry) {\n var _a;\n var isIntersecting = entry.isIntersecting;\n /**\n * If there's been no change in the viewport state, early return.\n */\n if (state.isInView === isIntersecting)\n return;\n state.isInView = isIntersecting;\n /**\n * Handle hasEnteredView. If this is only meant to run once, and\n * element isn't visible, early return. Otherwise set hasEnteredView to true.\n */\n if (once && !isIntersecting && state.hasEnteredView) {\n return;\n }\n else if (isIntersecting) {\n state.hasEnteredView = true;\n }\n (_a = visualElement.animationState) === null || _a === void 0 ? void 0 : _a.setActive(AnimationType.InView, isIntersecting);\n /**\n * Use the latest committed props rather than the ones in scope\n * when this observer is created\n */\n var props = visualElement.getProps();\n var callback = isIntersecting\n ? props.onViewportEnter\n : props.onViewportLeave;\n callback === null || callback === void 0 ? void 0 : callback(entry);\n };\n return observeIntersection(visualElement.getInstance(), options, intersectionCallback);\n }, [shouldObserve, root, rootMargin, amount]);\n}\n/**\n * If IntersectionObserver is missing, we activate inView and fire onViewportEnter\n * on mount. This way, the page will be in the state the author expects users\n * to see it in for everyone.\n */\nfunction useMissingIntersectionObserver(shouldObserve, state, visualElement) {\n useEffect(function () {\n if (!shouldObserve)\n return;\n if (process.env.NODE_ENV !== \"production\") {\n warnOnce(false, \"IntersectionObserver not available on this device. whileInView animations will trigger on mount.\");\n }\n /**\n * Fire this in an rAF because, at this point, the animation state\n * won't have flushed for the first time and there's certain logic in\n * there that behaves differently on the initial animation.\n *\n * This hook should be quite rarely called so setting this in an rAF\n * is preferred to changing the behaviour of the animation state.\n */\n requestAnimationFrame(function () {\n var _a;\n state.hasEnteredView = true;\n var onViewportEnter = visualElement.getProps().onViewportEnter;\n onViewportEnter === null || onViewportEnter === void 0 ? void 0 : onViewportEnter(null);\n (_a = visualElement.animationState) === null || _a === void 0 ? void 0 : _a.setActive(AnimationType.InView, true);\n });\n }, [shouldObserve]);\n}\n\nexport { useViewport };\n","var makeRenderlessComponent = function (hook) { return function (props) {\n hook(props);\n return null;\n}; };\n\nexport { makeRenderlessComponent };\n","import { useFocusGesture } from '../../gestures/use-focus-gesture.mjs';\nimport { useHoverGesture } from '../../gestures/use-hover-gesture.mjs';\nimport { useTapGesture } from '../../gestures/use-tap-gesture.mjs';\nimport { useViewport } from './viewport/use-viewport.mjs';\nimport { makeRenderlessComponent } from '../utils/make-renderless-component.mjs';\n\nvar gestureAnimations = {\n inView: makeRenderlessComponent(useViewport),\n tap: makeRenderlessComponent(useTapGesture),\n focus: makeRenderlessComponent(useFocusGesture),\n hover: makeRenderlessComponent(useHoverGesture),\n};\n\nexport { gestureAnimations };\n","import { useContext, useEffect } from 'react';\nimport { PresenceContext } from '../../context/PresenceContext.mjs';\nimport { useConstant } from '../../utils/use-constant.mjs';\n\n/**\n * When a component is the child of `AnimatePresence`, it can use `usePresence`\n * to access information about whether it's still present in the React tree.\n *\n * ```jsx\n * import { usePresence } from \"framer-motion\"\n *\n * export const Component = () => {\n * const [isPresent, safeToRemove] = usePresence()\n *\n * useEffect(() => {\n * !isPresent && setTimeout(safeToRemove, 1000)\n * }, [isPresent])\n *\n * return <div />\n * }\n * ```\n *\n * If `isPresent` is `false`, it means that a component has been removed the tree, but\n * `AnimatePresence` won't really remove it until `safeToRemove` has been called.\n *\n * @public\n */\nfunction usePresence() {\n var context = useContext(PresenceContext);\n if (context === null)\n return [true, null];\n var isPresent = context.isPresent, onExitComplete = context.onExitComplete, register = context.register;\n // It's safe to call the following hooks conditionally (after an early return) because the context will always\n // either be null or non-null for the lifespan of the component.\n // Replace with useOpaqueId when released in React\n var id = useUniqueId();\n useEffect(function () { return register(id); }, []);\n var safeToRemove = function () { return onExitComplete === null || onExitComplete === void 0 ? void 0 : onExitComplete(id); };\n return !isPresent && onExitComplete ? [false, safeToRemove] : [true];\n}\n/**\n * Similar to `usePresence`, except `useIsPresent` simply returns whether or not the component is present.\n * There is no `safeToRemove` function.\n *\n * ```jsx\n * import { useIsPresent } from \"framer-motion\"\n *\n * export const Component = () => {\n * const isPresent = useIsPresent()\n *\n * useEffect(() => {\n * !isPresent && console.log(\"I've been removed!\")\n * }, [isPresent])\n *\n * return <div />\n * }\n * ```\n *\n * @public\n */\nfunction useIsPresent() {\n return isPresent(useContext(PresenceContext));\n}\nfunction isPresent(context) {\n return context === null ? true : context.isPresent;\n}\nvar counter = 0;\nvar incrementId = function () { return counter++; };\nvar useUniqueId = function () { return useConstant(incrementId); };\n\nexport { isPresent, useIsPresent, usePresence };\n","function shallowCompare(next, prev) {\n if (!Array.isArray(prev))\n return false;\n var prevLength = prev.length;\n if (prevLength !== next.length)\n return false;\n for (var i = 0; i < prevLength; i++) {\n if (prev[i] !== next[i])\n return false;\n }\n return true;\n}\n\nexport { shallowCompare };\n","/**\n * Check if value is a numerical string, ie a string that is purely a number eg \"100\" or \"-100.1\"\n */\nvar isNumericalString = function (v) { return /^\\-?\\d*\\.?\\d+$/.test(v); };\n\nexport { isNumericalString };\n","/**\n * Check if the value is a zero value string like \"0px\" or \"0%\"\n */\nvar isZeroValueString = function (v) { return /^0[^.\\s]+$/.test(v); };\n\nexport { isZeroValueString };\n","/**\n * Tests a provided value against a ValueType\n */\nvar testValueType = function (v) { return function (type) { return type.test(v); }; };\n\nexport { testValueType };\n","/**\n * ValueType for \"auto\"\n */\nvar auto = {\n test: function (v) { return v === \"auto\"; },\n parse: function (v) { return v; },\n};\n\nexport { auto };\n","import { number, px, percent, degrees, vw, vh } from 'style-value-types';\nimport { testValueType } from './test.mjs';\nimport { auto } from './type-auto.mjs';\n\n/**\n * A list of value types commonly used for dimensions\n */\nvar dimensionValueTypes = [number, px, percent, degrees, vw, vh, auto];\n/**\n * Tests a dimensional value against the list of dimension ValueTypes\n */\nvar findDimensionValueType = function (v) {\n return dimensionValueTypes.find(testValueType(v));\n};\n\nexport { dimensionValueTypes, findDimensionValueType };\n","import { __spreadArray, __read } from 'tslib';\nimport { color, complex } from 'style-value-types';\nimport { dimensionValueTypes } from './dimensions.mjs';\nimport { testValueType } from './test.mjs';\n\n/**\n * A list of all ValueTypes\n */\nvar valueTypes = __spreadArray(__spreadArray([], __read(dimensionValueTypes), false), [color, complex], false);\n/**\n * Tests a value against the list of ValueTypes\n */\nvar findValueType = function (v) { return valueTypes.find(testValueType(v)); };\n\nexport { findValueType };\n","import { __rest, __assign, __spreadArray, __read } from 'tslib';\nimport { complex } from 'style-value-types';\nimport { isNumericalString } from '../../utils/is-numerical-string.mjs';\nimport { isZeroValueString } from '../../utils/is-zero-value-string.mjs';\nimport { resolveFinalValueInKeyframes } from '../../utils/resolve-value.mjs';\nimport { motionValue } from '../../value/index.mjs';\nimport { getAnimatableNone } from '../dom/value-types/animatable-none.mjs';\nimport { findValueType } from '../dom/value-types/find.mjs';\nimport { resolveVariant } from './variants.mjs';\n\n/**\n * Set VisualElement's MotionValue, creating a new MotionValue for it if\n * it doesn't exist.\n */\nfunction setMotionValue(visualElement, key, value) {\n if (visualElement.hasValue(key)) {\n visualElement.getValue(key).set(value);\n }\n else {\n visualElement.addValue(key, motionValue(value));\n }\n}\nfunction setTarget(visualElement, definition) {\n var resolved = resolveVariant(visualElement, definition);\n var _a = resolved ? visualElement.makeTargetAnimatable(resolved, false) : {}, _b = _a.transitionEnd, transitionEnd = _b === void 0 ? {} : _b; _a.transition; var target = __rest(_a, [\"transitionEnd\", \"transition\"]);\n target = __assign(__assign({}, target), transitionEnd);\n for (var key in target) {\n var value = resolveFinalValueInKeyframes(target[key]);\n setMotionValue(visualElement, key, value);\n }\n}\nfunction setVariants(visualElement, variantLabels) {\n var reversedLabels = __spreadArray([], __read(variantLabels), false).reverse();\n reversedLabels.forEach(function (key) {\n var _a;\n var variant = visualElement.getVariant(key);\n variant && setTarget(visualElement, variant);\n (_a = visualElement.variantChildren) === null || _a === void 0 ? void 0 : _a.forEach(function (child) {\n setVariants(child, variantLabels);\n });\n });\n}\nfunction setValues(visualElement, definition) {\n if (Array.isArray(definition)) {\n return setVariants(visualElement, definition);\n }\n else if (typeof definition === \"string\") {\n return setVariants(visualElement, [definition]);\n }\n else {\n setTarget(visualElement, definition);\n }\n}\nfunction checkTargetForNewValues(visualElement, target, origin) {\n var _a, _b, _c;\n var _d;\n var newValueKeys = Object.keys(target).filter(function (key) { return !visualElement.hasValue(key); });\n var numNewValues = newValueKeys.length;\n if (!numNewValues)\n return;\n for (var i = 0; i < numNewValues; i++) {\n var key = newValueKeys[i];\n var targetValue = target[key];\n var value = null;\n /**\n * If the target is a series of keyframes, we can use the first value\n * in the array. If this first value is null, we'll still need to read from the DOM.\n */\n if (Array.isArray(targetValue)) {\n value = targetValue[0];\n }\n /**\n * If the target isn't keyframes, or the first keyframe was null, we need to\n * first check if an origin value was explicitly defined in the transition as \"from\",\n * if not read the value from the DOM. As an absolute fallback, take the defined target value.\n */\n if (value === null) {\n value = (_b = (_a = origin[key]) !== null && _a !== void 0 ? _a : visualElement.readValue(key)) !== null && _b !== void 0 ? _b : target[key];\n }\n /**\n * If value is still undefined or null, ignore it. Preferably this would throw,\n * but this was causing issues in Framer.\n */\n if (value === undefined || value === null)\n continue;\n if (typeof value === \"string\" &&\n (isNumericalString(value) || isZeroValueString(value))) {\n // If this is a number read as a string, ie \"0\" or \"200\", convert it to a number\n value = parseFloat(value);\n }\n else if (!findValueType(value) && complex.test(targetValue)) {\n value = getAnimatableNone(key, targetValue);\n }\n visualElement.addValue(key, motionValue(value));\n (_c = (_d = origin)[key]) !== null && _c !== void 0 ? _c : (_d[key] = value);\n visualElement.setBaseTarget(key, value);\n }\n}\nfunction getOriginFromTransition(key, transition) {\n if (!transition)\n return;\n var valueTransition = transition[key] || transition[\"default\"] || transition;\n return valueTransition.from;\n}\nfunction getOrigin(target, transition, visualElement) {\n var _a, _b;\n var origin = {};\n for (var key in target) {\n origin[key] =\n (_a = getOriginFromTransition(key, transition)) !== null && _a !== void 0 ? _a : (_b = visualElement.getValue(key)) === null || _b === void 0 ? void 0 : _b.get();\n }\n return origin;\n}\n\nexport { checkTargetForNewValues, getOrigin, getOriginFromTransition, setTarget, setValues };\n","import { __read, __rest, __assign } from 'tslib';\nimport { startAnimation } from '../../animation/utils/transitions.mjs';\nimport { setTarget } from './setters.mjs';\nimport { resolveVariant } from './variants.mjs';\n\n/**\n * @internal\n */\nfunction animateVisualElement(visualElement, definition, options) {\n if (options === void 0) { options = {}; }\n visualElement.notifyAnimationStart(definition);\n var animation;\n if (Array.isArray(definition)) {\n var animations = definition.map(function (variant) {\n return animateVariant(visualElement, variant, options);\n });\n animation = Promise.all(animations);\n }\n else if (typeof definition === \"string\") {\n animation = animateVariant(visualElement, definition, options);\n }\n else {\n var resolvedDefinition = typeof definition === \"function\"\n ? resolveVariant(visualElement, definition, options.custom)\n : definition;\n animation = animateTarget(visualElement, resolvedDefinition, options);\n }\n return animation.then(function () {\n return visualElement.notifyAnimationComplete(definition);\n });\n}\nfunction animateVariant(visualElement, variant, options) {\n var _a;\n if (options === void 0) { options = {}; }\n var resolved = resolveVariant(visualElement, variant, options.custom);\n var _b = (resolved || {}).transition, transition = _b === void 0 ? visualElement.getDefaultTransition() || {} : _b;\n if (options.transitionOverride) {\n transition = options.transitionOverride;\n }\n /**\n * If we have a variant, create a callback that runs it as an animation.\n * Otherwise, we resolve a Promise immediately for a composable no-op.\n */\n var getAnimation = resolved\n ? function () { return animateTarget(visualElement, resolved, options); }\n : function () { return Promise.resolve(); };\n /**\n * If we have children, create a callback that runs all their animations.\n * Otherwise, we resolve a Promise immediately for a composable no-op.\n */\n var getChildAnimations = ((_a = visualElement.variantChildren) === null || _a === void 0 ? void 0 : _a.size)\n ? function (forwardDelay) {\n if (forwardDelay === void 0) { forwardDelay = 0; }\n var _a = transition.delayChildren, delayChildren = _a === void 0 ? 0 : _a, staggerChildren = transition.staggerChildren, staggerDirection = transition.staggerDirection;\n return animateChildren(visualElement, variant, delayChildren + forwardDelay, staggerChildren, staggerDirection, options);\n }\n : function () { return Promise.resolve(); };\n /**\n * If the transition explicitly defines a \"when\" option, we need to resolve either\n * this animation or all children animations before playing the other.\n */\n var when = transition.when;\n if (when) {\n var _c = __read(when === \"beforeChildren\"\n ? [getAnimation, getChildAnimations]\n : [getChildAnimations, getAnimation], 2), first = _c[0], last = _c[1];\n return first().then(last);\n }\n else {\n return Promise.all([getAnimation(), getChildAnimations(options.delay)]);\n }\n}\n/**\n * @internal\n */\nfunction animateTarget(visualElement, definition, _a) {\n var _b;\n var _c = _a === void 0 ? {} : _a, _d = _c.delay, delay = _d === void 0 ? 0 : _d, transitionOverride = _c.transitionOverride, type = _c.type;\n var _e = visualElement.makeTargetAnimatable(definition), _f = _e.transition, transition = _f === void 0 ? visualElement.getDefaultTransition() : _f, transitionEnd = _e.transitionEnd, target = __rest(_e, [\"transition\", \"transitionEnd\"]);\n if (transitionOverride)\n transition = transitionOverride;\n var animations = [];\n var animationTypeState = type && ((_b = visualElement.animationState) === null || _b === void 0 ? void 0 : _b.getState()[type]);\n for (var key in target) {\n var value = visualElement.getValue(key);\n var valueTarget = target[key];\n if (!value ||\n valueTarget === undefined ||\n (animationTypeState &&\n shouldBlockAnimation(animationTypeState, key))) {\n continue;\n }\n var animation = startAnimation(key, value, valueTarget, __assign({ delay: delay }, transition));\n animations.push(animation);\n }\n return Promise.all(animations).then(function () {\n transitionEnd && setTarget(visualElement, transitionEnd);\n });\n}\nfunction animateChildren(visualElement, variant, delayChildren, staggerChildren, staggerDirection, options) {\n if (delayChildren === void 0) { delayChildren = 0; }\n if (staggerChildren === void 0) { staggerChildren = 0; }\n if (staggerDirection === void 0) { staggerDirection = 1; }\n var animations = [];\n var maxStaggerDuration = (visualElement.variantChildren.size - 1) * staggerChildren;\n var generateStaggerDuration = staggerDirection === 1\n ? function (i) {\n if (i === void 0) { i = 0; }\n return i * staggerChildren;\n }\n : function (i) {\n if (i === void 0) { i = 0; }\n return maxStaggerDuration - i * staggerChildren;\n };\n Array.from(visualElement.variantChildren)\n .sort(sortByTreeOrder)\n .forEach(function (child, i) {\n animations.push(animateVariant(child, variant, __assign(__assign({}, options), { delay: delayChildren + generateStaggerDuration(i) })).then(function () { return child.notifyAnimationComplete(variant); }));\n });\n return Promise.all(animations);\n}\nfunction stopAnimation(visualElement) {\n visualElement.forEachValue(function (value) { return value.stop(); });\n}\nfunction sortByTreeOrder(a, b) {\n return a.sortNodePosition(b);\n}\n/**\n * Decide whether we should block this animation. Previously, we achieved this\n * just by checking whether the key was listed in protectedKeys, but this\n * posed problems if an animation was triggered by afterChildren and protectedKeys\n * had been set to true in the meantime.\n */\nfunction shouldBlockAnimation(_a, key) {\n var protectedKeys = _a.protectedKeys, needsAnimating = _a.needsAnimating;\n var shouldBlock = protectedKeys.hasOwnProperty(key) && needsAnimating[key] !== true;\n needsAnimating[key] = false;\n return shouldBlock;\n}\n\nexport { animateVisualElement, sortByTreeOrder, stopAnimation };\n","import { __spreadArray, __read, __assign, __rest } from 'tslib';\nimport { isAnimationControls } from '../../animation/utils/is-animation-controls.mjs';\nimport { isKeyframesTarget } from '../../animation/utils/is-keyframes-target.mjs';\nimport { shallowCompare } from '../../utils/shallow-compare.mjs';\nimport { animateVisualElement } from './animation.mjs';\nimport { AnimationType } from './types.mjs';\nimport { isVariantLabels, resolveVariant, isVariantLabel } from './variants.mjs';\n\nvar variantPriorityOrder = [\n AnimationType.Animate,\n AnimationType.InView,\n AnimationType.Focus,\n AnimationType.Hover,\n AnimationType.Tap,\n AnimationType.Drag,\n AnimationType.Exit,\n];\nvar reversePriorityOrder = __spreadArray([], __read(variantPriorityOrder), false).reverse();\nvar numAnimationTypes = variantPriorityOrder.length;\nfunction animateList(visualElement) {\n return function (animations) {\n return Promise.all(animations.map(function (_a) {\n var animation = _a.animation, options = _a.options;\n return animateVisualElement(visualElement, animation, options);\n }));\n };\n}\nfunction createAnimationState(visualElement) {\n var animate = animateList(visualElement);\n var state = createState();\n var allAnimatedKeys = {};\n var isInitialRender = true;\n /**\n * This function will be used to reduce the animation definitions for\n * each active animation type into an object of resolved values for it.\n */\n var buildResolvedTypeValues = function (acc, definition) {\n var resolved = resolveVariant(visualElement, definition);\n if (resolved) {\n resolved.transition; var transitionEnd = resolved.transitionEnd, target = __rest(resolved, [\"transition\", \"transitionEnd\"]);\n acc = __assign(__assign(__assign({}, acc), target), transitionEnd);\n }\n return acc;\n };\n function isAnimated(key) {\n return allAnimatedKeys[key] !== undefined;\n }\n /**\n * This just allows us to inject mocked animation functions\n * @internal\n */\n function setAnimateFunction(makeAnimator) {\n animate = makeAnimator(visualElement);\n }\n /**\n * When we receive new props, we need to:\n * 1. Create a list of protected keys for each type. This is a directory of\n * value keys that are currently being \"handled\" by types of a higher priority\n * so that whenever an animation is played of a given type, these values are\n * protected from being animated.\n * 2. Determine if an animation type needs animating.\n * 3. Determine if any values have been removed from a type and figure out\n * what to animate those to.\n */\n function animateChanges(options, changedActiveType) {\n var _a;\n var props = visualElement.getProps();\n var context = visualElement.getVariantContext(true) || {};\n /**\n * A list of animations that we'll build into as we iterate through the animation\n * types. This will get executed at the end of the function.\n */\n var animations = [];\n /**\n * Keep track of which values have been removed. Then, as we hit lower priority\n * animation types, we can check if they contain removed values and animate to that.\n */\n var removedKeys = new Set();\n /**\n * A dictionary of all encountered keys. This is an object to let us build into and\n * copy it without iteration. Each time we hit an animation type we set its protected\n * keys - the keys its not allowed to animate - to the latest version of this object.\n */\n var encounteredKeys = {};\n /**\n * If a variant has been removed at a given index, and this component is controlling\n * variant animations, we want to ensure lower-priority variants are forced to animate.\n */\n var removedVariantIndex = Infinity;\n var _loop_1 = function (i) {\n var type = reversePriorityOrder[i];\n var typeState = state[type];\n var prop = (_a = props[type]) !== null && _a !== void 0 ? _a : context[type];\n var propIsVariant = isVariantLabel(prop);\n /**\n * If this type has *just* changed isActive status, set activeDelta\n * to that status. Otherwise set to null.\n */\n var activeDelta = type === changedActiveType ? typeState.isActive : null;\n if (activeDelta === false)\n removedVariantIndex = i;\n /**\n * If this prop is an inherited variant, rather than been set directly on the\n * component itself, we want to make sure we allow the parent to trigger animations.\n *\n * TODO: Can probably change this to a !isControllingVariants check\n */\n var isInherited = prop === context[type] && prop !== props[type] && propIsVariant;\n /**\n *\n */\n if (isInherited &&\n isInitialRender &&\n visualElement.manuallyAnimateOnMount) {\n isInherited = false;\n }\n /**\n * Set all encountered keys so far as the protected keys for this type. This will\n * be any key that has been animated or otherwise handled by active, higher-priortiy types.\n */\n typeState.protectedKeys = __assign({}, encounteredKeys);\n // Check if we can skip analysing this prop early\n if (\n // If it isn't active and hasn't *just* been set as inactive\n (!typeState.isActive && activeDelta === null) ||\n // If we didn't and don't have any defined prop for this animation type\n (!prop && !typeState.prevProp) ||\n // Or if the prop doesn't define an animation\n isAnimationControls(prop) ||\n typeof prop === \"boolean\") {\n return \"continue\";\n }\n /**\n * As we go look through the values defined on this type, if we detect\n * a changed value or a value that was removed in a higher priority, we set\n * this to true and add this prop to the animation list.\n */\n var variantDidChange = checkVariantsDidChange(typeState.prevProp, prop);\n var shouldAnimateType = variantDidChange ||\n // If we're making this variant active, we want to always make it active\n (type === changedActiveType &&\n typeState.isActive &&\n !isInherited &&\n propIsVariant) ||\n // If we removed a higher-priority variant (i is in reverse order)\n (i > removedVariantIndex && propIsVariant);\n /**\n * As animations can be set as variant lists, variants or target objects, we\n * coerce everything to an array if it isn't one already\n */\n var definitionList = Array.isArray(prop) ? prop : [prop];\n /**\n * Build an object of all the resolved values. We'll use this in the subsequent\n * animateChanges calls to determine whether a value has changed.\n */\n var resolvedValues = definitionList.reduce(buildResolvedTypeValues, {});\n if (activeDelta === false)\n resolvedValues = {};\n /**\n * Now we need to loop through all the keys in the prev prop and this prop,\n * and decide:\n * 1. If the value has changed, and needs animating\n * 2. If it has been removed, and needs adding to the removedKeys set\n * 3. If it has been removed in a higher priority type and needs animating\n * 4. If it hasn't been removed in a higher priority but hasn't changed, and\n * needs adding to the type's protectedKeys list.\n */\n var _b = typeState.prevResolvedValues, prevResolvedValues = _b === void 0 ? {} : _b;\n var allKeys = __assign(__assign({}, prevResolvedValues), resolvedValues);\n var markToAnimate = function (key) {\n shouldAnimateType = true;\n removedKeys.delete(key);\n typeState.needsAnimating[key] = true;\n };\n for (var key in allKeys) {\n var next = resolvedValues[key];\n var prev = prevResolvedValues[key];\n // If we've already handled this we can just skip ahead\n if (encounteredKeys.hasOwnProperty(key))\n continue;\n /**\n * If the value has changed, we probably want to animate it.\n */\n if (next !== prev) {\n /**\n * If both values are keyframes, we need to shallow compare them to\n * detect whether any value has changed. If it has, we animate it.\n */\n if (isKeyframesTarget(next) && isKeyframesTarget(prev)) {\n if (!shallowCompare(next, prev) || variantDidChange) {\n markToAnimate(key);\n }\n else {\n /**\n * If it hasn't changed, we want to ensure it doesn't animate by\n * adding it to the list of protected keys.\n */\n typeState.protectedKeys[key] = true;\n }\n }\n else if (next !== undefined) {\n // If next is defined and doesn't equal prev, it needs animating\n markToAnimate(key);\n }\n else {\n // If it's undefined, it's been removed.\n removedKeys.add(key);\n }\n }\n else if (next !== undefined && removedKeys.has(key)) {\n /**\n * If next hasn't changed and it isn't undefined, we want to check if it's\n * been removed by a higher priority\n */\n markToAnimate(key);\n }\n else {\n /**\n * If it hasn't changed, we add it to the list of protected values\n * to ensure it doesn't get animated.\n */\n typeState.protectedKeys[key] = true;\n }\n }\n /**\n * Update the typeState so next time animateChanges is called we can compare the\n * latest prop and resolvedValues to these.\n */\n typeState.prevProp = prop;\n typeState.prevResolvedValues = resolvedValues;\n /**\n *\n */\n if (typeState.isActive) {\n encounteredKeys = __assign(__assign({}, encounteredKeys), resolvedValues);\n }\n if (isInitialRender && visualElement.blockInitialAnimation) {\n shouldAnimateType = false;\n }\n /**\n * If this is an inherited prop we want to hard-block animations\n * TODO: Test as this should probably still handle animations triggered\n * by removed values?\n */\n if (shouldAnimateType && !isInherited) {\n animations.push.apply(animations, __spreadArray([], __read(definitionList.map(function (animation) { return ({\n animation: animation,\n options: __assign({ type: type }, options),\n }); })), false));\n }\n };\n /**\n * Iterate through all animation types in reverse priority order. For each, we want to\n * detect which values it's handling and whether or not they've changed (and therefore\n * need to be animated). If any values have been removed, we want to detect those in\n * lower priority props and flag for animation.\n */\n for (var i = 0; i < numAnimationTypes; i++) {\n _loop_1(i);\n }\n allAnimatedKeys = __assign({}, encounteredKeys);\n /**\n * If there are some removed value that haven't been dealt with,\n * we need to create a new animation that falls back either to the value\n * defined in the style prop, or the last read value.\n */\n if (removedKeys.size) {\n var fallbackAnimation_1 = {};\n removedKeys.forEach(function (key) {\n var fallbackTarget = visualElement.getBaseTarget(key);\n if (fallbackTarget !== undefined) {\n fallbackAnimation_1[key] = fallbackTarget;\n }\n });\n animations.push({ animation: fallbackAnimation_1 });\n }\n var shouldAnimate = Boolean(animations.length);\n if (isInitialRender &&\n props.initial === false &&\n !visualElement.manuallyAnimateOnMount) {\n shouldAnimate = false;\n }\n isInitialRender = false;\n return shouldAnimate ? animate(animations) : Promise.resolve();\n }\n /**\n * Change whether a certain animation type is active.\n */\n function setActive(type, isActive, options) {\n var _a;\n // If the active state hasn't changed, we can safely do nothing here\n if (state[type].isActive === isActive)\n return Promise.resolve();\n // Propagate active change to children\n (_a = visualElement.variantChildren) === null || _a === void 0 ? void 0 : _a.forEach(function (child) { var _a; return (_a = child.animationState) === null || _a === void 0 ? void 0 : _a.setActive(type, isActive); });\n state[type].isActive = isActive;\n return animateChanges(options, type);\n }\n return {\n isAnimated: isAnimated,\n animateChanges: animateChanges,\n setActive: setActive,\n setAnimateFunction: setAnimateFunction,\n getState: function () { return state; },\n };\n}\nfunction checkVariantsDidChange(prev, next) {\n if (typeof next === \"string\") {\n return next !== prev;\n }\n else if (isVariantLabels(next)) {\n return !shallowCompare(next, prev);\n }\n return false;\n}\nfunction createTypeState(isActive) {\n if (isActive === void 0) { isActive = false; }\n return {\n isActive: isActive,\n protectedKeys: {},\n needsAnimating: {},\n prevResolvedValues: {},\n };\n}\nfunction createState() {\n var _a;\n return _a = {},\n _a[AnimationType.Animate] = createTypeState(true),\n _a[AnimationType.InView] = createTypeState(),\n _a[AnimationType.Hover] = createTypeState(),\n _a[AnimationType.Tap] = createTypeState(),\n _a[AnimationType.Drag] = createTypeState(),\n _a[AnimationType.Focus] = createTypeState(),\n _a[AnimationType.Exit] = createTypeState(),\n _a;\n}\n\nexport { checkVariantsDidChange, createAnimationState, variantPriorityOrder };\n","import { __read } from 'tslib';\nimport { useEffect, useContext } from 'react';\nimport { isAnimationControls } from '../../animation/utils/is-animation-controls.mjs';\nimport { usePresence } from '../../components/AnimatePresence/use-presence.mjs';\nimport { PresenceContext } from '../../context/PresenceContext.mjs';\nimport { createAnimationState } from '../../render/utils/animation-state.mjs';\nimport { AnimationType } from '../../render/utils/types.mjs';\nimport { makeRenderlessComponent } from '../utils/make-renderless-component.mjs';\n\nvar animations = {\n animation: makeRenderlessComponent(function (_a) {\n var visualElement = _a.visualElement, animate = _a.animate;\n /**\n * We dynamically generate the AnimationState manager as it contains a reference\n * to the underlying animation library. We only want to load that if we load this,\n * so people can optionally code split it out using the `m` component.\n */\n visualElement.animationState || (visualElement.animationState = createAnimationState(visualElement));\n /**\n * Subscribe any provided AnimationControls to the component's VisualElement\n */\n if (isAnimationControls(animate)) {\n useEffect(function () { return animate.subscribe(visualElement); }, [animate]);\n }\n }),\n exit: makeRenderlessComponent(function (props) {\n var custom = props.custom, visualElement = props.visualElement;\n var _a = __read(usePresence(), 2), isPresent = _a[0], safeToRemove = _a[1];\n var presenceContext = useContext(PresenceContext);\n useEffect(function () {\n var _a, _b;\n visualElement.isPresent = isPresent;\n var animation = (_a = visualElement.animationState) === null || _a === void 0 ? void 0 : _a.setActive(AnimationType.Exit, !isPresent, { custom: (_b = presenceContext === null || presenceContext === void 0 ? void 0 : presenceContext.custom) !== null && _b !== void 0 ? _b : custom });\n !isPresent && (animation === null || animation === void 0 ? void 0 : animation.then(safeToRemove));\n }, [isPresent]);\n }),\n};\n\nexport { animations };\n","import { __assign } from 'tslib';\nimport { isMouseEvent, isTouchEvent } from './utils/event-type.mjs';\nimport { extractEventInfo } from '../events/event-info.mjs';\nimport sync, { getFrameData, cancelSync } from 'framesync';\nimport { secondsToMilliseconds } from '../utils/time-conversion.mjs';\nimport { addPointerEvent } from '../events/use-pointer-event.mjs';\nimport { distance, pipe } from 'popmotion';\n\n/**\n * @internal\n */\nvar PanSession = /** @class */ (function () {\n function PanSession(event, handlers, _a) {\n var _this = this;\n var _b = _a === void 0 ? {} : _a, transformPagePoint = _b.transformPagePoint;\n /**\n * @internal\n */\n this.startEvent = null;\n /**\n * @internal\n */\n this.lastMoveEvent = null;\n /**\n * @internal\n */\n this.lastMoveEventInfo = null;\n /**\n * @internal\n */\n this.handlers = {};\n this.updatePoint = function () {\n if (!(_this.lastMoveEvent && _this.lastMoveEventInfo))\n return;\n var info = getPanInfo(_this.lastMoveEventInfo, _this.history);\n var isPanStarted = _this.startEvent !== null;\n // Only start panning if the offset is larger than 3 pixels. If we make it\n // any larger than this we'll want to reset the pointer history\n // on the first update to avoid visual snapping to the cursoe.\n var isDistancePastThreshold = distance(info.offset, { x: 0, y: 0 }) >= 3;\n if (!isPanStarted && !isDistancePastThreshold)\n return;\n var point = info.point;\n var timestamp = getFrameData().timestamp;\n _this.history.push(__assign(__assign({}, point), { timestamp: timestamp }));\n var _a = _this.handlers, onStart = _a.onStart, onMove = _a.onMove;\n if (!isPanStarted) {\n onStart && onStart(_this.lastMoveEvent, info);\n _this.startEvent = _this.lastMoveEvent;\n }\n onMove && onMove(_this.lastMoveEvent, info);\n };\n this.handlePointerMove = function (event, info) {\n _this.lastMoveEvent = event;\n _this.lastMoveEventInfo = transformPoint(info, _this.transformPagePoint);\n // Because Safari doesn't trigger mouseup events when it's above a `<select>`\n if (isMouseEvent(event) && event.buttons === 0) {\n _this.handlePointerUp(event, info);\n return;\n }\n // Throttle mouse move event to once per frame\n sync.update(_this.updatePoint, true);\n };\n this.handlePointerUp = function (event, info) {\n _this.end();\n var _a = _this.handlers, onEnd = _a.onEnd, onSessionEnd = _a.onSessionEnd;\n var panInfo = getPanInfo(transformPoint(info, _this.transformPagePoint), _this.history);\n if (_this.startEvent && onEnd) {\n onEnd(event, panInfo);\n }\n onSessionEnd && onSessionEnd(event, panInfo);\n };\n // If we have more than one touch, don't start detecting this gesture\n if (isTouchEvent(event) && event.touches.length > 1)\n return;\n this.handlers = handlers;\n this.transformPagePoint = transformPagePoint;\n var info = extractEventInfo(event);\n var initialInfo = transformPoint(info, this.transformPagePoint);\n var point = initialInfo.point;\n var timestamp = getFrameData().timestamp;\n this.history = [__assign(__assign({}, point), { timestamp: timestamp })];\n var onSessionStart = handlers.onSessionStart;\n onSessionStart &&\n onSessionStart(event, getPanInfo(initialInfo, this.history));\n this.removeListeners = pipe(addPointerEvent(window, \"pointermove\", this.handlePointerMove), addPointerEvent(window, \"pointerup\", this.handlePointerUp), addPointerEvent(window, \"pointercancel\", this.handlePointerUp));\n }\n PanSession.prototype.updateHandlers = function (handlers) {\n this.handlers = handlers;\n };\n PanSession.prototype.end = function () {\n this.removeListeners && this.removeListeners();\n cancelSync.update(this.updatePoint);\n };\n return PanSession;\n}());\nfunction transformPoint(info, transformPagePoint) {\n return transformPagePoint ? { point: transformPagePoint(info.point) } : info;\n}\nfunction subtractPoint(a, b) {\n return { x: a.x - b.x, y: a.y - b.y };\n}\nfunction getPanInfo(_a, history) {\n var point = _a.point;\n return {\n point: point,\n delta: subtractPoint(point, lastDevicePoint(history)),\n offset: subtractPoint(point, startDevicePoint(history)),\n velocity: getVelocity(history, 0.1),\n };\n}\nfunction startDevicePoint(history) {\n return history[0];\n}\nfunction lastDevicePoint(history) {\n return history[history.length - 1];\n}\nfunction getVelocity(history, timeDelta) {\n if (history.length < 2) {\n return { x: 0, y: 0 };\n }\n var i = history.length - 1;\n var timestampedPoint = null;\n var lastPoint = lastDevicePoint(history);\n while (i >= 0) {\n timestampedPoint = history[i];\n if (lastPoint.timestamp - timestampedPoint.timestamp >\n secondsToMilliseconds(timeDelta)) {\n break;\n }\n i--;\n }\n if (!timestampedPoint) {\n return { x: 0, y: 0 };\n }\n var time = (lastPoint.timestamp - timestampedPoint.timestamp) / 1000;\n if (time === 0) {\n return { x: 0, y: 0 };\n }\n var currentVelocity = {\n x: (lastPoint.x - timestampedPoint.x) / time,\n y: (lastPoint.y - timestampedPoint.y) / time,\n };\n if (currentVelocity.x === Infinity) {\n currentVelocity.x = 0;\n }\n if (currentVelocity.y === Infinity) {\n currentVelocity.y = 0;\n }\n return currentVelocity;\n}\n\nexport { PanSession };\n","import { __read } from 'tslib';\nimport { clamp, mix, progress } from 'popmotion';\nimport { calcLength } from '../../../projection/geometry/delta-calc.mjs';\n\n/**\n * Apply constraints to a point. These constraints are both physical along an\n * axis, and an elastic factor that determines how much to constrain the point\n * by if it does lie outside the defined parameters.\n */\nfunction applyConstraints(point, _a, elastic) {\n var min = _a.min, max = _a.max;\n if (min !== undefined && point < min) {\n // If we have a min point defined, and this is outside of that, constrain\n point = elastic ? mix(min, point, elastic.min) : Math.max(point, min);\n }\n else if (max !== undefined && point > max) {\n // If we have a max point defined, and this is outside of that, constrain\n point = elastic ? mix(max, point, elastic.max) : Math.min(point, max);\n }\n return point;\n}\n/**\n * Calculate constraints in terms of the viewport when defined relatively to the\n * measured axis. This is measured from the nearest edge, so a max constraint of 200\n * on an axis with a max value of 300 would return a constraint of 500 - axis length\n */\nfunction calcRelativeAxisConstraints(axis, min, max) {\n return {\n min: min !== undefined ? axis.min + min : undefined,\n max: max !== undefined\n ? axis.max + max - (axis.max - axis.min)\n : undefined,\n };\n}\n/**\n * Calculate constraints in terms of the viewport when\n * defined relatively to the measured bounding box.\n */\nfunction calcRelativeConstraints(layoutBox, _a) {\n var top = _a.top, left = _a.left, bottom = _a.bottom, right = _a.right;\n return {\n x: calcRelativeAxisConstraints(layoutBox.x, left, right),\n y: calcRelativeAxisConstraints(layoutBox.y, top, bottom),\n };\n}\n/**\n * Calculate viewport constraints when defined as another viewport-relative axis\n */\nfunction calcViewportAxisConstraints(layoutAxis, constraintsAxis) {\n var _a;\n var min = constraintsAxis.min - layoutAxis.min;\n var max = constraintsAxis.max - layoutAxis.max;\n // If the constraints axis is actually smaller than the layout axis then we can\n // flip the constraints\n if (constraintsAxis.max - constraintsAxis.min <\n layoutAxis.max - layoutAxis.min) {\n _a = __read([max, min], 2), min = _a[0], max = _a[1];\n }\n return { min: min, max: max };\n}\n/**\n * Calculate viewport constraints when defined as another viewport-relative box\n */\nfunction calcViewportConstraints(layoutBox, constraintsBox) {\n return {\n x: calcViewportAxisConstraints(layoutBox.x, constraintsBox.x),\n y: calcViewportAxisConstraints(layoutBox.y, constraintsBox.y),\n };\n}\n/**\n * Calculate a transform origin relative to the source axis, between 0-1, that results\n * in an asthetically pleasing scale/transform needed to project from source to target.\n */\nfunction calcOrigin(source, target) {\n var origin = 0.5;\n var sourceLength = calcLength(source);\n var targetLength = calcLength(target);\n if (targetLength > sourceLength) {\n origin = progress(target.min, target.max - sourceLength, source.min);\n }\n else if (sourceLength > targetLength) {\n origin = progress(source.min, source.max - targetLength, target.min);\n }\n return clamp(0, 1, origin);\n}\n/**\n * Rebase the calculated viewport constraints relative to the layout.min point.\n */\nfunction rebaseAxisConstraints(layout, constraints) {\n var relativeConstraints = {};\n if (constraints.min !== undefined) {\n relativeConstraints.min = constraints.min - layout.min;\n }\n if (constraints.max !== undefined) {\n relativeConstraints.max = constraints.max - layout.min;\n }\n return relativeConstraints;\n}\nvar defaultElastic = 0.35;\n/**\n * Accepts a dragElastic prop and returns resolved elastic values for each axis.\n */\nfunction resolveDragElastic(dragElastic) {\n if (dragElastic === void 0) { dragElastic = defaultElastic; }\n if (dragElastic === false) {\n dragElastic = 0;\n }\n else if (dragElastic === true) {\n dragElastic = defaultElastic;\n }\n return {\n x: resolveAxisElastic(dragElastic, \"left\", \"right\"),\n y: resolveAxisElastic(dragElastic, \"top\", \"bottom\"),\n };\n}\nfunction resolveAxisElastic(dragElastic, minLabel, maxLabel) {\n return {\n min: resolvePointElastic(dragElastic, minLabel),\n max: resolvePointElastic(dragElastic, maxLabel),\n };\n}\nfunction resolvePointElastic(dragElastic, label) {\n var _a;\n return typeof dragElastic === \"number\"\n ? dragElastic\n : (_a = dragElastic[label]) !== null && _a !== void 0 ? _a : 0;\n}\n\nexport { applyConstraints, calcOrigin, calcRelativeAxisConstraints, calcRelativeConstraints, calcViewportAxisConstraints, calcViewportConstraints, defaultElastic, rebaseAxisConstraints, resolveAxisElastic, resolveDragElastic, resolvePointElastic };\n","/**\n * Bounding boxes tend to be defined as top, left, right, bottom. For various operations\n * it's easier to consider each axis individually. This function returns a bounding box\n * as a map of single-axis min/max values.\n */\nfunction convertBoundingBoxToBox(_a) {\n var top = _a.top, left = _a.left, right = _a.right, bottom = _a.bottom;\n return {\n x: { min: left, max: right },\n y: { min: top, max: bottom },\n };\n}\nfunction convertBoxToBoundingBox(_a) {\n var x = _a.x, y = _a.y;\n return { top: y.min, right: x.max, bottom: y.max, left: x.min };\n}\n/**\n * Applies a TransformPoint function to a bounding box. TransformPoint is usually a function\n * provided by Framer to allow measured points to be corrected for device scaling. This is used\n * when measuring DOM elements and DOM event points.\n */\nfunction transformBoxPoints(point, transformPoint) {\n if (!transformPoint)\n return point;\n var topLeft = transformPoint({ x: point.left, y: point.top });\n var bottomRight = transformPoint({ x: point.right, y: point.bottom });\n return {\n top: topLeft.y,\n left: topLeft.x,\n bottom: bottomRight.y,\n right: bottomRight.x,\n };\n}\n\nexport { convertBoundingBoxToBox, convertBoxToBoundingBox, transformBoxPoints };\n","import { convertBoundingBoxToBox, transformBoxPoints } from '../geometry/conversion.mjs';\nimport { translateAxis } from '../geometry/delta-apply.mjs';\n\nfunction measureViewportBox(instance, transformPoint) {\n return convertBoundingBoxToBox(transformBoxPoints(instance.getBoundingClientRect(), transformPoint));\n}\nfunction measurePageBox(element, rootProjectionNode, transformPagePoint) {\n var viewportBox = measureViewportBox(element, transformPagePoint);\n var scroll = rootProjectionNode.scroll;\n if (scroll) {\n translateAxis(viewportBox.x, scroll.x);\n translateAxis(viewportBox.y, scroll.y);\n }\n return viewportBox;\n}\n\nexport { measurePageBox, measureViewportBox };\n","import { __assign } from 'tslib';\nimport { invariant } from 'hey-listen';\nimport { PanSession } from '../PanSession.mjs';\nimport { getGlobalLock } from './utils/lock.mjs';\nimport { isRefObject } from '../../utils/is-ref-object.mjs';\nimport { addPointerEvent } from '../../events/use-pointer-event.mjs';\nimport { applyConstraints, calcRelativeConstraints, resolveDragElastic, rebaseAxisConstraints, calcViewportConstraints, calcOrigin, defaultElastic } from './utils/constraints.mjs';\nimport { AnimationType } from '../../render/utils/types.mjs';\nimport { createBox } from '../../projection/geometry/models.mjs';\nimport { eachAxis } from '../../projection/utils/each-axis.mjs';\nimport { measurePageBox } from '../../projection/utils/measure.mjs';\nimport { extractEventInfo } from '../../events/event-info.mjs';\nimport { startAnimation } from '../../animation/utils/transitions.mjs';\nimport { convertBoxToBoundingBox, convertBoundingBoxToBox } from '../../projection/geometry/conversion.mjs';\nimport { addDomEvent } from '../../events/use-dom-event.mjs';\nimport { mix } from 'popmotion';\nimport { percent } from 'style-value-types';\nimport { calcLength } from '../../projection/geometry/delta-calc.mjs';\n\nvar elementDragControls = new WeakMap();\n/**\n *\n */\n// let latestPointerEvent: AnyPointerEvent\nvar VisualElementDragControls = /** @class */ (function () {\n function VisualElementDragControls(visualElement) {\n // This is a reference to the global drag gesture lock, ensuring only one component\n // can \"capture\" the drag of one or both axes.\n // TODO: Look into moving this into pansession?\n this.openGlobalLock = null;\n this.isDragging = false;\n this.currentDirection = null;\n this.originPoint = { x: 0, y: 0 };\n /**\n * The permitted boundaries of travel, in pixels.\n */\n this.constraints = false;\n this.hasMutatedConstraints = false;\n /**\n * The per-axis resolved elastic values.\n */\n this.elastic = createBox();\n this.visualElement = visualElement;\n }\n VisualElementDragControls.prototype.start = function (originEvent, _a) {\n var _this = this;\n var _b = _a === void 0 ? {} : _a, _c = _b.snapToCursor, snapToCursor = _c === void 0 ? false : _c;\n /**\n * Don't start dragging if this component is exiting\n */\n if (this.visualElement.isPresent === false)\n return;\n var onSessionStart = function (event) {\n // Stop any animations on both axis values immediately. This allows the user to throw and catch\n // the component.\n _this.stopAnimation();\n if (snapToCursor) {\n _this.snapToCursor(extractEventInfo(event, \"page\").point);\n }\n };\n var onStart = function (event, info) {\n var _a;\n // Attempt to grab the global drag gesture lock - maybe make this part of PanSession\n var _b = _this.getProps(), drag = _b.drag, dragPropagation = _b.dragPropagation, onDragStart = _b.onDragStart;\n if (drag && !dragPropagation) {\n if (_this.openGlobalLock)\n _this.openGlobalLock();\n _this.openGlobalLock = getGlobalLock(drag);\n // If we don 't have the lock, don't start dragging\n if (!_this.openGlobalLock)\n return;\n }\n _this.isDragging = true;\n _this.currentDirection = null;\n _this.resolveConstraints();\n if (_this.visualElement.projection) {\n _this.visualElement.projection.isAnimationBlocked = true;\n _this.visualElement.projection.target = undefined;\n }\n /**\n * Record gesture origin\n */\n eachAxis(function (axis) {\n var _a, _b;\n var current = _this.getAxisMotionValue(axis).get() || 0;\n /**\n * If the MotionValue is a percentage value convert to px\n */\n if (percent.test(current)) {\n var measuredAxis = (_b = (_a = _this.visualElement.projection) === null || _a === void 0 ? void 0 : _a.layout) === null || _b === void 0 ? void 0 : _b.actual[axis];\n if (measuredAxis) {\n var length_1 = calcLength(measuredAxis);\n current = length_1 * (parseFloat(current) / 100);\n }\n }\n _this.originPoint[axis] = current;\n });\n // Fire onDragStart event\n onDragStart === null || onDragStart === void 0 ? void 0 : onDragStart(event, info);\n (_a = _this.visualElement.animationState) === null || _a === void 0 ? void 0 : _a.setActive(AnimationType.Drag, true);\n };\n var onMove = function (event, info) {\n // latestPointerEvent = event\n var _a = _this.getProps(), dragPropagation = _a.dragPropagation, dragDirectionLock = _a.dragDirectionLock, onDirectionLock = _a.onDirectionLock, onDrag = _a.onDrag;\n // If we didn't successfully receive the gesture lock, early return.\n if (!dragPropagation && !_this.openGlobalLock)\n return;\n var offset = info.offset;\n // Attempt to detect drag direction if directionLock is true\n if (dragDirectionLock && _this.currentDirection === null) {\n _this.currentDirection = getCurrentDirection(offset);\n // If we've successfully set a direction, notify listener\n if (_this.currentDirection !== null) {\n onDirectionLock === null || onDirectionLock === void 0 ? void 0 : onDirectionLock(_this.currentDirection);\n }\n return;\n }\n // Update each point with the latest position\n _this.updateAxis(\"x\", info.point, offset);\n _this.updateAxis(\"y\", info.point, offset);\n /**\n * Ideally we would leave the renderer to fire naturally at the end of\n * this frame but if the element is about to change layout as the result\n * of a re-render we want to ensure the browser can read the latest\n * bounding box to ensure the pointer and element don't fall out of sync.\n */\n _this.visualElement.syncRender();\n /**\n * This must fire after the syncRender call as it might trigger a state\n * change which itself might trigger a layout update.\n */\n onDrag === null || onDrag === void 0 ? void 0 : onDrag(event, info);\n };\n var onSessionEnd = function (event, info) {\n return _this.stop(event, info);\n };\n this.panSession = new PanSession(originEvent, {\n onSessionStart: onSessionStart,\n onStart: onStart,\n onMove: onMove,\n onSessionEnd: onSessionEnd,\n }, { transformPagePoint: this.visualElement.getTransformPagePoint() });\n };\n VisualElementDragControls.prototype.stop = function (event, info) {\n var isDragging = this.isDragging;\n this.cancel();\n if (!isDragging)\n return;\n var velocity = info.velocity;\n this.startAnimation(velocity);\n var onDragEnd = this.getProps().onDragEnd;\n onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(event, info);\n };\n VisualElementDragControls.prototype.cancel = function () {\n var _a, _b;\n this.isDragging = false;\n if (this.visualElement.projection) {\n this.visualElement.projection.isAnimationBlocked = false;\n }\n (_a = this.panSession) === null || _a === void 0 ? void 0 : _a.end();\n this.panSession = undefined;\n var dragPropagation = this.getProps().dragPropagation;\n if (!dragPropagation && this.openGlobalLock) {\n this.openGlobalLock();\n this.openGlobalLock = null;\n }\n (_b = this.visualElement.animationState) === null || _b === void 0 ? void 0 : _b.setActive(AnimationType.Drag, false);\n };\n VisualElementDragControls.prototype.updateAxis = function (axis, _point, offset) {\n var drag = this.getProps().drag;\n // If we're not dragging this axis, do an early return.\n if (!offset || !shouldDrag(axis, drag, this.currentDirection))\n return;\n var axisValue = this.getAxisMotionValue(axis);\n var next = this.originPoint[axis] + offset[axis];\n // Apply constraints\n if (this.constraints && this.constraints[axis]) {\n next = applyConstraints(next, this.constraints[axis], this.elastic[axis]);\n }\n axisValue.set(next);\n };\n VisualElementDragControls.prototype.resolveConstraints = function () {\n var _this = this;\n var _a = this.getProps(), dragConstraints = _a.dragConstraints, dragElastic = _a.dragElastic;\n var layout = (this.visualElement.projection || {}).layout;\n var prevConstraints = this.constraints;\n if (dragConstraints && isRefObject(dragConstraints)) {\n if (!this.constraints) {\n this.constraints = this.resolveRefConstraints();\n }\n }\n else {\n if (dragConstraints && layout) {\n this.constraints = calcRelativeConstraints(layout.actual, dragConstraints);\n }\n else {\n this.constraints = false;\n }\n }\n this.elastic = resolveDragElastic(dragElastic);\n /**\n * If we're outputting to external MotionValues, we want to rebase the measured constraints\n * from viewport-relative to component-relative.\n */\n if (prevConstraints !== this.constraints &&\n layout &&\n this.constraints &&\n !this.hasMutatedConstraints) {\n eachAxis(function (axis) {\n if (_this.getAxisMotionValue(axis)) {\n _this.constraints[axis] = rebaseAxisConstraints(layout.actual[axis], _this.constraints[axis]);\n }\n });\n }\n };\n VisualElementDragControls.prototype.resolveRefConstraints = function () {\n var _a = this.getProps(), constraints = _a.dragConstraints, onMeasureDragConstraints = _a.onMeasureDragConstraints;\n if (!constraints || !isRefObject(constraints))\n return false;\n var constraintsElement = constraints.current;\n invariant(constraintsElement !== null, \"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.\");\n var projection = this.visualElement.projection;\n // TODO\n if (!projection || !projection.layout)\n return false;\n var constraintsBox = measurePageBox(constraintsElement, projection.root, this.visualElement.getTransformPagePoint());\n var measuredConstraints = calcViewportConstraints(projection.layout.actual, constraintsBox);\n /**\n * If there's an onMeasureDragConstraints listener we call it and\n * if different constraints are returned, set constraints to that\n */\n if (onMeasureDragConstraints) {\n var userConstraints = onMeasureDragConstraints(convertBoxToBoundingBox(measuredConstraints));\n this.hasMutatedConstraints = !!userConstraints;\n if (userConstraints) {\n measuredConstraints = convertBoundingBoxToBox(userConstraints);\n }\n }\n return measuredConstraints;\n };\n VisualElementDragControls.prototype.startAnimation = function (velocity) {\n var _this = this;\n var _a = this.getProps(), drag = _a.drag, dragMomentum = _a.dragMomentum, dragElastic = _a.dragElastic, dragTransition = _a.dragTransition, dragSnapToOrigin = _a.dragSnapToOrigin, onDragTransitionEnd = _a.onDragTransitionEnd;\n var constraints = this.constraints || {};\n var momentumAnimations = eachAxis(function (axis) {\n var _a;\n if (!shouldDrag(axis, drag, _this.currentDirection)) {\n return;\n }\n var transition = (_a = constraints === null || constraints === void 0 ? void 0 : constraints[axis]) !== null && _a !== void 0 ? _a : {};\n if (dragSnapToOrigin)\n transition = { min: 0, max: 0 };\n /**\n * Overdamp the boundary spring if `dragElastic` is disabled. There's still a frame\n * of spring animations so we should look into adding a disable spring option to `inertia`.\n * We could do something here where we affect the `bounceStiffness` and `bounceDamping`\n * using the value of `dragElastic`.\n */\n var bounceStiffness = dragElastic ? 200 : 1000000;\n var bounceDamping = dragElastic ? 40 : 10000000;\n var inertia = __assign(__assign({ type: \"inertia\", velocity: dragMomentum ? velocity[axis] : 0, bounceStiffness: bounceStiffness, bounceDamping: bounceDamping, timeConstant: 750, restDelta: 1, restSpeed: 10 }, dragTransition), transition);\n // If we're not animating on an externally-provided `MotionValue` we can use the\n // component's animation controls which will handle interactions with whileHover (etc),\n // otherwise we just have to animate the `MotionValue` itself.\n return _this.startAxisValueAnimation(axis, inertia);\n });\n // Run all animations and then resolve the new drag constraints.\n return Promise.all(momentumAnimations).then(onDragTransitionEnd);\n };\n VisualElementDragControls.prototype.startAxisValueAnimation = function (axis, transition) {\n var axisValue = this.getAxisMotionValue(axis);\n return startAnimation(axis, axisValue, 0, transition);\n };\n VisualElementDragControls.prototype.stopAnimation = function () {\n var _this = this;\n eachAxis(function (axis) { return _this.getAxisMotionValue(axis).stop(); });\n };\n /**\n * Drag works differently depending on which props are provided.\n *\n * - If _dragX and _dragY are provided, we output the gesture delta directly to those motion values.\n * - Otherwise, we apply the delta to the x/y motion values.\n */\n VisualElementDragControls.prototype.getAxisMotionValue = function (axis) {\n var _a, _b;\n var dragKey = \"_drag\" + axis.toUpperCase();\n var externalMotionValue = this.visualElement.getProps()[dragKey];\n return externalMotionValue\n ? externalMotionValue\n : this.visualElement.getValue(axis, (_b = (_a = this.visualElement.getProps().initial) === null || _a === void 0 ? void 0 : _a[axis]) !== null && _b !== void 0 ? _b : 0);\n };\n VisualElementDragControls.prototype.snapToCursor = function (point) {\n var _this = this;\n eachAxis(function (axis) {\n var drag = _this.getProps().drag;\n // If we're not dragging this axis, do an early return.\n if (!shouldDrag(axis, drag, _this.currentDirection))\n return;\n var projection = _this.visualElement.projection;\n var axisValue = _this.getAxisMotionValue(axis);\n if (projection && projection.layout) {\n var _a = projection.layout.actual[axis], min = _a.min, max = _a.max;\n axisValue.set(point[axis] - mix(min, max, 0.5));\n }\n });\n };\n /**\n * When the viewport resizes we want to check if the measured constraints\n * have changed and, if so, reposition the element within those new constraints\n * relative to where it was before the resize.\n */\n VisualElementDragControls.prototype.scalePositionWithinConstraints = function () {\n var _this = this;\n var _a;\n var _b = this.getProps(), drag = _b.drag, dragConstraints = _b.dragConstraints;\n var projection = this.visualElement.projection;\n if (!isRefObject(dragConstraints) || !projection || !this.constraints)\n return;\n /**\n * Stop current animations as there can be visual glitching if we try to do\n * this mid-animation\n */\n this.stopAnimation();\n /**\n * Record the relative position of the dragged element relative to the\n * constraints box and save as a progress value.\n */\n var boxProgress = { x: 0, y: 0 };\n eachAxis(function (axis) {\n var axisValue = _this.getAxisMotionValue(axis);\n if (axisValue) {\n var latest = axisValue.get();\n boxProgress[axis] = calcOrigin({ min: latest, max: latest }, _this.constraints[axis]);\n }\n });\n /**\n * Update the layout of this element and resolve the latest drag constraints\n */\n var transformTemplate = this.visualElement.getProps().transformTemplate;\n this.visualElement.getInstance().style.transform = transformTemplate\n ? transformTemplate({}, \"\")\n : \"none\";\n (_a = projection.root) === null || _a === void 0 ? void 0 : _a.updateScroll();\n projection.updateLayout();\n this.resolveConstraints();\n /**\n * For each axis, calculate the current progress of the layout axis\n * within the new constraints.\n */\n eachAxis(function (axis) {\n if (!shouldDrag(axis, drag, null))\n return;\n /**\n * Calculate a new transform based on the previous box progress\n */\n var axisValue = _this.getAxisMotionValue(axis);\n var _a = _this.constraints[axis], min = _a.min, max = _a.max;\n axisValue.set(mix(min, max, boxProgress[axis]));\n });\n };\n VisualElementDragControls.prototype.addListeners = function () {\n var _this = this;\n var _a;\n elementDragControls.set(this.visualElement, this);\n var element = this.visualElement.getInstance();\n /**\n * Attach a pointerdown event listener on this DOM element to initiate drag tracking.\n */\n var stopPointerListener = addPointerEvent(element, \"pointerdown\", function (event) {\n var _a = _this.getProps(), drag = _a.drag, _b = _a.dragListener, dragListener = _b === void 0 ? true : _b;\n drag && dragListener && _this.start(event);\n });\n var measureDragConstraints = function () {\n var dragConstraints = _this.getProps().dragConstraints;\n if (isRefObject(dragConstraints)) {\n _this.constraints = _this.resolveRefConstraints();\n }\n };\n var projection = this.visualElement.projection;\n var stopMeasureLayoutListener = projection.addEventListener(\"measure\", measureDragConstraints);\n if (projection && !projection.layout) {\n (_a = projection.root) === null || _a === void 0 ? void 0 : _a.updateScroll();\n projection.updateLayout();\n }\n measureDragConstraints();\n /**\n * Attach a window resize listener to scale the draggable target within its defined\n * constraints as the window resizes.\n */\n var stopResizeListener = addDomEvent(window, \"resize\", function () {\n _this.scalePositionWithinConstraints();\n });\n /**\n * If the element's layout changes, calculate the delta and apply that to\n * the drag gesture's origin point.\n */\n projection.addEventListener(\"didUpdate\", (function (_a) {\n var delta = _a.delta, hasLayoutChanged = _a.hasLayoutChanged;\n if (_this.isDragging && hasLayoutChanged) {\n eachAxis(function (axis) {\n var motionValue = _this.getAxisMotionValue(axis);\n if (!motionValue)\n return;\n _this.originPoint[axis] += delta[axis].translate;\n motionValue.set(motionValue.get() + delta[axis].translate);\n });\n _this.visualElement.syncRender();\n }\n }));\n return function () {\n stopResizeListener();\n stopPointerListener();\n stopMeasureLayoutListener();\n };\n };\n VisualElementDragControls.prototype.getProps = function () {\n var props = this.visualElement.getProps();\n var _a = props.drag, drag = _a === void 0 ? false : _a, _b = props.dragDirectionLock, dragDirectionLock = _b === void 0 ? false : _b, _c = props.dragPropagation, dragPropagation = _c === void 0 ? false : _c, _d = props.dragConstraints, dragConstraints = _d === void 0 ? false : _d, _e = props.dragElastic, dragElastic = _e === void 0 ? defaultElastic : _e, _f = props.dragMomentum, dragMomentum = _f === void 0 ? true : _f;\n return __assign(__assign({}, props), { drag: drag, dragDirectionLock: dragDirectionLock, dragPropagation: dragPropagation, dragConstraints: dragConstraints, dragElastic: dragElastic, dragMomentum: dragMomentum });\n };\n return VisualElementDragControls;\n}());\nfunction shouldDrag(direction, drag, currentDirection) {\n return ((drag === true || drag === direction) &&\n (currentDirection === null || currentDirection === direction));\n}\n/**\n * Based on an x/y offset determine the current drag direction. If both axis' offsets are lower\n * than the provided threshold, return `null`.\n *\n * @param offset - The x/y offset from origin.\n * @param lockThreshold - (Optional) - the minimum absolute offset before we can determine a drag direction.\n */\nfunction getCurrentDirection(offset, lockThreshold) {\n if (lockThreshold === void 0) { lockThreshold = 10; }\n var direction = null;\n if (Math.abs(offset.y) > lockThreshold) {\n direction = \"y\";\n }\n else if (Math.abs(offset.x) > lockThreshold) {\n direction = \"x\";\n }\n return direction;\n}\n\nexport { VisualElementDragControls, elementDragControls };\n","import { useEffect } from 'react';\nimport { VisualElementDragControls } from './VisualElementDragControls.mjs';\nimport { useConstant } from '../../utils/use-constant.mjs';\n\n/**\n * A hook that allows an element to be dragged.\n *\n * @internal\n */\nfunction useDrag(props) {\n var groupDragControls = props.dragControls, visualElement = props.visualElement;\n var dragControls = useConstant(function () { return new VisualElementDragControls(visualElement); });\n // If we've been provided a DragControls for manual control over the drag gesture,\n // subscribe this component to it on mount.\n useEffect(function () { return groupDragControls && groupDragControls.subscribe(dragControls); }, [dragControls, groupDragControls]);\n // Apply the event listeners to the element\n useEffect(function () { return dragControls.addListeners(); }, [dragControls]);\n}\n\nexport { useDrag };\n","import { useRef, useContext, useEffect } from 'react';\nimport { MotionConfigContext } from '../context/MotionConfigContext.mjs';\nimport { useUnmountEffect } from '../utils/use-unmount-effect.mjs';\nimport { usePointerEvent } from '../events/use-pointer-event.mjs';\nimport { PanSession } from './PanSession.mjs';\n\n/**\n *\n * @param handlers -\n * @param ref -\n *\n * @internalremarks\n * Currently this sets new pan gesture functions every render. The memo route has been explored\n * in the past but ultimately we're still creating new functions every render. An optimisation\n * to explore is creating the pan gestures and loading them into a `ref`.\n *\n * @internal\n */\nfunction usePanGesture(_a) {\n var onPan = _a.onPan, onPanStart = _a.onPanStart, onPanEnd = _a.onPanEnd, onPanSessionStart = _a.onPanSessionStart, visualElement = _a.visualElement;\n var hasPanEvents = onPan || onPanStart || onPanEnd || onPanSessionStart;\n var panSession = useRef(null);\n var transformPagePoint = useContext(MotionConfigContext).transformPagePoint;\n var handlers = {\n onSessionStart: onPanSessionStart,\n onStart: onPanStart,\n onMove: onPan,\n onEnd: function (event, info) {\n panSession.current = null;\n onPanEnd && onPanEnd(event, info);\n },\n };\n useEffect(function () {\n if (panSession.current !== null) {\n panSession.current.updateHandlers(handlers);\n }\n });\n function onPointerDown(event) {\n panSession.current = new PanSession(event, handlers, {\n transformPagePoint: transformPagePoint,\n });\n }\n usePointerEvent(visualElement, \"pointerdown\", hasPanEvents && onPointerDown);\n useUnmountEffect(function () { return panSession.current && panSession.current.end(); });\n}\n\nexport { usePanGesture };\n","import { useDrag } from '../../gestures/drag/use-drag.mjs';\nimport { usePanGesture } from '../../gestures/use-pan-gesture.mjs';\nimport { makeRenderlessComponent } from '../utils/make-renderless-component.mjs';\n\nvar drag = {\n pan: makeRenderlessComponent(usePanGesture),\n drag: makeRenderlessComponent(useDrag),\n};\n\nexport { drag };\n","import { __spreadArray, __read } from 'tslib';\nimport { SubscriptionManager } from '../../utils/subscription-manager.mjs';\n\nvar names = [\n \"LayoutMeasure\",\n \"BeforeLayoutMeasure\",\n \"LayoutUpdate\",\n \"ViewportBoxUpdate\",\n \"Update\",\n \"Render\",\n \"AnimationComplete\",\n \"LayoutAnimationComplete\",\n \"AnimationStart\",\n \"SetAxisTarget\",\n \"Unmount\",\n];\nfunction createLifecycles() {\n var managers = names.map(function () { return new SubscriptionManager(); });\n var propSubscriptions = {};\n var lifecycles = {\n clearAllListeners: function () { return managers.forEach(function (manager) { return manager.clear(); }); },\n updatePropListeners: function (props) {\n names.forEach(function (name) {\n var _a;\n var on = \"on\" + name;\n var propListener = props[on];\n // Unsubscribe existing subscription\n (_a = propSubscriptions[name]) === null || _a === void 0 ? void 0 : _a.call(propSubscriptions);\n // Add new subscription\n if (propListener) {\n propSubscriptions[name] = lifecycles[on](propListener);\n }\n });\n },\n };\n managers.forEach(function (manager, i) {\n lifecycles[\"on\" + names[i]] = function (handler) { return manager.add(handler); };\n lifecycles[\"notify\" + names[i]] = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n manager.notify.apply(manager, __spreadArray([], __read(args), false));\n };\n });\n return lifecycles;\n}\n\nexport { createLifecycles };\n","import { motionValue } from '../../value/index.mjs';\nimport { isMotionValue } from '../../value/utils/is-motion-value.mjs';\n\nfunction updateMotionValuesFromProps(element, next, prev) {\n var _a;\n for (var key in next) {\n var nextValue = next[key];\n var prevValue = prev[key];\n if (isMotionValue(nextValue)) {\n /**\n * If this is a motion value found in props or style, we want to add it\n * to our visual element's motion value map.\n */\n element.addValue(key, nextValue);\n }\n else if (isMotionValue(prevValue)) {\n /**\n * If we're swapping to a new motion value, create a new motion value\n * from that\n */\n element.addValue(key, motionValue(nextValue));\n }\n else if (prevValue !== nextValue) {\n /**\n * If this is a flat value that has changed, update the motion value\n * or create one if it doesn't exist. We only want to do this if we're\n * not handling the value with our animation state.\n */\n if (element.hasValue(key)) {\n var existingValue = element.getValue(key);\n // TODO: Only update values that aren't being animated or even looked at\n !existingValue.hasAnimated && existingValue.set(nextValue);\n }\n else {\n element.addValue(key, motionValue((_a = element.getStaticValue(key)) !== null && _a !== void 0 ? _a : nextValue));\n }\n }\n }\n // Handle removed values\n for (var key in prev) {\n if (next[key] === undefined)\n element.removeValue(key);\n }\n return next;\n}\n\nexport { updateMotionValuesFromProps };\n","import { __assign, __spreadArray, __read } from 'tslib';\nimport sync, { cancelSync } from 'framesync';\nimport { motionValue } from '../value/index.mjs';\nimport { isMotionValue } from '../value/utils/is-motion-value.mjs';\nimport { variantPriorityOrder } from './utils/animation-state.mjs';\nimport { createLifecycles } from './utils/lifecycles.mjs';\nimport { updateMotionValuesFromProps } from './utils/motion-values.mjs';\nimport { checkIfControllingVariants, checkIfVariantNode, isVariantLabel } from './utils/variants.mjs';\n\nvar visualElement = function (_a) {\n var _b = _a.treeType, treeType = _b === void 0 ? \"\" : _b, build = _a.build, getBaseTarget = _a.getBaseTarget, makeTargetAnimatable = _a.makeTargetAnimatable, measureViewportBox = _a.measureViewportBox, renderInstance = _a.render, readValueFromInstance = _a.readValueFromInstance, removeValueFromRenderState = _a.removeValueFromRenderState, sortNodePosition = _a.sortNodePosition, scrapeMotionValuesFromProps = _a.scrapeMotionValuesFromProps;\n return function (_a, options) {\n var parent = _a.parent, props = _a.props, presenceId = _a.presenceId, blockInitialAnimation = _a.blockInitialAnimation, visualState = _a.visualState;\n if (options === void 0) { options = {}; }\n var isMounted = false;\n var latestValues = visualState.latestValues, renderState = visualState.renderState;\n /**\n * The instance of the render-specific node that will be hydrated by the\n * exposed React ref. So for example, this visual element can host a\n * HTMLElement, plain object, or Three.js object. The functions provided\n * in VisualElementConfig allow us to interface with this instance.\n */\n var instance;\n /**\n * Manages the subscriptions for a visual element's lifecycle, for instance\n * onRender\n */\n var lifecycles = createLifecycles();\n /**\n * A map of all motion values attached to this visual element. Motion\n * values are source of truth for any given animated value. A motion\n * value might be provided externally by the component via props.\n */\n var values = new Map();\n /**\n * A map of every subscription that binds the provided or generated\n * motion values onChange listeners to this visual element.\n */\n var valueSubscriptions = new Map();\n /**\n * A reference to the previously-provided motion values as returned\n * from scrapeMotionValuesFromProps. We use the keys in here to determine\n * if any motion values need to be removed after props are updated.\n */\n var prevMotionValues = {};\n /**\n * When values are removed from all animation props we need to search\n * for a fallback value to animate to. These values are tracked in baseTarget.\n */\n var baseTarget = __assign({}, latestValues);\n // Internal methods ========================\n /**\n * On mount, this will be hydrated with a callback to disconnect\n * this visual element from its parent on unmount.\n */\n var removeFromVariantTree;\n /**\n * Render the element with the latest styles outside of the React\n * render lifecycle\n */\n function render() {\n if (!instance || !isMounted)\n return;\n triggerBuild();\n renderInstance(instance, renderState, props.style, element.projection);\n }\n function triggerBuild() {\n build(element, renderState, latestValues, options, props);\n }\n function update() {\n lifecycles.notifyUpdate(latestValues);\n }\n /**\n *\n */\n function bindToMotionValue(key, value) {\n var removeOnChange = value.onChange(function (latestValue) {\n latestValues[key] = latestValue;\n props.onUpdate && sync.update(update, false, true);\n });\n var removeOnRenderRequest = value.onRenderRequest(element.scheduleRender);\n valueSubscriptions.set(key, function () {\n removeOnChange();\n removeOnRenderRequest();\n });\n }\n /**\n * Any motion values that are provided to the element when created\n * aren't yet bound to the element, as this would technically be impure.\n * However, we iterate through the motion values and set them to the\n * initial values for this component.\n *\n * TODO: This is impure and we should look at changing this to run on mount.\n * Doing so will break some tests but this isn't neccessarily a breaking change,\n * more a reflection of the test.\n */\n var initialMotionValues = scrapeMotionValuesFromProps(props);\n for (var key in initialMotionValues) {\n var value = initialMotionValues[key];\n if (latestValues[key] !== undefined && isMotionValue(value)) {\n value.set(latestValues[key], false);\n }\n }\n /**\n * Determine what role this visual element should take in the variant tree.\n */\n var isControllingVariants = checkIfControllingVariants(props);\n var isVariantNode = checkIfVariantNode(props);\n var element = __assign(__assign({ treeType: treeType, \n /**\n * This is a mirror of the internal instance prop, which keeps\n * VisualElement type-compatible with React's RefObject.\n */\n current: null, \n /**\n * The depth of this visual element within the visual element tree.\n */\n depth: parent ? parent.depth + 1 : 0, parent: parent, children: new Set(), \n /**\n *\n */\n presenceId: presenceId, \n /**\n * If this component is part of the variant tree, it should track\n * any children that are also part of the tree. This is essentially\n * a shadow tree to simplify logic around how to stagger over children.\n */\n variantChildren: isVariantNode ? new Set() : undefined, \n /**\n * Whether this instance is visible. This can be changed imperatively\n * by the projection tree, is analogous to CSS's visibility in that\n * hidden elements should take up layout, and needs enacting by the configured\n * render function.\n */\n isVisible: undefined, \n /**\n * Normally, if a component is controlled by a parent's variants, it can\n * rely on that ancestor to trigger animations further down the tree.\n * However, if a component is created after its parent is mounted, the parent\n * won't trigger that mount animation so the child needs to.\n *\n * TODO: This might be better replaced with a method isParentMounted\n */\n manuallyAnimateOnMount: Boolean(parent === null || parent === void 0 ? void 0 : parent.isMounted()), \n /**\n * This can be set by AnimatePresence to force components that mount\n * at the same time as it to mount as if they have initial={false} set.\n */\n blockInitialAnimation: blockInitialAnimation, \n /**\n * Determine whether this component has mounted yet. This is mostly used\n * by variant children to determine whether they need to trigger their\n * own animations on mount.\n */\n isMounted: function () { return Boolean(instance); }, mount: function (newInstance) {\n isMounted = true;\n instance = element.current = newInstance;\n if (element.projection) {\n element.projection.mount(newInstance);\n }\n if (isVariantNode && parent && !isControllingVariants) {\n removeFromVariantTree = parent === null || parent === void 0 ? void 0 : parent.addVariantChild(element);\n }\n parent === null || parent === void 0 ? void 0 : parent.children.add(element);\n element.setProps(props);\n }, \n /**\n *\n */\n unmount: function () {\n var _a;\n (_a = element.projection) === null || _a === void 0 ? void 0 : _a.unmount();\n cancelSync.update(update);\n cancelSync.render(render);\n valueSubscriptions.forEach(function (remove) { return remove(); });\n removeFromVariantTree === null || removeFromVariantTree === void 0 ? void 0 : removeFromVariantTree();\n parent === null || parent === void 0 ? void 0 : parent.children.delete(element);\n lifecycles.clearAllListeners();\n instance = undefined;\n isMounted = false;\n }, \n /**\n * Add a child visual element to our set of children.\n */\n addVariantChild: function (child) {\n var _a;\n var closestVariantNode = element.getClosestVariantNode();\n if (closestVariantNode) {\n (_a = closestVariantNode.variantChildren) === null || _a === void 0 ? void 0 : _a.add(child);\n return function () {\n return closestVariantNode.variantChildren.delete(child);\n };\n }\n }, sortNodePosition: function (other) {\n /**\n * If these nodes aren't even of the same type we can't compare their depth.\n */\n if (!sortNodePosition || treeType !== other.treeType)\n return 0;\n return sortNodePosition(element.getInstance(), other.getInstance());\n }, \n /**\n * Returns the closest variant node in the tree starting from\n * this visual element.\n */\n getClosestVariantNode: function () {\n return isVariantNode ? element : parent === null || parent === void 0 ? void 0 : parent.getClosestVariantNode();\n }, \n /**\n * Expose the latest layoutId prop.\n */\n getLayoutId: function () { return props.layoutId; }, \n /**\n * Returns the current instance.\n */\n getInstance: function () { return instance; }, \n /**\n * Get/set the latest static values.\n */\n getStaticValue: function (key) { return latestValues[key]; }, setStaticValue: function (key, value) { return (latestValues[key] = value); }, \n /**\n * Returns the latest motion value state. Currently only used to take\n * a snapshot of the visual element - perhaps this can return the whole\n * visual state\n */\n getLatestValues: function () { return latestValues; }, \n /**\n * Set the visiblity of the visual element. If it's changed, schedule\n * a render to reflect these changes.\n */\n setVisibility: function (visibility) {\n if (element.isVisible === visibility)\n return;\n element.isVisible = visibility;\n element.scheduleRender();\n }, \n /**\n * Make a target animatable by Popmotion. For instance, if we're\n * trying to animate width from 100px to 100vw we need to measure 100vw\n * in pixels to determine what we really need to animate to. This is also\n * pluggable to support Framer's custom value types like Color,\n * and CSS variables.\n */\n makeTargetAnimatable: function (target, canMutate) {\n if (canMutate === void 0) { canMutate = true; }\n return makeTargetAnimatable(element, target, props, canMutate);\n }, \n /**\n * Measure the current viewport box with or without transforms.\n * Only measures axis-aligned boxes, rotate and skew must be manually\n * removed with a re-render to work.\n */\n measureViewportBox: function () {\n return measureViewportBox(instance, props);\n }, \n // Motion values ========================\n /**\n * Add a motion value and bind it to this visual element.\n */\n addValue: function (key, value) {\n // Remove existing value if it exists\n if (element.hasValue(key))\n element.removeValue(key);\n values.set(key, value);\n latestValues[key] = value.get();\n bindToMotionValue(key, value);\n }, \n /**\n * Remove a motion value and unbind any active subscriptions.\n */\n removeValue: function (key) {\n var _a;\n values.delete(key);\n (_a = valueSubscriptions.get(key)) === null || _a === void 0 ? void 0 : _a();\n valueSubscriptions.delete(key);\n delete latestValues[key];\n removeValueFromRenderState(key, renderState);\n }, \n /**\n * Check whether we have a motion value for this key\n */\n hasValue: function (key) { return values.has(key); }, \n /**\n * Get a motion value for this key. If called with a default\n * value, we'll create one if none exists.\n */\n getValue: function (key, defaultValue) {\n var value = values.get(key);\n if (value === undefined && defaultValue !== undefined) {\n value = motionValue(defaultValue);\n element.addValue(key, value);\n }\n return value;\n }, \n /**\n * Iterate over our motion values.\n */\n forEachValue: function (callback) { return values.forEach(callback); }, \n /**\n * If we're trying to animate to a previously unencountered value,\n * we need to check for it in our state and as a last resort read it\n * directly from the instance (which might have performance implications).\n */\n readValue: function (key) {\n var _a;\n return (_a = latestValues[key]) !== null && _a !== void 0 ? _a : readValueFromInstance(instance, key, options);\n }, \n /**\n * Set the base target to later animate back to. This is currently\n * only hydrated on creation and when we first read a value.\n */\n setBaseTarget: function (key, value) {\n baseTarget[key] = value;\n }, \n /**\n * Find the base target for a value thats been removed from all animation\n * props.\n */\n getBaseTarget: function (key) {\n if (getBaseTarget) {\n var target = getBaseTarget(props, key);\n if (target !== undefined && !isMotionValue(target))\n return target;\n }\n return baseTarget[key];\n } }, lifecycles), { \n /**\n * Build the renderer state based on the latest visual state.\n */\n build: function () {\n triggerBuild();\n return renderState;\n }, \n /**\n * Schedule a render on the next animation frame.\n */\n scheduleRender: function () {\n sync.render(render, false, true);\n }, \n /**\n * Synchronously fire render. It's prefered that we batch renders but\n * in many circumstances, like layout measurement, we need to run this\n * synchronously. However in those instances other measures should be taken\n * to batch reads/writes.\n */\n syncRender: render, \n /**\n * Update the provided props. Ensure any newly-added motion values are\n * added to our map, old ones removed, and listeners updated.\n */\n setProps: function (newProps) {\n if (newProps.transformTemplate || props.transformTemplate) {\n element.scheduleRender();\n }\n props = newProps;\n lifecycles.updatePropListeners(newProps);\n prevMotionValues = updateMotionValuesFromProps(element, scrapeMotionValuesFromProps(props), prevMotionValues);\n }, getProps: function () { return props; }, \n // Variants ==============================\n /**\n * Returns the variant definition with a given name.\n */\n getVariant: function (name) { var _a; return (_a = props.variants) === null || _a === void 0 ? void 0 : _a[name]; }, \n /**\n * Returns the defined default transition on this component.\n */\n getDefaultTransition: function () { return props.transition; }, getTransformPagePoint: function () {\n return props.transformPagePoint;\n }, \n /**\n * Used by child variant nodes to get the closest ancestor variant props.\n */\n getVariantContext: function (startAtParent) {\n if (startAtParent === void 0) { startAtParent = false; }\n if (startAtParent)\n return parent === null || parent === void 0 ? void 0 : parent.getVariantContext();\n if (!isControllingVariants) {\n var context_1 = (parent === null || parent === void 0 ? void 0 : parent.getVariantContext()) || {};\n if (props.initial !== undefined) {\n context_1.initial = props.initial;\n }\n return context_1;\n }\n var context = {};\n for (var i = 0; i < numVariantProps; i++) {\n var name_1 = variantProps[i];\n var prop = props[name_1];\n if (isVariantLabel(prop) || prop === false) {\n context[name_1] = prop;\n }\n }\n return context;\n } });\n return element;\n };\n};\nvar variantProps = __spreadArray([\"initial\"], __read(variantPriorityOrder), false);\nvar numVariantProps = variantProps.length;\n\nexport { visualElement };\n","import { __rest, __assign, __read } from 'tslib';\nimport { invariant } from 'hey-listen';\n\nfunction isCSSVariable(value) {\n return typeof value === \"string\" && value.startsWith(\"var(--\");\n}\n/**\n * Parse Framer's special CSS variable format into a CSS token and a fallback.\n *\n * ```\n * `var(--foo, #fff)` => [`--foo`, '#fff']\n * ```\n *\n * @param current\n */\nvar cssVariableRegex = /var\\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\\)/;\nfunction parseCSSVariable(current) {\n var match = cssVariableRegex.exec(current);\n if (!match)\n return [,];\n var _a = __read(match, 3), token = _a[1], fallback = _a[2];\n return [token, fallback];\n}\nvar maxDepth = 4;\nfunction getVariableValue(current, element, depth) {\n if (depth === void 0) { depth = 1; }\n invariant(depth <= maxDepth, \"Max CSS variable fallback depth detected in property \\\"\".concat(current, \"\\\". This may indicate a circular fallback dependency.\"));\n var _a = __read(parseCSSVariable(current), 2), token = _a[0], fallback = _a[1];\n // No CSS variable detected\n if (!token)\n return;\n // Attempt to read this CSS variable off the element\n var resolved = window.getComputedStyle(element).getPropertyValue(token);\n if (resolved) {\n return resolved.trim();\n }\n else if (isCSSVariable(fallback)) {\n // The fallback might itself be a CSS variable, in which case we attempt to resolve it too.\n return getVariableValue(fallback, element, depth + 1);\n }\n else {\n return fallback;\n }\n}\n/**\n * Resolve CSS variables from\n *\n * @internal\n */\nfunction resolveCSSVariables(visualElement, _a, transitionEnd) {\n var _b;\n var target = __rest(_a, []);\n var element = visualElement.getInstance();\n if (!(element instanceof Element))\n return { target: target, transitionEnd: transitionEnd };\n // If `transitionEnd` isn't `undefined`, clone it. We could clone `target` and `transitionEnd`\n // only if they change but I think this reads clearer and this isn't a performance-critical path.\n if (transitionEnd) {\n transitionEnd = __assign({}, transitionEnd);\n }\n // Go through existing `MotionValue`s and ensure any existing CSS variables are resolved\n visualElement.forEachValue(function (value) {\n var current = value.get();\n if (!isCSSVariable(current))\n return;\n var resolved = getVariableValue(current, element);\n if (resolved)\n value.set(resolved);\n });\n // Cycle through every target property and resolve CSS variables. Currently\n // we only read single-var properties like `var(--foo)`, not `calc(var(--foo) + 20px)`\n for (var key in target) {\n var current = target[key];\n if (!isCSSVariable(current))\n continue;\n var resolved = getVariableValue(current, element);\n if (!resolved)\n continue;\n // Clone target if it hasn't already been\n target[key] = resolved;\n // If the user hasn't already set this key on `transitionEnd`, set it to the unresolved\n // CSS variable. This will ensure that after the animation the component will reflect\n // changes in the value of the CSS variable.\n if (transitionEnd)\n (_b = transitionEnd[key]) !== null && _b !== void 0 ? _b : (transitionEnd[key] = current);\n }\n return { target: target, transitionEnd: transitionEnd };\n}\n\nexport { cssVariableRegex, parseCSSVariable, resolveCSSVariables };\n","import { __assign, __read } from 'tslib';\nimport { number, px } from 'style-value-types';\nimport { isKeyframesTarget } from '../../../animation/utils/is-keyframes-target.mjs';\nimport { invariant } from 'hey-listen';\nimport { transformProps } from '../../html/utils/transform.mjs';\nimport { findDimensionValueType } from '../value-types/dimensions.mjs';\n\nvar positionalKeys = new Set([\n \"width\",\n \"height\",\n \"top\",\n \"left\",\n \"right\",\n \"bottom\",\n \"x\",\n \"y\",\n]);\nvar isPositionalKey = function (key) { return positionalKeys.has(key); };\nvar hasPositionalKey = function (target) {\n return Object.keys(target).some(isPositionalKey);\n};\nvar setAndResetVelocity = function (value, to) {\n // Looks odd but setting it twice doesn't render, it'll just\n // set both prev and current to the latest value\n value.set(to, false);\n value.set(to);\n};\nvar isNumOrPxType = function (v) {\n return v === number || v === px;\n};\nvar BoundingBoxDimension;\n(function (BoundingBoxDimension) {\n BoundingBoxDimension[\"width\"] = \"width\";\n BoundingBoxDimension[\"height\"] = \"height\";\n BoundingBoxDimension[\"left\"] = \"left\";\n BoundingBoxDimension[\"right\"] = \"right\";\n BoundingBoxDimension[\"top\"] = \"top\";\n BoundingBoxDimension[\"bottom\"] = \"bottom\";\n})(BoundingBoxDimension || (BoundingBoxDimension = {}));\nvar getPosFromMatrix = function (matrix, pos) {\n return parseFloat(matrix.split(\", \")[pos]);\n};\nvar getTranslateFromMatrix = function (pos2, pos3) {\n return function (_bbox, _a) {\n var transform = _a.transform;\n if (transform === \"none\" || !transform)\n return 0;\n var matrix3d = transform.match(/^matrix3d\\((.+)\\)$/);\n if (matrix3d) {\n return getPosFromMatrix(matrix3d[1], pos3);\n }\n else {\n var matrix = transform.match(/^matrix\\((.+)\\)$/);\n if (matrix) {\n return getPosFromMatrix(matrix[1], pos2);\n }\n else {\n return 0;\n }\n }\n };\n};\nvar transformKeys = new Set([\"x\", \"y\", \"z\"]);\nvar nonTranslationalTransformKeys = transformProps.filter(function (key) { return !transformKeys.has(key); });\nfunction removeNonTranslationalTransform(visualElement) {\n var removedTransforms = [];\n nonTranslationalTransformKeys.forEach(function (key) {\n var value = visualElement.getValue(key);\n if (value !== undefined) {\n removedTransforms.push([key, value.get()]);\n value.set(key.startsWith(\"scale\") ? 1 : 0);\n }\n });\n // Apply changes to element before measurement\n if (removedTransforms.length)\n visualElement.syncRender();\n return removedTransforms;\n}\nvar positionalValues = {\n // Dimensions\n width: function (_a, _b) {\n var x = _a.x;\n var _c = _b.paddingLeft, paddingLeft = _c === void 0 ? \"0\" : _c, _d = _b.paddingRight, paddingRight = _d === void 0 ? \"0\" : _d;\n return x.max - x.min - parseFloat(paddingLeft) - parseFloat(paddingRight);\n },\n height: function (_a, _b) {\n var y = _a.y;\n var _c = _b.paddingTop, paddingTop = _c === void 0 ? \"0\" : _c, _d = _b.paddingBottom, paddingBottom = _d === void 0 ? \"0\" : _d;\n return y.max - y.min - parseFloat(paddingTop) - parseFloat(paddingBottom);\n },\n top: function (_bbox, _a) {\n var top = _a.top;\n return parseFloat(top);\n },\n left: function (_bbox, _a) {\n var left = _a.left;\n return parseFloat(left);\n },\n bottom: function (_a, _b) {\n var y = _a.y;\n var top = _b.top;\n return parseFloat(top) + (y.max - y.min);\n },\n right: function (_a, _b) {\n var x = _a.x;\n var left = _b.left;\n return parseFloat(left) + (x.max - x.min);\n },\n // Transform\n x: getTranslateFromMatrix(4, 13),\n y: getTranslateFromMatrix(5, 14),\n};\nvar convertChangedValueTypes = function (target, visualElement, changedKeys) {\n var originBbox = visualElement.measureViewportBox();\n var element = visualElement.getInstance();\n var elementComputedStyle = getComputedStyle(element);\n var display = elementComputedStyle.display;\n var origin = {};\n // If the element is currently set to display: \"none\", make it visible before\n // measuring the target bounding box\n if (display === \"none\") {\n visualElement.setStaticValue(\"display\", target.display || \"block\");\n }\n /**\n * Record origins before we render and update styles\n */\n changedKeys.forEach(function (key) {\n origin[key] = positionalValues[key](originBbox, elementComputedStyle);\n });\n // Apply the latest values (as set in checkAndConvertChangedValueTypes)\n visualElement.syncRender();\n var targetBbox = visualElement.measureViewportBox();\n changedKeys.forEach(function (key) {\n // Restore styles to their **calculated computed style**, not their actual\n // originally set style. This allows us to animate between equivalent pixel units.\n var value = visualElement.getValue(key);\n setAndResetVelocity(value, origin[key]);\n target[key] = positionalValues[key](targetBbox, elementComputedStyle);\n });\n return target;\n};\nvar checkAndConvertChangedValueTypes = function (visualElement, target, origin, transitionEnd) {\n if (origin === void 0) { origin = {}; }\n if (transitionEnd === void 0) { transitionEnd = {}; }\n target = __assign({}, target);\n transitionEnd = __assign({}, transitionEnd);\n var targetPositionalKeys = Object.keys(target).filter(isPositionalKey);\n // We want to remove any transform values that could affect the element's bounding box before\n // it's measured. We'll reapply these later.\n var removedTransformValues = [];\n var hasAttemptedToRemoveTransformValues = false;\n var changedValueTypeKeys = [];\n targetPositionalKeys.forEach(function (key) {\n var value = visualElement.getValue(key);\n if (!visualElement.hasValue(key))\n return;\n var from = origin[key];\n var fromType = findDimensionValueType(from);\n var to = target[key];\n var toType;\n // TODO: The current implementation of this basically throws an error\n // if you try and do value conversion via keyframes. There's probably\n // a way of doing this but the performance implications would need greater scrutiny,\n // as it'd be doing multiple resize-remeasure operations.\n if (isKeyframesTarget(to)) {\n var numKeyframes = to.length;\n var fromIndex = to[0] === null ? 1 : 0;\n from = to[fromIndex];\n fromType = findDimensionValueType(from);\n for (var i = fromIndex; i < numKeyframes; i++) {\n if (!toType) {\n toType = findDimensionValueType(to[i]);\n invariant(toType === fromType ||\n (isNumOrPxType(fromType) && isNumOrPxType(toType)), \"Keyframes must be of the same dimension as the current value\");\n }\n else {\n invariant(findDimensionValueType(to[i]) === toType, \"All keyframes must be of the same type\");\n }\n }\n }\n else {\n toType = findDimensionValueType(to);\n }\n if (fromType !== toType) {\n // If they're both just number or px, convert them both to numbers rather than\n // relying on resize/remeasure to convert (which is wasteful in this situation)\n if (isNumOrPxType(fromType) && isNumOrPxType(toType)) {\n var current = value.get();\n if (typeof current === \"string\") {\n value.set(parseFloat(current));\n }\n if (typeof to === \"string\") {\n target[key] = parseFloat(to);\n }\n else if (Array.isArray(to) && toType === px) {\n target[key] = to.map(parseFloat);\n }\n }\n else if ((fromType === null || fromType === void 0 ? void 0 : fromType.transform) &&\n (toType === null || toType === void 0 ? void 0 : toType.transform) &&\n (from === 0 || to === 0)) {\n // If one or the other value is 0, it's safe to coerce it to the\n // type of the other without measurement\n if (from === 0) {\n value.set(toType.transform(from));\n }\n else {\n target[key] = fromType.transform(to);\n }\n }\n else {\n // If we're going to do value conversion via DOM measurements, we first\n // need to remove non-positional transform values that could affect the bbox measurements.\n if (!hasAttemptedToRemoveTransformValues) {\n removedTransformValues =\n removeNonTranslationalTransform(visualElement);\n hasAttemptedToRemoveTransformValues = true;\n }\n changedValueTypeKeys.push(key);\n transitionEnd[key] =\n transitionEnd[key] !== undefined\n ? transitionEnd[key]\n : target[key];\n setAndResetVelocity(value, to);\n }\n }\n });\n if (changedValueTypeKeys.length) {\n var convertedTarget = convertChangedValueTypes(target, visualElement, changedValueTypeKeys);\n // If we removed transform values, reapply them before the next render\n if (removedTransformValues.length) {\n removedTransformValues.forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n visualElement.getValue(key).set(value);\n });\n }\n // Reapply original values\n visualElement.syncRender();\n return { target: convertedTarget, transitionEnd: transitionEnd };\n }\n else {\n return { target: target, transitionEnd: transitionEnd };\n }\n};\n/**\n * Convert value types for x/y/width/height/top/left/bottom/right\n *\n * Allows animation between `'auto'` -> `'100%'` or `0` -> `'calc(50% - 10vw)'`\n *\n * @internal\n */\nfunction unitConversion(visualElement, target, origin, transitionEnd) {\n return hasPositionalKey(target)\n ? checkAndConvertChangedValueTypes(visualElement, target, origin, transitionEnd)\n : { target: target, transitionEnd: transitionEnd };\n}\n\nexport { BoundingBoxDimension, positionalValues, unitConversion };\n","import { resolveCSSVariables } from './css-variables-conversion.mjs';\nimport { unitConversion } from './unit-conversion.mjs';\n\n/**\n * Parse a DOM variant to make it animatable. This involves resolving CSS variables\n * and ensuring animations like \"20%\" => \"calc(50vw)\" are performed in pixels.\n */\nvar parseDomVariant = function (visualElement, target, origin, transitionEnd) {\n var resolved = resolveCSSVariables(visualElement, target, transitionEnd);\n target = resolved.target;\n transitionEnd = resolved.transitionEnd;\n return unitConversion(visualElement, target, origin, transitionEnd);\n};\n\nexport { parseDomVariant };\n","import { __rest, __assign } from 'tslib';\nimport { visualElement } from '../index.mjs';\nimport { getOrigin, checkTargetForNewValues } from '../utils/setters.mjs';\nimport { buildHTMLStyles } from './utils/build-styles.mjs';\nimport { isCSSVariable } from '../dom/utils/is-css-variable.mjs';\nimport { parseDomVariant } from '../dom/utils/parse-dom-variant.mjs';\nimport { isTransformProp } from './utils/transform.mjs';\nimport { scrapeMotionValuesFromProps } from './utils/scrape-motion-values.mjs';\nimport { renderHTML } from './utils/render.mjs';\nimport { getDefaultValueType } from '../dom/value-types/defaults.mjs';\nimport { measureViewportBox } from '../../projection/utils/measure.mjs';\n\nfunction getComputedStyle(element) {\n return window.getComputedStyle(element);\n}\nvar htmlConfig = {\n treeType: \"dom\",\n readValueFromInstance: function (domElement, key) {\n if (isTransformProp(key)) {\n var defaultType = getDefaultValueType(key);\n return defaultType ? defaultType.default || 0 : 0;\n }\n else {\n var computedStyle = getComputedStyle(domElement);\n return ((isCSSVariable(key)\n ? computedStyle.getPropertyValue(key)\n : computedStyle[key]) || 0);\n }\n },\n sortNodePosition: function (a, b) {\n /**\n * compareDocumentPosition returns a bitmask, by using the bitwise &\n * we're returning true if 2 in that bitmask is set to true. 2 is set\n * to true if b preceeds a.\n */\n return a.compareDocumentPosition(b) & 2 ? 1 : -1;\n },\n getBaseTarget: function (props, key) {\n var _a;\n return (_a = props.style) === null || _a === void 0 ? void 0 : _a[key];\n },\n measureViewportBox: function (element, _a) {\n var transformPagePoint = _a.transformPagePoint;\n return measureViewportBox(element, transformPagePoint);\n },\n /**\n * Reset the transform on the current Element. This is called as part\n * of a batched process across the entire layout tree. To remove this write\n * cycle it'd be interesting to see if it's possible to \"undo\" all the current\n * layout transforms up the tree in the same way this.getBoundingBoxWithoutTransforms\n * works\n */\n resetTransform: function (element, domElement, props) {\n var transformTemplate = props.transformTemplate;\n domElement.style.transform = transformTemplate\n ? transformTemplate({}, \"\")\n : \"none\";\n // Ensure that whatever happens next, we restore our transform on the next frame\n element.scheduleRender();\n },\n restoreTransform: function (instance, mutableState) {\n instance.style.transform = mutableState.style.transform;\n },\n removeValueFromRenderState: function (key, _a) {\n var vars = _a.vars, style = _a.style;\n delete vars[key];\n delete style[key];\n },\n /**\n * Ensure that HTML and Framer-specific value types like `px`->`%` and `Color`\n * can be animated by Motion.\n */\n makeTargetAnimatable: function (element, _a, _b, isMounted) {\n var transformValues = _b.transformValues;\n if (isMounted === void 0) { isMounted = true; }\n var transition = _a.transition, transitionEnd = _a.transitionEnd, target = __rest(_a, [\"transition\", \"transitionEnd\"]);\n var origin = getOrigin(target, transition || {}, element);\n /**\n * If Framer has provided a function to convert `Color` etc value types, convert them\n */\n if (transformValues) {\n if (transitionEnd)\n transitionEnd = transformValues(transitionEnd);\n if (target)\n target = transformValues(target);\n if (origin)\n origin = transformValues(origin);\n }\n if (isMounted) {\n checkTargetForNewValues(element, target, origin);\n var parsed = parseDomVariant(element, target, origin, transitionEnd);\n transitionEnd = parsed.transitionEnd;\n target = parsed.target;\n }\n return __assign({ transition: transition, transitionEnd: transitionEnd }, target);\n },\n scrapeMotionValuesFromProps: scrapeMotionValuesFromProps,\n build: function (element, renderState, latestValues, options, props) {\n if (element.isVisible !== undefined) {\n renderState.style.visibility = element.isVisible\n ? \"visible\"\n : \"hidden\";\n }\n buildHTMLStyles(renderState, latestValues, options, props.transformTemplate);\n },\n render: renderHTML,\n};\nvar htmlVisualElement = visualElement(htmlConfig);\n\nexport { getComputedStyle, htmlConfig, htmlVisualElement };\n","import { __assign } from 'tslib';\nimport { visualElement } from '../index.mjs';\nimport { scrapeMotionValuesFromProps } from './utils/scrape-motion-values.mjs';\nimport { htmlConfig } from '../html/visual-element.mjs';\nimport { buildSVGAttrs } from './utils/build-attrs.mjs';\nimport { camelToDash } from '../dom/utils/camel-to-dash.mjs';\nimport { camelCaseAttributes } from './utils/camel-case-attrs.mjs';\nimport { isTransformProp } from '../html/utils/transform.mjs';\nimport { renderSVG } from './utils/render.mjs';\nimport { getDefaultValueType } from '../dom/value-types/defaults.mjs';\n\nvar svgVisualElement = visualElement(__assign(__assign({}, htmlConfig), { getBaseTarget: function (props, key) {\n return props[key];\n }, readValueFromInstance: function (domElement, key) {\n var _a;\n if (isTransformProp(key)) {\n return ((_a = getDefaultValueType(key)) === null || _a === void 0 ? void 0 : _a.default) || 0;\n }\n key = !camelCaseAttributes.has(key) ? camelToDash(key) : key;\n return domElement.getAttribute(key);\n }, scrapeMotionValuesFromProps: scrapeMotionValuesFromProps, build: function (_element, renderState, latestValues, options, props) {\n buildSVGAttrs(renderState, latestValues, options, props.transformTemplate);\n }, render: renderSVG }));\n\nexport { svgVisualElement };\n","import { htmlVisualElement } from '../html/visual-element.mjs';\nimport { svgVisualElement } from '../svg/visual-element.mjs';\nimport { isSVGComponent } from './utils/is-svg-component.mjs';\n\nvar createDomVisualElement = function (Component, options) {\n return isSVGComponent(Component)\n ? svgVisualElement(options, { enableHardwareAcceleration: false })\n : htmlVisualElement(options, { enableHardwareAcceleration: true });\n};\n\nexport { createDomVisualElement };\n","import { px } from 'style-value-types';\n\nfunction pixelsToPercent(pixels, axis) {\n if (axis.max === axis.min)\n return 0;\n return (pixels / (axis.max - axis.min)) * 100;\n}\n/**\n * We always correct borderRadius as a percentage rather than pixels to reduce paints.\n * For example, if you are projecting a box that is 100px wide with a 10px borderRadius\n * into a box that is 200px wide with a 20px borderRadius, that is actually a 10%\n * borderRadius in both states. If we animate between the two in pixels that will trigger\n * a paint each time. If we animate between the two in percentage we'll avoid a paint.\n */\nvar correctBorderRadius = {\n correct: function (latest, node) {\n if (!node.target)\n return latest;\n /**\n * If latest is a string, if it's a percentage we can return immediately as it's\n * going to be stretched appropriately. Otherwise, if it's a pixel, convert it to a number.\n */\n if (typeof latest === \"string\") {\n if (px.test(latest)) {\n latest = parseFloat(latest);\n }\n else {\n return latest;\n }\n }\n /**\n * If latest is a number, it's a pixel value. We use the current viewportBox to calculate that\n * pixel value as a percentage of each axis\n */\n var x = pixelsToPercent(latest, node.target.x);\n var y = pixelsToPercent(latest, node.target.y);\n return \"\".concat(x, \"% \").concat(y, \"%\");\n },\n};\n\nexport { correctBorderRadius, pixelsToPercent };\n","import { mix } from 'popmotion';\nimport { complex } from 'style-value-types';\nimport { cssVariableRegex } from '../../render/dom/utils/css-variables-conversion.mjs';\n\nvar varToken = \"_$css\";\nvar correctBoxShadow = {\n correct: function (latest, _a) {\n var treeScale = _a.treeScale, projectionDelta = _a.projectionDelta;\n var original = latest;\n /**\n * We need to first strip and store CSS variables from the string.\n */\n var containsCSSVariables = latest.includes(\"var(\");\n var cssVariables = [];\n if (containsCSSVariables) {\n latest = latest.replace(cssVariableRegex, function (match) {\n cssVariables.push(match);\n return varToken;\n });\n }\n var shadow = complex.parse(latest);\n // TODO: Doesn't support multiple shadows\n if (shadow.length > 5)\n return original;\n var template = complex.createTransformer(latest);\n var offset = typeof shadow[0] !== \"number\" ? 1 : 0;\n // Calculate the overall context scale\n var xScale = projectionDelta.x.scale * treeScale.x;\n var yScale = projectionDelta.y.scale * treeScale.y;\n shadow[0 + offset] /= xScale;\n shadow[1 + offset] /= yScale;\n /**\n * Ideally we'd correct x and y scales individually, but because blur and\n * spread apply to both we have to take a scale average and apply that instead.\n * We could potentially improve the outcome of this by incorporating the ratio between\n * the two scales.\n */\n var averageScale = mix(xScale, yScale, 0.5);\n // Blur\n if (typeof shadow[2 + offset] === \"number\")\n shadow[2 + offset] /= averageScale;\n // Spread\n if (typeof shadow[3 + offset] === \"number\")\n shadow[3 + offset] /= averageScale;\n var output = template(shadow);\n if (containsCSSVariables) {\n var i_1 = 0;\n output = output.replace(varToken, function () {\n var cssVariable = cssVariables[i_1];\n i_1++;\n return cssVariable;\n });\n }\n return output;\n },\n};\n\nexport { correctBoxShadow };\n","import { __extends, __assign, __read } from 'tslib';\nimport sync from 'framesync';\nimport React__default, { useContext } from 'react';\nimport { usePresence } from '../../../components/AnimatePresence/use-presence.mjs';\nimport { LayoutGroupContext } from '../../../context/LayoutGroupContext.mjs';\nimport { SwitchLayoutGroupContext } from '../../../context/SwitchLayoutGroupContext.mjs';\nimport { globalProjectionState } from '../../../projection/node/create-projection-node.mjs';\nimport { correctBorderRadius } from '../../../projection/styles/scale-border-radius.mjs';\nimport { correctBoxShadow } from '../../../projection/styles/scale-box-shadow.mjs';\nimport { addScaleCorrector } from '../../../projection/styles/scale-correction.mjs';\n\nvar MeasureLayoutWithContext = /** @class */ (function (_super) {\n __extends(MeasureLayoutWithContext, _super);\n function MeasureLayoutWithContext() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n /**\n * This only mounts projection nodes for components that\n * need measuring, we might want to do it for all components\n * in order to incorporate transforms\n */\n MeasureLayoutWithContext.prototype.componentDidMount = function () {\n var _this = this;\n var _a = this.props, visualElement = _a.visualElement, layoutGroup = _a.layoutGroup, switchLayoutGroup = _a.switchLayoutGroup, layoutId = _a.layoutId;\n var projection = visualElement.projection;\n addScaleCorrector(defaultScaleCorrectors);\n if (projection) {\n if (layoutGroup === null || layoutGroup === void 0 ? void 0 : layoutGroup.group)\n layoutGroup.group.add(projection);\n if ((switchLayoutGroup === null || switchLayoutGroup === void 0 ? void 0 : switchLayoutGroup.register) && layoutId) {\n switchLayoutGroup.register(projection);\n }\n projection.root.didUpdate();\n projection.addEventListener(\"animationComplete\", function () {\n _this.safeToRemove();\n });\n projection.setOptions(__assign(__assign({}, projection.options), { onExitComplete: function () { return _this.safeToRemove(); } }));\n }\n globalProjectionState.hasEverUpdated = true;\n };\n MeasureLayoutWithContext.prototype.getSnapshotBeforeUpdate = function (prevProps) {\n var _this = this;\n var _a = this.props, layoutDependency = _a.layoutDependency, visualElement = _a.visualElement, drag = _a.drag, isPresent = _a.isPresent;\n var projection = visualElement.projection;\n if (!projection)\n return null;\n /**\n * TODO: We use this data in relegate to determine whether to\n * promote a previous element. There's no guarantee its presence data\n * will have updated by this point - if a bug like this arises it will\n * have to be that we markForRelegation and then find a new lead some other way,\n * perhaps in didUpdate\n */\n projection.isPresent = isPresent;\n if (drag ||\n prevProps.layoutDependency !== layoutDependency ||\n layoutDependency === undefined) {\n projection.willUpdate();\n }\n else {\n this.safeToRemove();\n }\n if (prevProps.isPresent !== isPresent) {\n if (isPresent) {\n projection.promote();\n }\n else if (!projection.relegate()) {\n /**\n * If there's another stack member taking over from this one,\n * it's in charge of the exit animation and therefore should\n * be in charge of the safe to remove. Otherwise we call it here.\n */\n sync.postRender(function () {\n var _a;\n if (!((_a = projection.getStack()) === null || _a === void 0 ? void 0 : _a.members.length)) {\n _this.safeToRemove();\n }\n });\n }\n }\n return null;\n };\n MeasureLayoutWithContext.prototype.componentDidUpdate = function () {\n var projection = this.props.visualElement.projection;\n if (projection) {\n projection.root.didUpdate();\n if (!projection.currentAnimation && projection.isLead()) {\n this.safeToRemove();\n }\n }\n };\n MeasureLayoutWithContext.prototype.componentWillUnmount = function () {\n var _a = this.props, visualElement = _a.visualElement, layoutGroup = _a.layoutGroup, promoteContext = _a.switchLayoutGroup;\n var projection = visualElement.projection;\n if (projection) {\n projection.scheduleCheckAfterUnmount();\n if (layoutGroup === null || layoutGroup === void 0 ? void 0 : layoutGroup.group)\n layoutGroup.group.remove(projection);\n if (promoteContext === null || promoteContext === void 0 ? void 0 : promoteContext.deregister)\n promoteContext.deregister(projection);\n }\n };\n MeasureLayoutWithContext.prototype.safeToRemove = function () {\n var safeToRemove = this.props.safeToRemove;\n safeToRemove === null || safeToRemove === void 0 ? void 0 : safeToRemove();\n };\n MeasureLayoutWithContext.prototype.render = function () {\n return null;\n };\n return MeasureLayoutWithContext;\n}(React__default.Component));\nfunction MeasureLayout(props) {\n var _a = __read(usePresence(), 2), isPresent = _a[0], safeToRemove = _a[1];\n var layoutGroup = useContext(LayoutGroupContext);\n return (React__default.createElement(MeasureLayoutWithContext, __assign({}, props, { layoutGroup: layoutGroup, switchLayoutGroup: useContext(SwitchLayoutGroupContext), isPresent: isPresent, safeToRemove: safeToRemove })));\n}\nvar defaultScaleCorrectors = {\n borderRadius: __assign(__assign({}, correctBorderRadius), { applyTo: [\n \"borderTopLeftRadius\",\n \"borderTopRightRadius\",\n \"borderBottomLeftRadius\",\n \"borderBottomRightRadius\",\n ] }),\n borderTopLeftRadius: correctBorderRadius,\n borderTopRightRadius: correctBorderRadius,\n borderBottomLeftRadius: correctBorderRadius,\n borderBottomRightRadius: correctBorderRadius,\n boxShadow: correctBoxShadow,\n};\n\nexport { MeasureLayout };\n","import { MeasureLayout } from './MeasureLayout.mjs';\n\nvar layoutFeatures = {\n measureLayout: MeasureLayout,\n};\n\nexport { layoutFeatures };\n","import { createProjectionNode } from './create-projection-node.mjs';\n\nvar DocumentProjectionNode = createProjectionNode({\n attachResizeListener: function (ref, notify) {\n ref.addEventListener(\"resize\", notify, { passive: true });\n return function () { return ref.removeEventListener(\"resize\", notify); };\n },\n measureScroll: function () { return ({\n x: document.documentElement.scrollLeft || document.body.scrollLeft,\n y: document.documentElement.scrollTop || document.body.scrollTop,\n }); },\n});\n\nexport { DocumentProjectionNode };\n","import { createProjectionNode } from './create-projection-node.mjs';\nimport { DocumentProjectionNode } from './DocumentProjectionNode.mjs';\n\nvar rootProjectionNode = {\n current: undefined,\n};\nvar HTMLProjectionNode = createProjectionNode({\n measureScroll: function (instance) { return ({\n x: instance.scrollLeft,\n y: instance.scrollTop,\n }); },\n defaultParent: function () {\n if (!rootProjectionNode.current) {\n var documentNode = new DocumentProjectionNode(0, {});\n documentNode.mount(window);\n documentNode.setOptions({ layoutScroll: true });\n rootProjectionNode.current = documentNode;\n }\n return rootProjectionNode.current;\n },\n resetTransform: function (instance, value) {\n instance.style.transform = value !== null && value !== void 0 ? value : \"none\";\n },\n});\n\nexport { HTMLProjectionNode, rootProjectionNode };\n","import { __assign } from 'tslib';\nimport { createMotionComponent } from '../../motion/index.mjs';\nimport { createMotionProxy } from './motion-proxy.mjs';\nimport { createDomMotionConfig } from './utils/create-config.mjs';\nimport { gestureAnimations } from '../../motion/features/gestures.mjs';\nimport { animations } from '../../motion/features/animations.mjs';\nimport { drag } from '../../motion/features/drag.mjs';\nimport { createDomVisualElement } from './create-visual-element.mjs';\nimport { layoutFeatures } from '../../motion/features/layout/index.mjs';\nimport { HTMLProjectionNode } from '../../projection/node/HTMLProjectionNode.mjs';\n\nvar featureBundle = __assign(__assign(__assign(__assign({}, animations), gestureAnimations), drag), layoutFeatures);\n/**\n * HTML & SVG components, optimised for use with gestures and animation. These can be used as\n * drop-in replacements for any HTML & SVG component, all CSS & SVG properties are supported.\n *\n * @public\n */\nvar motion = /*@__PURE__*/ createMotionProxy(function (Component, config) {\n return createDomMotionConfig(Component, config, featureBundle, createDomVisualElement, HTMLProjectionNode);\n});\n/**\n * Create a DOM `motion` component with the provided string. This is primarily intended\n * as a full alternative to `motion` for consumers who have to support environments that don't\n * support `Proxy`.\n *\n * ```javascript\n * import { createDomMotionComponent } from \"framer-motion\"\n *\n * const motion = {\n * div: createDomMotionComponent('div')\n * }\n * ```\n *\n * @public\n */\nfunction createDomMotionComponent(key) {\n return createMotionComponent(createDomMotionConfig(key, { forwardMotionProps: false }, featureBundle, createDomVisualElement, HTMLProjectionNode));\n}\n\nexport { createDomMotionComponent, motion };\n","// extracted by mini-css-extract-plugin\nexport default {\"logo\":\"YEx7Emv_wyjJ6A61at1z\"};","import React, { FunctionComponent } from \"react\";\r\nimport { motion } from \"framer-motion\";\r\nimport LogoProps from \"./LogoProps.interface\";\r\nimport styles from \"./Logo.module.scss\";\r\n\r\nconst Logo: FunctionComponent<LogoProps> = (props) => {\r\n const { appBarOverThreshold } = props;\r\n\r\n return (\r\n <svg className={styles.logo} xmlns=\"http://www.w3.org/2000/svg\" width=\"172.4\" height=\"146.307\" viewBox=\"0 0 172.4 146.307\">\r\n <motion.g id=\"main_logo\" animate={{ scale: appBarOverThreshold ? 0.9 : 1 }} transition={{ duration: 0.6, ease: \"easeInOut\" }}>\r\n <g id=\"Group_2\" data-name=\"Group 2\">\r\n <g id=\"Group_1\" data-name=\"Group 1\">\r\n <path id=\"Path_1\" data-name=\"Path 1\" d=\"M112.842,96.115s-58.154,0-58.154,58.156v5.316s0,58.153,58.154,58.153h5.317s58.154,0,58.154-58.153v-5.316s0-58.156-58.154-58.156Z\" transform=\"translate(-54.688 -96.115)\" fill=\"#ec6e2a\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_6\" data-name=\"Group 6\" transform=\"translate(22.183 31.486)\">\r\n <g id=\"Group_5\" data-name=\"Group 5\" transform=\"translate(0 0)\">\r\n <path id=\"Path_3\" data-name=\"Path 3\" d=\"M142.7,198.4c.521-1.747,1.134-2.359,2.389-2.359a2.27,2.27,0,0,1,2.267,2.205,4.3,4.3,0,0,1-.337,1.532l-3.185,9.066c-.827,2.33-1.623,3.187-3.094,3.187-1.256,0-2.022-.7-2.6-2.389L136.207,204l-1.563,4.838c-.766,2.39-1.532,3.187-2.971,3.187-1.256,0-2.206-.827-2.757-2.389l-3.462-9.894a3.583,3.583,0,0,1-.367-1.562,2.231,2.231,0,0,1,2.237-2.144,2.178,2.178,0,0,1,1.531.613c.429.4.521.644.858,1.715l1.991,6.709,2.206-6.954c.46-1.471,1.133-2.052,2.359-2.052,1.1,0,1.776.613,2.236,2.052l2.205,6.924Z\" transform=\"translate(-125.086 -196.037)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_8\" data-name=\"Group 8\" transform=\"translate(44.702 31.426)\">\r\n <g id=\"Group_7\" data-name=\"Group 7\" transform=\"translate(0)\">\r\n <path id=\"Path_4\" data-name=\"Path 4\" d=\"M209.6,198.294a8.25,8.25,0,0,1,2.022,5.637c0,4.564-3.247,8.056-7.5,8.056a7.579,7.579,0,0,1-5.544-2.45,8.18,8.18,0,0,1-2.022-5.729,7.512,7.512,0,0,1,13.049-5.514m-8.608,5.576c0,2.266,1.286,3.921,3.033,3.921s3.155-1.715,3.155-3.89c0-2.144-1.409-3.86-3.186-3.86-1.685,0-3,1.685-3,3.829\" transform=\"translate(-196.551 -195.844)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_10\" data-name=\"Group 10\" transform=\"translate(61.521 31.425)\">\r\n <g id=\"Group_9\" data-name=\"Group 9\">\r\n <path id=\"Path_5\" data-name=\"Path 5\" d=\"M249.925,198.508a2.28,2.28,0,0,1,2.267-2.574,2.353,2.353,0,0,1,2.236,1.593c1.256-1.256,2.052-1.685,3.094-1.685a2.3,2.3,0,0,1,2.3,2.327c0,1.073-.459,1.5-2.3,2.053-2.45.8-3.094,1.41-3.094,3v5.668a3.259,3.259,0,0,1-.306,1.868,2.237,2.237,0,0,1-3.891,0,3.2,3.2,0,0,1-.307-1.868V198.508Z\" transform=\"translate(-249.925 -195.843)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_12\" data-name=\"Group 12\" transform=\"translate(72.427 24.779)\">\r\n <g id=\"Group_11\" data-name=\"Group 11\" transform=\"translate(0 0)\">\r\n <path id=\"Path_6\" data-name=\"Path 6\" d=\"M289.04,194.447a3.263,3.263,0,0,1-.306,1.868,2.237,2.237,0,0,1-3.891,0,3.2,3.2,0,0,1-.307-1.868v-16.7a3.253,3.253,0,0,1,.307-1.869,2.237,2.237,0,0,1,3.891,0,3.2,3.2,0,0,1,.306,1.869v9.037l4.135-4.228c.889-.92,1.348-1.195,2.053-1.195a2.229,2.229,0,0,1,2.205,2.267c0,.674-.276,1.1-1.226,2.022l-2.787,2.7,3.921,4.871c.767.949.981,1.409.981,1.992a2.282,2.282,0,0,1-2.3,2.236c-.827,0-1.316-.306-2.173-1.44l-4.81-6.157v4.6Z\" transform=\"translate(-284.536 -174.75)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_14\" data-name=\"Group 14\" transform=\"translate(88.162 42.79)\">\r\n <g id=\"Group_13\" data-name=\"Group 13\">\r\n <path id=\"Path_7\" data-name=\"Path 7\" d=\"M339.463,234.391a2.5,2.5,0,1,1-2.452-2.482,2.516,2.516,0,0,1,2.452,2.482\" transform=\"translate(-334.47 -231.909)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_16\" data-name=\"Group 16\" transform=\"translate(49.969 48.511)\">\r\n <g id=\"Group_15\" data-name=\"Group 15\">\r\n <path id=\"Path_8\" data-name=\"Path 8\" d=\"M214.961,273.249a1.656,1.656,0,0,1-1.27-.526,1.848,1.848,0,0,1-.426-1.261V251.849a1.79,1.79,0,0,1,.539-1.373,1.791,1.791,0,0,1,2.418.12,1.839,1.839,0,0,1,.422,1.253v19.612a1.745,1.745,0,0,1-.547,1.367,1.638,1.638,0,0,1-1.137.421\" transform=\"translate(-213.265 -250.064)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_18\" data-name=\"Group 18\" transform=\"translate(55.89 50.072)\">\r\n <g id=\"Group_17\" data-name=\"Group 17\" transform=\"translate(0)\">\r\n <path id=\"Path_9\" data-name=\"Path 9\" d=\"M234.035,276.641a1.655,1.655,0,0,1-1.27-.525,1.842,1.842,0,0,1-.426-1.261V261.96a1.743,1.743,0,0,1,.545-1.365,1.593,1.593,0,0,1,1.137-.421,1.652,1.652,0,0,1,1.27.525,1.843,1.843,0,0,1,.428,1.26v12.895a1.794,1.794,0,0,1-.54,1.375,1.687,1.687,0,0,1-1.143.412m0-17.666a1.9,1.9,0,0,1-1.394-.575,1.925,1.925,0,0,1-.587-1.407,1.885,1.885,0,0,1,.592-1.4,1.959,1.959,0,0,1,2.787.01,1.875,1.875,0,0,1,.583,1.388,1.927,1.927,0,0,1-.589,1.408,1.9,1.9,0,0,1-1.393.574\" transform=\"translate(-232.054 -255.018)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_20\" data-name=\"Group 20\" transform=\"translate(60.746 55.227)\">\r\n <g id=\"Group_19\" data-name=\"Group 19\">\r\n <path id=\"Path_10\" data-name=\"Path 10\" d=\"M253.859,287.847a1.6,1.6,0,0,1-1.3-.527,2.7,2.7,0,0,1-.42-.852l-4.4-12.307a3.763,3.763,0,0,1-.278-1.176,1.553,1.553,0,0,1,1.606-1.607,1.682,1.682,0,0,1,1.69,1.28l3.1,9.41,3.1-9.408a1.67,1.67,0,0,1,1.692-1.281,1.6,1.6,0,0,1,1.146.447,1.553,1.553,0,0,1,.461,1.146,3.824,3.824,0,0,1-.3,1.193l-4.382,12.309a2.306,2.306,0,0,1-.634,1.056,1.658,1.658,0,0,1-1.083.318\" transform=\"translate(-247.465 -271.379)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_22\" data-name=\"Group 22\" transform=\"translate(73.604 55.227)\">\r\n <g id=\"Group_21\" data-name=\"Group 21\">\r\n <path id=\"Path_11\" data-name=\"Path 11\" d=\"M295.592,287.848a6.931,6.931,0,0,1-4.85-1.789,7.389,7.389,0,0,1-2-3.248,10.353,10.353,0,0,1-.47-3.153,8.883,8.883,0,0,1,1.859-5.695,6.609,6.609,0,0,1,5.387-2.585,6.383,6.383,0,0,1,5.448,2.812,8.329,8.329,0,0,1,1.591,4.975,1.874,1.874,0,0,1-.481,1.449,2.028,2.028,0,0,1-1.35.4h-9.042a4.865,4.865,0,0,0,.554,1.937,3.752,3.752,0,0,0,3.537,1.865,5.8,5.8,0,0,0,2.412-.5,7.938,7.938,0,0,0,1.378-.906c1.134-.9,1.7-.823,2.24-.279a1.513,1.513,0,0,1,.439,1.108c0,.673-.466,1.324-1.425,1.995a8.877,8.877,0,0,1-5.224,1.617m-3.9-9.587h7.457a5.014,5.014,0,0,0-.644-2.124,3.322,3.322,0,0,0-3.12-1.738,3.246,3.246,0,0,0-3.233,2.023,6.076,6.076,0,0,0-.46,1.839\" transform=\"translate(-288.27 -271.378)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_24\" data-name=\"Group 24\" transform=\"translate(88.768 67.917)\">\r\n <g id=\"Group_23\" data-name=\"Group 23\">\r\n <path id=\"Path_12\" data-name=\"Path 12\" d=\"M338.283,315.427a1.885,1.885,0,0,1-1.333-3.224,1.877,1.877,0,0,1,2.665,0,1.891,1.891,0,0,1-1.332,3.225\" transform=\"translate(-336.392 -311.648)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_26\" data-name=\"Group 26\" transform=\"translate(42.991 78.901)\">\r\n <g id=\"Group_25\" data-name=\"Group 25\">\r\n <path id=\"Path_13\" data-name=\"Path 13\" d=\"M202.259,348.947a.942.942,0,0,1-1.073,1.042c-.833,0-1.935-1.7-4.079-1.7-1.489,0-3.1.715-3.1,2.234a2,2,0,0,0,1.459,1.876l3.245,1.311c2.145.863,3.961,1.906,3.961,4.407,0,2.8-2.5,4.586-5.836,4.586-3.455,0-5.718-2-5.718-3.007,0-.328.476-1.042,1.012-1.042,1.013,0,1.995,2.262,4.794,2.262,2.055,0,3.425-1.22,3.425-2.709,0-1.4-1.042-1.965-2.2-2.442l-3.693-1.519c-1.608-.655-2.77-1.608-2.77-3.573,0-2.591,2.561-4.169,4.973-4.169,3.1,0,5.659,1.309,5.6,2.441\" transform=\"translate(-191.121 -346.506)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_28\" data-name=\"Group 28\" transform=\"translate(55.351 74.195)\">\r\n <g id=\"Group_27\" data-name=\"Group 27\" transform=\"translate(0)\">\r\n <path id=\"Path_14\" data-name=\"Path 14\" d=\"M234.809,351.108c0,.893-.387,1.369-1.072,1.369s-1.072-.475-1.072-1.369V338.242h-1.4a.894.894,0,1,1,0-1.787h1.4v-3.484c0-.923.387-1.4,1.072-1.4s1.072.476,1.072,1.4v3.484h1.4a.894.894,0,1,1,0,1.786h-1.4Z\" transform=\"translate(-230.343 -331.572)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_30\" data-name=\"Group 30\" transform=\"translate(63.004 78.899)\">\r\n <g id=\"Group_29\" data-name=\"Group 29\">\r\n <path id=\"Path_15\" data-name=\"Path 15\" d=\"M265.918,347.873c0-.893.387-1.37,1.072-1.37s1.072.477,1.072,1.37v13.46c0,.893-.386,1.369-1.072,1.369s-1.072-.475-1.072-1.369v-.984h-.089a4.94,4.94,0,0,1-4.377,2.352c-4.557,0-6.82-3.632-6.82-8.1,0-3.991,2.175-8.1,6.76-8.1a5.3,5.3,0,0,1,4.437,2.352h.089Zm-4.466,13.042c3.335,0,4.466-3.424,4.466-6.312s-1.131-6.313-4.466-6.313c-3.246,0-4.5,3.424-4.5,6.313s1.161,6.312,4.5,6.312\" transform=\"translate(-254.632 -346.502)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_32\" data-name=\"Group 32\" transform=\"translate(78.583 78.9)\">\r\n <g id=\"Group_31\" data-name=\"Group 31\">\r\n <path id=\"Path_16\" data-name=\"Path 16\" d=\"M304.19,348.111a1.76,1.76,0,0,1-.119-.625.972.972,0,0,1,.982-.983c.6,0,.924.358,1.133.983l3.841,11.494h.06l3.842-11.494c.208-.625.535-.983,1.133-.983a.972.972,0,0,1,.982.983,1.767,1.767,0,0,1-.119.625l-6.849,19.773c-.237.716-.566,1.072-1.161,1.072a.918.918,0,0,1-.982-.893,2.353,2.353,0,0,1,.179-.864l1.936-5.092Z\" transform=\"translate(-304.071 -346.503)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n <g id=\"Group_34\" data-name=\"Group 34\" transform=\"translate(89.289 92.36)\">\r\n <g id=\"Group_33\" data-name=\"Group 33\">\r\n <path id=\"Path_17\" data-name=\"Path 17\" d=\"M339.416,389.219a1.369,1.369,0,1,1-1.371,1.37,1.385,1.385,0,0,1,1.371-1.37\" transform=\"translate(-338.045 -389.219)\" fill=\"#fff\"/>\r\n </g>\r\n </g>\r\n </motion.g>\r\n\r\n <motion.g id=\"southern_denmark\" animate={{ opacity: appBarOverThreshold ? 0 : 1 }} transition={{ duration: 0.6, ease: \"easeInOut\" }}>\r\n <g id=\"Group_4\" data-name=\"Group 4\" transform=\"translate(116.756 90.664)\">\r\n <g id=\"Group_3\" data-name=\"Group 3\">\r\n <path id=\"Path_2\" data-name=\"Path 2\" d=\"M451.388,383.836s-26.174,0-26.174,26.173v3.3s0,26.172,26.174,26.172h3.3s26.174,0,26.174-26.172v-3.3s0-26.173-26.174-26.173Z\" transform=\"translate(-425.214 -383.836)\" fill=\"#ec6e2a\"/>\r\n </g>\r\n </g>\r\n </motion.g>\r\n </svg>\r\n\r\n );\r\n};\r\n\r\nexport default Logo;\r\n","import { __read } from 'tslib';\nimport sync from 'framesync';\nimport { useRef, useState, useCallback } from 'react';\nimport { useUnmountEffect } from './use-unmount-effect.mjs';\n\nfunction useForceUpdate() {\n var isUnmountingRef = useRef(false);\n var _a = __read(useState(0), 2), forcedRenderCount = _a[0], setForcedRenderCount = _a[1];\n useUnmountEffect(function () { return (isUnmountingRef.current = true); });\n var forceRender = useCallback(function () {\n !isUnmountingRef.current && setForcedRenderCount(forcedRenderCount + 1);\n }, [forcedRenderCount]);\n /**\n * Defer this to the end of the next animation frame in case there are multiple\n * synchronous calls.\n */\n var deferredForceRender = useCallback(function () { return sync.postRender(forceRender); }, [forceRender]);\n return [deferredForceRender, forcedRenderCount];\n}\n\nexport { useForceUpdate };\n","import { __values } from 'tslib';\nimport * as React from 'react';\nimport { useMemo } from 'react';\nimport { PresenceContext } from '../../context/PresenceContext.mjs';\nimport { useConstant } from '../../utils/use-constant.mjs';\n\nvar presenceId = 0;\nfunction getPresenceId() {\n var id = presenceId;\n presenceId++;\n return id;\n}\nvar PresenceChild = function (_a) {\n var children = _a.children, initial = _a.initial, isPresent = _a.isPresent, onExitComplete = _a.onExitComplete, custom = _a.custom, presenceAffectsLayout = _a.presenceAffectsLayout;\n var presenceChildren = useConstant(newChildrenMap);\n var id = useConstant(getPresenceId);\n var context = useMemo(function () { return ({\n id: id,\n initial: initial,\n isPresent: isPresent,\n custom: custom,\n onExitComplete: function (childId) {\n var e_1, _a;\n presenceChildren.set(childId, true);\n try {\n for (var _b = __values(presenceChildren.values()), _c = _b.next(); !_c.done; _c = _b.next()) {\n var isComplete = _c.value;\n if (!isComplete)\n return; // can stop searching when any is incomplete\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n onExitComplete === null || onExitComplete === void 0 ? void 0 : onExitComplete();\n },\n register: function (childId) {\n presenceChildren.set(childId, false);\n return function () { return presenceChildren.delete(childId); };\n },\n }); }, \n /**\n * If the presence of a child affects the layout of the components around it,\n * we want to make a new context value to ensure they get re-rendered\n * so they can detect that layout change.\n */\n presenceAffectsLayout ? undefined : [isPresent]);\n useMemo(function () {\n presenceChildren.forEach(function (_, key) { return presenceChildren.set(key, false); });\n }, [isPresent]);\n /**\n * If there's no `motion` components to fire exit animations, we want to remove this\n * component immediately.\n */\n React.useEffect(function () {\n !isPresent && !presenceChildren.size && (onExitComplete === null || onExitComplete === void 0 ? void 0 : onExitComplete());\n }, [isPresent]);\n return (React.createElement(PresenceContext.Provider, { value: context }, children));\n};\nfunction newChildrenMap() {\n return new Map();\n}\n\nexport { PresenceChild };\n","import { __read, __spreadArray } from 'tslib';\nimport * as React from 'react';\nimport { useContext, useRef, useEffect, cloneElement, Children, isValidElement } from 'react';\nimport { useForceUpdate } from '../../utils/use-force-update.mjs';\nimport { PresenceChild } from './PresenceChild.mjs';\nimport { LayoutGroupContext } from '../../context/LayoutGroupContext.mjs';\n\nfunction getChildKey(child) {\n return child.key || \"\";\n}\nfunction updateChildLookup(children, allChildren) {\n var seenChildren = process.env.NODE_ENV !== \"production\" ? new Set() : null;\n children.forEach(function (child) {\n var key = getChildKey(child);\n if (process.env.NODE_ENV !== \"production\" && seenChildren) {\n if (seenChildren.has(key)) {\n console.warn(\"Children of AnimatePresence require unique keys. \\\"\".concat(key, \"\\\" is a duplicate.\"));\n }\n seenChildren.add(key);\n }\n allChildren.set(key, child);\n });\n}\nfunction onlyElements(children) {\n var filtered = [];\n // We use forEach here instead of map as map mutates the component key by preprending `.$`\n Children.forEach(children, function (child) {\n if (isValidElement(child))\n filtered.push(child);\n });\n return filtered;\n}\n/**\n * `AnimatePresence` enables the animation of components that have been removed from the tree.\n *\n * When adding/removing more than a single child, every child **must** be given a unique `key` prop.\n *\n * Any `motion` components that have an `exit` property defined will animate out when removed from\n * the tree.\n *\n * ```jsx\n * import { motion, AnimatePresence } from 'framer-motion'\n *\n * export const Items = ({ items }) => (\n * <AnimatePresence>\n * {items.map(item => (\n * <motion.div\n * key={item.id}\n * initial={{ opacity: 0 }}\n * animate={{ opacity: 1 }}\n * exit={{ opacity: 0 }}\n * />\n * ))}\n * </AnimatePresence>\n * )\n * ```\n *\n * You can sequence exit animations throughout a tree using variants.\n *\n * If a child contains multiple `motion` components with `exit` props, it will only unmount the child\n * once all `motion` components have finished animating out. Likewise, any components using\n * `usePresence` all need to call `safeToRemove`.\n *\n * @public\n */\nvar AnimatePresence = function (_a) {\n var children = _a.children, custom = _a.custom, _b = _a.initial, initial = _b === void 0 ? true : _b, onExitComplete = _a.onExitComplete, exitBeforeEnter = _a.exitBeforeEnter, _c = _a.presenceAffectsLayout, presenceAffectsLayout = _c === void 0 ? true : _c;\n // We want to force a re-render once all exiting animations have finished. We\n // either use a local forceRender function, or one from a parent context if it exists.\n var _d = __read(useForceUpdate(), 1), forceRender = _d[0];\n var forceRenderLayoutGroup = useContext(LayoutGroupContext).forceRender;\n if (forceRenderLayoutGroup)\n forceRender = forceRenderLayoutGroup;\n var isInitialRender = useRef(true);\n var isMounted = useRef(true);\n useEffect(function () { return function () {\n isMounted.current = false;\n }; }, []);\n // Filter out any children that aren't ReactElements. We can only track ReactElements with a props.key\n var filteredChildren = onlyElements(children);\n // Keep a living record of the children we're actually rendering so we\n // can diff to figure out which are entering and exiting\n var presentChildren = useRef(filteredChildren);\n // A lookup table to quickly reference components by key\n var allChildren = useRef(new Map()).current;\n // A living record of all currently exiting components.\n var exiting = useRef(new Set()).current;\n updateChildLookup(filteredChildren, allChildren);\n // If this is the initial component render, just deal with logic surrounding whether\n // we play onMount animations or not.\n if (isInitialRender.current) {\n isInitialRender.current = false;\n return (React.createElement(React.Fragment, null, filteredChildren.map(function (child) { return (React.createElement(PresenceChild, { key: getChildKey(child), isPresent: true, initial: initial ? undefined : false, presenceAffectsLayout: presenceAffectsLayout }, child)); })));\n }\n // If this is a subsequent render, deal with entering and exiting children\n var childrenToRender = __spreadArray([], __read(filteredChildren), false);\n // Diff the keys of the currently-present and target children to update our\n // exiting list.\n var presentKeys = presentChildren.current.map(getChildKey);\n var targetKeys = filteredChildren.map(getChildKey);\n // Diff the present children with our target children and mark those that are exiting\n var numPresent = presentKeys.length;\n for (var i = 0; i < numPresent; i++) {\n var key = presentKeys[i];\n if (targetKeys.indexOf(key) === -1) {\n exiting.add(key);\n }\n else {\n // In case this key has re-entered, remove from the exiting list\n exiting.delete(key);\n }\n }\n // If we currently have exiting children, and we're deferring rendering incoming children\n // until after all current children have exiting, empty the childrenToRender array\n if (exitBeforeEnter && exiting.size) {\n childrenToRender = [];\n }\n // Loop through all currently exiting components and clone them to overwrite `animate`\n // with any `exit` prop they might have defined.\n exiting.forEach(function (key) {\n // If this component is actually entering again, early return\n if (targetKeys.indexOf(key) !== -1)\n return;\n var child = allChildren.get(key);\n if (!child)\n return;\n var insertionIndex = presentKeys.indexOf(key);\n var onExit = function () {\n allChildren.delete(key);\n exiting.delete(key);\n // Remove this child from the present children\n var removeIndex = presentChildren.current.findIndex(function (presentChild) { return presentChild.key === key; });\n presentChildren.current.splice(removeIndex, 1);\n // Defer re-rendering until all exiting children have indeed left\n if (!exiting.size) {\n presentChildren.current = filteredChildren;\n if (isMounted.current === false) {\n return;\n }\n forceRender();\n onExitComplete && onExitComplete();\n }\n };\n childrenToRender.splice(insertionIndex, 0, React.createElement(PresenceChild, { key: getChildKey(child), isPresent: false, onExitComplete: onExit, custom: custom, presenceAffectsLayout: presenceAffectsLayout }, child));\n });\n // Add `MotionContext` even to children that don't need it to ensure we're rendering\n // the same tree between renders\n childrenToRender = childrenToRender.map(function (child) {\n var key = child.key;\n return exiting.has(key) ? (child) : (React.createElement(PresenceChild, { key: getChildKey(child), isPresent: true, presenceAffectsLayout: presenceAffectsLayout }, child));\n });\n presentChildren.current = childrenToRender;\n if (process.env.NODE_ENV !== \"production\" &&\n exitBeforeEnter &&\n childrenToRender.length > 1) {\n console.warn(\"You're attempting to animate multiple children within AnimatePresence, but its exitBeforeEnter prop is set to true. This will lead to odd visual behaviour.\");\n }\n return (React.createElement(React.Fragment, null, exiting.size\n ? childrenToRender\n : childrenToRender.map(function (child) { return cloneElement(child); })));\n};\n\nexport { AnimatePresence };\n","// extracted by mini-css-extract-plugin\nexport default {\"breadcrumb_link\":\"e394eZgfxodDN_P28n8t\",\"breadcrumb_span\":\"VPZNenUPY1t_UObqycAM\",\"chevron_right\":\"Er_Sa_l3S9VOsik59Uf5\"};","import React, { FunctionComponent, Fragment } from \"react\";\r\nimport BreadcrumbLinkProps from \"./BreadcrumbLinkProps.interface\";\r\nimport styles from \"./BreadcrumbLink.module.scss\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\n\r\nconst BreadcrumbLink: FunctionComponent<BreadcrumbLinkProps> = (props) => {\r\n return (\r\n <Fragment>\r\n {\r\n !props.isLast ? (\r\n <Anchor to={props._url} className={styles.breadcrumb_link}>\r\n {props._name}\r\n </Anchor>\r\n ) : (\r\n <span className={styles.breadcrumb_span}>{props._name}</span>\r\n )\r\n }\r\n\r\n <IconViewer className={styles.chevron_right} name=\"chevron-right\"/>\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default BreadcrumbLink;\r\n","import { useState, useEffect } from \"react\";\r\n\r\ninterface Result {\r\n appBarVisible: boolean;\r\n appBarOverThreshold: boolean;\r\n}\r\n\r\nfunction useIsAppBarVisible(): Result {\r\n const [appBarVisible, setAppBarVisible] = useState(true);\r\n const [appBarOverThreshold, setAppBarOverThreshold] = useState(false);\r\n const threshold = 100;\r\n\r\n useEffect(() => {\r\n // Sticky Header\r\n\r\n let prevScrollpos = window.pageYOffset;\r\n const scrollHandler = () => {\r\n const currentScrollPos = window.pageYOffset;\r\n\r\n if (currentScrollPos > threshold) {\r\n setAppBarOverThreshold(true);\r\n prevScrollpos > currentScrollPos ? setAppBarVisible(true) : setAppBarVisible(false);\r\n prevScrollpos = currentScrollPos;\r\n }\r\n else {\r\n setAppBarOverThreshold(false);\r\n }\r\n };\r\n\r\n window.addEventListener(\"scroll\", scrollHandler);\r\n return () => window.removeEventListener(\"scroll\", scrollHandler);\r\n }, []);\r\n\r\n const result = { appBarVisible, appBarOverThreshold };\r\n\r\n return result;\r\n}\r\n\r\nexport default useIsAppBarVisible;\r\n","import { useState, useEffect } from \"react\";\r\n\r\nconst getWindowDimensions = () => {\r\n if(typeof window === \"undefined\") return { width: 0, height: 0 };\r\n const { innerWidth: width, innerHeight: height } = window;\r\n return { width, height };\r\n};\r\n\r\nexport default (): { width: number, height: number } => {\r\n const [windowDimensions, setWindowDimensions] = useState(getWindowDimensions());\r\n\r\n useEffect(() => {\r\n const handleResize = () => {\r\n setWindowDimensions(getWindowDimensions());\r\n };\r\n\r\n window.addEventListener(\"resize\", handleResize);\r\n return () => window.removeEventListener(\"resize\", handleResize);\r\n }, []);\r\n\r\n return windowDimensions;\r\n};","import React, { FunctionComponent } from \"react\";\r\nimport styles from \"./Header.module.scss\";\r\nimport HeaderProps from \"./Header.interface\";\r\nimport { CLOSE_ALL_OVERLAYS, OPEN_MEGA_DROPDOWN_MENU, OPEN_MOBILE_MENU } from \"layout/redux/overlay.actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport Logo from \"./components/Logo/Logo\";\r\nimport { AnimatePresence, motion } from \"framer-motion\";\r\nimport BreadcrumbLink from \"./components/BreadcrumbLink/BreadcrumbLink\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport useIsAppBarVisible from \"./hooks/useIsAppBarVisible\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport useWindowDimensions from \"hooks/useWindowDimensions\";\r\n\r\nconst Header: FunctionComponent<HeaderProps> = (props) => {\r\n const dispatch = useDispatch();\r\n const menuOpen = useSelector(state => state.overlay.menuOpen);\r\n const page = useSelector(state => state.page.content);\r\n const { width } = useWindowDimensions();\r\n const whiteBreadcrumbs = page?.breadcrumbsDarkBackground ? styles.white_breadcrumbs : undefined;\r\n\r\n const result = useIsAppBarVisible();\r\n const appBarOverThreshold = result.appBarOverThreshold;\r\n\r\n const openMobileMenu = () => {\r\n // TODO: Based on useWindowDimensions, switch between MobileMenu and MegaDropdown\r\n if (!menuOpen) {\r\n dispatch({\r\n type: OPEN_MOBILE_MENU,\r\n menu: undefined,\r\n subMenu: undefined,\r\n menuOpen: true\r\n });\r\n }\r\n else {\r\n dispatch({\r\n type: CLOSE_ALL_OVERLAYS,\r\n });\r\n }\r\n };\r\n\r\n const handleMenuClick = () => {\r\n if (!menuOpen) {\r\n dispatch({\r\n type: OPEN_MEGA_DROPDOWN_MENU,\r\n menu: props.settings?.menu,\r\n subMenu: undefined,\r\n menuOpen: true\r\n });\r\n }\r\n else {\r\n dispatch({\r\n type: CLOSE_ALL_OVERLAYS,\r\n });\r\n }\r\n };\r\n\r\n const handleClickCloseMenu = () => {\r\n dispatch({\r\n type: CLOSE_ALL_OVERLAYS,\r\n });\r\n };\r\n\r\n const transition = {\r\n duration: 0.3,\r\n ease: \"easeInOut\"\r\n };\r\n\r\n const color = menuOpen ? \"var(--color-navy-blue)\" : \"var(--color-just-orange)\";\r\n\r\n return (\r\n <header className={styles.wrapper}>\r\n <header className={styles.header}>\r\n <div className={styles.inner}>\r\n <div className={styles.logo}>\r\n {/* Logo */}\r\n <div onClick={handleClickCloseMenu}>\r\n <Anchor aria=\"Work Live Stay logo | Homepage\" to=\"/\" className={styles.logo}>\r\n <Logo appBarOverThreshold={appBarOverThreshold} />\r\n </Anchor>\r\n </div>\r\n </div>\r\n\r\n <div className={styles.menu_right}>\r\n {/* Search Button */}\r\n <div onClick={handleClickCloseMenu}>\r\n <Anchor to=\"/search-page\" aria=\"Search\" className={styles.search_button}>\r\n <IconViewer name=\"search\" className={styles.search_icon} />\r\n </Anchor>\r\n </div>\r\n\r\n {/* Menu Toggle */}\r\n <div className={styles.menu_wrapper} onClick={() => handleMenuClick()}>\r\n <button aria-label=\"Hamburger Main Menu\" className={styles.hamburger_menu_button}>\r\n <motion.span animate={{ y: menuOpen ? 8 : 0, rotate: menuOpen ? 45 : 0, backgroundColor: color }} transition={transition} />\r\n <motion.span animate={{ rotate: menuOpen ? -45 : 0, backgroundColor: color }} transition={transition} />\r\n <motion.span animate={{ y: menuOpen ? -8 : 0, opacity: menuOpen ? 0 : 1 }} transition={transition} />\r\n </button>\r\n <motion.div className={styles.hamburger_menu_background} style={{ translateX: \"-50%\", translateY: \"-50%\" }} animate={{ scale: menuOpen ? 100 : 1 }} transition={{ duration: 1, ease: \"easeInOut\" }} />\r\n </div>\r\n\r\n {/* Mobile Menu Toggle */}\r\n <div className={styles.mobile_menu_wrapper}>\r\n <button aria-label=\"Hamburger Mobile Main Menu\" className={styles.hamburger_menu_button} onClick={() => openMobileMenu()}>\r\n <motion.span animate={{ y: menuOpen ? 8 : 0, rotate: menuOpen ? 45 : 0, backgroundColor: color }} transition={transition} />\r\n <motion.span animate={{ rotate: menuOpen ? -45 : 0, backgroundColor: color }} transition={transition} />\r\n <motion.span animate={{ y: menuOpen ? -8 : 0, opacity: menuOpen ? 0 : 1 }} transition={transition} />\r\n </button>\r\n <motion.div className={styles.hamburger_menu_background} style={{ translateX: \"-50%\", translateY: \"-50%\" }} animate={{ scale: menuOpen ? 55 : 1 }} transition={{ duration: 0.7 }} />\r\n </div>\r\n </div>\r\n </div>\r\n </header>\r\n {/* Breadcrumbs */}\r\n <AnimatePresence>\r\n {page?._breadcrumbs && page._breadcrumbs.length > 1 && !menuOpen ? (\r\n <motion.div style={{ opacity: 0 }} animate={{ opacity: 1 }} exit={{ opacity: 0 }} className={combineClasses([styles.breadcrumb_wrapper, whiteBreadcrumbs])}>\r\n {page._breadcrumbs.map((link, index) => (\r\n <BreadcrumbLink key={link._name} isLast={page._breadcrumbs?.length === index + 1} {...link} />\r\n ))}\r\n </motion.div>\r\n ) : null}\r\n </AnimatePresence>\r\n\r\n {width >= 1024 ? (\r\n <div className={styles.header_circle}>\r\n <div className={styles.hamburger_menu_background_outer} />\r\n </div>\r\n ) : null}\r\n </header>\r\n );\r\n};\r\n\r\nexport default Header;","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"JvwMB2wjRNGTtlku8LSf\",\"inner\":\"B5BrQJCMMvKC9mza6VQk\",\"content\":\"jfOPiXUrrRAMhOszkimh\",\"fadeIn\":\"Dxi6OpNBjB1h1WbJvZ8x\",\"navigation\":\"l1APzRI4jkZNLDVrUoew\",\"slideIn\":\"XZLniUfKKOYfDaiEx5Om\",\"header\":\"CveBxYQI9dN8DDBu4r2a\",\"next_level_button\":\"YPajRdvtR4pPqeo0Hi7g\",\"back_button\":\"amHYez4hBXequmndklzc\",\"icon\":\"aSYdul8_9OAwkmCqPtHz\",\"nav_item\":\"b3MOUEMFpyeywZLA5NWf\",\"nav_sub_item\":\"cdcKP_9yEMp4iWOsapWF\",\"link\":\"nkac6T5aB1vgBRkJ0ulQ\",\"first_link\":\"nfRV7b35XQbHsCp6Q1gg\",\"outer\":\"VH0pvp8VBvuEGGj0OWhS\",\"close_button\":\"Wavf_E0pMt2XKAMqyCT5\",\"close_button_inner\":\"zY_fo4cfC3zNmkzdZpWq\",\"sub_heading_link\":\"UaoLmcf1mnyE31i33_Jc\",\"sub_heading_icon\":\"F0ydsKZCjj2qctBDV6D0\"};","import React, { FunctionComponent, Fragment } from \"react\";\r\nimport DictionaryProps from \"./DictionaryProps.interface\";\r\n\r\nimport { useSelector } from \"react-redux\";\r\n\r\nconst Dictionary: FunctionComponent<DictionaryProps> = (props) => {\r\n const translations = useSelector(state => state.dictionary.translations);\r\n const fallback = props.name;\r\n\r\n return (\r\n <Fragment>{translations && translations[props.name] ? translations[props.name] : fallback}</Fragment>\r\n );\r\n};\r\n\r\nexport default Dictionary;","import React, { Fragment, FunctionComponent, useCallback, useState } from \"react\";\r\nimport styles from \"./MobileMenu.module.scss\";\r\nimport MobileMenuProps from \"./MobileMenuProps.interface\";\r\n\r\nimport { CLOSE_ALL_OVERLAYS, OPEN_MOBILE_MENU } from \"layout/redux/overlay.actions\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport MenuLink, { SubMenuLink } from \"blocks/models/menu-link.interface\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport Dictionary from \"components/Dictionary/Dictionary\";\r\n\r\nconst MobileMenu: FunctionComponent<MobileMenuProps> = (props) => {\r\n const dispatch = useDispatch();\r\n const settings = useSelector(state => state.settings.content);\r\n\r\n const handleClick = () => {\r\n dispatch({\r\n type: CLOSE_ALL_OVERLAYS,\r\n });\r\n };\r\n\r\n const goBack = (menu?: MenuLink, subMenu?: SubMenuLink) => {\r\n dispatch({\r\n type: OPEN_MOBILE_MENU,\r\n menu: subMenu ? menu : undefined,\r\n subMenu: undefined\r\n });\r\n };\r\n\r\n const goForward = (event?: any, menu?: MenuLink, subMenu?: SubMenuLink) => {\r\n event?.preventDefault();\r\n\r\n dispatch({\r\n type: OPEN_MOBILE_MENU,\r\n menu: menu,\r\n subMenu: subMenu\r\n });\r\n };\r\n\r\n return (\r\n <Fragment>\r\n {/* Lock the scrollbar for the rest of the page on mobile, while drawer is open */}\r\n {/* TODO: Remember the scroll position and restore it when toggling locked state */}\r\n <Helmet bodyAttributes={{ class: \"is-locked\" }} />\r\n\r\n <nav className={styles.wrapper}>\r\n <div className={styles.inner}>\r\n <div className={styles.content}>\r\n {/* 1. level navigation */}\r\n {!props.menu && !props.subMenu ? (\r\n <nav className={styles.navigation}>\r\n {settings?.menu && settings?.menu.map((firstItem, index) => {\r\n return (\r\n <div key={index} className={styles.nav_item}>\r\n {firstItem.content.subMenu && firstItem.content.subMenu.length > 0 ? (\r\n <button className={styles.next_level_button} onClick={event => goForward(event, firstItem)}>\r\n {firstItem.content.label}\r\n </button>) : (\r\n <div onClick={handleClick}>\r\n <Anchor to={firstItem.content.link} className={styles.first_link}>\r\n {firstItem.content.label}\r\n </Anchor>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n })}\r\n </nav>\r\n ) : null}\r\n\r\n {/* 2. level navigation */}\r\n {props.menu && !props.subMenu ? (\r\n <Fragment>\r\n <nav className={styles.navigation}>\r\n {props.menu ? (\r\n <Anchor className={styles.sub_heading_link} to={props.menu.content.link}>\r\n {props.menu.content.label}\r\n <IconViewer className={styles.sub_heading_icon} name=\"arrow-right\" />\r\n </Anchor>\r\n ) : null}\r\n\r\n {props.menu?.content.subMenu && props.menu.content.subMenu.map((secondItem, index) => {\r\n return (\r\n <div key={index} className={styles.nav_sub_item}>\r\n <div onClick={handleClick}>\r\n <Anchor to={secondItem.content.link} className={styles.link}>\r\n {secondItem.content.label}\r\n </Anchor>\r\n </div>\r\n\r\n {secondItem.content.subMenu && secondItem.content.subMenu.length > 0 ? (\r\n <button className={styles.next_level_button} onClick={event => goForward(event, props.menu, secondItem)}>\r\n <IconViewer name=\"arrow-right\" aspectRatioX={1} aspectRatioY={1} />\r\n </button>\r\n ) : null}\r\n </div>\r\n );\r\n })}\r\n\r\n <button className={styles.back_button} onClick={() => goBack(props.menu, props.subMenu)}>\r\n <IconViewer className={styles.icon} name=\"arrow-bottom-left\" aspectRatioX={1} aspectRatioY={1} />\r\n <Dictionary name=\"NAVIGATION.BACK\" />\r\n </button>\r\n </nav>\r\n </Fragment>\r\n ) : null}\r\n </div>\r\n </div>\r\n </nav>\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default MobileMenu;","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"NiXw3q579P4isniVA0U2\",\"inner\":\"CB6BtLbibYUKzpU4zOKv\",\"intro\":\"QF9jxFsx3r0lGVVSLgnA\",\"headline\":\"XNHt9vMzAw06dsB5xiLp\",\"text\":\"f_XNtwzsW6OJZFhUkHdR\"};","import { __spreadArray, __read } from 'tslib';\nimport { invariant } from 'hey-listen';\nimport { stopAnimation, animateVisualElement } from '../render/utils/animation.mjs';\nimport { setValues } from '../render/utils/setters.mjs';\n\n/**\n * @public\n */\nfunction animationControls() {\n /**\n * Track whether the host component has mounted.\n */\n var hasMounted = false;\n /**\n * Pending animations that are started before a component is mounted.\n * TODO: Remove this as animations should only run in effects\n */\n var pendingAnimations = [];\n /**\n * A collection of linked component animation controls.\n */\n var subscribers = new Set();\n var controls = {\n subscribe: function (visualElement) {\n subscribers.add(visualElement);\n return function () { return void subscribers.delete(visualElement); };\n },\n start: function (definition, transitionOverride) {\n /**\n * TODO: We only perform this hasMounted check because in Framer we used to\n * encourage the ability to start an animation within the render phase. This\n * isn't behaviour concurrent-safe so when we make Framer concurrent-safe\n * we can ditch this.\n */\n if (hasMounted) {\n var animations_1 = [];\n subscribers.forEach(function (visualElement) {\n animations_1.push(animateVisualElement(visualElement, definition, {\n transitionOverride: transitionOverride,\n }));\n });\n return Promise.all(animations_1);\n }\n else {\n return new Promise(function (resolve) {\n pendingAnimations.push({\n animation: [definition, transitionOverride],\n resolve: resolve,\n });\n });\n }\n },\n set: function (definition) {\n invariant(hasMounted, \"controls.set() should only be called after a component has mounted. Consider calling within a useEffect hook.\");\n return subscribers.forEach(function (visualElement) {\n setValues(visualElement, definition);\n });\n },\n stop: function () {\n subscribers.forEach(function (visualElement) {\n stopAnimation(visualElement);\n });\n },\n mount: function () {\n hasMounted = true;\n pendingAnimations.forEach(function (_a) {\n var animation = _a.animation, resolve = _a.resolve;\n controls.start.apply(controls, __spreadArray([], __read(animation), false)).then(resolve);\n });\n return function () {\n hasMounted = false;\n controls.stop();\n };\n },\n };\n return controls;\n}\n\nexport { animationControls };\n","import { animationControls } from './animation-controls.mjs';\nimport { useEffect } from 'react';\nimport { useConstant } from '../utils/use-constant.mjs';\n\n/**\n * Creates `AnimationControls`, which can be used to manually start, stop\n * and sequence animations on one or more components.\n *\n * The returned `AnimationControls` should be passed to the `animate` property\n * of the components you want to animate.\n *\n * These components can then be animated with the `start` method.\n *\n * ```jsx\n * import * as React from 'react'\n * import { motion, useAnimation } from 'framer-motion'\n *\n * export function MyComponent(props) {\n * const controls = useAnimation()\n *\n * controls.start({\n * x: 100,\n * transition: { duration: 0.5 },\n * })\n *\n * return <motion.div animate={controls} />\n * }\n * ```\n *\n * @returns Animation controller with `start` and `stop` methods\n *\n * @public\n */\nfunction useAnimation() {\n var controls = useConstant(animationControls);\n useEffect(controls.mount, []);\n return controls;\n}\n\nexport { useAnimation };\n","import * as React from 'react';\nimport { useEffect } from 'react';\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n\n _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nvar observerMap = new Map();\nvar RootIds = new WeakMap();\nvar rootId = 0;\nvar unsupportedValue = undefined;\n/**\r\n * What should be the default behavior if the IntersectionObserver is unsupported?\r\n * Ideally the polyfill has been loaded, you can have the following happen:\r\n * - `undefined`: Throw an error\r\n * - `true` or `false`: Set the `inView` value to this regardless of intersection state\r\n * **/\n\nfunction defaultFallbackInView(inView) {\n unsupportedValue = inView;\n}\n/**\r\n * Generate a unique ID for the root element\r\n * @param root\r\n */\n\nfunction getRootId(root) {\n if (!root) return '0';\n if (RootIds.has(root)) return RootIds.get(root);\n rootId += 1;\n RootIds.set(root, rootId.toString());\n return RootIds.get(root);\n}\n/**\r\n * Convert the options to a string Id, based on the values.\r\n * Ensures we can reuse the same observer when observing elements with the same options.\r\n * @param options\r\n */\n\n\nfunction optionsToId(options) {\n return Object.keys(options).sort().filter(function (key) {\n return options[key] !== undefined;\n }).map(function (key) {\n return key + \"_\" + (key === 'root' ? getRootId(options.root) : options[key]);\n }).toString();\n}\n\nfunction createObserver(options) {\n // Create a unique ID for this observer instance, based on the root, root margin and threshold.\n var id = optionsToId(options);\n var instance = observerMap.get(id);\n\n if (!instance) {\n // Create a map of elements this observer is going to observe. Each element has a list of callbacks that should be triggered, once it comes into view.\n var elements = new Map();\n var thresholds;\n var observer = new IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n var _elements$get;\n\n // While it would be nice if you could just look at isIntersecting to determine if the component is inside the viewport, browsers can't agree on how to use it.\n // -Firefox ignores `threshold` when considering `isIntersecting`, so it will never be false again if `threshold` is > 0\n var inView = entry.isIntersecting && thresholds.some(function (threshold) {\n return entry.intersectionRatio >= threshold;\n }); // @ts-ignore support IntersectionObserver v2\n\n if (options.trackVisibility && typeof entry.isVisible === 'undefined') {\n // The browser doesn't support Intersection Observer v2, falling back to v1 behavior.\n // @ts-ignore\n entry.isVisible = inView;\n }\n\n (_elements$get = elements.get(entry.target)) == null ? void 0 : _elements$get.forEach(function (callback) {\n callback(inView, entry);\n });\n });\n }, options); // Ensure we have a valid thresholds array. If not, use the threshold from the options\n\n thresholds = observer.thresholds || (Array.isArray(options.threshold) ? options.threshold : [options.threshold || 0]);\n instance = {\n id: id,\n observer: observer,\n elements: elements\n };\n observerMap.set(id, instance);\n }\n\n return instance;\n}\n/**\r\n * @param element - DOM Element to observe\r\n * @param callback - Callback function to trigger when intersection status changes\r\n * @param options - Intersection Observer options\r\n * @param fallbackInView - Fallback inView value.\r\n * @return Function - Cleanup function that should be triggered to unregister the observer\r\n */\n\n\nfunction observe(element, callback, options, fallbackInView) {\n if (options === void 0) {\n options = {};\n }\n\n if (fallbackInView === void 0) {\n fallbackInView = unsupportedValue;\n }\n\n if (typeof window.IntersectionObserver === 'undefined' && fallbackInView !== undefined) {\n var bounds = element.getBoundingClientRect();\n callback(fallbackInView, {\n isIntersecting: fallbackInView,\n target: element,\n intersectionRatio: typeof options.threshold === 'number' ? options.threshold : 0,\n time: 0,\n boundingClientRect: bounds,\n intersectionRect: bounds,\n rootBounds: bounds\n });\n return function () {// Nothing to cleanup\n };\n } // An observer with the same options can be reused, so lets use this fact\n\n\n var _createObserver = createObserver(options),\n id = _createObserver.id,\n observer = _createObserver.observer,\n elements = _createObserver.elements; // Register the callback listener for this element\n\n\n var callbacks = elements.get(element) || [];\n\n if (!elements.has(element)) {\n elements.set(element, callbacks);\n }\n\n callbacks.push(callback);\n observer.observe(element);\n return function unobserve() {\n // Remove the callback from the callback list\n callbacks.splice(callbacks.indexOf(callback), 1);\n\n if (callbacks.length === 0) {\n // No more callback exists for element, so destroy it\n elements[\"delete\"](element);\n observer.unobserve(element);\n }\n\n if (elements.size === 0) {\n // No more elements are being observer by this instance, so destroy it\n observer.disconnect();\n observerMap[\"delete\"](id);\n }\n };\n}\n\nvar _excluded = [\"children\", \"as\", \"tag\", \"triggerOnce\", \"threshold\", \"root\", \"rootMargin\", \"onChange\", \"skip\", \"trackVisibility\", \"delay\", \"initialInView\", \"fallbackInView\"];\n\nfunction isPlainChildren(props) {\n return typeof props.children !== 'function';\n}\n/**\r\n ## Render props\r\n\n To use the `<InView>` component, you pass it a function. It will be called\r\n whenever the state changes, with the new value of `inView`. In addition to the\r\n `inView` prop, children also receive a `ref` that should be set on the\r\n containing DOM element. This is the element that the IntersectionObserver will\r\n monitor.\r\n\n If you need it, you can also access the\r\n [`IntersectionObserverEntry`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserverEntry)\r\n on `entry`, giving you access to all the details about the current intersection\r\n state.\r\n\n ```jsx\r\n import { InView } from 'react-intersection-observer';\r\n\n const Component = () => (\r\n <InView>\r\n {({ inView, ref, entry }) => (\r\n <div ref={ref}>\r\n <h2>{`Header inside viewport ${inView}.`}</h2>\r\n </div>\r\n )}\r\n </InView>\r\n );\r\n\n export default Component;\r\n ```\r\n\n ## Plain children\r\n\n You can pass any element to the `<InView />`, and it will handle creating the\r\n wrapping DOM element. Add a handler to the `onChange` method, and control the\r\n state in your own component. Any extra props you add to `<InView>` will be\r\n passed to the HTML element, allowing you set the `className`, `style`, etc.\r\n\n ```jsx\r\n import { InView } from 'react-intersection-observer';\r\n\n const Component = () => (\r\n <InView as=\"div\" onChange={(inView, entry) => console.log('Inview:', inView)}>\r\n <h2>Plain children are always rendered. Use onChange to monitor state.</h2>\r\n </InView>\r\n );\r\n\n export default Component;\r\n ```\r\n */\n\n\nvar InView = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(InView, _React$Component);\n\n function InView(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this;\n _this.node = null;\n _this._unobserveCb = null;\n\n _this.handleNode = function (node) {\n if (_this.node) {\n // Clear the old observer, before we start observing a new element\n _this.unobserve();\n\n if (!node && !_this.props.triggerOnce && !_this.props.skip) {\n // Reset the state if we get a new node, and we aren't ignoring updates\n _this.setState({\n inView: !!_this.props.initialInView,\n entry: undefined\n });\n }\n }\n\n _this.node = node ? node : null;\n\n _this.observeNode();\n };\n\n _this.handleChange = function (inView, entry) {\n if (inView && _this.props.triggerOnce) {\n // If `triggerOnce` is true, we should stop observing the element.\n _this.unobserve();\n }\n\n if (!isPlainChildren(_this.props)) {\n // Store the current State, so we can pass it to the children in the next render update\n // There's no reason to update the state for plain children, since it's not used in the rendering.\n _this.setState({\n inView: inView,\n entry: entry\n });\n }\n\n if (_this.props.onChange) {\n // If the user is actively listening for onChange, always trigger it\n _this.props.onChange(inView, entry);\n }\n };\n\n _this.state = {\n inView: !!props.initialInView,\n entry: undefined\n };\n return _this;\n }\n\n var _proto = InView.prototype;\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n // If a IntersectionObserver option changed, reinit the observer\n if (prevProps.rootMargin !== this.props.rootMargin || prevProps.root !== this.props.root || prevProps.threshold !== this.props.threshold || prevProps.skip !== this.props.skip || prevProps.trackVisibility !== this.props.trackVisibility || prevProps.delay !== this.props.delay) {\n this.unobserve();\n this.observeNode();\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.unobserve();\n this.node = null;\n };\n\n _proto.observeNode = function observeNode() {\n if (!this.node || this.props.skip) return;\n var _this$props = this.props,\n threshold = _this$props.threshold,\n root = _this$props.root,\n rootMargin = _this$props.rootMargin,\n trackVisibility = _this$props.trackVisibility,\n delay = _this$props.delay,\n fallbackInView = _this$props.fallbackInView;\n this._unobserveCb = observe(this.node, this.handleChange, {\n threshold: threshold,\n root: root,\n rootMargin: rootMargin,\n // @ts-ignore\n trackVisibility: trackVisibility,\n // @ts-ignore\n delay: delay\n }, fallbackInView);\n };\n\n _proto.unobserve = function unobserve() {\n if (this._unobserveCb) {\n this._unobserveCb();\n\n this._unobserveCb = null;\n }\n };\n\n _proto.render = function render() {\n if (!isPlainChildren(this.props)) {\n var _this$state = this.state,\n inView = _this$state.inView,\n entry = _this$state.entry;\n return this.props.children({\n inView: inView,\n entry: entry,\n ref: this.handleNode\n });\n }\n\n var _this$props2 = this.props,\n children = _this$props2.children,\n as = _this$props2.as,\n tag = _this$props2.tag,\n props = _objectWithoutPropertiesLoose(_this$props2, _excluded);\n\n return /*#__PURE__*/React.createElement(as || tag || 'div', _extends({\n ref: this.handleNode\n }, props), children);\n };\n\n return InView;\n}(React.Component);\nInView.displayName = 'InView';\nInView.defaultProps = {\n threshold: 0,\n triggerOnce: false,\n initialInView: false\n};\n\n/**\r\n * React Hooks make it easy to monitor the `inView` state of your components. Call\r\n * the `useInView` hook with the (optional) [options](#options) you need. It will\r\n * return an array containing a `ref`, the `inView` status and the current\r\n * [`entry`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserverEntry).\r\n * Assign the `ref` to the DOM element you want to monitor, and the hook will\r\n * report the status.\r\n *\r\n * @example\r\n * ```jsx\r\n * import React from 'react';\r\n * import { useInView } from 'react-intersection-observer';\r\n *\r\n * const Component = () => {\r\n * const { ref, inView, entry } = useInView({\r\n * threshold: 0,\r\n * });\r\n *\r\n * return (\r\n * <div ref={ref}>\r\n * <h2>{`Header inside viewport ${inView}.`}</h2>\r\n * </div>\r\n * );\r\n * };\r\n * ```\r\n */\n\nfunction useInView(_temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n threshold = _ref.threshold,\n delay = _ref.delay,\n trackVisibility = _ref.trackVisibility,\n rootMargin = _ref.rootMargin,\n root = _ref.root,\n triggerOnce = _ref.triggerOnce,\n skip = _ref.skip,\n initialInView = _ref.initialInView,\n fallbackInView = _ref.fallbackInView;\n\n var unobserve = React.useRef();\n\n var _React$useState = React.useState({\n inView: !!initialInView\n }),\n state = _React$useState[0],\n setState = _React$useState[1];\n\n var setRef = React.useCallback(function (node) {\n if (unobserve.current !== undefined) {\n unobserve.current();\n unobserve.current = undefined;\n } // Skip creating the observer\n\n\n if (skip) return;\n\n if (node) {\n unobserve.current = observe(node, function (inView, entry) {\n setState({\n inView: inView,\n entry: entry\n });\n\n if (entry.isIntersecting && triggerOnce && unobserve.current) {\n // If it should only trigger once, unobserve the element after it's inView\n unobserve.current();\n unobserve.current = undefined;\n }\n }, {\n root: root,\n rootMargin: rootMargin,\n threshold: threshold,\n // @ts-ignore\n trackVisibility: trackVisibility,\n // @ts-ignore\n delay: delay\n }, fallbackInView);\n }\n }, // We break the rule here, because we aren't including the actual `threshold` variable\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [// If the threshold is an array, convert it to a string so it won't change between renders.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n Array.isArray(threshold) ? threshold.toString() : threshold, root, rootMargin, triggerOnce, skip, trackVisibility, fallbackInView, delay]);\n /* eslint-disable-next-line */\n\n useEffect(function () {\n if (!unobserve.current && state.entry && !triggerOnce && !skip) {\n // If we don't have a ref, then reset the state (unless the hook is set to only `triggerOnce` or `skip`)\n // This ensures we correctly reflect the current state - If you aren't observing anything, then nothing is inView\n setState({\n inView: !!initialInView\n });\n }\n });\n var result = [setRef, state.inView, state.entry]; // Support object destructuring, by adding the specific values.\n\n result.ref = result[0];\n result.inView = result[1];\n result.entry = result[2];\n return result;\n}\n\nexport { InView, InView as default, defaultFallbackInView, observe, useInView };\n//# sourceMappingURL=react-intersection-observer.m.js.map\n","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"IuK80hayE1umgwMAx_nu\",\"header\":\"hQYKmTnnXc4CV6iYQyZ2\",\"title\":\"LyUSG08D3uID3pIJaoq1\",\"content\":\"QHoQFIXKgK1xGJxo2S9B\",\"contentIsOpen\":\"Gsjlzm_oxR7ak41D3YKq\",\"item__spacer\":\"thSxtfvcWOZ7JEXtbCZo\",\"icon\":\"qnICZn0tw7bAEGrK0XVg\",\"iconIsOpen\":\"IbFigRJ1VGfztRv1Eqqk\",\"buttons\":\"G77Cjz70Jy99u5h1IuZ1\",\"button\":\"ofIlv9pnPuMGDtkQPJz7\"};","import getRelativeUrl from \"helpers/getRelativeUrl\";\r\n\r\nexport default (text: string | undefined): { __html: string } | undefined => {\r\n let result = undefined;\r\n\r\n if (text) {\r\n const parsedText = getRelativeUrl(text);\r\n\r\n result = {\r\n __html: parsedText\r\n };\r\n }\r\n\r\n return result;\r\n};\r\n","import { OPEN_MODAL } from \"layout/redux/overlay.actions\";\r\n\r\nconst handleOpenModal = (modal:any, stickyLink:any, dispatch) => {\r\n dispatch({\r\n type: OPEN_MODAL,\r\n stickyLink: stickyLink,\r\n modal: modal,\r\n });\r\n};\r\n\r\nexport default handleOpenModal;","// extracted by mini-css-extract-plugin\nexport default {\"button_Primary\":\"hMbjcKlMO2DHziBR94hT\",\"button_Secondary\":\"seXqO3mrKnszYXZHhXho\",\"anchor_icon\":\"iCRKwfC8iOrOJ8D7bXmn\"};","import React, { Fragment, FunctionComponent } from \"react\";\r\nimport styles from \"./Button.module.scss\";\r\nimport ButtonProps from \"./ButtonProps.interface\";\r\n\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getRelativeUrl from \"helpers/getRelativeUrl\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\n\r\nconst Button: FunctionComponent<ButtonProps> = (props) => {\r\n const buttonTypeClass = props.settings && props.settings.buttonType ? styles[`button_${props.settings.buttonType}`] : undefined;\r\n\r\n return (\r\n <Fragment>\r\n {/* Modal */}\r\n {typeof (props.onClick) !== \"undefined\" && props.modal && (!props.anchor || props.anchor.length === 0) && !props.to ? (\r\n <button style={props.style} className={combineClasses([buttonTypeClass, props.className])} onClick={props.onClick}>\r\n {props.children}\r\n </button>\r\n ) : null}\r\n\r\n {/* Function */}\r\n {typeof (props.onClick) !== \"undefined\" && (!props.anchor || props.anchor.length === 0) && !props.to && !props.modal ? (\r\n <button style={props.style} className={combineClasses([buttonTypeClass, props.className])} onClick={props.onClick}>\r\n {props.children}\r\n </button>\r\n ) : null}\r\n\r\n {/* Link */}\r\n {(!props.anchor || props.anchor.length === 0) && props.to ? (\r\n <Anchor style={props.style} className={combineClasses([buttonTypeClass, props.className])} to={getRelativeUrl(`${props.to}${props.parameters ? props.parameters : \"\"}`)}>\r\n {props.children}\r\n </Anchor>\r\n ) : null}\r\n\r\n {/* Anchor */}\r\n {!props.to && props.anchor && props.anchor.length > 0 ? (\r\n <Anchor style={props.style} className={combineClasses([buttonTypeClass, props.className])} to={getRelativeUrl(props.anchor[0].url)}>\r\n {props.children}\r\n <IconViewer className={styles.anchor_icon} name=\"arrow-bottom-right\" />\r\n </Anchor>\r\n ) : null}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default Button;","import React, { useEffect, useState, createRef, FunctionComponent } from \"react\";\r\nimport styles from \"./Accordion.module.scss\";\r\nimport AccordionProps from \"./AccordionProps.interface\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getProcessedRichtext from \"blocks/helpers/getProcessedRichtext\";\r\nimport handleOpenModal from \"blocks/helpers/handleOpenModal\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport Button from \"components/Button/Button\";\r\n\r\nconst Accordion: FunctionComponent<AccordionProps> = (props) => {\r\n const [isOpen, setIsOpen] = useState(false);\r\n const [height, setHeight] = useState(\"0px\");\r\n const content = createRef<HTMLDivElement>();\r\n const processedBodyText = getProcessedRichtext(props.content.bodyText);\r\n const iconIsOpen = isOpen ? ` ${styles.iconIsOpen}` : undefined;\r\n const contentIsOpen = isOpen ? ` ${styles.contentIsOpen}` : undefined;\r\n const processedHeadline = getProcessedRichtext(props.content.heading);\r\n\r\n const dispatch = useDispatch();\r\n\r\n useEffect(() => {\r\n if (content.current) {\r\n setHeight(!isOpen ? \"0px\" : `${content.current.scrollHeight}px`);\r\n }\r\n }, [isOpen, content]);\r\n\r\n return (\r\n <div className={styles.wrapper}>\r\n {/* Title */}\r\n <button tabIndex={0} className={styles.header} onClick={() => setIsOpen(!isOpen)}>\r\n <span className={combineClasses([styles.icon, iconIsOpen])} />\r\n {processedHeadline ? (\r\n <span className={styles.title} dangerouslySetInnerHTML={processedHeadline}></span>\r\n ) : null}\r\n </button>\r\n\r\n {/* Content */}\r\n <div className={combineClasses([styles.content, contentIsOpen])} ref={content} style={{ maxHeight: `${height}` }}>\r\n {processedBodyText ? (\r\n <div dangerouslySetInnerHTML={processedBodyText}></div>\r\n ) : null}\r\n\r\n {/* Buttons */}\r\n {props.content.buttons && props.content.buttons.length > 0 ? (\r\n <div className={styles.buttons}>\r\n {props.content.buttons.map((button, index) => {\r\n return (\r\n <Button key={button.contentUdi} className={styles.button} modal={button.content.modal} onClick={() => { button.content.modal ? handleOpenModal(button.content.modal, button.content.stickyLink, dispatch) : undefined; }} to={button.content.link} parameters={button.content.parameters} anchor={button.content.anchor} settings={button.settings}>\r\n {button.content.label}\r\n </Button>\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n\r\n <span className={styles.item__spacer} />\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Accordion;","// extracted by mini-css-extract-plugin\nexport default {\"bubbleLeftCenter\":\"mNjaMCu5uexxMaZ9InTH\",\"bubbleLeftTop\":\"d0zsAF8mQ3CqtpNcLFB8\",\"bubbleLeftBottom\":\"MDdrHKQLv8n_IUW4HMU9\",\"bubbleRightCenter\":\"vu_LWAPLeqjA8ZsCAlk5\",\"bubbleRightTop\":\"ZMBVyoGC3vpBt6W_ZDd8\",\"bubbleRightBottom\":\"VSSJQYsRa1yIWKQTsbsY\"};","import React, { FunctionComponent } from \"react\";\r\nimport BubbleBackgroundProps from \"./BubbleBackgroundProps.interface\";\r\nimport styles from \"./BubbleBackground.module.scss\";\r\n\r\nconst BubbleBackground: FunctionComponent<BubbleBackgroundProps> = (props) => {\r\n const background = props.content?.color ? props.content.color : \"var(--color-just-orange)\";\r\n const bubbleType = props.content?._contentType ? props.content._contentType : \"\";\r\n\r\n return (\r\n <div className={styles[bubbleType]} style={{ backgroundColor: background }} />\r\n );\r\n};\r\n\r\nexport default BubbleBackground;\r\n","// extracted by mini-css-extract-plugin\nexport default {\"H1\":\"aXPoST_Pk7Jyau3ufyZ3\",\"H2\":\"izj4Oafnk99eatE0gkdp\",\"H3\":\"fvz5_P6PDQ8mQ6soCm1G\",\"H4\":\"Idnfip2MX78tZbWEpnB1\",\"H5\":\"e1zw_idpKNv004My9P8I\",\"H6\":\"H7sgxea7OyRjPxRPxCwg\"};","import React, { Fragment, FunctionComponent } from \"react\";\r\nimport styles from \"./DynamicHeading.module.scss\";\r\nimport DynamicHeadingProps from \"./DynamicHeadingProps.interface\";\r\n\r\nimport combineClasses from \"helpers/combine-classes\";\r\n\r\nconst DynamicHeading: FunctionComponent<DynamicHeadingProps> = (props) => {\r\n const headlineSizeClass = props.headlineSize ? styles[props.headlineSize] : styles[\"H2\"];\r\n\r\n let HeadingWeight = \"h2\" as keyof JSX.IntrinsicElements;\r\n if (props.headlineWeight) {\r\n HeadingWeight = props.headlineWeight.toLowerCase() as keyof JSX.IntrinsicElements;\r\n }\r\n\r\n return (\r\n <Fragment>\r\n <HeadingWeight className={combineClasses([props.className, headlineSizeClass])} dangerouslySetInnerHTML={props.innerHTML}>\r\n {props.children}\r\n </HeadingWeight>\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default DynamicHeading;","import BlockSettings from \"app/blocks/models/block-settings.interface\";\r\n\r\nconst getWrapperClasses = (settings: BlockSettings): string[] => {\r\n const classes = [];\r\n\r\n if (settings?.spacingTop) {\r\n classes.push(`spacing-top--${settings.spacingTop}`);\r\n }\r\n else {\r\n classes.push(\"spacing-top--Medium\");\r\n }\r\n\r\n if (settings?.spacingBottom) {\r\n classes.push(`spacing-bottom--${settings.spacingBottom}`);\r\n }\r\n else {\r\n classes.push(\"spacing-bottom--Medium\");\r\n }\r\n\r\n if (settings?.showBorderTop && settings.showBorderBottom) {\r\n classes.push(\"border-both\");\r\n }\r\n else if (settings?.showBorderTop) {\r\n classes.push(\"border-top\");\r\n }\r\n else if (settings?.showBorderBottom) {\r\n classes.push(\"border-bottom\");\r\n }\r\n\r\n return classes;\r\n};\r\n\r\nexport default getWrapperClasses;","import isBrowserContext from \"helpers/isBrowserContext\";\r\nimport { useEffect, useState } from \"react\";\r\nimport { useLocation } from \"react-router-dom\";\r\n\r\nexport default (name?: string) => {\r\n const location = useLocation();\r\n const [identifier, setIdentifier] = useState<string | undefined>();\r\n\r\n useEffect(() => {\r\n // Identifing\r\n if (typeof(identifier) === \"undefined\") {\r\n if (typeof(name) !== \"undefined\" && name.length > 0) {\r\n const slug = name.replace(/\\s+/g, \"-\");\r\n setIdentifier(slug);\r\n }\r\n }\r\n\r\n // Scrolling\r\n if (isBrowserContext() && typeof(identifier) !== \"undefined\" && identifier === location.hash?.replace(\"#\", \"\")) {\r\n setTimeout(() => {\r\n const element = window.document.getElementById(identifier);\r\n window.scrollTo(0, element?.offsetTop ?? 0);\r\n }, 250);\r\n }\r\n }, [identifier, name]);\r\n\r\n return identifier;\r\n};","import React, { FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./Accordions.module.scss\";\r\nimport AccordionsProps from \"./AccordionsProps.interface\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport Accordion from \"./components/Accordion/Accordion\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport DynamicHeading from \"components/DynamicHeading/DynamicHeading\";\r\nimport getProcessedRichtext from \"blocks/helpers/getProcessedRichtext\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst Accordions: FunctionComponent<AccordionsProps> = (props) => {\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const processedBodyText = getProcessedRichtext(props.content.bodyText);\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={styles.inner}>\r\n {/* Intro */}\r\n {props.content.headline || processedBodyText ? (\r\n <div className={styles.intro}>\r\n {/* Headline */}\r\n {props.content.headline ? (\r\n <DynamicHeading className={styles.headline} headlineSize={props.settings.headlineSize} headlineWeight={props.settings.headlineWeight}>{props.content.headline}</DynamicHeading>\r\n ) : null}\r\n\r\n {/* Body Text */}\r\n {processedBodyText ? (\r\n <div className={styles.text} dangerouslySetInnerHTML={processedBodyText}></div>\r\n ) : null}\r\n </div>\r\n ) : null}\r\n\r\n {/* Accordions */}\r\n {props.content.accordions && props.content.accordions.length > 0 ? (\r\n <div>\r\n {props.content.accordions.map((item, index) => {\r\n return (\r\n <Accordion key={index} {...item} />\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default Accordions;","// Accordions\r\nexport { default as Accordions } from \"./Accordions\";\r\nexport type { default as AccordionsProps } from \"./AccordionsProps.interface\";\r\n\r\n// Accordion\r\nexport { default as Accordion } from \"./components/Accordion/Accordion\";\r\nexport type { default as AccordionProps } from \"./components/Accordion/AccordionProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"Z8_GVHBNgP84WcGyXSgN\",\"inner\":\"KVxeaEXgcloC6hbwDhtT\",\"image_wrapper\":\"gMuVsDCF3PaddZMGCX0Y\",\"image_overlay\":\"Y3oSYtTbtTPEJ9I5paas\",\"circle\":\"naFJU_L7qrCygsAzvrcq\",\"content\":\"S0mQYl4GUXTfvaG5vsZ5\",\"tagline\":\"JfRaT_FZcBFI3nusbIf7\",\"headline\":\"KRxhK2_1ZlWIZFLRcXPQ\",\"text\":\"dbPyQnzWDFHyqTwXpBWV\",\"buttons\":\"vLGqv9l5FhfECwbbLwRb\",\"aside\":\"O311umkbHpsF6rJgVFTs\",\"aside_image\":\"DNKVNfR_37YmA8xXxTH4\",\"aside_text\":\"DnhfoPhjkGuLuzrpZ2gB\",\"aside_heading\":\"tpcJ1aE8pr7JgOHI6tQ5\",\"aside_buttons\":\"lziZLKRG7UbnkaTC4iul\",\"aside_button\":\"lBl597VcOx_8lC9C6Skw\",\"scroll_button\":\"EMi8Jg282Zte86Z4tClg\"};","import { UmbracoImageCrop } from \"../models/media.interface\";\r\n\r\nexport default (crop: UmbracoImageCrop | undefined, imageWidth?: number, imageHeight?: number): any => {\r\n if (crop) {\r\n return {\r\n aspectRatioX: crop.width,\r\n aspectRatioY: crop.height\r\n };\r\n }\r\n else if (imageWidth && imageWidth > 0 && imageHeight && imageHeight > 0) {\r\n return {\r\n aspectRatioX: imageWidth,\r\n aspectRatioY: imageHeight\r\n };\r\n }\r\n else {\r\n return {\r\n aspectRatioX: 16,\r\n aspectRatioY: 9\r\n };\r\n }\r\n};\r\n","import { CROP_TYPE } from \"../crop.types\";\r\nimport { UmbracoImageCrop } from \"../models/media.interface\";\r\n\r\nexport default (crops: UmbracoImageCrop[] | undefined, preferredCropAlias?: string, cropFallback?: CROP_TYPE): UmbracoImageCrop | undefined => {\r\n let imageCrop = undefined;\r\n\r\n if (crops && crops.length > 0) {\r\n imageCrop = crops.find(crop => {\r\n if (preferredCropAlias) {\r\n return crop.alias === preferredCropAlias;\r\n }\r\n else if (cropFallback) {\r\n return crop.alias === cropFallback;\r\n }\r\n else {\r\n return crop.alias === \"Fullscreen (4:3)\";\r\n }\r\n });\r\n }\r\n\r\n return imageCrop;\r\n};\r\n","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"ss4migBBbrcuAe_8mq3h\",\"contain_wide\":\"_6sHKk0zT7lPwkeaGBHR\",\"contain_long\":\"Jss_cYKn87KdFSiKcWRg\",\"image\":\"rVAYO3bhpKQ1DCi4BKul\",\"is_server\":\"w8hTuZr2Z8KoMFuJKsrW\",\"fadeIn\":\"DB2dVlfISdNFoMTGZY7M\",\"ratio\":\"E7jPRFYDwhMEkJ541Zjj\",\"loading\":\"onmtYE25CTRoNt6SWxtQ\",\"lds-spinner\":\"_MeC4xIXaRhj1DKNcRkN\",\"error\":\"qzWqDE5Lvd68QuM5gn6Q\"};","export enum ImageLoadingState {\r\n NONE = \"NONE\",\r\n LOADING = \"LOADING\",\r\n LOADED = \"LOADED\",\r\n ERROR = \"ERROR\"\r\n}","import { Dispatch, SetStateAction } from \"react\";\r\nimport { ImageLoadingState } from \"../image-loading.enum\";\r\n\r\nexport default (imageUrl: string, setImageLoadingState: Dispatch<SetStateAction<ImageLoadingState>>): void => {\r\n const newImg = new Image();\r\n\r\n newImg.onload = () => {\r\n setImageLoadingState(ImageLoadingState.LOADED);\r\n };\r\n\r\n newImg.onerror = () => {\r\n setImageLoadingState(ImageLoadingState.ERROR);\r\n };\r\n\r\n newImg.src = imageUrl;\r\n};","export default (closestTo: number): number => {\r\n const widthTiers = [400, 800, 1280, 1920];\r\n let closest = Math.max.apply(null, widthTiers);\r\n\r\n for (const widthTier of widthTiers) {\r\n if (widthTier >= closestTo && widthTier < closest) {\r\n closest = widthTier;\r\n break;\r\n }\r\n }\r\n\r\n return closest;\r\n};\r\n","import urlBuilder from \"app/umbraco/helpers/urlBuilder\";\r\nimport getClosestWidthTier from \"app/media/helpers/getClosestWidthTier\";\r\nimport { UmbracoImageCrop, UmbracoImageFocalPoint } from \"../models/media.interface\";\r\n\r\nexport default (src: string, clientWidth: number, extensionType?: string, crop?: UmbracoImageCrop, focalPoint?: UmbracoImageFocalPoint, heightRatio?: number): string => {\r\n const imageUrl = urlBuilder(src);\r\n const params = new URLSearchParams();\r\n\r\n if (crop && crop.coordinates) {\r\n params.set(\"crop\", `${crop.coordinates.x1},${crop.coordinates.y1},${crop.coordinates.x2},${crop.coordinates.y2}`);\r\n params.set(\"cropmode\", \"percentage\");\r\n }\r\n else if (focalPoint) {\r\n params.set(\"center\", `${focalPoint.top},${focalPoint.left}`);\r\n params.set(\"mode\", \"crop\");\r\n\r\n if (typeof (heightRatio) !== \"undefined\") {\r\n params.set(\"heightratio\", heightRatio.toString());\r\n }\r\n }\r\n else {\r\n params.set(\"center\", `${0.5},${0.5}`);\r\n params.set(\"mode\", \"crop\");\r\n\r\n if (typeof (heightRatio) !== \"undefined\") {\r\n params.set(\"heightratio\", heightRatio.toString());\r\n }\r\n }\r\n\r\n // Search for closest value to only have 5 different image sizes to cache.\r\n const imageWidth = getClosestWidthTier(clientWidth);\r\n params.set(\"width\", imageWidth.toString());\r\n\r\n params.set(\"upscale\", \"true\");\r\n params.set(\"format\", extensionType || \"jpg\");\r\n\r\n if (extensionType === \"jpg\" || extensionType === \"jpeg\") {\r\n params.set(\"bgcolor\", \"white\");\r\n }\r\n else if (extensionType === \"png\" || extensionType === \"gif\") {\r\n params.set(\"bgcolor\", \"transparent\");\r\n }\r\n\r\n // TODO: .WEBP extension\r\n\r\n const querySeparator = imageUrl.toString().indexOf(\"?\") > 0 ? \"&\" : \"?\";\r\n return `${imageUrl}${querySeparator}${params.toString()}`;\r\n};\r\n","import React, { FunctionComponent, useEffect, useState } from \"react\";\r\nimport styles from \"./ImageViewer.module.scss\";\r\nimport ImageViewerProps from \"./ImageViewerProps.interface\";\r\n\r\nimport { ImageLoadingState } from \"./image-loading.enum\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport { useWebPSupportCheck } from \"react-use-webp-support-check\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\nimport preloadImage from \"./helpers/preload-image\";\r\nimport setImageOptions from \"app/media/helpers/setImageOptions\";\r\n\r\nconst ImageViewer: FunctionComponent<ImageViewerProps> = (props) => {\r\n const { ref, inView, entry } = useInView({ triggerOnce: true, threshold: 0.2 });\r\n const supportsWebP = useWebPSupportCheck();\r\n\r\n const [imageUrl, setImageUrl] = useState<string>();\r\n const [imageLoadingState, setImageLoadingState] = useState<ImageLoadingState>(ImageLoadingState.NONE);\r\n\r\n const boundsClass = props.type === \"containX\" ? styles.contain_wide : props.type === \"containY\" ? styles.contain_long : props.type === \"contain\" ? (props.aspectRatioX && props.aspectRatioY && props.aspectRatioX > props.aspectRatioY ? styles.contain_wide : styles.contain_long) : undefined;\r\n const fallbackUrl = setImageOptions(props.src, 400, supportsWebP ? \"webp\" : props.extensionType, props.crop, props.focalPoint, props.aspectRatioX && props.aspectRatioY ? (props.aspectRatioY / props.aspectRatioX) : undefined);\r\n\r\n {/* TODO: Update on resize */ }\r\n\r\n useEffect(() => {\r\n if (entry && inView === true) {\r\n const boundingClientRect = entry.target.getBoundingClientRect();\r\n const boundingClientWidth = boundingClientRect?.width;\r\n const boundingClientHeight = boundingClientRect?.height;\r\n\r\n if (boundingClientWidth && boundingClientWidth > 0) {\r\n const clientWidth = boundingClientWidth * (window?.devicePixelRatio || 1);\r\n const clientHeight = boundingClientHeight * (window?.devicePixelRatio || 1);\r\n\r\n const heightRatio = props.aspectRatioX && props.aspectRatioY ? (props.aspectRatioY / props.aspectRatioX) : (clientHeight / clientWidth);\r\n const imageUrlWithResizeOptions = setImageOptions(props.src, clientWidth, supportsWebP ? \"webp\" : props.extensionType, props.crop, props.focalPoint, heightRatio);\r\n setImageUrl(imageUrlWithResizeOptions);\r\n\r\n preloadImage(imageUrlWithResizeOptions, setImageLoadingState);\r\n }\r\n }\r\n }, [entry?.target, inView]);\r\n\r\n return (\r\n <div className={combineClasses([styles.wrapper, boundsClass, props.className])} ref={ref}>\r\n {/* TODO: Set Schema ImageObject */}\r\n {/* Image */}\r\n {isBrowserContext() && imageLoadingState === ImageLoadingState.LOADED ? (\r\n <img className={combineClasses([styles.image, ])} src={imageUrl} alt={props.alt} loading=\"lazy\" />\r\n ) : null}\r\n\r\n {!isBrowserContext() && props.src ? (\r\n <img className={combineClasses([styles.image, styles.is_server])} src={fallbackUrl} alt={props.alt} loading=\"lazy\" />\r\n ) : null}\r\n\r\n {/* Loading */}\r\n {imageLoadingState === ImageLoadingState.LOADING ? (\r\n <div className={styles.loading}>Loading</div>\r\n ) : null}\r\n\r\n {/* Error */}\r\n {imageLoadingState === ImageLoadingState.ERROR ? (\r\n <div className={styles.error}>Error</div>\r\n ) : null}\r\n\r\n {/* TODO: Set the .ratio background color based on the backgroundColor from the media */}\r\n {typeof (props.aspectRatioX) !== \"undefined\" && typeof (props.aspectRatioY) !== \"undefined\" ? (\r\n <svg viewBox={`0 0 ${props.aspectRatioX} ${props.aspectRatioY}`} version=\"1.1\" className={styles.ratio} preserveAspectRatio=\"xMidYMid\" xmlSpace=\"preserve\"></svg>\r\n ) : null}\r\n </div>\r\n );\r\n};\r\n\r\nexport default ImageViewer;","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"kN7lUKh14pY0OKNzyqk4\"};","import React, { FunctionComponent } from \"react\";\r\nimport styles from \"./Paragraph.module.scss\";\r\nimport ParagraphProps from \"./ParagraphProps.interface\";\r\n\r\nimport getProcessedRichtext from \"blocks/helpers/getProcessedRichtext\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\n\r\nconst Paragraph: FunctionComponent<ParagraphProps> = (props) => {\r\n const processedBodyText = getProcessedRichtext(props.innerHTML);\r\n\r\n return (\r\n <div className={combineClasses([styles.wrapper, props.className])} dangerouslySetInnerHTML={processedBodyText}>\r\n {props.children}\r\n </div>\r\n );\r\n};\r\n\r\nexport default Paragraph;","import React, { FunctionComponent, Fragment, createRef } from \"react\";\r\nimport styles from \"./Banner.module.scss\";\r\nimport BannerProps from \"./BannerProps.interface\";\r\n\r\nimport { useDispatch } from \"react-redux\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport Button from \"components/Button/Button\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport DynamicHeading from \"components/DynamicHeading/DynamicHeading\";\r\nimport getImageAspectRatio from \"app/media/helpers/getImageAspectRatio\";\r\nimport getImageCrop from \"app/media/helpers/getImageCrop\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport handleOpenModal from \"blocks/helpers/handleOpenModal\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport ImageViewer from \"components/ImageViewer/ImageViewer\";\r\nimport Paragraph from \"components/Paragraph/Paragraph\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\n\r\nconst Banner: FunctionComponent<BannerProps> = (props) => {\r\n const dispatch = useDispatch();\r\n\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const wrapperElementRef = createRef<HTMLDivElement>();\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const imageCrop = getImageCrop(props.content.image?.umbracoFile.crops, undefined, \"Square (1:1)\");\r\n const imageAspectRatio = getImageAspectRatio(imageCrop, props.content.image?.umbracoWidth, props.content.image?.umbracoHeight);\r\n\r\n const backgroundColor = props.settings.circle1BackgroundColor ? props.settings.circle1BackgroundColor : undefined;\r\n const overlayColor = props.settings.circle2BackgroundColor ? props.settings.circle2BackgroundColor : undefined;\r\n const circleColor = props.settings.circle3BackgroundColor ? props.settings.circle3BackgroundColor : undefined;\r\n\r\n const clickScrollHandler = () => {\r\n if (wrapperElementRef.current) {\r\n const scrollOverThreshold = wrapperElementRef.current.scrollTop + wrapperElementRef.current.offsetHeight;\r\n window.scrollTo({\r\n top: scrollOverThreshold,\r\n left: 0,\r\n behavior: \"smooth\",\r\n });\r\n }\r\n };\r\n\r\n return (\r\n <section\r\n className={combineClasses([styles.wrapper, ...wrapperClasses])}\r\n id={identifier}\r\n ref={wrapperElementRef}\r\n >\r\n <div className={styles.inner}>\r\n <div className={styles.content}>\r\n {/* Tagline */}\r\n {props.content.tagline ? <span className={styles.tagline}>{props.content.tagline}</span> : null}\r\n\r\n {/* Headline */}\r\n {props.content.headline ? (\r\n <DynamicHeading\r\n className={styles.headline}\r\n headlineSize={props.settings.headlineSize}\r\n headlineWeight={props.settings.headlineWeight}\r\n >\r\n {props.content.headline}\r\n </DynamicHeading>\r\n ) : null}\r\n\r\n {/* Text */}\r\n {props.content.bodyText ? (\r\n <Fragment>\r\n <Paragraph\r\n className={styles.text}\r\n innerHTML={props.content.bodyText}\r\n />\r\n {/* <Paragraph className={styles.text} innerHTML={\"Aenean fringilla est magna, ultricies pellentesque turpis porttitor ut. Suspendisse in risus vel tortor varius auctor. Mauris et porta odio, eget pretium quam. Curabitur at tincidunt arcu, non suscipit dui. Aenean feugiat tempus odio, eget pellentesque elit tempor at. Praesent ullamcorper eros massa, non blandit turpis ultricies bibendum. Mauris scelerisque convallis rutrum. Donec a mauris nulla. Aenean fringilla est magna, ultricies pellentesque turpis porttitor ut. Suspendisse in risus vel tortor varius auctor. Mauris et porta odio, eget pretium quam. Curabitur at tincidunt arcu, non suscipit dui. Aenean feugiat tempus odio, eget pellentesque elit tempor at. Praesent ullamcorper eros massa, non blandit turpis ultricies bibendum. Mauris scelerisque convallis rutrum. Donec a mauris nulla.Aenean fringilla est magna, ultricies pellentesque turpis porttitor ut. Suspendisse in risus vel tortor varius auctor. Mauris et porta odio, eget pretium quam. Curabitur at tincidunt arcu, non suscipit dui. Aenean feugiat tempus odio, eget pellentesque elit tempor at. Praesent ullamcorper eros massa, non blandit turpis ultricies bibendum. Mauris scelerisque convallis rutrum. Donec a mauris nulla.\"} />\r\n <Paragraph className={styles.text} innerHTML={\"Aenean fringilla est magna, ultricies pellentesque turpis porttitor ut. Suspendisse in risus vel tortor varius auctor. Mauris et porta odio, eget pretium quam. Curabitur at tincidunt arcu, non suscipit dui. Aenean feugiat tempus odio, eget pellentesque elit tempor at. Praesent ullamcorper eros massa, non blandit turpis ultricies bibendum. Mauris scelerisque convallis rutrum. Donec a mauris nulla. Donec in fringilla magna, suscipit sodales dui. Sed et ligula mauris.Sed ultrices magna et placerat viverra. Maecenas vehicula nulla leo, quis vestibulum nunc tristique eget. Phasellus lobortis lorem nisi, fringilla suscipit felis sagittis sed. Nulla non libero urna. Phasellus suscipit arcu et odio malesuada, ac tincidunt ligula sodales. Praesent nulla libero, condimentum a augue eu, pellentesque interdum nunc. Integer ipsum nisi, blandit iaculis libero vitae, finibus scelerisque diam. Nulla vitae mauris non nisl volutpat ullamcorper. Curabitur pellentesque leo ac magna scelerisque, a fringilla metus aliquet. Phasellus nec finibus ligula. Pellentesque porta est sem, ut tincidunt ante condimentum vitae.Donec id magna accumsan, consectetur tortor eget, venenatis nisi. Nullam pretium non turpis a sagittis. Nullam id euismod ante, eu tincidunt ex. Phasellus quis convallis tellus, eget finibus justo. In dui erat, lacinia nec sem quis, semper sagittis nunc. Duis a mattis dolor, et ultrices elit. Integer in purus nisl.Nam tincidunt quam in magna vulputate, vestibulum gravida sapien viverra. Ut egestas nunc quis nunc faucibus faucibus. Integer a odio lacus. Nunc tempus lectus ex, nec semper quam venenatis a. Mauris at purus quis orci posuere iaculis. Duis sollicitudin fringilla dui et suscipit. Fusce viverra, nibh maximus placerat auctor, sem leo porta tellus, in blandit mi neque non risus. Nunc quis erat sed justo varius pulvinar iaculis id nisl. Mauris ullamcorper tellus quam, nec malesuada lacus eleifend et. Mauris vel finibus sem, quis condimentum leo. Praesent turpis magna, posuere eu lacinia et, scelerisque eget urna. Proin enim ligula, finibus at quam quis, egestas congue ante. Quisque vitae justo est. Mauris sed ante pharetra, varius nibh id, congue mauris. Sed mi lacus, interdum interdum dolor at, auctor tempor metus. Integer dapibus varius vulputate.Nullam vitae felis et ligula consectetur tincidunt eu ut risus. Nunc quis tortor ultricies mauris vulputate tristique. Phasellus consequat est a commodo cursus. Praesent eu nulla ac tellus pellentesque lacinia vitae vitae odio. Aenean vel semper libero. Etiam aliquet nibh lobortis, auctor elit sit amet, fermentum tortor. Curabitur diam nisl, facilisis in pretium at, accumsan a massa. Nullam euismod eros suscipit, blandit diam in, ultricies ligula. Praesent eu diam non mauris efficitur varius vitae ut quam. Proin sodales, sem at tincidunt placerat, metus orci ullamcorper elit, vitae faucibus sapien lacus ac augue. Interdum et malesuada fames ac ante ipsum primis in faucibus. Quisque maximus, nisi sed rhoncus venenatis, massa ipsum malesuada magna, nec interdum mi ante sed lectus.\"} /> */}\r\n </Fragment>\r\n ) : null}\r\n\r\n {/* Buttons */}\r\n {props.content.buttons && props.content.buttons.length > 0 ? (\r\n <div className={styles.buttons}>\r\n {props.content.buttons.map((button) => {\r\n return (\r\n <Button\r\n key={button.contentUdi}\r\n modal={button.content.modal}\r\n onClick={() => {\r\n button.content.modal ? handleOpenModal(button.content.modal, button.content.stickyLink, dispatch) : undefined;\r\n }}\r\n to={button.content.link}\r\n parameters={button.content.parameters}\r\n anchor={button.content.anchor}\r\n settings={button.settings}\r\n >\r\n {button.content.label}\r\n </Button>\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n </div>\r\n\r\n {/* Media */}\r\n <div\r\n className={styles.image_wrapper}\r\n style={{ backgroundColor: backgroundColor }}\r\n >\r\n {/* Overlay */}\r\n {props.content.image ? (\r\n <div\r\n className={styles.image_overlay}\r\n style={{ backgroundColor: overlayColor }}\r\n />\r\n ) : null}\r\n\r\n {/* Image */}\r\n {props.content.image ? (\r\n <ImageViewer\r\n src={props.content.image.umbracoFile.src}\r\n crop={imageCrop}\r\n focalPoint={props.content.image.umbracoFile.focalPoint}\r\n alt={props.content.headline}\r\n aspectRatioX={imageAspectRatio.aspectRatioX}\r\n aspectRatioY={imageAspectRatio.aspectRatioY}\r\n />\r\n ) : null}\r\n </div>\r\n\r\n <div\r\n className={styles.circle}\r\n style={{ backgroundColor: circleColor }}\r\n />\r\n </div>\r\n\r\n {/* Aside */}\r\n <div className={styles.aside}>\r\n {/* Image */}\r\n {props.content.aside && props.content.aside.length > 0 && props.content.aside[0].content.asideImage ? (\r\n <ImageViewer\r\n src={props.content.aside[0].content.asideImage.umbracoFile.src}\r\n focalPoint={props.content.aside[0].content.asideImage.umbracoFile.focalPoint}\r\n aspectRatioX={1}\r\n aspectRatioY={1}\r\n alt={props.content.headline}\r\n className={styles.aside_image}\r\n />\r\n ) : null}\r\n\r\n {/* Richtext */}\r\n {props.content.aside && props.content.aside.length > 0 && props.content.aside[0].content.bodyText ? (\r\n <Paragraph\r\n className={styles.aside_text}\r\n innerHTML={props.content.aside[0].content.bodyText}\r\n />\r\n ) : null}\r\n\r\n {/* Links: Headline */}\r\n {props.content.aside && props.content.aside.length > 0 && props.content.aside[0].content.heading ? (\r\n <DynamicHeading className={styles.aside_heading}>{props.content.aside[0].content.heading}</DynamicHeading>\r\n ) : null}\r\n\r\n {/* Links */}\r\n {props.content.aside && props.content.aside.length > 0 && props.content.aside[0].content.buttons ? (\r\n <div className={styles.aside_buttons}>\r\n {props.content.aside[0].content.buttons.map((button: any, index: number) => {\r\n return (\r\n <Anchor\r\n key={index}\r\n to={button.content.link}\r\n className={styles.aside_button}\r\n >\r\n {button.content.label}\r\n </Anchor>\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n </div>\r\n\r\n {/* Scroll Button */}\r\n {props.settings.showAnchorButton ? (\r\n <button\r\n aria-label=\"Scroll Banner\"\r\n className={styles.scroll_button}\r\n onClick={clickScrollHandler}\r\n >\r\n <IconViewer\r\n name=\"arrow-bottom-left\"\r\n aspectRatioX={1}\r\n aspectRatioY={1}\r\n />\r\n </button>\r\n ) : null}\r\n </section>\r\n );\r\n};\r\n\r\nexport default Banner;\r\n","// Banner\r\nexport { default as Banner } from \"./Banner\";\r\nexport type { default as BannerProps } from \"./BannerProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"G_VURvD9p4BtSMhh0lQb\",\"header\":\"QLknX5JObsf9rS8VdCFA\",\"header_inner\":\"L1ZOlMygQAtQAVrwsRxg\",\"header_content\":\"EX88mMKRjCAKFubC1k5x\",\"buttons\":\"XAG1qGXX8RBOi1_WGC3R\",\"button\":\"bWxrkFu5DnEOfnRQyJGR\"};","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"ym5TI0i_DgTLd96WHIX8\",\"fadeIn\":\"zVoh0Shq_VSokIrbPjgX\",\"link\":\"vk9X6yDSEtAzXvaObFcQ\",\"has_link\":\"vIpMHXCsQJvHIuq7SVSd\",\"image\":\"IxqpqVN3QlfDqjfPfJvm\",\"content\":\"TU2tUIpceQsxGNd9RNKg\",\"tagline\":\"NUn3c20VByuZI3gMErZr\",\"heading\":\"l4XJWRFvdToaezbkTW3_\",\"text\":\"yOg_t4anp6Be1oWBT1CZ\"};","export default (links?: any[]) => {\r\n if (links && links.length > 0) {\r\n const modalLink = links?.find(x => x.content._contentType === \"modalLink\");\r\n const anchorLink = links?.find(x => x.content._contentType === \"anchorLink\");\r\n const link = links?.find(x => x.content._contentType === \"internalLink\" || x.content._contentType === \"externalLink\");\r\n\r\n if (modalLink) {\r\n return modalLink;\r\n }\r\n else if (anchorLink) {\r\n return anchorLink;\r\n }\r\n else {\r\n return link;\r\n }\r\n }\r\n};","import React, { Fragment, FunctionComponent } from \"react\";\r\nimport LinkProps from \"./LinkProps.interface\";\r\n\r\nimport { useDispatch } from \"react-redux\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport handleOpenModal from \"blocks/helpers/handleOpenModal\";\r\nimport getRelativeUrl from \"helpers/getRelativeUrl\";\r\n\r\nconst Link: FunctionComponent<LinkProps> = (props) => {\r\n const dispatch = useDispatch();\r\n\r\n return (\r\n <Fragment>\r\n {/* Modal */}\r\n {props.link && (props.link.content._contentType === \"modalButton\" || props.link.content._contentType === \"modalLink\") ? (\r\n <Anchor aria=\"Modal\" className={props.className} modal={props.link} onClick={() => handleOpenModal(props.link?.content.modal, props.link?.content.stickyLink, dispatch)}>\r\n {props.children}\r\n </Anchor>\r\n ) : null}\r\n\r\n {/* Function */}\r\n {typeof (props.onClick) !== \"undefined\" && !props.link ? (\r\n <span className={props.className} onClick={props.onClick}>\r\n {props.children}\r\n </span>\r\n ) : null}\r\n\r\n {/* Internal */}\r\n {props.link && (props.link.content._contentType === \"internalLink\" || props.link.content._contentType === \"internalButton\") ? (\r\n <Anchor className={props.className} to={getRelativeUrl(props.link.content.link)}>\r\n {props.children}\r\n </Anchor>\r\n ) : null}\r\n\r\n {/* External */}\r\n {props.link && (props.link.content._contentType === \"externalLink\" || props.link.content._contentType === \"externalButton\") ? (\r\n <Anchor className={props.className} to={getRelativeUrl(props.link.content.link)}>\r\n {props.children}\r\n </Anchor>\r\n ) : null}\r\n\r\n {/* Anchor */}\r\n {props.link && (props.link.content._contentType === \"anchorButton\" || props.link.content._contentType === \"anchorLink\") ? (\r\n <Anchor className={props.className} to={getRelativeUrl(props.link.content.anchor[0].url)}>\r\n {props.children}\r\n </Anchor>\r\n ) : null}\r\n\r\n {/* Fallback */}\r\n {!props.link && !props.onClick ? (\r\n <div className={props.className}>\r\n {props.children}\r\n </div>\r\n ) : null}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default Link;\r\n","import React, { FunctionComponent } from \"react\";\r\nimport styles from \"./Card.module.scss\";\r\nimport CardProps from \"./CardProps.interface\";\r\n\r\nimport getSpecialLink from \"./helpers/getSpecialLink\";\r\n\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getImageAspectRatio from \"app/media/helpers/getImageAspectRatio\";\r\nimport getImageCrop from \"app/media/helpers/getImageCrop\";\r\nimport ImageViewer from \"components/ImageViewer/ImageViewer\";\r\nimport Link from \"components/Link/Link\";\r\nimport Paragraph from \"components/Paragraph/Paragraph\";\r\n\r\nconst Card: FunctionComponent<CardProps> = (props) => {\r\n const [wrapperElementRef, inView] = useInView({ triggerOnce: false, threshold: 0.4, rootMargin: \"50% -40px 50% 0px\" });\r\n const isInViewClass = inView === true ? \"in_view\" : undefined;\r\n\r\n const image = props.content.image ? props.content.image : undefined;\r\n const imageCrop = getImageCrop(image?.umbracoFile.crops, props.imageCrop, \"Fullscreen (4:3)\");\r\n const imageAspectRatio = getImageAspectRatio(imageCrop, image?.umbracoWidth, image?.umbracoHeight);\r\n\r\n const link = getSpecialLink(props.content.link);\r\n const hasLinkClass = link ? styles.has_link : undefined;\r\n\r\n return (\r\n <div className={combineClasses([styles.wrapper, isInViewClass])} ref={wrapperElementRef}>\r\n <Link className={combineClasses([styles.link, hasLinkClass])} link={link}>\r\n {/* Media */}\r\n {image ? (\r\n <ImageViewer className={styles.image} type=\"containX\" src={image.umbracoFile.src} focalPoint={image.umbracoFile.focalPoint} aspectRatioX={imageAspectRatio.aspectRatioX} aspectRatioY={imageAspectRatio.aspectRatioY} alt={props.content.imageAlternative} />\r\n ) : null}\r\n\r\n <div className={styles.content}>\r\n {/* Tagline */}\r\n {props.content.tagline ? (\r\n <span className={styles.tagline}>{props.content.tagline}</span>\r\n ) : null}\r\n\r\n {/* Heading */}\r\n {props.content.heading ? (\r\n <h3 className={styles.heading}>{props.content.heading}</h3>\r\n ) : null}\r\n\r\n {/* Text */}\r\n {props.content.bodyText ? (\r\n <Paragraph className={styles.text} innerHTML={props.content.bodyText} />\r\n ) : null}\r\n </div>\r\n </Link>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Card;","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"UkwFQ_r6TW78TFFzzWD9\",\"list\":\"n8z_QYnTj1IeUlgtq34p\",\"pagination\":\"vSql8lNLouNVcys593L4\",\"pagination_inner\":\"RIxqOr6W8vW5g9W6vCOA\",\"previous\":\"qZ9carMsed1k4TgUKTkp\",\"next\":\"j35khq98XG8O44_tK9HB\",\"scroll_wrapper\":\"mrJCtpMQ3CE8YHWTOiFj\",\"scroll_input\":\"mpbQnmbpaPXYuTbc5dAk\"};","export default (listElementRef: any) => {\r\n const result: number[] = [];\r\n\r\n if (listElementRef) {\r\n const children = listElementRef.children;\r\n\r\n for (let i = 0; i < children.length; i++) {\r\n const isInView = children[i].classList.contains(\"in_view\");\r\n\r\n if (isInView) {\r\n result.push(i);\r\n }\r\n }\r\n }\r\n\r\n return result;\r\n};","import { useState, useEffect } from \"react\";\r\n\r\nexport default (value: any, delay: number) => {\r\n const [debouncedValue, setDebouncedValue] = useState(value);\r\n\r\n useEffect(() => {\r\n const handler = setTimeout(() => {\r\n setDebouncedValue(value);\r\n }, delay);\r\n\r\n return () => {\r\n clearTimeout(handler);\r\n };\r\n }, [value]);\r\n\r\n return debouncedValue;\r\n};","import React, { FunctionComponent, useEffect, useRef, useState } from \"react\";\r\nimport styles from \"./Carousel.module.scss\";\r\nimport CarouselProps from \"./CarouselProps.interface\";\r\n\r\nimport getInViewChildren from \"./helpers/getInViewChildren\";\r\n\r\nimport useDebounce from \"hooks/useDebounce\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\n\r\nconst Carousel: FunctionComponent<CarouselProps> = (props) => {\r\n const listElementRef = useRef<HTMLDivElement>(null);\r\n const inputElementRef = useRef<HTMLInputElement>(null);\r\n\r\n const [showScrollBar, setShowScrollbar] = useState<boolean>(false);\r\n\r\n const [scrollbarPosition, setScrollbarPosition] = useState<any>({});\r\n const debouncedScrollbarPosition = useDebounce(scrollbarPosition, 25);\r\n\r\n // Show scrollbar\r\n useEffect(() => {\r\n setTimeout(() => {\r\n const showScrollBar = listElementRef?.current && (listElementRef.current.scrollWidth - listElementRef.current.clientWidth) > 0;\r\n setShowScrollbar(showScrollBar ?? false);\r\n }, 100);\r\n }, [listElementRef.current?.scrollWidth, listElementRef.current?.clientWidth]);\r\n\r\n // Scrollbar position (master)\r\n const onScrollHandler = (alias: string, event: any) => {\r\n if (listElementRef.current) {\r\n let result = 0;\r\n\r\n // Finding scroll position\r\n if (alias === \"LIST\") {\r\n const maxScrollWidth = listElementRef.current.scrollWidth - listElementRef.current.clientWidth;\r\n result = 100 * listElementRef.current.scrollLeft / maxScrollWidth;\r\n }\r\n else if (alias === \"INPUT\") {\r\n const maxScrollWidth = listElementRef.current.scrollWidth - listElementRef.current.clientWidth;\r\n result = (maxScrollWidth / 100) * event.target.value;\r\n }\r\n\r\n setScrollbarPosition({\r\n alias: alias,\r\n scroll: result\r\n });\r\n }\r\n };\r\n\r\n const onPreviousClick = () => {\r\n const inViewIndexes = getInViewChildren(listElementRef.current);\r\n\r\n if (inViewIndexes && inViewIndexes?.length > 0) {\r\n const firstIndex = inViewIndexes[0];\r\n\r\n if (listElementRef.current && typeof (firstIndex) !== \"undefined\" && firstIndex < 2) {\r\n listElementRef.current.scrollLeft = 0;\r\n }\r\n else if (listElementRef.current && firstIndex) {\r\n listElementRef.current.children[firstIndex - 1]?.scrollIntoView({ behavior: \"smooth\", block: \"nearest\", inline: \"start\" });\r\n }\r\n }\r\n };\r\n\r\n const onNextClick = () => {\r\n const inViewIndexes = getInViewChildren(listElementRef.current);\r\n\r\n if (inViewIndexes && inViewIndexes?.length > 0) {\r\n const lastIndex = inViewIndexes[inViewIndexes.length - 1];\r\n\r\n if (listElementRef.current && lastIndex === listElementRef.current.children.length - 1) {\r\n listElementRef.current.scrollLeft = listElementRef.current.scrollWidth;\r\n }\r\n else if (listElementRef.current) {\r\n listElementRef.current.children[lastIndex + 1]?.scrollIntoView({ behavior: \"smooth\", block: \"nearest\", inline: \"end\" });\r\n }\r\n }\r\n };\r\n\r\n // Scrollbar position (slave)\r\n useEffect(() => {\r\n if (typeof (debouncedScrollbarPosition.alias) !== \"undefined\") {\r\n // Outputting to others\r\n if (debouncedScrollbarPosition.alias !== \"INPUT\" && inputElementRef?.current) {\r\n inputElementRef.current.value = debouncedScrollbarPosition.scroll;\r\n }\r\n if (debouncedScrollbarPosition.alias !== \"LIST\" && listElementRef?.current) {\r\n listElementRef.current.scrollLeft = debouncedScrollbarPosition.scroll;\r\n }\r\n }\r\n }, [debouncedScrollbarPosition]);\r\n\r\n return (\r\n <div className={styles.wrapper}>\r\n {/* List */}\r\n <div className={styles.list} ref={listElementRef} onScroll={(event) => onScrollHandler(\"LIST\", event)}>\r\n {props.children}\r\n </div>\r\n\r\n {/* Pagination */}\r\n {showScrollBar === true ? (\r\n <div className={styles.pagination}>\r\n <div className={styles.pagination_inner}>\r\n <button className={combineClasses([styles.previous])} onClick={() => onPreviousClick()}>\r\n <IconViewer name=\"arrow-left\" />\r\n </button>\r\n <button className={combineClasses([styles.next])} onClick={() => onNextClick()}>\r\n <IconViewer name=\"arrow-right\" />\r\n </button>\r\n\r\n {/* Scrollbar */}\r\n <div className={styles.scroll_wrapper}>\r\n <input className={styles.scroll_input} min=\"0\" max=\"100\" step=\"1\" type=\"range\" defaultValue=\"0\" ref={inputElementRef} onChange={(event) => onScrollHandler(\"INPUT\", event)} />\r\n </div>\r\n </div>\r\n </div>\r\n ) : null}\r\n </div>\r\n );\r\n};\r\n\r\nexport default Carousel;","import React, { FunctionComponent } from \"react\";\r\nimport styles from \"./Cards.module.scss\";\r\nimport CardsProps from \"./CardsProps.interface\";\r\n\r\nimport Card from \"./components/Card/Card\";\r\nimport Carousel from \"./components/Carousel/Carousel\";\r\n\r\nimport { useDispatch } from \"react-redux\";\r\nimport Button from \"components/Button/Button\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport DynamicHeading from \"components/DynamicHeading/DynamicHeading\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport handleOpenModal from \"blocks/helpers/handleOpenModal\";\r\nimport Paragraph from \"components/Paragraph/Paragraph\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\n\r\nconst Cards: FunctionComponent<CardsProps> = (props) => {\r\n const dispatch = useDispatch();\r\n\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n return (\r\n <section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier}>\r\n <div className={styles.header}>\r\n <div className={styles.header_inner}>\r\n <div className={styles.header_content}>\r\n {/* Headline */}\r\n {props.content.headline ? (\r\n <DynamicHeading headlineSize={props.settings.headlineSize} headlineWeight={props.settings.headlineWeight}>{props.content.headline}</DynamicHeading>\r\n ) : null}\r\n\r\n {/* Text */}\r\n {props.content.bodyText ? (\r\n <Paragraph innerHTML={props.content.bodyText} />\r\n ) : null}\r\n </div>\r\n\r\n {/* Buttons */}\r\n {props.content.buttons && props.content.buttons.length > 0 ? (\r\n <div className={styles.buttons}>\r\n {props.content.buttons.map((button, index) => {\r\n return (\r\n <Button key={button.contentUdi} className={styles.button} modal={button.content.modal} onClick={() => { button.content.modal ? handleOpenModal(button.content.modal, button.content.stickyLink, dispatch) : undefined; }} to={button.content.link} parameters={button.content.parameters} anchor={button.content.anchor} settings={button.settings}>{button.content.label}</Button>\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n </div>\r\n </div>\r\n\r\n {/* Cards */}\r\n {props.content.cards && props.content.cards.length > 0 ? (\r\n <Carousel>\r\n {props.content.cards.map((item, index) => {\r\n return (\r\n <Card key={index} {...item} imageCrop={props.settings.imageCrop} />\r\n );\r\n })}\r\n </Carousel>\r\n ) : null}\r\n </section>\r\n );\r\n};\r\n\r\nexport default Cards;","// Cards\r\nexport { default as Cards } from \"./Cards\";\r\nexport type { default as CardsProps } from \"./CardsProps.interface\";\r\n\r\n// Card\r\nexport { default as Card } from \"./components/Card/Card\";\r\nexport type { default as CardProps } from \"./components/Card/CardProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"NgxlqXU0XfoBjL0mnKgp\",\"container\":\"PL16njDTWPCdhJeaQUkO\",\"headline\":\"lPQTBAD2AkA75_wkqBJ1\",\"links_wrapper\":\"a4VKga5ep8HjT9BwP0pB\"};","// extracted by mini-css-extract-plugin\nexport default {\"link_wrapper\":\"l4oUQddBcXAy1Pmra36J\",\"link\":\"JxKxFxcCaFNmDEBfMrMl\",\"download_icon\":\"IBOY9fd32u4fFa8RnfBw\"};","import React, { FunctionComponent } from \"react\";\r\nimport DownloadLinksProps from \"./DownloadLinkProps.interface\";\r\nimport styles from \"./DownloadLink.module.scss\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\n\r\nconst DownloadLink:FunctionComponent<DownloadLinksProps> = (props) => {\r\n return (\r\n <div className={styles.link_wrapper}>\r\n <a className={styles.link} href={props.content.asset.umbracoFile} download>\r\n <IconViewer name=\"download\" className={styles.download_icon} aspectRatioX={1} aspectRatioY={1} />\r\n {props.content.label}\r\n </a>\r\n </div>\r\n );\r\n};\r\n\r\nexport default DownloadLink;\r\n","import React, { FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./DownloadLinks.module.scss\";\r\nimport DownloadLinksProps from \"./DownloadLinksProps.interface\";\r\n\r\nimport DownloadLink from \"./components/DownloadLink/DownloadLink\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst DownloadLinks:FunctionComponent<DownloadLinksProps> = (props) => {\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={styles.container}>\r\n\r\n {/* Headline */}\r\n {props.content.headline ? (\r\n <h1 className={styles.headline}>{props.content.headline}</h1>\r\n ) : null}\r\n\r\n {/* Links */}\r\n <div className={styles.links_wrapper}>\r\n {props.content.links && props.content.links.length > 0 ? props.content.links.map((link)=> {\r\n return <DownloadLink key={link.contentUdi} {...link}/>;\r\n }):null}\r\n </div>\r\n\r\n </div>\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default DownloadLinks;\r\n","// DownloadLinks\r\nexport { default as DownloadLinks } from \"./DownloadLinks\";\r\nexport type { default as DownloadLinksProps } from \"./DownloadLinksProps.interface\";\r\n\r\n// DownloadLink\r\nexport { default as DownloadLink } from \"./components/DownloadLink/DownloadLink\";\r\nexport type { default as DownloadLinkProps } from \"./components/DownloadLink/DownloadLinkProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"hoFpsx6ExRBu2mEPQlI8\",\"Full\":\"RAPj6vaHQcRG7vuFexCh\",\"container\":\"dNc__Ob_weDNj75nIJpd\",\"Small\":\"cDH9LUkUpsQbnFAlvCpA\",\"Medium\":\"lVqk_6AhFg9X4WHnHjqg\",\"Large\":\"F5TPZgcQkv_sj1TjxEUl\",\"buttons\":\"hGC2vQcgcAwUmZOqJrw3\",\"button\":\"NdzxbQ3Vj0jIF8tt1UJi\",\"download_icon\":\"a_JFssaJoF_Me2TiEWBR\",\"iframe\":\"efH9AKA5mF1lqLgH7riH\"};","import React, { FunctionComponent, useState, useEffect } from \"react\";\r\nimport styles from \"./Embed.module.scss\";\r\nimport EmbedProps from \"./EmbedProps.interface\";\r\n\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\n\r\nconst Embed: FunctionComponent<EmbedProps> = (props) => {\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const [showSnippet, setShowSnippet] = useState(true);\r\n\r\n const embedSizeClass = props.settings.size ? styles[props.settings.size] : undefined;\r\n\r\n useEffect(() => {\r\n setTimeout(() => {\r\n setShowSnippet(true);\r\n }, 1000);\r\n }, []);\r\n\r\n const loadScript = async (src: string) => {\r\n const promise = new Promise<void>((resolve, reject) => {\r\n const scriptElement = document.createElement(\"script\");\r\n\r\n scriptElement.type = \"text/javascript\";\r\n scriptElement.async = false;\r\n scriptElement.onload = () => {\r\n resolve();\r\n };\r\n\r\n document.body.appendChild(scriptElement);\r\n scriptElement.src = src;\r\n });\r\n\r\n return promise;\r\n };\r\n\r\n useEffect(() => {\r\n if (showSnippet === true) {\r\n if (props.content.embeds?.includes(\"HR-ON\")) {\r\n loadScript(\"https://recruit.hr-on.com/frame-api/hr.js\");\r\n loadScript(\"https://recruit.hr-on.com/frame-api/customers/worklivestay.js\");\r\n }\r\n }\r\n }, [showSnippet]);\r\n\r\n return (\r\n <section className={combineClasses([styles.wrapper, embedSizeClass, ...wrapperClasses])} id={identifier}>\r\n <div className={styles.container}>\r\n {/* Embed */}\r\n {props.content.embeds?.includes(\"HR-ON\") ? (\r\n <div id=\"hr-on\"></div>\r\n ) : null}\r\n\r\n {/* Frame */}\r\n {props.content.iframe && showSnippet === true ? (\r\n <div dangerouslySetInnerHTML={{ __html: props.content.iframe }} />\r\n ) : null}\r\n\r\n {/* Buttons */}\r\n {props.content.buttons && props.content.buttons.length > 0 ? (\r\n <div className={styles.buttons}>\r\n {props.content.buttons.map((button, index) => {\r\n return (\r\n <Anchor key={index} to={button.content.link} className={styles.button}>\r\n <IconViewer name=\"download\" className={styles.download_icon} aspectRatioX={1} aspectRatioY={1} />\r\n <span>{button.content.label}</span>\r\n </Anchor>\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n </div>\r\n </section>\r\n );\r\n};\r\n\r\nexport default Embed;\r\n","// Embed\r\nexport { default as Embed } from \"./Embed\";\r\nexport type { default as EmbedProps } from \"./EmbedProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"TXmnjIGvFk0YK5IlokV4\",\"container\":\"YOltjz6rk_KZZJedR5yQ\",\"top_content\":\"wLG6TvJHhtNJXkeIswJs\",\"headline\":\"Q29fy0KIz4ZlqYWWQL_6\",\"list\":\"ygO9dGj0wReCj2BDJn8u\",\"tags\":\"LGJ5IWeEMBoKFLPg8HKD\",\"tag\":\"gcWUXo85H4M0LWIjepwz\",\"is_active\":\"YfQguq92PFcmwQfWjPVj\"};","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"A3gZBgDQKV32A6mDTHYI\",\"inner\":\"F7uv5qxxpeezL8O01Srw\",\"image\":\"C5I0vvRBgW7_3g30uywd\",\"content\":\"SOa7ISmFILT8WqLrPZ9I\",\"contact\":\"JbZMIZBj84ib9ilDcf9Q\",\"title\":\"Nqjvljq_rrvIoWa9NLCz\",\"description\":\"BvLd8yrSumZiEE3Y77IX\",\"email\":\"aMSzpLGF1ZzTJVdXniPW\",\"phone\":\"kHqonGg1HapOHfUxKBmM\",\"linkedin\":\"si62zfzYRV0Q6JU9ks6Q\",\"email_link\":\"KJjpvh_13zi2oxqkeymw\",\"phone_link\":\"i4Htzukhk7Te4EuoeqYk\",\"linkedin_link\":\"sqhRL6sYDqVUabx4s93m\",\"email_icon\":\"ntbnRt0_fW8K810mCJvl\",\"phone_icon\":\"iZAR6btbDDObuDdSOZ6P\",\"linkedin_icon\":\"Kx0Qg6SbuTzdWIX1LalY\",\"heading\":\"a0TFoqhtQur5IUbrXQiX\",\"text\":\"M08AntZnR0HrsFOUU1i1\",\"link\":\"cwMmAXt3kK2dv89QnJ7J\"};","import React, { FunctionComponent } from \"react\";\r\nimport styles from \"./Employee.module.scss\";\r\nimport EmployeeProps from \"./EmployeeProps.interface\";\r\nimport getImageAspectRatio from \"app/media/helpers/getImageAspectRatio\";\r\nimport ImageViewer from \"components/ImageViewer/ImageViewer\";\r\nimport getImageCrop from \"app/media/helpers/getImageCrop\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\n\r\nconst Employee: FunctionComponent<EmployeeProps> = (props) => {\r\n const imageCrop = getImageCrop(props.media?.umbracoFile.crops, undefined, \"Square (1:1)\");\r\n const imageAspectRatio = getImageAspectRatio(imageCrop, props.media?.umbracoWidth, props.media?.umbracoHeight);\r\n\r\n return (\r\n <div className={styles.wrapper}>\r\n <div className={styles.inner}>\r\n {props.media ? (\r\n <ImageViewer className={styles.image} src={props.media.umbracoFile.src} crop={imageCrop} focalPoint={props.media.umbracoFile.focalPoint} alt={props.fullName} aspectRatioX={imageAspectRatio.aspectRatioX} aspectRatioY={imageAspectRatio.aspectRatioY} />\r\n ) : null}\r\n\r\n <div className={styles.content}>\r\n {props.fullName ? (\r\n <h3 className={styles.heading}>{props.fullName}</h3>\r\n ) : null}\r\n\r\n {props.title ? (\r\n <p className={styles.title}>{props.title}</p>\r\n ) : null}\r\n {props.description ? (\r\n <p className={styles.description}>{props.description}</p>\r\n ) : null}\r\n\r\n <div className={styles.contact}>\r\n {props.email ? (\r\n <div className={styles.email}>\r\n <IconViewer className={styles.email_icon} name=\"email\" />\r\n <a className={styles.email_link} href={`mailto:${props.email}`}>{props.email}</a>\r\n </div>\r\n ) : null}\r\n\r\n {props.phone ? (\r\n <div className={styles.phone}>\r\n <IconViewer className={styles.phone_icon} name=\"phone\" />\r\n <a className={styles.phone_link} href={`tel:${props.phone}`}>{props.phone}</a>\r\n </div>\r\n ) : null}\r\n\r\n {props.socialLinkedinUrl ? (\r\n <div className={styles.linkedin}>\r\n <IconViewer className={styles.linkedin_icon} name=\"linkedin\" />\r\n <a className={styles.linkedin_link} href={props.socialLinkedinUrl}>Linkedin</a>\r\n </div>\r\n ) : null}\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Employee;","import urlBuilder from \"./urlBuilder\";\r\nimport { PAGE_TYPE } from \"../pages/page.types\";\r\nimport getUmbracoEndPoint from \"./UmbracoEndPoint\";\r\n\r\nexport default async <T = PAGE_TYPE> (doctype: string, route: string): Promise<T> => {\r\n const url = urlBuilder(\"/api/content/type\", { contentType: doctype, url: route });\r\n\r\n const response = await fetch(url.toString(), {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n \"Origin\": getUmbracoEndPoint(),\r\n \"X-Request-Domain\": getUmbracoEndPoint()\r\n },\r\n body: undefined\r\n });\r\n\r\n return await response.json();\r\n};","import { useEffect, useState } from \"react\";\r\n\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport EmployeeListItem from \"../models/item.interface\";\r\nimport EmployeeListState from \"../models/state.interface\";\r\nimport fetchContentByType from \"app/umbraco/helpers/fetchContentByType\";\r\n\r\nexport default (tags?: string[]): any => {\r\n const history = useHistory();\r\n const location = useLocation<EmployeeListState>();\r\n\r\n const initialItems = location.state?.employees;\r\n const [items, setItems] = useState<EmployeeListItem[]>(initialItems);\r\n\r\n const [viewState, setViewState] = useState<string>(initialItems?.length > 0 ? \"LOADED\" : \"LOADING\");\r\n\r\n useEffect(() => {\r\n let isComponentMounted = true;\r\n\r\n const fetchEmployees = async () => {\r\n let result: EmployeeListItem[] = [];\r\n const response = await fetchContentByType<EmployeeListItem[]>(\"employeePage\", history.location.pathname);\r\n\r\n if (response && response.length > 0) {\r\n const eligibleEmployees = response.filter(x => {\r\n if (tags && tags.length > 0) {\r\n const itemHasMatchTag = tags.every(tag => x.tags && x.tags.includes(tag));\r\n return itemHasMatchTag;\r\n }\r\n });\r\n\r\n result = eligibleEmployees;\r\n }\r\n\r\n if (isComponentMounted) {\r\n setItems(result);\r\n\r\n history.replace({\r\n pathname: location.pathname,\r\n search: location.search,\r\n hash: location.hash,\r\n state: {\r\n ...location.state,\r\n employees: result\r\n }\r\n });\r\n\r\n return result;\r\n }\r\n };\r\n\r\n fetchEmployees().then((result: any) => {\r\n if (result && result.length > 0) {\r\n setViewState(\"LOADED\");\r\n }\r\n else {\r\n setViewState(\"EMPTY\");\r\n }\r\n }).catch(() => {\r\n setViewState(\"ERROR\");\r\n });\r\n\r\n return () => {\r\n isComponentMounted = false;\r\n };\r\n }, []);\r\n\r\n return [items, viewState];\r\n};","import urlBuilder from \"./urlBuilder\";\r\nimport getUmbracoEndPoint from \"./UmbracoEndPoint\";\r\n\r\nexport default async (route: string): Promise<any[]> => {\r\n const url = urlBuilder(\"/api/tags\", { url: route });\r\n\r\n const response = await fetch(url.toString(), {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n \"Origin\": getUmbracoEndPoint(),\r\n \"X-Request-Domain\": getUmbracoEndPoint()\r\n },\r\n body: undefined\r\n });\r\n\r\n return await response.json();\r\n};","import { useEffect, useState } from \"react\";\r\n\r\nimport fetchTagsByRoute from \"app/umbraco/helpers/fetchTagsByRoute\";\r\n\r\nexport default (url: string): any => {\r\n const [items, setItems] = useState<any[]>();\r\n const [viewState, setViewState] = useState<string>(\"LOADING\");\r\n\r\n useEffect(() => {\r\n let isComponentMounted = true;\r\n\r\n const fetchFilters = async () => {\r\n let result: any[] = [];\r\n\r\n const response = await fetchTagsByRoute(url);\r\n\r\n if (response && response.length > 0) {\r\n result = response;\r\n }\r\n\r\n return result;\r\n };\r\n\r\n fetchFilters().then((result: any) => {\r\n if (isComponentMounted) {\r\n if (result && result.length > 0) {\r\n setItems(result);\r\n setViewState(\"LOADED\");\r\n }\r\n else {\r\n setViewState(\"EMPTY\");\r\n }\r\n }\r\n }).catch(() => {\r\n setViewState(\"ERROR\");\r\n });\r\n\r\n return () => {\r\n isComponentMounted = false;\r\n };\r\n }, []);\r\n\r\n return [items, viewState];\r\n};","import React, { FunctionComponent, useCallback, useEffect, useState } from \"react\";\r\nimport styles from \"./Employees.module.scss\";\r\nimport EmployeesProps from \"./EmployeesProps.interface\";\r\n\r\nimport Employee from \"./components/Employee/Employee\";\r\nimport EmployeeProps from \"./components/Employee/EmployeeProps.interface\";\r\nimport fetchEmployees from \"./hooks/fetchEmployees\";\r\n\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport DynamicHeading from \"components/DynamicHeading/DynamicHeading\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport Paragraph from \"components/Paragraph/Paragraph\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport useFilter from \"blocks/hooks/useFilter\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst Employees: FunctionComponent<EmployeesProps> = (props) => {\r\n const history = useHistory();\r\n\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const [filters, filterViewState] = useFilter(props.content.filter);\r\n const [currentFilters, setCurrentFilters] = useState<any[]>();\r\n\r\n const [items, itemViewState] = fetchEmployees(props.content.tags);\r\n\r\n const filteredItems = useCallback(() => {\r\n const result = items ?? [];\r\n\r\n return result?.filter((item: any) => {\r\n const givenFilters = item.filters && item.filters.map((filter: any) => filter._id.toString());\r\n const currentFilter = currentFilters && currentFilters.length > 0 ? currentFilters[0] : undefined;\r\n\r\n return currentFilter ? givenFilters?.includes(currentFilter) : true;\r\n });\r\n }, [items, currentFilters]);\r\n\r\n const handleTagClick = (filter: any) => {\r\n const filterId = filter.id.toString();\r\n\r\n // Setting current filter\r\n if (typeof (filterId) !== \"undefined\" && filterId !== null) {\r\n if (currentFilters && currentFilters.length > 0 && currentFilters[0] === filterId) {\r\n setCurrentFilters([]);\r\n\r\n // Setting URL Params\r\n history.replace({\r\n search: undefined,\r\n });\r\n }\r\n else {\r\n setCurrentFilters([filterId]);\r\n\r\n // Setting URL Params\r\n history.replace({\r\n pathname: location.pathname,\r\n search: `?f=${filter.id}`,\r\n hash: location.hash\r\n });\r\n }\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n const query = new URLSearchParams(history.location.search);\r\n const filter = query.get(\"f\");\r\n\r\n // Setting current filter\r\n if (typeof (filter) !== \"undefined\" && filter !== null) {\r\n setCurrentFilters([filter]);\r\n }\r\n }, []);\r\n\r\n return (\r\n <div className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier}>\r\n <div className={styles.container}>\r\n <div className={styles.top_content}>\r\n {/* Headline */}\r\n {props.content.headline ? (\r\n <DynamicHeading className={styles.headline} headlineSize={props.settings.headlineSize} headlineWeight={props.settings.headlineWeight}>{props.content.headline}</DynamicHeading>\r\n ) : null}\r\n\r\n {/* Text */}\r\n {props.content.bodyText ? (\r\n <Paragraph innerHTML={props.content.bodyText} />\r\n ) : null}\r\n </div>\r\n\r\n {/* Filters */}\r\n {isBrowserContext() && filterViewState === \"LOADED\" && filters && filters.length > 0 ? (\r\n <div className={styles.tags}>\r\n {filters && filters?.map((filter: any) => {\r\n const currentFilterClass = currentFilters?.includes(filter.id.toString()) ? styles.is_active : undefined;\r\n\r\n return (\r\n <button key={filter.id} tabIndex={0} onClick={() => handleTagClick(filter)} className={combineClasses([styles.tag, currentFilterClass])}>\r\n {filter.label}\r\n </button>\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n\r\n {itemViewState === \"LOADING\" ? (\r\n <div>Loading...</div>\r\n ) : null}\r\n\r\n {itemViewState === \"LOADED\" ? (\r\n <div className={styles.list}>\r\n {filteredItems()?.map((item: EmployeeProps) => {\r\n return (\r\n <Employee key={item._id} {...item} />\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n\r\n {itemViewState === \"EMPTY\" ? (\r\n <div>Empty</div>\r\n ) : null}\r\n\r\n {itemViewState === \"ERROR\" ? (\r\n <div>Error</div>\r\n ) : null}\r\n\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </div>\r\n );\r\n};\r\n\r\nexport default Employees;","// Employees\r\nexport { default as Employees } from \"./Employees\";\r\nexport type { default as EmployeesProps } from \"./EmployeesProps.interface\";\r\n\r\n// Employee\r\nexport { default as Employee } from \"./components/Employee/Employee\";\r\nexport type { default as EmployeeProps } from \"./components/Employee/EmployeeProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"UEJ8oD9V14J3IOkrWz7G\",\"container\":\"lQZVF0LNO6yabbw06vw4\",\"list\":\"MBlJz3Cv6Q8zJaZBRS4G\",\"tags\":\"kjWu_P4qgxoD3RKB1XVf\",\"tag\":\"r8FSUxTkSmjeSt72mwfL\",\"is_active\":\"BdUsMxl1OfFGUX4fC8qn\",\"empty\":\"L3msBOp6iceR2emXfRcg\",\"error\":\"BZN2pKHCTZXhLLXI_0bg\",\"loader\":\"UZ2QmlnxRFQxCIAEP0TR\",\"load6\":\"CdaNKWQyDYF2Zg2v7_Cc\",\"round\":\"WsMZ7YRjsl2k2MLqkaEE\"};","import { useEffect, useState } from \"react\";\r\n\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport EventListItem from \"../models/item.interface\";\r\nimport EventListState from \"../models/state.interface\";\r\nimport fetchContentByType from \"app/umbraco/helpers/fetchContentByType\";\r\nimport moment from \"moment\";\r\n\r\nexport default (): any => {\r\n const history = useHistory();\r\n const location = useLocation<EventListState>();\r\n\r\n const initialItems = location.state?.posts;\r\n const [items, setItems] = useState<EventListItem[]>(initialItems);\r\n\r\n const [filteredItems, setFilteredItems] = useState<EventListItem[]>([]);\r\n const [currentFilter, setCurrentFilter] = useState<string>(\"UPCOMING\");\r\n\r\n const [viewState, setViewState] = useState<string>(initialItems?.length > 0 ? \"LOADED\" : \"LOADING\");\r\n\r\n useEffect(() => {\r\n let isComponentMounted = true;\r\n\r\n const fetchEvents = async () => {\r\n let result: EventListItem[] = [];\r\n const response = await fetchContentByType<EventListItem[]>(\"eventPage\", history.location.pathname);\r\n\r\n if (response && response.length > 0) {\r\n result = response;\r\n }\r\n\r\n if (isComponentMounted) {\r\n setItems(result);\r\n return result;\r\n }\r\n };\r\n\r\n fetchEvents().then((result: any) => {\r\n if (result && result.length > 0) {\r\n setViewState(\"LOADED\");\r\n }\r\n else {\r\n setViewState(\"EMPTY\");\r\n }\r\n }).catch(() => {\r\n setViewState(\"ERROR\");\r\n });\r\n\r\n return () => {\r\n isComponentMounted = false;\r\n };\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (items && items.length > 0) {\r\n // Filter only matching currentFilter\r\n const eligibleItems = items.filter(item => {\r\n const endDate = moment(item.eventDateEnd, \"YYYY-MM-DDTHH:mm:ss\");\r\n const nowDate = moment();\r\n\r\n if (currentFilter === \"UPCOMING\") {\r\n return endDate.isSameOrAfter(nowDate);\r\n }\r\n else {\r\n return endDate.isSameOrBefore(nowDate);\r\n }\r\n });\r\n\r\n // Sort by date asc\r\n const sortedItems = eligibleItems.sort((a: EventListItem, b: EventListItem) => {\r\n const aDate = moment(a.eventDateStart, \"YYYY-MM-DDTHH:mm:ss\");\r\n const bDate = moment(b.eventDateStart, \"YYYY-MM-DDTHH:mm:ss\");\r\n\r\n if (currentFilter === \"UPCOMING\") {\r\n return aDate.diff(bDate);\r\n }\r\n else {\r\n return bDate.diff(aDate);\r\n }\r\n });\r\n\r\n history.replace({\r\n pathname: location.pathname,\r\n search: location.search,\r\n hash: location.hash,\r\n state: {\r\n ...location.state,\r\n posts: sortedItems\r\n }\r\n });\r\n\r\n setFilteredItems(sortedItems);\r\n }\r\n\r\n }, [items, currentFilter]);\r\n\r\n return { filteredItems, viewState, currentFilter, setCurrentFilter };\r\n};","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"BWVkg6O_0lAjXsYA7_sR\",\"inner\":\"D9vzNjBgZdtbmRn6ld5D\",\"media\":\"_65JlX1YHaYSL4FHPVqxR\",\"image\":\"nIovfzl55uZAjISv8Asq\",\"content\":\"cc3mmSdoadVZ7fT5Ukjg\",\"headline\":\"JzdwYbsb4GNf_NEHZD3Q\",\"text\":\"vfJ9lZ3rtaPgkSoBVrpZ\",\"link\":\"JHm8E6I3kukChAS6Pv3s\",\"date\":\"_q6DBU0WIMCuoDvBmfOG\"};","import React, { FunctionComponent } from \"react\";\r\nimport styles from \"./Event.module.scss\";\r\nimport EventProps from \"./EventProps.interface\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport getImageAspectRatio from \"app/media/helpers/getImageAspectRatio\";\r\nimport ImageViewer from \"components/ImageViewer/ImageViewer\";\r\nimport getRelativeUrl from \"helpers/getRelativeUrl\";\r\nimport getImageCrop from \"app/media/helpers/getImageCrop\";\r\nimport Moment from \"react-moment\";\r\n\r\nconst Event: FunctionComponent<EventProps> = (props) => {\r\n const imageCrop = getImageCrop(props.image?.umbracoFile.crops, undefined, \"Fullscreen (4:3)\");\r\n const imageAspectRatio = getImageAspectRatio(imageCrop, props.image?.umbracoWidth, props.image?.umbracoHeight);\r\n\r\n return (\r\n <Anchor className={styles.wrapper} to={getRelativeUrl(props._url)}>\r\n <article className={styles.inner}>\r\n <div className={styles.media}>\r\n {props.image ? (\r\n <ImageViewer className={styles.image} src={props.image.umbracoFile.src} focalPoint={props.image.umbracoFile.focalPoint} aspectRatioX={imageAspectRatio.aspectRatioX} aspectRatioY={imageAspectRatio.aspectRatioY} />\r\n ) : null}\r\n </div>\r\n\r\n <div className={styles.content}>\r\n {props.eventDateStart && props.eventDateEnd ? (\r\n <p className={styles.date}>\r\n <Moment parse=\"YYYY-MM-DDTHH:mm:ss\" format=\"DD. MMM\">{props.eventDateStart}</Moment>\r\n <span> </span>\r\n <Moment parse=\"YYYY-MM-DDTHH:mm:ss\" format=\"HH:mm\">{props.eventDateStart}</Moment>\r\n <span> - </span>\r\n <Moment parse=\"YYYY-MM-DDTHH:mm:ss\" format=\"HH:mm\">{props.eventDateEnd}</Moment>\r\n </p>\r\n ) : null}\r\n\r\n {props.eventTitle ? (\r\n <h1 className={styles.headline}>{props.eventTitle}</h1>\r\n ) : null}\r\n\r\n {props.eventDescription ? (\r\n <p className={styles.text}>{props.eventDescription}</p>\r\n ) : null}\r\n\r\n </div>\r\n </article>\r\n </Anchor>\r\n );\r\n};\r\n\r\nexport default Event;","import React, { FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./Events.module.scss\";\r\nimport EventsProps from \"./EventsProps.interface\";\r\n\r\nimport fetchEvents from \"./hooks/fetchEvents\";\r\nimport Event from \"./components/Event/Event\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport Dictionary from \"components/Dictionary/Dictionary\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\n\r\nconst Events: FunctionComponent<EventsProps> = (props) => {\r\n const history = useHistory();\r\n\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const { filteredItems, viewState, currentFilter, setCurrentFilter } = fetchEvents();\r\n \r\n const currentFilterUpcomingClass = currentFilter === \"UPCOMING\" ? styles.is_active : undefined;\r\n const currentFilterEndedClass = currentFilter === \"ENDED\" ? styles.is_active : undefined;\r\n\r\n const onFilterClick = (name: string) => {\r\n if (name) {\r\n // Setting current filter\r\n setCurrentFilter(name);\r\n\r\n // Setting URL Params\r\n history.replace({\r\n pathname: location.pathname,\r\n search: `?b=blockEventsList&f=${name}`,\r\n hash: location.hash\r\n });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n const query = new URLSearchParams(history.location.search);\r\n const filter = query.get(\"f\");\r\n\r\n if (typeof (filter) !== \"undefined\" && filter !== null) {\r\n setCurrentFilter(filter);\r\n }\r\n }, []);\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.2, });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={styles.container}>\r\n {/* Filters */}\r\n <div className={styles.tags}>\r\n <button tabIndex={1} onClick={() => onFilterClick(\"UPCOMING\")} className={combineClasses([styles.tag, currentFilterUpcomingClass])}>\r\n <Dictionary name=\"EVENTS_LIST.UPCOMING_FILTER\" />\r\n </button>\r\n <button tabIndex={2} onClick={() => onFilterClick(\"ENDED\")} className={combineClasses([styles.tag, currentFilterEndedClass])}>\r\n <Dictionary name=\"EVENTS_LIST.ENDED_FILTER\" />\r\n </button>\r\n </div>\r\n\r\n {viewState === \"LOADING\" ? (\r\n <div>\r\n <div className={styles.loader}>Loading...</div>\r\n </div>\r\n ) : null}\r\n\r\n {viewState === \"LOADED\" ? (\r\n <div className={styles.list}>\r\n {filteredItems.map((item: any) => {\r\n return (\r\n <Event key={item._id} {...item} />\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n\r\n {viewState === \"EMPTY\" ? (\r\n <div className={styles.empty}>\r\n <Dictionary name=\"EVENTS_LIST.EMPTY\" />\r\n </div>\r\n ) : null}\r\n\r\n {viewState === \"ERROR\" ? (\r\n <div className={styles.error}>\r\n <Dictionary name=\"EVENTS_LIST.ERROR\" />\r\n </div>\r\n ) : null}\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default Events;","// Events\r\nexport { default as Events } from \"./Events\";\r\nexport type { default as EventsProps } from \"./EventsProps.interface\";\r\n\r\n// Event\r\nexport { default as Event } from \"./components/Event/Event\";\r\nexport type { default as EventProps } from \"./components/Event/EventProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"UIjr5XK5SR0nitPu3mRb\",\"container\":\"i1xkPDDtcnjayK95TTj_\",\"Small\":\"qvHKvcWzDsZ2TAIq2uUG\",\"Large\":\"V37SrLenlG_qeyNo_bgY\",\"headline\":\"IkdUpuQmcW8Kc7HY0bpQ\",\"text\":\"ZObLuVSPXo4PsZW8t_Pl\",\"tagline\":\"oGzOK_Ra9IpXfW4cNa08\",\"form\":\"D_7k0YQc2Pw4lzxvC38a\",\"buttons\":\"nrp63KNS3IP8snYXqLhu\",\"button_and_loading\":\"hLLtKXIirdaZbmq59hsN\",\"button\":\"zU1BBxzIxB02PEAckFdM\",\"loader\":\"Rm86JIFugySZASFBbJNg\",\"load6\":\"dVCfqa32rCZt7dDj0xIa\",\"round\":\"WTiw7pYK5Oe9v3s_MT0y\"};","// extracted by mini-css-extract-plugin\nexport default {\"alerts\":\"js6bREoM0ZIiOi2FapT0\",\"alert\":\"eXeRq1Wouq8Kb_is0_ek\",\"successAlert\":\"qOQXD3iwktcq_q3sbTO1\"};","import React, { FunctionComponent } from \"react\";\r\nimport AlertsContent from \"./AlertsContent\";\r\nimport styles from \"./Alerts.module.scss\";\r\n\r\nconst Alerts: FunctionComponent<AlertsContent> = (props) => {\r\n const { success } = props;\r\n\r\n return (\r\n <div className={styles.alerts}>\r\n {props.alerts ? props.alerts.map((alert => {\r\n return (<div key={alert} className={styles.alert}>{alert}</div>);\r\n }))\r\n : null}\r\n {props.successAlert && success ? (<div className={styles.successAlert}>{props.successAlert}</div>) : null}\r\n </div>\r\n );\r\n};\r\n\r\nexport default Alerts;\r\n","// extracted by mini-css-extract-plugin\nexport default {\"input_field\":\"gJTr8c_DqpufuksPLqcV\",\"label\":\"EPZ3dBsXTxxqjH_kWnH9\",\"input\":\"K39lxdjE8pxEil_irrfA\",\"alert\":\"nhDcAud7nn7Xy9WG1UJw\",\"validate\":\"gcMVTWS7nJnBCCXsdPmJ\",\"label_wrapper\":\"dqoru5qXvT5aJGFxa3qo\",\"mandatory\":\"Rxn11pTtsafOOsFk6_Fv\"};","import React, { FunctionComponent, useState, useEffect, useRef } from \"react\";\r\nimport InputFieldContent from \"./InputFieldContent.model\";\r\nimport styles from \"./InputField.module.scss\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\n\r\nconst InputField: FunctionComponent<InputFieldContent> = (props) => {\r\n const { setFormFieldsState, formFieldsState, setRequiredFieldsEach, requiredFieldsEach, setCurrentAlerts, currentAlerts, setIsAlert, isAlert, resetFields } = props;\r\n const [fieldValue, setFieldValue] = useState(\"\");\r\n const ref = useRef<HTMLInputElement>(null);\r\n\r\n useEffect(() => {\r\n if (resetFields && ref.current) { ref.current.value = \"\", setFieldValue(\"\"); }\r\n }, [resetFields]);\r\n\r\n const validateEmail = (input: string, regex: string,) => {\r\n const regexp = new RegExp(regex);\r\n if (regexp.test(input) && input.length > 0) {\r\n const updatedAlerts = currentAlerts;\r\n for (let i = 0; i < updatedAlerts.length; i++) {\r\n if (updatedAlerts[i] === props.invalidErrorMessage) {\r\n updatedAlerts.splice(i, 1);\r\n i--;\r\n }\r\n }\r\n setCurrentAlerts(updatedAlerts);\r\n setIsAlert(false);\r\n }\r\n else {\r\n const includesAlert = currentAlerts.length > 0 ? currentAlerts.includes(props.invalidErrorMessage) : false;\r\n if (!includesAlert) {\r\n setCurrentAlerts([...currentAlerts, props.invalidErrorMessage]);\r\n }\r\n }\r\n };\r\n\r\n const handleChange = (e: React.FormEvent<HTMLInputElement>) => {\r\n const el = e.target as HTMLInputElement;\r\n\r\n const includesAlias = requiredFieldsEach.length > 0 && requiredFieldsEach.includes(props.alias) ? true : false;\r\n if (props.mandatory && el.value.length > 0 && !includesAlias) {\r\n setRequiredFieldsEach([...requiredFieldsEach, props.alias]);\r\n }\r\n\r\n if (props.mandatory && el.value.length === 0 && includesAlias) {\r\n setRequiredFieldsEach(requiredFieldsEach.filter(e => e !== props.alias));\r\n }\r\n\r\n if (props.regex) {\r\n validateEmail(el.value, props.regex);\r\n }\r\n\r\n setFormFieldsState({ ...formFieldsState, [el.name]: el.value });\r\n if (ref.current) setFieldValue(ref.current.value);\r\n };\r\n\r\n const alertClass = fieldValue === \"\" && props.mandatory && isAlert ? styles.alert : undefined;\r\n const validateClass = currentAlerts.includes(props.invalidErrorMessage) && isAlert ? styles.validate : undefined;\r\n\r\n return (\r\n <div className={styles.input_field}>\r\n <label>\r\n <div className={styles.label_wrapper}>\r\n <span className={styles.label}>{props.caption}</span> {props.mandatory ? (<span className={styles.mandatory}>*</span>) : null}\r\n </div>\r\n <input onChange={handleChange} ref={ref} type=\"text\" className={combineClasses([styles.input, alertClass, validateClass])} name={props.alias} />\r\n </label>\r\n </div>\r\n );\r\n};\r\n\r\nexport default InputField;\r\n","// extracted by mini-css-extract-plugin\nexport default {\"textarea_field\":\"nzV7Sn0sY0X7LSNyJMXs\",\"label\":\"iLOadRKEAQXX48n6pgBG\",\"textarea\":\"sRvCBcRlAI3SUsaQAJXz\",\"alert\":\"o5VD5jXfYZ1UQIcgpqSG\",\"label_wrapper\":\"X7gZychqj5Fd0Ar_WKjq\",\"mandatory\":\"hF2uPts9vSGEkr2bx5Aj\"};","import React, { FunctionComponent, useEffect, useRef, useState } from \"react\";\r\nimport TextareaFieldContent from \"./TextareaFieldContent.model\";\r\nimport styles from \"./TextareaField.module.scss\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\n\r\nconst TextareaField: FunctionComponent<TextareaFieldContent> = (props) => {\r\n const { setFormFieldsState, formFieldsState, setRequiredFieldsEach, requiredFieldsEach, setIsAlert, isAlert, resetFields } = props;\r\n const [fieldValue, setFieldValue] = useState(\"\");\r\n const ref = useRef<HTMLTextAreaElement>(null);\r\n\r\n useEffect(() => {\r\n if (resetFields && ref.current) { ref.current.value = \"\", setFieldValue(\"\"); }\r\n }, [resetFields]);\r\n\r\n const handleChange = (e: React.FormEvent<HTMLTextAreaElement>) => {\r\n const el = e.target as HTMLInputElement;\r\n\r\n const includesAlias = requiredFieldsEach.length > 0 ? requiredFieldsEach.includes(props.alias) : false;\r\n if (props.mandatory && el.value.length > 0 && !includesAlias) {\r\n setRequiredFieldsEach([...requiredFieldsEach, props.alias]);\r\n }\r\n\r\n if (props.mandatory && el.value.length === 0 && includesAlias) {\r\n setRequiredFieldsEach(requiredFieldsEach.filter(e => e !== props.alias));\r\n setIsAlert(true);\r\n }\r\n\r\n setFormFieldsState({ ...formFieldsState, [el.name]: el.value });\r\n if (ref.current) setFieldValue(ref.current.value);\r\n };\r\n\r\n const alertClass = fieldValue === \"\" && props.mandatory && isAlert ? styles.alert : undefined;\r\n\r\n return (\r\n <div className={styles.textarea_field}>\r\n <label>\r\n <div className={styles.label_wrapper}>\r\n <span className={styles.label}>{props.caption}</span> {props.mandatory ? (<span className={styles.mandatory}>*</span>) : null}\r\n </div>\r\n <textarea onChange={handleChange} ref={ref} className={combineClasses([styles.textarea, alertClass])} name={props.alias} />\r\n </label>\r\n </div>\r\n );\r\n};\r\n\r\nexport default TextareaField;\r\n","// extracted by mini-css-extract-plugin\nexport default {\"radio_buttons\":\"NXWxrnsog9u7_Mn8qaoO\",\"alert\":\"x8nUviDaOw5TaayxkCGI\",\"validate\":\"j9o7zv7FtMbn4MyuwUbe\",\"radio_button\":\"LnjyHQK40_pgOhWEc9pB\",\"radio_button_wrapper\":\"URtr_Hu6dIhPrbDBovy0\",\"label_wrapper\":\"SwOwhJudXzCTtbnMGMxn\",\"mandatory\":\"ZPAMtks51Qt34mw3IJDA\"};","import React, { FunctionComponent, useState, useEffect, useRef } from \"react\";\r\nimport RadioButtonsContent from \"./RadioButtonsContent.model\";\r\nimport styles from \"./RadioButtons.module.scss\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\n\r\nconst RadioButtons: FunctionComponent<RadioButtonsContent> = (props) => {\r\n const { setFormFieldsState, formFieldsState, setRequiredFieldsEach, requiredFieldsEach, setCurrentAlerts, currentAlerts, setIsAlert, isAlert, resetFields } = props;\r\n const [fieldValue, setFieldValue] = useState(\"\");\r\n const [checked, setChecked] = useState({ selectedOption: \"\" });\r\n const ref = useRef<HTMLInputElement>(null);\r\n\r\n useEffect(() => {\r\n if (resetFields && ref.current) { ref.current.value = \"\", setFieldValue(\"\"), setChecked({ selectedOption: \"\" }); }\r\n }, [resetFields]);\r\n\r\n const validateLength = (input: string) => {\r\n if (input.length > 0) {\r\n setCurrentAlerts(currentAlerts.filter(e => e !== props.requiredErrorMessage));\r\n }\r\n };\r\n\r\n const handleChange = (e: React.FormEvent<HTMLInputElement>) => {\r\n const el = e.target as HTMLInputElement;\r\n\r\n const includesAlias = requiredFieldsEach.length > 0 ? requiredFieldsEach.includes(props.alias) : false;\r\n if (props.mandatory && el.value.length > 0 && !includesAlias) {\r\n setRequiredFieldsEach([...requiredFieldsEach, props.alias]);\r\n }\r\n\r\n if (props.mandatory && el.value.length === 0 && includesAlias) {\r\n setRequiredFieldsEach(requiredFieldsEach.filter(e => e !== props.alias));\r\n setIsAlert(true);\r\n }\r\n\r\n validateLength(el.value);\r\n\r\n setFormFieldsState({ ...formFieldsState, [el.name]: el.value });\r\n if (ref.current) setFieldValue(ref.current.value);\r\n };\r\n\r\n const handleChecked = (e: React.FormEvent<HTMLInputElement>) => {\r\n const el = e.target as HTMLInputElement;\r\n setChecked({ selectedOption: el.value });\r\n };\r\n\r\n const alertClass = fieldValue === \"\" && props.mandatory && isAlert ? styles.alert : undefined;\r\n\r\n return (\r\n <div>\r\n <div className={styles.label_wrapper}>\r\n <span>{props.caption}</span> {props.mandatory ? (<span className={styles.mandatory}>*</span>) : null}\r\n </div>\r\n <div className={styles.radio_buttons} onChange={handleChange}>\r\n {/* Radio Buttons */}\r\n {props.preValues && props.preValues.length > 0 ? props.preValues.map((radioButton, index) => {\r\n return (\r\n <div key={index} className={styles.radio_button_wrapper}>\r\n <input ref={ref} id={radioButton} checked={checked.selectedOption === radioButton} onChange={handleChecked} type=\"radio\" value={radioButton} className={combineClasses([styles.radio_button, alertClass])} name={props.alias} />\r\n <label htmlFor={radioButton}>{radioButton}</label>\r\n </div>\r\n );\r\n }) : null}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default RadioButtons;\r\n","// extracted by mini-css-extract-plugin\nexport default {\"radio_buttons\":\"jh5jUUP_BrOndx9bKElx\",\"alert\":\"Pwht8MA99Ay8atngZDjx\",\"validate\":\"zWE1pmcpNTKWqIPYDyY7\",\"radio_button\":\"CAzYPn7f0MXZaSTMdsST\",\"radio_button_wrapper\":\"iG1JNxVg74P79aaaWhEL\",\"label_wrapper\":\"cubhsPSpE4Kxw95pI1HA\",\"mandatory\":\"HFzCDL00npZ9JJSx7WDI\"};","import React, { FunctionComponent, useState, useEffect, useRef } from \"react\";\r\nimport CheckboxContent from \"./CheckboxContent.model\";\r\nimport styles from \"./Checkbox.module.scss\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\n\r\nconst Checkbox: FunctionComponent<CheckboxContent> = (props) => {\r\n const { setFormFieldsState, formFieldsState, setRequiredFieldsEach, requiredFieldsEach, setIsAlert, isAlert, resetFields } = props;\r\n const [checked, setChecked] = useState(false);\r\n const ref = useRef<HTMLInputElement>(null);\r\n\r\n useEffect(() => {\r\n if (resetFields && ref.current) { setChecked(false); }\r\n }, [resetFields]);\r\n\r\n const handleChange = (e: React.FormEvent<HTMLInputElement>) => {\r\n const el = e.target as HTMLInputElement;\r\n\r\n const includesAlias = requiredFieldsEach.length > 0 ? requiredFieldsEach.includes(props.alias) : false;\r\n if (props.mandatory && el.value.length > 0 && !includesAlias){\r\n setRequiredFieldsEach([...requiredFieldsEach, props.alias]);\r\n }\r\n\r\n if (props.mandatory && !el.checked && includesAlias) {\r\n setRequiredFieldsEach(requiredFieldsEach.filter(e => e !== props.alias));\r\n setIsAlert(true);\r\n }\r\n\r\n setFormFieldsState({ ...formFieldsState, [el.name]: el.checked });\r\n };\r\n\r\n const handleChecked = (e: React.FormEvent<HTMLInputElement>) => {\r\n setChecked(!checked);\r\n };\r\n\r\n const alertClass = !checked && props.mandatory && isAlert ? styles.alert : undefined;\r\n\r\n return (\r\n <div>\r\n <div className={styles.label_wrapper}>\r\n <span >{props.caption}</span> {props.mandatory ? (<span className={styles.mandatory}>*</span>) : null}\r\n </div>\r\n <div className={styles.radio_buttons} onChange={handleChange}>\r\n {/* Checkbox Button */}\r\n <div >\r\n <label>\r\n <input ref={ref} checked={checked} onChange={handleChecked} type=\"checkbox\" className={combineClasses([styles.radio_button, alertClass])} name={props.alias} />{props.settings.defaultValue ? props.settings.defaultValue : props.settings.acceptCopy}\r\n </label>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Checkbox;\r\n","// extracted by mini-css-extract-plugin\nexport default {\"select_field\":\"Y9H7L7CKEkKCOMV9bwuM\",\"label\":\"O7jntN_3lioqQIDVgaQi\",\"dropdown\":\"OWEiSCS4nk3_lRy4WJZq\",\"alert\":\"rr8Q8OlC4qjukGqSoJk5\",\"label_wrapper\":\"v9MAGug1K_cJa2y1ZKeB\",\"mandatory\":\"fRe1YyWRD_FXO2KX8iSB\"};","import React, { FunctionComponent, useEffect, useRef, useState } from \"react\";\r\nimport DropdownContent from \"./DropdownContent.model\";\r\nimport styles from \"./Dropdown.module.scss\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\n\r\nconst Dropdown: FunctionComponent<DropdownContent> = (props) => {\r\n const { setFormFieldsState, formFieldsState, setRequiredFieldsEach, requiredFieldsEach, setIsAlert, isAlert, resetFields } = props;\r\n const [fieldValue, setFieldValue] = useState(\"\");\r\n const ref = useRef<HTMLSelectElement>(null);\r\n\r\n useEffect(() => {\r\n if (resetFields && ref.current) { ref.current.value = \"\", setFieldValue(\"\"); }\r\n }, [resetFields]);\r\n\r\n const handleChange = (e: React.FormEvent<HTMLSelectElement>) => {\r\n const el = e.target as HTMLInputElement;\r\n\r\n const includesAlias = requiredFieldsEach.length > 0 ? requiredFieldsEach.includes(props.alias) : false;\r\n if (props.mandatory && el.value.length > 0 && !includesAlias) {\r\n setRequiredFieldsEach([...requiredFieldsEach, props.alias]);\r\n }\r\n\r\n if (props.mandatory && el.value.length === 0 && includesAlias) {\r\n setRequiredFieldsEach(requiredFieldsEach.filter(e => e !== props.alias));\r\n setIsAlert(true);\r\n }\r\n\r\n setFormFieldsState({ ...formFieldsState, [el.name]: el.value });\r\n if (ref.current) setFieldValue(ref.current.value);\r\n };\r\n\r\n const alertClass = !fieldValue && props.mandatory && isAlert ? styles.alert : undefined;\r\n\r\n return (\r\n <div className={styles.select_field}>\r\n <label>\r\n <div className={styles.label_wrapper}>\r\n <span className={styles.label}>{props.caption}</span> {props.mandatory ? (<span className={styles.mandatory}>*</span>) : null}\r\n </div>\r\n <select onChange={handleChange} className={combineClasses([styles.dropdown, alertClass])} ref={ref} name={props.alias}>\r\n {props.preValues ? props.preValues.map((option, index) => {\r\n return <option key={index} value={option}>{option}</option>;\r\n })\r\n : null}\r\n </select>\r\n </label>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Dropdown;\r\n","import React, { Fragment, FunctionComponent } from \"react\";\r\nimport FormFieldContent from \"./FormFieldsContent.model\";\r\nimport InputField from \"../InputField/InputField\";\r\nimport TextareaField from \"../TextareaField/TextareaField\";\r\nimport RadioButtons from \"../RadioButtons/RadioButtons\";\r\nimport Checkbox from \"../Checkbox/Checkbox\";\r\nimport Dropdown from \"../Dropdown/Dropdown\";\r\n\r\nconst Field: FunctionComponent<FormFieldContent> = (props) => {\r\n\r\n const renderControl = (props: FormFieldContent): null | JSX.Element => {\r\n switch (props.fieldTypeId) {\r\n case \"3f92e01b-29e2-4a30-bf33-9df5580ed52c\": {\r\n return (<InputField {...props} />);\r\n }\r\n case \"0dd29d42-a6a5-11de-a2f2-222256d89593\": {\r\n return (<Dropdown {...props} />);\r\n }\r\n case \"023f09ac-1445-4bcb-b8fa-ab49f33bd046\": {\r\n return (<TextareaField {...props} />);\r\n }\r\n case \"903df9b0-a78c-11de-9fc1-db7a56d89593\": {\r\n return (<RadioButtons {...props} />);\r\n }\r\n case \"d5c0c390-ae9a-11de-a69e-666455d89593\": {\r\n return (<Checkbox {...props} />);\r\n }\r\n case \"a72c9df9-3847-47cf-afb8-b86773fd12cd\": {\r\n return (<Checkbox {...props} />);\r\n }\r\n default: {\r\n return null;\r\n }\r\n }\r\n };\r\n\r\n return (\r\n <Fragment>\r\n {renderControl(props)}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default Field;\r\n","import React, { useState, FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./Form.module.scss\";\r\nimport FormProps from \"./FormProps.interface\";\r\n\r\nimport Alerts from \"./components/Alerts/Alerts\";\r\nimport FormFields from \"./components/FormFields/FormFields\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport DynamicHeading from \"components/DynamicHeading/DynamicHeading\";\r\nimport getUmbracoEndPoint from \"app/umbraco/helpers/UmbracoEndPoint\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport urlBuilder from \"app/umbraco/helpers/urlBuilder\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst Form: FunctionComponent<FormProps> = (props) => {\r\n const wrapperStyles = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const formFields = props.content.form?.pages[0]?.fieldSets[0]?.containers[0]?.fields;\r\n const formFieldsExist = formFields && formFields.length > 0;\r\n\r\n const [isAlert, setIsAlert] = useState(false);\r\n const [currentAlerts, setCurrentAlerts] = useState<string[]>([]);\r\n const [formFieldsState, setFormFieldsState] = useState({});\r\n const [loading, setLoading] = useState(false);\r\n const [successAlert, setSuccessAlert] = useState<string | undefined>(undefined);\r\n const [success, setSuccess] = useState(false);\r\n const [resetFields, setResetFields] = useState(false);\r\n\r\n const [requiredFieldsForm, setRequiredFieldsForm] = useState<string[]>([]);\r\n const [requiredFieldsEach, setRequiredFieldsEach] = useState<string[]>([]);\r\n const requiredMessage = props.content.form?.requiredErrorMessage;\r\n const successMessage = props.content.form?.messageOnSubmit;\r\n\r\n useEffect(() => {\r\n const requiredFields: string[] = [];\r\n\r\n if (formFields && formFields.length) {\r\n formFields.forEach((field: { mandatory: boolean; alias: string }) => {\r\n if(field.mandatory) requiredFields.push(field.alias);\r\n });\r\n }\r\n\r\n setRequiredFieldsForm(requiredFields);\r\n }, []);\r\n\r\n const formWidthClass = props.settings.formWidth ? styles[props.settings.formWidth] : undefined;\r\n\r\n const entriesArr: Record<string, unknown>[] = [];\r\n Object.entries(formFieldsState).forEach(entry => {\r\n entriesArr.push({ alias: entry[0], value: entry[1] });\r\n });\r\n\r\n useEffect(() => {\r\n if (isAlert === true && currentAlerts.length === 0) {\r\n setIsAlert(false);\r\n }\r\n }, [currentAlerts]);\r\n\r\n useEffect(() => {\r\n const sameValues = requiredFieldsForm.sort().join(\",\") === requiredFieldsEach.sort().join(\",\");\r\n if (sameValues && currentAlerts.includes(requiredMessage)) {\r\n setCurrentAlerts(currentAlerts.filter((e => e !== requiredMessage)));\r\n }\r\n }, [requiredFieldsEach]);\r\n\r\n const setSuccessAndHide = () => {\r\n setSuccessAlert(successMessage);\r\n setLoading(false);\r\n setResetFields(false);\r\n setFormFieldsState({});\r\n setRequiredFieldsEach([]);\r\n if (success === false) setSuccess(true);\r\n setTimeout(() => {\r\n setSuccess(false);\r\n }, 5000);\r\n };\r\n\r\n const checkRequiredArrays = () => {\r\n const sameValues = requiredFieldsForm.sort().join(\",\") === requiredFieldsEach.sort().join(\",\");\r\n if (!sameValues && !currentAlerts.includes(requiredMessage)) {\r\n setCurrentAlerts([...currentAlerts, requiredMessage]);\r\n }\r\n return sameValues;\r\n };\r\n\r\n const handleSubmit = (e: React.FormEvent<HTMLFormElement>) => {\r\n e.preventDefault();\r\n const url = urlBuilder(\"/api/form/submit\");\r\n const body = { formId: props.content.form.id, fields: [...entriesArr] };\r\n\r\n //Compare Arrays to check if all required fields are completed\r\n const arraysCheck = checkRequiredArrays();\r\n\r\n if (currentAlerts.length > 0 || entriesArr.length === 0 || !arraysCheck) {\r\n setIsAlert(true);\r\n }\r\n else if(!isAlert && arraysCheck) {\r\n setIsAlert(false);\r\n setLoading(true);\r\n setResetFields(true);\r\n try {\r\n fetch(url.toString(), {\r\n method: \"POST\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n \"Origin\": getUmbracoEndPoint(),\r\n \"X-Request-Domain\": getUmbracoEndPoint()\r\n },\r\n body: JSON.stringify(body)\r\n }).then(() => { setSuccessAndHide(); });\r\n }\r\n catch (error) {\r\n throw new Error(\"Sending Failed.\");\r\n }\r\n }\r\n };\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperStyles])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={combineClasses([styles.container, formWidthClass])}>\r\n {/* Headline */}\r\n {props.content.headline ? (\r\n <DynamicHeading className={styles.headline}>{props.content.headline}</DynamicHeading>\r\n ) : null}\r\n\r\n {/* Tagline */}\r\n {props.content.tagline ? (\r\n <span className={styles.tagline}>{props.content.tagline}</span>\r\n ) : null}\r\n\r\n <form action=\"POST\" className={styles.form} onSubmit={handleSubmit}>\r\n\r\n {formFieldsExist ? formFields.map((formField: any, index: number) => {\r\n return <FormFields key={index} resetFields={resetFields} isAlert={isAlert} setIsAlert={setIsAlert} setRequiredFieldsEach={setRequiredFieldsEach} requiredFieldsEach={requiredFieldsEach} setCurrentAlerts={setCurrentAlerts} currentAlerts={currentAlerts} formFieldsState={formFieldsState} setFormFieldsState={setFormFieldsState} {...formField} />;\r\n }) : null}\r\n\r\n <div className={styles.button_and_loading}>\r\n <button className={styles.button} type=\"submit\">\r\n <span>{props.content.form?.submitLabel ? props.content.form.submitLabel : \"Submit\"}</span>\r\n </button>\r\n {loading ? (\r\n <div className={styles.loader}>Sending...</div>\r\n ) : null}\r\n </div>\r\n </form>\r\n <Alerts alerts={currentAlerts} success={success} successAlert={successAlert} />\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default Form;\r\n","// Quote\r\nexport { default as Form } from \"./Form\";\r\nexport type { default as FormProps } from \"./FormProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"YUAqQ3ZW6EColl3gGpdh\",\"Full\":\"MwCBU5lasBMx2cVOWtKj\",\"container\":\"dJaMj0yu4lv1JKCutLVd\",\"Small\":\"ZRFqZsOwXJFve9BdIIsE\",\"Medium\":\"QBhN8fSmNdZuFdceytcj\",\"Large\":\"BDDiCAH5VAU3GO_FVpIg\",\"media\":\"aMv5fwA9gOTA7qA2z0Q2\",\"caption\":\"y1bCIuMvN7C_8ST2WJ8n\"};","import React, { FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./Image.module.scss\";\r\nimport ImageProps from \"./ImageProps.interface\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getImageAspectRatio from \"app/media/helpers/getImageAspectRatio\";\r\nimport getImageCrop from \"app/media/helpers/getImageCrop\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport ImageViewer from \"components/ImageViewer/ImageViewer\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst Image: FunctionComponent<ImageProps> = (props) => {\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const imageCrop = getImageCrop(props.content.image?.umbracoFile.crops, props.settings.imageCrop, \"Fullscreen (4:3)\");\r\n const imageAspectRatio = getImageAspectRatio(imageCrop, props.content.image?.umbracoWidth, props.content.image?.umbracoHeight);\r\n const imageSizeClass = props.settings.imageSize ? styles[props.settings.imageSize] : undefined;\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, imageSizeClass, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={combineClasses([styles.container, imageSizeClass])}>\r\n <div className={styles.media}>\r\n {/* Media */}\r\n {props.content.image ? (\r\n <ImageViewer src={props.content.image.umbracoFile.src} crop={imageCrop} focalPoint={props.content.image.umbracoFile.focalPoint} alt={props.content.imageAlternative} aspectRatioX={imageAspectRatio.aspectRatioX} aspectRatioY={imageAspectRatio.aspectRatioY} />\r\n ) : null}\r\n\r\n {/* Caption */}\r\n {props.content.imageCaption && props.content.imageCaption.length > 0 ? (\r\n <div className={styles.caption}>{props.content.imageCaption}</div>\r\n ) : null}\r\n </div>\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default Image;","// Image\r\nexport { default as Image } from \"./Image\";\r\nexport type { default as ImageProps } from \"./ImageProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"glFSrmRATTbyECjqCAFP\",\"inner\":\"MPCF19uMj3xzLF2Dvvq3\",\"list\":\"bnqgCnFxHx7jHJkAEi9r\",\"tags\":\"nJdGY237BM_cuiFXTU_B\",\"tag\":\"gCcTZyStn77F4ZkjuOoT\",\"is_active\":\"KbHqT5lYMTIkNxpfcLhy\"};","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"_1G5mByzFL6wgxgFycU7b\",\"arrow_down_right\":\"JsizS98ZcRl6ZZTGKUqX\",\"focused\":\"qnzxw4pP2WWyrMbpAOHS\",\"image_wrapper\":\"bjXciTB8wwrHcI2e41YP\",\"overlay\":\"uAxhEikx7EonKTuVg0Hg\",\"title\":\"U1CVzT_nnPAGFCpbrL7b\",\"text\":\"KwsMIBuzdC7rqj6n3kVM\",\"button\":\"GMLi3KWrF9IZbS5jGWEj\",\"button_text\":\"GK5Jx59Q3Cz8rRhBBiPx\",\"partnerLogo\":\"ZcnQpCVpw4t2GGYTHLsp\",\"icon\":\"yRyao7XooUk9nOWZxE2u\"};","import React, { FunctionComponent, useState } from \"react\";\r\nimport styles from \"./Logo.module.scss\";\r\nimport LogoProps from \"./LogoProps.interface\";\r\nimport getImageAspectRatio from \"app/media/helpers/getImageAspectRatio\";\r\nimport ImageViewer from \"components/ImageViewer/ImageViewer\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\n\r\nconst Logo: FunctionComponent<LogoProps> = (props) => {\r\n const imageAspectRatio = getImageAspectRatio(undefined, props.content.image?.umbracoWidth, props.content.image?.umbracoHeight);\r\n const imageUrl = props.content.image?.umbracoFile.src;\r\n\r\n const [focused, setFocused] = useState(false);\r\n const overlayFocused = focused ? styles.focused : undefined;\r\n\r\n return (\r\n <div className={combineClasses([styles.wrapper, overlayFocused])} tabIndex={0} onFocus={() => setFocused(true)} onBlur={() => setFocused(false)} onMouseOver={() => setFocused(true)} onMouseLeave={() => setFocused(false)}>\r\n {/* Media */}\r\n <div className={styles.image_wrapper}>\r\n {props.content.image ? (\r\n <ImageViewer className={styles.partnerLogo} extensionType=\"png\" src={imageUrl} alt={props.content.title ? props.content.title : \"Partner Logo\"} aspectRatioX={imageAspectRatio.aspectRatioX} aspectRatioY={imageAspectRatio.aspectRatioY} {...imageAspectRatio} />\r\n ) : null}\r\n </div>\r\n\r\n {/* Content */}\r\n <div className={combineClasses([styles.overlay, overlayFocused])}>\r\n {props.content.title ? (\r\n <h3 className={combineClasses([styles.title, overlayFocused])}>{props.content.title}</h3>\r\n ) : null}\r\n\r\n {props.content.description ? (\r\n <p className={combineClasses([styles.text, overlayFocused])}>{props.content.description}</p>\r\n ) : null}\r\n\r\n {props.content.button && props.content.button.length > 0 ? (\r\n <Anchor className={combineClasses([styles.button, overlayFocused])} to={props.content.button[0].content.link}>\r\n <span className={styles.button_text}>{props.content.button[0].content.label}</span>\r\n </Anchor>\r\n ) : null}\r\n </div>\r\n\r\n <IconViewer className={combineClasses([styles.arrow_down_right, overlayFocused])} name=\"arrow-bottom-right\" />\r\n </div>\r\n );\r\n};\r\n\r\nexport default Logo;","import React, { FunctionComponent, useEffect, useState } from \"react\";\r\nimport styles from \"./Logos.module.scss\";\r\nimport LogosProps from \"./LogosProps.interface\";\r\n\r\nimport Logo from \"./components/Logo/Logo\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport useFilter from \"blocks/hooks/useFilter\";\r\nimport Dictionary from \"components/Dictionary/Dictionary\";\r\n\r\nconst Logos: FunctionComponent<LogosProps> = (props) => {\r\n const history = useHistory();\r\n\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const [items, setItems] = useState(props.content.logos);\r\n\r\n const [filters, viewState] = useFilter(history.location.pathname);\r\n const [currentFilters, setCurrentFilters] = useState<any[]>([]);\r\n\r\n const clearFilters = () => {\r\n setCurrentFilters([]);\r\n\r\n // Setting URL Params\r\n history.replace({\r\n search: undefined,\r\n });\r\n\r\n setItems(props.content.logos);\r\n };\r\n\r\n const noFiltersClass = !currentFilters || (currentFilters && currentFilters.length === 0) ? styles.is_active : undefined;\r\n\r\n const handleTagClick = (filter: any) => {\r\n const filterId = filter.id.toString();\r\n\r\n // Setting current filter\r\n if (typeof (filterId) !== \"undefined\" && filterId !== null) {\r\n if (currentFilters && currentFilters.length > 0 && currentFilters[0] === filterId) {\r\n setCurrentFilters([]);\r\n\r\n // Setting URL Params\r\n history.replace({\r\n search: undefined,\r\n });\r\n\r\n setItems(props.content.logos);\r\n }\r\n else {\r\n setCurrentFilters([filterId]);\r\n\r\n // Setting URL Params\r\n history.replace({\r\n pathname: location.pathname,\r\n search: `?f=${filter.id}`,\r\n hash: location.hash\r\n });\r\n\r\n const itemsFiltered = props.content.logos?.filter((item) => {\r\n const givenFilters = item.content.filters && item.content.filters.map(x => x._id.toString());\r\n return givenFilters?.includes(filterId);\r\n });\r\n\r\n setItems(itemsFiltered);\r\n }\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n const query = new URLSearchParams(history.location.search);\r\n const filter = query.get(\"f\");\r\n\r\n // Setting current filter\r\n if (typeof (filter) !== \"undefined\" && filter !== null) {\r\n setCurrentFilters([filter]);\r\n\r\n const itemsFiltered = props.content.logos?.filter((item) => {\r\n const givenFilters = item.content.filters && item.content.filters.map(x => x._id?.toString());\r\n return givenFilters?.includes(filter);\r\n });\r\n\r\n setItems(itemsFiltered);\r\n }\r\n }, []);\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={styles.inner}>\r\n {/* Filters */}\r\n {isBrowserContext() && viewState === \"LOADED\" ? (\r\n <div className={styles.tags}>\r\n <button tabIndex={0} onClick={clearFilters} className={combineClasses([styles.tag, noFiltersClass])}>\r\n <Dictionary name=\"LOGOS_FILTER.ALL\" />\r\n </button>\r\n\r\n {filters && filters?.map((filter: any) => {\r\n const currentFilterClass = currentFilters.includes(filter.id.toString()) ? styles.is_active : undefined;\r\n\r\n return (\r\n <button key={filter.id} tabIndex={0} onClick={() => handleTagClick(filter)} className={combineClasses([styles.tag, currentFilterClass])}>\r\n {filter.label}\r\n </button>\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n\r\n {/* Logos */}\r\n <div className={styles.list}>\r\n {items && items.map((logo, index) => {\r\n return (\r\n <Logo key={logo.contentUdi} {...logo} />\r\n );\r\n })}\r\n </div>\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default Logos;","// Logos\r\nexport { default as Logos } from \"./Logos\";\r\nexport type { default as LogosProps } from \"./LogosProps.interface\";\r\n\r\n// Logo\r\nexport { default as Logo } from \"./components/Logo/Logo\";\r\nexport type { default as LogoProps } from \"./components/Logo/LogoProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"Sd9uGigUh8HwpLimYu6z\",\"inner\":\"c5XY3_XkXE7jn40qTL59\",\"width_Small\":\"DyvlwKLsuzzq8jervKr8\",\"width_Large\":\"gL_DT8_pl2OdP2fqyD_Q\",\"sponsors\":\"iqGPiOpoUEupxnOTWqrw\",\"sponsors_heading\":\"IYcoi5vaxXzgdwEF4mco\",\"logos\":\"buTAVyzPntCrGNjfzPeL\",\"logo_image\":\"H29hk480fcLUJD56jXkP\"};","import React, { FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./LogosSponsors.module.scss\";\r\nimport LogosSponsorsProps from \"./LogosSponsorsProps.interface\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport ImageViewer from \"components/ImageViewer/ImageViewer\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst LogosSponsors: FunctionComponent<LogosSponsorsProps> = (props) => {\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n if (props.settings?.width) {\r\n wrapperClasses.push(styles[`width_${props.settings.width}`]);\r\n }\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={styles.inner}>\r\n\r\n {props.content?.logos && props.content?.logos.length > 0 ?\r\n <div className={styles.sponsors}>\r\n {/* Headline */}\r\n {props?.content?.headline ?\r\n (<h1 className={styles.sponsors_heading}>{props?.content?.headline}</h1>) : null}\r\n\r\n {/* Sponsors Logos */}\r\n <div className={styles.logos}>\r\n {props.content?.logos.map((logo: any) => {\r\n return logo.content.image ? (<ImageViewer key={logo.contentUdi} alt={logo.content.alternative ? logo.content.alternative : \"Sponsor Logo\"} className={styles.logo_image} src={logo.content.image._url ? logo.content.image._url : \"\"} />) : null;\r\n })}\r\n </div>\r\n </div>\r\n : null}\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default LogosSponsors;","// Logos\r\nexport { default as LogosSponsors } from \"./LogosSponsors\";\r\nexport type { default as LogosSponsorsProps } from \"./LogosSponsorsProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"i7xK9JboWNiqZsD2df0_\",\"container\":\"do88jZbLL0200Lyckq0l\",\"list\":\"pAEycFMe8j3auyhiETe_\",\"loader\":\"nd7b0g2IZl9lvesYXRoR\",\"load7\":\"xHmAb1kIrhYPtkSlnyiO\",\"tags\":\"wHu1_PHV84SwMMc1BeEQ\",\"tag\":\"_ntZpujaDalJJQ13TAiA\",\"is_active\":\"Teav4sxTirqIW4beFfyg\",\"empty\":\"rDdKfLyXDUnBzUMY393b\",\"error\":\"eFNaOW2zNcyAyCwmZdZv\",\"load6\":\"MMXFjcVHl8xL8DNDZ0Ug\",\"round\":\"qJsQI5FFWBlQcnedpEjp\"};","import { useEffect, useState } from \"react\";\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport NewsListItem from \"../models/item.interface\";\r\nimport NewsListState from \"../models/state.interface\";\r\nimport fetchContentByType from \"app/umbraco/helpers/fetchContentByType\";\r\nimport moment from \"moment\";\r\n\r\nexport default (tags?: string[]): any => {\r\n const history = useHistory();\r\n const location = useLocation<NewsListState>();\r\n\r\n const initialItems = location.state?.posts;\r\n const [items, setItems] = useState<NewsListItem[]>(initialItems);\r\n\r\n const [viewState, setViewState] = useState<string>(initialItems?.length > 0 ? \"LOADED\" : \"LOADING\");\r\n\r\n useEffect(() => {\r\n let isComponentMounted = true;\r\n\r\n const fetchNews = async () => {\r\n let result: NewsListItem[] = [];\r\n const response = await fetchContentByType<NewsListItem[]>(\"newsPage\", history.location.pathname);\r\n\r\n if (response && response.length > 0) {\r\n // Filter by tag\r\n const eligibleNews = response.filter(x => {\r\n if (tags && tags.length > 0) {\r\n const itemHasMatchTag = tags.some(tag => x.tags && x.tags.includes(tag));\r\n return itemHasMatchTag;\r\n }\r\n });\r\n\r\n // Sort by date desc\r\n const sortedNews = eligibleNews.sort((a: NewsListItem, b: NewsListItem) => {\r\n const aDate = moment(a.date, \"YYYY-MM-DDTHH:mm:ss\");\r\n const bDate = moment(b.date, \"YYYY-MM-DDTHH:mm:ss\");\r\n return bDate.diff(aDate);\r\n });\r\n\r\n result = sortedNews;\r\n }\r\n\r\n if (isComponentMounted) {\r\n setItems(result);\r\n\r\n history.replace({\r\n pathname: location.pathname,\r\n search: location.search,\r\n hash: location.hash,\r\n state: {\r\n ...location.state,\r\n posts: result\r\n }\r\n });\r\n\r\n return result;\r\n }\r\n };\r\n\r\n fetchNews().then((result: any) => {\r\n if (result && result.length > 0) {\r\n setViewState(\"LOADED\");\r\n }\r\n else {\r\n setViewState(\"EMPTY\");\r\n }\r\n }).catch(() => {\r\n setViewState(\"ERROR\");\r\n });\r\n\r\n return () => {\r\n isComponentMounted = false;\r\n };\r\n }, [tags]);\r\n\r\n return { items, viewState };\r\n};","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"cmD2TwNrMSzKc7ghictA\",\"inner\":\"ksnqyQrsWNvDHXeStw2O\",\"media\":\"NxxVYVz_yQt1AJ09XSqG\",\"image\":\"YlKZ8TD7iDXkNqhNQs93\",\"content\":\"M75ly1cUMEgchj1LQOcF\",\"headline\":\"mZqJo6OjqqwH2eu2hC7A\",\"text\":\"CUshe9KgbD3ZUK4toPlp\",\"link\":\"w3wSrXDY2TI8S7yqAXBN\",\"date\":\"Zig1ubrQD3oq5CueyELO\"};","import React, { FunctionComponent } from \"react\";\r\nimport styles from \"./NewsCard.module.scss\";\r\nimport NewsCardProps from \"./NewsCardProps.interface\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport getImageAspectRatio from \"app/media/helpers/getImageAspectRatio\";\r\nimport ImageViewer from \"components/ImageViewer/ImageViewer\";\r\nimport getRelativeUrl from \"helpers/getRelativeUrl\";\r\nimport getImageCrop from \"app/media/helpers/getImageCrop\";\r\nimport Moment from \"react-moment\";\r\n\r\nconst NewsCard: FunctionComponent<NewsCardProps> = (props) => {\r\n const imageCrop = getImageCrop(props.image?.umbracoFile.crops, undefined, \"Fullscreen (4:3)\");\r\n const imageAspectRatio = getImageAspectRatio(imageCrop, props.image?.umbracoWidth, props.image?.umbracoHeight);\r\n\r\n return (\r\n <Anchor className={styles.wrapper} to={getRelativeUrl(props._url)}>\r\n <div className={styles.inner}>\r\n <div className={styles.media}>\r\n {props.image ? (\r\n <ImageViewer className={styles.image} src={props.image.umbracoFile.src} focalPoint={props.image.umbracoFile.focalPoint} aspectRatioX={imageAspectRatio.aspectRatioX} aspectRatioY={imageAspectRatio.aspectRatioY} />\r\n ) : null}\r\n </div>\r\n\r\n <div className={styles.content}>\r\n {props.date ? (\r\n <p className={styles.date}>\r\n <Moment parse=\"YYYY-MM-DDTHH:mm:ss\" format=\"DD. MMM YYYY\">{props.date}</Moment>\r\n </p>\r\n ) : null}\r\n\r\n <h4 className={styles.headline}>{props.title}</h4>\r\n\r\n {props.description ? (\r\n <p className={styles.text}>{props.description}</p>\r\n ) : null}\r\n </div>\r\n </div>\r\n </Anchor>\r\n );\r\n};\r\n\r\nexport default NewsCard;","import React, { FunctionComponent, useState, useEffect, useCallback } from \"react\";\r\nimport styles from \"./News.module.scss\";\r\nimport NewsProps from \"./NewsProps.interface\";\r\n\r\nimport fetchNews from \"./hooks/fetchNews\";\r\nimport NewsCard from \"./components/NewsCard/NewsCard\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport Dictionary from \"components/Dictionary/Dictionary\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\nimport useFilter from \"blocks/hooks/useFilter\";\r\n\r\nconst News: FunctionComponent<NewsProps> = (props) => {\r\n const history = useHistory();\r\n\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const [filters, filterViewState] = useFilter(props.content.filter);\r\n const [currentFilters, setCurrentFilters] = useState<any[]>();\r\n\r\n const { items, viewState } = fetchNews(props.content.tags);\r\n\r\n const clearFilters = () => {\r\n const query = new URLSearchParams(history.location.search);\r\n const activeBlock = query.get(\"b\");\r\n\r\n setCurrentFilters([]);\r\n\r\n // Setting URL Params\r\n history.replace({\r\n pathname: location.pathname,\r\n search: `?b=${activeBlock}`,\r\n hash: location.hash\r\n });\r\n };\r\n\r\n const noFiltersClass = !currentFilters || (currentFilters && currentFilters.length === 0) ? styles.is_active : undefined;\r\n\r\n const filteredItems = useCallback(() => {\r\n const result = items ?? [];\r\n\r\n return result?.filter((item: any) => {\r\n const givenFilters = item.filters && item.filters.map((filter: any) => filter._id.toString());\r\n const currentFilter = currentFilters && currentFilters.length > 0 ? currentFilters[0] : undefined;\r\n\r\n return currentFilter ? givenFilters?.includes(currentFilter) : true;\r\n });\r\n }, [items, currentFilters]);\r\n\r\n const handleTagClick = (filter: any) => {\r\n const filterId = filter.id.toString();\r\n\r\n // Setting current filter\r\n if (typeof (filterId) !== \"undefined\" && filterId !== null) {\r\n if (currentFilters && currentFilters.length > 0 && currentFilters[0] === filterId) {\r\n setCurrentFilters([]);\r\n\r\n // Setting URL Params\r\n history.replace({\r\n pathname: location.pathname,\r\n search: undefined,\r\n hash: location.hash\r\n });\r\n }\r\n else {\r\n setCurrentFilters([filterId]);\r\n\r\n // Setting URL Params\r\n history.replace({\r\n pathname: location.pathname,\r\n search: `?b=blockNewsList&f=${filter.id}`,\r\n hash: location.hash\r\n });\r\n }\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n const query = new URLSearchParams(history.location.search);\r\n const filter = query.get(\"f\");\r\n\r\n if (typeof (filter) !== \"undefined\" && filter !== null) {\r\n setCurrentFilters([filter]);\r\n }\r\n }, []);\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.2, });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={styles.container}>\r\n {/* Filters */}\r\n {isBrowserContext() && filterViewState === \"LOADED\" && filters && filters.length > 0 ? (\r\n <div className={styles.tags}>\r\n <button tabIndex={0} onClick={clearFilters} className={combineClasses([styles.tag, noFiltersClass])}>\r\n <Dictionary name=\"NEWS_FILTER.ALL\" />\r\n </button>\r\n\r\n {filters && filters?.map((filter: any, index: number) => {\r\n const currentFilterClass = currentFilters?.includes(filter.id.toString()) ? styles.is_active : undefined;\r\n\r\n return (\r\n <button key={filter.id} tabIndex={index + 1} onClick={() => handleTagClick(filter)} className={combineClasses([styles.tag, currentFilterClass])}>\r\n {filter.label}\r\n </button>\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n\r\n {viewState === \"LOADING\" ? (\r\n <div>\r\n <div className={styles.loader}>Loading...</div>\r\n </div>\r\n ) : null}\r\n\r\n {viewState === \"LOADED\" ? (\r\n <div className={styles.list}>\r\n\r\n {filteredItems().map((item: any) => {\r\n return (\r\n <NewsCard key={item._id} {...item} />\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n\r\n {viewState === \"EMPTY\" ? (\r\n <div className={styles.empty}>\r\n <Dictionary name=\"NEWS_LIST.EMPTY\" />\r\n </div>\r\n ) : null}\r\n\r\n {viewState === \"ERROR\" ? (\r\n <div className={styles.error}>\r\n <Dictionary name=\"NEWS_LIST.ERROR\" />\r\n </div>\r\n ) : null}\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default News;","// News\r\nexport { default as News } from \"./News\";\r\nexport type { default as NewsProps } from \"./NewsProps.interface\";\r\n\r\n// NewsCard\r\nexport { default as NewsCard } from \"./components/NewsCard/NewsCard\";\r\nexport type { default as NewsCardProps } from \"./components/NewsCard/NewsCardProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"cFGNgeaYtxbV2uPdlk6X\",\"container\":\"ITwKZFIcDj7i8MIoJPX_\",\"quote_icon\":\"vTgW93oIYH5sz60IavqW\",\"text\":\"D78R73hudqIKjOatIIBM\",\"author_wrapper\":\"bHnO7nEStRgzMXLG18fW\",\"author\":\"t1Br88ucMb0NkvqT34M4\"};","import React, { FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./Quote.module.scss\";\r\nimport QuoteProps from \"./QuoteProps.interface\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst Quote: FunctionComponent<QuoteProps> = (props) => {\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={styles.container}>\r\n {props.settings.showIcon ? (\r\n <IconViewer className={styles.quote_icon} name=\"quote\" />\r\n ) : null}\r\n\r\n {props.content.text ? (\r\n <div className={styles.text}>\r\n {props.content.text}\r\n </div>\r\n ) : null}\r\n\r\n {props.content.author ? (\r\n <div className={styles.author_wrapper}>\r\n <span className={styles.author}>{props.content.author}</span>\r\n\r\n {props.content.authorTitle ? (\r\n <div>{props.content.authorTitle}</div>\r\n ) : null}\r\n </div>\r\n ) : null}\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default Quote;","// Quote\r\nexport { default as Quote } from \"./Quote\";\r\nexport type { default as QuoteProps } from \"./QuoteProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"j0UltNGiUP5sKvXwbjJ9\",\"inner\":\"QbhqSffAH82ykk5gsHRA\",\"container\":\"yMHj2dNRKVqAQo8j81m2\",\"quote_wrapper\":\"IbJ4D_UuM00cEMYACRQB\",\"quotes\":\"rv0A97YKBBvKuPWn7_ph\",\"arrow_left\":\"Rcm7e6MuEFjJODkCEBFd\",\"arrow_right\":\"GRpci8SrCa3Td_Gaxq47\",\"disabled\":\"FZzSlNO5wn5Aj8z2NrVw\",\"pagination\":\"cfKgko4YIEJ4DXqu5dk3\",\"dot_wrapper\":\"blS_lrlmEdc3FSAWR2eC\",\"dot\":\"SkoZ31rK4fMwPAOKrHkT\",\"active_dot\":\"QmNJaEFVMTK3M3yQUnr7\"};","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"cLTp4a__3Qctp5TO6hcV\",\"container\":\"SKpcdJkH1cv2l0dfHVED\",\"quote_icon\":\"bO1i0haiuGN0YrocyLJc\",\"text\":\"mKDxPEREeK8_eeodDqYO\",\"author_wrapper\":\"M_9KHxIoLWOtl0y0YVay\",\"author\":\"DgvBZFI_ESoER6OQeIws\"};","import { useLayoutEffect, useCallback, useState } from \"react\";\r\n\r\nconst useRect = (ref) => {\r\n const [rect, setRect] = useState(getRect(ref ? ref.current : null));\r\n\r\n const handleResize = useCallback(() => {\r\n if (!ref.current) {\r\n return;\r\n }\r\n\r\n // Update client rect\r\n setRect(getRect(ref.current));\r\n }, [ref]);\r\n\r\n useLayoutEffect(() => {\r\n const element = ref.current;\r\n if (!element) {\r\n return;\r\n }\r\n\r\n handleResize();\r\n\r\n if (typeof ResizeObserver === \"function\") {\r\n let resizeObserver = new ResizeObserver(() => handleResize());\r\n resizeObserver.observe(element);\r\n\r\n return () => {\r\n if (!resizeObserver) {\r\n return;\r\n }\r\n\r\n resizeObserver.disconnect();\r\n resizeObserver = null;\r\n };\r\n }\r\n else {\r\n // Browser support, remove freely\r\n window.addEventListener(\"resize\", handleResize);\r\n\r\n return () => {\r\n window.removeEventListener(\"resize\", handleResize);\r\n };\r\n }\r\n }, [ref.current]);\r\n\r\n return rect;\r\n};\r\n\r\nfunction getRect(element) {\r\n if (!element) {\r\n return {\r\n bottom: 0,\r\n height: 0,\r\n left: 0,\r\n right: 0,\r\n top: 0,\r\n width: 0,\r\n };\r\n }\r\n\r\n return element.getBoundingClientRect();\r\n}\r\n\r\nexport default useRect;","import React, { FunctionComponent, useRef, useEffect } from \"react\";\r\nimport styles from \"./Quote.module.scss\";\r\nimport QuoteProps from \"./QuoteProps.interface\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport useRect from \"../../hooks/useRect\";\r\n\r\nconst Quote: FunctionComponent<QuoteProps> = (props) => {\r\n const { setQuoteWidth } = props;\r\n const slideListRef = useRef<HTMLDivElement>(null);\r\n const rect = useRect(slideListRef);\r\n\r\n useEffect(() => {\r\n setQuoteWidth(-rect.width);\r\n }, [rect.width]);\r\n\r\n return (\r\n <div className={styles.wrapper} ref={slideListRef}>\r\n <div className={styles.container} >\r\n {props.settings.showIcon ? (\r\n <IconViewer className={styles.quote_icon} name=\"quote\" />\r\n ) : null}\r\n\r\n {props.content.text ? (\r\n <div className={styles.text}>\r\n {props.content.text}\r\n </div>\r\n ) : null}\r\n\r\n {props.content.author ? (\r\n <div className={styles.author_wrapper}>\r\n <span className={styles.author}>{props.content.author}</span>\r\n\r\n {props.content.authorTitle ? (\r\n <div>{props.content.authorTitle}</div>\r\n ) : null}\r\n </div>\r\n ) : null}\r\n </div>\r\n\r\n </div>\r\n );\r\n};\r\n\r\nexport default Quote;","import React, { FunctionComponent, useEffect, useState } from \"react\";\r\nimport styles from \"./QuoteSlideshow.module.scss\";\r\nimport QuoteSlideshowProps from \"./QuoteSlideshowProps.interface\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport Quote from \"./components/Quote/Quote\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst QuoteSlideshow: FunctionComponent<QuoteSlideshowProps> = (props) => {\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const [quoteWidth, setQuoteWidth] = useState(0);\r\n const [currentSlideIndex, setCurrentSlideIndex] = useState<number>(0);\r\n const [elementHovered, setElementHovered] = useState<boolean>(false);\r\n\r\n //Slideshow Logic\r\n const onPreviousClick = () => {\r\n if (currentSlideIndex === 0) return;\r\n paginateSlide(-1);\r\n };\r\n\r\n const onNextClick = () => {\r\n if (props.content.quotes) {\r\n if (props.content.quotes?.length === currentSlideIndex + 1) return;\r\n }\r\n paginateSlide(1);\r\n };\r\n\r\n const paginateSlide = (nextSlideIndex: number) => {\r\n setCurrentSlideIndex(currentSlideIndex + nextSlideIndex);\r\n };\r\n\r\n const swipeConfidenceThreshold = 10000;\r\n const swipePower = (offset: number, velocity: number) => {\r\n return Math.abs(offset) * velocity;\r\n };\r\n\r\n const handleDrag = (e:MouseEvent | TouchEvent | PointerEvent, { offset, velocity }:any) => {\r\n const swipe = swipePower(offset.x, velocity.x);\r\n\r\n if (swipe < -swipeConfidenceThreshold) {\r\n onNextClick();\r\n }\r\n else if (swipe > swipeConfidenceThreshold) {\r\n onPreviousClick();\r\n }\r\n };\r\n\r\n const handlePaginationKeyDown = (e:any, index:number) => {\r\n if(e.key === \"Enter\") {\r\n setCurrentSlideIndex(index);\r\n }\r\n };\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n useEffect(() => {\r\n const interval = setInterval(() => {\r\n if (elementHovered === false) {\r\n if ((currentSlideIndex + 1) > (props.content.quotes.length - 1)) {\r\n setCurrentSlideIndex(0);\r\n }\r\n else {\r\n setCurrentSlideIndex(currentSlideIndex + 1);\r\n }\r\n }\r\n }, 4000);\r\n\r\n return () => clearInterval(interval);\r\n }, [currentSlideIndex, elementHovered]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }} onMouseOver={() => setElementHovered(true)} onMouseOut={() => setElementHovered(false)}>\r\n <div className={styles.inner}>\r\n <div className={styles.container}>\r\n <motion.div animate={{ x: quoteWidth * currentSlideIndex }} transition={{ ease: \"easeInOut\", duration: 0.5 }} className={styles.quotes} >\r\n {props.content.quotes && props.content.quotes.length > 0 ? props.content.quotes.map((quote)=> {\r\n return (\r\n <motion.div className={styles.quote_wrapper} drag=\"x\" dragConstraints={{ left: 0, right: 0 }} onDragEnd={(e, { offset, velocity }) => handleDrag(e, { offset, velocity })} key={quote.contentUdi}>\r\n <Quote {...quote} setQuoteWidth={setQuoteWidth}/>\r\n </motion.div>\r\n );\r\n }): null}\r\n </motion.div>\r\n\r\n </div>\r\n <div aria-label={`Arrow Left ${currentSlideIndex === 0 ? \"Disabled\" : \"\"}`} className={combineClasses([styles.arrow_left, currentSlideIndex === 0 ? styles.disabled : undefined])} tabIndex={0} onClick={() => onPreviousClick()} onKeyDown={(e) => {if(e.key === \"Enter\") {onPreviousClick();}}}>\r\n <IconViewer name=\"arrow-left\" />\r\n </div>\r\n\r\n <div aria-label={`Arrow Left ${props.content.quotes?.length === currentSlideIndex + 1 ? \"Disabled\" : \"\"}`} className={combineClasses([styles.arrow_right, props.content.quotes?.length === currentSlideIndex + 1 ? styles.disabled : undefined])} tabIndex={0} onClick={() => onNextClick()} onKeyDown={(e) => {if(e.key === \"Enter\") {onNextClick();}}}>\r\n <IconViewer name=\"arrow-right\" />\r\n </div>\r\n\r\n <div className={styles.pagination}>\r\n {props.content.quotes && props.content.quotes.length > 0 ? props.content.quotes.map((_, index)=> {\r\n return (\r\n <div key={index} aria-label={`Pagination Dot ${index + 1}`} className={styles.dot_wrapper} tabIndex={0} onClick={()=> setCurrentSlideIndex(index)} onKeyDown={(e) => handlePaginationKeyDown(e, index)}>\r\n <motion.span animate={{ width: currentSlideIndex === index ? \"2rem\" : \"1.4rem\" }} transition={{ duration: 0.4 }} className={combineClasses([styles.dot, currentSlideIndex === index ? styles.active_dot : undefined])}></motion.span>\r\n </div>\r\n );\r\n }): null}\r\n </div>\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default QuoteSlideshow;\r\n","// Quote\r\nexport { default as QuoteSlideshow } from \"./QuoteSlideshow\";\r\nexport type { default as QuoteSlideshowProps } from \"./QuoteSlideshowProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"pYnE9e3r0W0KrnhibEXP\",\"container\":\"kZYVIZfhlNygM28jLmFk\",\"intro\":\"zN27aK5K0d2x_EQuIrvy\",\"headline\":\"fbY6lr9OzqiGbkF5Z2me\",\"text\":\"dPvVXgaiLAQsUYqSwLtJ\",\"list\":\"J7FJxvt0xMOguBf4iYhi\"};","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"sOtC_rnpG2UUn8yzkIlP\",\"inner\":\"uGLtLJARYOHsCn6Ui94c\",\"has_icon\":\"uccJWX0bZ9uaDviRi1Lr\",\"has_image\":\"Wv1uuQtZWqU_gBwcMwnQ\",\"has_link\":\"ATC0jQRWOtzimdLGIbKM\",\"link\":\"enFHlFtcgcbdNNhwIS5y\",\"media\":\"RfaPwbjjKG8LrRlKvM5W\",\"content\":\"NYw_FKd4noi28agAybbK\",\"icon_wrapper\":\"WVFoix8xKRwqmqXhf0I3\",\"buttons\":\"XcKB0N7Je7hdkIl_Hw7K\",\"button\":\"J7zynWWf1oan0JZ9VeJq\",\"icon\":\"Lu4u3WLAxdDPhFCTJ7AY\",\"headline\":\"vmAUvJL5cF4uPsRIdkzQ\",\"text\":\"rlHcZopOzBE0suhNWmsP\"};","export default (buttons?: any[]) => {\r\n if (buttons && buttons.length > 0) {\r\n const modalButton = buttons?.find(x => x.content._contentType === \"modalButton\");\r\n const anchorButton = buttons?.find(x => x.content._contentType === \"anchorButton\");\r\n\r\n if (modalButton) {\r\n return modalButton;\r\n }\r\n else if (anchorButton) {\r\n return anchorButton;\r\n }\r\n\r\n return undefined;\r\n }\r\n};","import React, { FunctionComponent } from \"react\";\r\nimport styles from \"./Spot.module.scss\";\r\nimport SpotProps from \"./SpotProps.interface\";\r\n\r\nimport getSpecialLink from \"./helpers/getSpecialLink\";\r\nimport Link from \"components/Link/Link\";\r\n\r\nimport { useDispatch } from \"react-redux\";\r\nimport Button from \"components/Button/Button\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getImageAspectRatio from \"app/media/helpers/getImageAspectRatio\";\r\nimport getImageCrop from \"app/media/helpers/getImageCrop\";\r\nimport getProcessedRichtext from \"blocks/helpers/getProcessedRichtext\";\r\nimport handleOpenModal from \"blocks/helpers/handleOpenModal\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport ImageViewer from \"components/ImageViewer/ImageViewer\";\r\n\r\nconst Spot: FunctionComponent<SpotProps> = (props) => {\r\n const dispatch = useDispatch();\r\n\r\n const processedBodyText = getProcessedRichtext(props.content.bodyText);\r\n const imageCrop = getImageCrop(props.content.image?.umbracoFile.crops, undefined, \"Fullscreen (4:3)\");\r\n const imageAspectRatio = getImageAspectRatio(imageCrop, props.content.image?.umbracoWidth, props.content.image?.umbracoHeight);\r\n\r\n const iconName = props.content.icon ? props.content.icon.toLowerCase() : undefined;\r\n const hasIconClass = props.content.icon && !props.content.image ? styles.has_icon : styles.has_image;\r\n\r\n const link = getSpecialLink(props.content.buttons);\r\n const hasLinkClass = link ? styles.has_link : undefined;\r\n\r\n return (\r\n <div className={styles.wrapper}>\r\n <div className={combineClasses([styles.inner, hasIconClass, hasLinkClass])}>\r\n <Link className={styles.link} link={link}>\r\n {/* Icon */}\r\n {props.content.icon && !props.content.image ? (\r\n <div className={styles.icon_wrapper}>\r\n <IconViewer className={styles.icon} name={iconName} />\r\n </div>\r\n ) : null}\r\n\r\n {/* Media */}\r\n {props.content.image ? (\r\n <div className={styles.media}>\r\n <ImageViewer src={props.content.image.umbracoFile.src} crop={imageCrop} focalPoint={props.content.image.umbracoFile.focalPoint} alt={props.content.imageAlternative} aspectRatioX={imageAspectRatio.aspectRatioX} aspectRatioY={imageAspectRatio.aspectRatioY} />\r\n </div>\r\n ) : null}\r\n </Link>\r\n\r\n {/* Content */}\r\n <div className={styles.content}>\r\n <Link className={styles.link} link={link}>\r\n {props.content.heading ? (\r\n <h3 className={styles.headline}>{props.content.heading}</h3>\r\n ) : null}\r\n\r\n {processedBodyText ? (\r\n <div className={styles.text} dangerouslySetInnerHTML={processedBodyText}></div>\r\n ) : null}\r\n </Link>\r\n\r\n <div className={styles.buttons}>\r\n {props.content.buttons && props.content.buttons.length > 0 ? props.content.buttons.map((button) => {\r\n return button.content._contentType !== \"modalButton\" && button.content._contentType !== \"anchorButton\" ? (\r\n <Button key={button.contentUdi} className={styles.button} modal={button.content.modal} onClick={() => { button.content.modal ? handleOpenModal(button.content.modal, button.content.stickyLink, dispatch) : undefined; }} to={button.content.link} parameters={button.content.parameters} anchor={button.content.anchor} settings={button.settings}>\r\n {button.content.label}\r\n </Button>\r\n ) : null;\r\n }) : null}\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Spot;","import React, { FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./Spots.module.scss\";\r\nimport SpotsProps from \"./SpotsProps.interface\";\r\nimport Spot from \"./components/Spot/Spot\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst Spots: FunctionComponent<SpotsProps> = (props) => {\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={styles.container}>\r\n {/* Spots */}\r\n {props.content.spots && props.content.spots.length > 0 ? (\r\n <div className={styles.list}>\r\n {props.content.spots.map((item, index) => {\r\n return (\r\n <Spot key={index} {...item} />\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default Spots;","// Spots\r\nexport { default as Spots } from \"./Spots\";\r\nexport type { default as SpotsProps } from \"./SpotsProps.interface\";\r\n\r\n// Card\r\nexport { default as Spot } from \"./components/Spot/Spot\";\r\nexport type { default as SpotProps } from \"./components/Spot/SpotProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"hcQaID6ENuQd3Yv5czLX\",\"container\":\"bc4fU6AfrsXpXeWApqdg\",\"alignment_Left\":\"FAZqGciFpQ8cRIf51QNN\",\"alignment_Center\":\"_OljSsJJxglHjagtjqRX\",\"alignment_Right\":\"jD10CKBEPNYMyLvxOy6H\",\"width_Small\":\"zRMyb7JNQR8_1NsXE1QY\",\"width_Large\":\"CFB2cFY4e6WX2uTD5JfR\",\"tagline\":\"WfqB9iqtD17bHyCYG8kG\",\"headline\":\"LuAJxCoTvtvgufugcl7z\",\"intro_text\":\"g1mqcnOX_khXVDr4dr9e\",\"text\":\"EniN509D74Vdq0P1yjT_\",\"buttons\":\"xEm_UPtqD18XquQqdSux\",\"button\":\"rH0ClFMGmVj69qjgtWJa\"};","import React, { FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./Text.module.scss\";\r\nimport TextProps from \"./TextProps.interface\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport DynamicHeading from \"components/DynamicHeading/DynamicHeading\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport handleOpenModal from \"blocks/helpers/handleOpenModal\";\r\nimport Paragraph from \"components/Paragraph/Paragraph\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport Button from \"components/Button/Button\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst Text: FunctionComponent<TextProps> = (props) => {\r\n const dispatch = useDispatch();\r\n\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n if (props.settings?.textAlignment) {\r\n wrapperClasses.push(styles[`alignment_${props.settings.textAlignment}`]);\r\n }\r\n\r\n if (props.settings?.textWidth) {\r\n wrapperClasses.push(styles[`width_${props.settings.textWidth}`]);\r\n }\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={styles.container}>\r\n {/* Tagline */}\r\n {props.content.tagline ? (\r\n <span className={styles.tagline}>{props.content.tagline}</span>\r\n ) : null}\r\n\r\n {/* Headline */}\r\n {props.content.headline ? (\r\n <DynamicHeading className={styles.headline} headlineSize={props.settings.headlineSize} headlineWeight={props.settings.headlineWeight}>{props.content.headline}</DynamicHeading>\r\n ) : null}\r\n\r\n {/* Introductory Text */}\r\n {props.content.introductoryText ? (\r\n <Paragraph className={styles.intro_text} innerHTML={props.content.introductoryText} />\r\n ) : null}\r\n\r\n {/* Text */}\r\n {props.content.bodyText ? (\r\n <Paragraph className={styles.text} innerHTML={props.content.bodyText} />\r\n ) : null}\r\n\r\n {/* Buttons */}\r\n {props.content.buttons && props.content.buttons.length > 0 ? (\r\n <div className={styles.buttons}>\r\n {props.content.buttons.map((button) => {\r\n return (\r\n <Button key={button.contentUdi} className={styles.button} modal={button.content.modal} onClick={() => { button.content.modal ? handleOpenModal(button.content.modal, button.content.stickyLink, dispatch) : undefined; }} to={button.content.link} parameters={button.content.parameters} anchor={button.content.anchor} settings={button.settings}>\r\n {button.content.label}\r\n </Button>\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default Text;","// Text\r\nexport { default as Text } from \"./Text\";\r\nexport type { default as TextProps } from \"./TextProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"D0s6SoUolZY2wkr7p74j\",\"container\":\"YLckLs9ik2OKHPg6a7Pc\",\"media_wrapper\":\"kFiqUR630PddWutE9yEu\",\"media_detail\":\"Yc8S5Gx_iAjiwUqDus2L\",\"has_image_right\":\"_ymOJfp_EBoRt2xRv7cQ\",\"media\":\"fy70_e7FOXohdCRz4HEk\",\"circleImageCircleLowerLeft\":\"U__CJPKqgdJN7wLkplNK\",\"caption\":\"x9QBnLBBce_ZMa3PnJMu\",\"content\":\"I6LRRXE1mBYLX1dQtGZQ\",\"tagline\":\"MekDiGxAGrmNw5glt32_\",\"headline\":\"_bYypITj_8PVG66A3mOm\",\"intro_text\":\"vTfeOdP5JeGEKgpywjRS\",\"text\":\"xfzpyHZlNWxuSA5eUh1C\",\"buttons\":\"kyZBtiZdcJIs90da1rxn\",\"button\":\"_kOPABC0PrzzONiUtwDn\"};","import React, { FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./TextImage.module.scss\";\r\nimport TextImageProps from \"./TextImageProps.interface\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport DynamicHeading from \"components/DynamicHeading/DynamicHeading\";\r\nimport getImageAspectRatio from \"app/media/helpers/getImageAspectRatio\";\r\nimport getImageCrop from \"app/media/helpers/getImageCrop\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport handleOpenModal from \"blocks/helpers/handleOpenModal\";\r\nimport ImageViewer from \"components/ImageViewer/ImageViewer\";\r\nimport Paragraph from \"components/Paragraph/Paragraph\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport Button from \"components/Button/Button\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst TextImage: FunctionComponent<TextImageProps> = (props) => {\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const cropSetting = props.content.imageMask && props.content.imageMask.length === 0 ? props.settings.imageCrop : undefined;\r\n const imageCrop = getImageCrop(props.content.image?.umbracoFile.crops, cropSetting, \"Square (1:1)\");\r\n const imageAspectRatio = getImageAspectRatio(imageCrop, props.content.image?.umbracoWidth, props.content.image?.umbracoHeight);\r\n const imagePositionClass = props.settings.imagePosition === \"Media Right\" ? ` ${styles.has_image_right}` : undefined;\r\n\r\n const hasMask = props.content.imageMask && props.content.imageMask.length > 0;\r\n const masked = props.content.imageMask && props.content.imageMask.length > 0 ? props.content.imageMask[0].content._contentType : undefined;\r\n const detailColor = props.content.imageMask && props.content.imageMask.length > 0 ? props.content.imageMask[0].content.circleColor : undefined;\r\n\r\n const dispatch = useDispatch();\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={combineClasses([styles.container, imagePositionClass])}>\r\n <div className={styles.media_wrapper}>\r\n <div className={combineClasses([styles.media, styles[masked]])}>\r\n {/* Image */}\r\n {props.content.image ? (\r\n <ImageViewer src={props.content.image.umbracoFile.src} crop={imageCrop} focalPoint={props.content.image.umbracoFile.focalPoint} alt={props.content.imageAlternative} aspectRatioX={imageAspectRatio.aspectRatioX} aspectRatioY={imageAspectRatio.aspectRatioY} />\r\n ) : null}\r\n\r\n {/* Caption */}\r\n {props.content.imageCaption && props.content.imageCaption.length > 0 && props.content.imageMask?.length === 0 ? (\r\n <div className={styles.caption}>{props.content.imageCaption}</div>\r\n ) : null}\r\n </div>\r\n\r\n {hasMask ? (\r\n <div className={styles.media_detail} style={{ backgroundColor: detailColor }} />\r\n ) : null}\r\n </div>\r\n\r\n <div className={combineClasses([styles.content])}>\r\n {/* Tagline */}\r\n {props.content.tagline ? (\r\n <span className={styles.tagline}>{props.content.tagline}</span>\r\n ) : null}\r\n\r\n {/* Headline */}\r\n {props.content.headline ? (\r\n <DynamicHeading className={styles.headline} headlineSize={props.settings.headlineSize} headlineWeight={props.settings.headlineWeight}>{props.content.headline}</DynamicHeading>\r\n ) : null}\r\n\r\n {/* Text */}\r\n {props.content.bodyText ? (\r\n <Paragraph className={styles.text} innerHTML={props.content.bodyText} />\r\n ) : null}\r\n\r\n {/* Buttons */}\r\n {props.content.buttons && props.content.buttons.length > 0 ? (\r\n <div className={styles.buttons}>\r\n {props.content.buttons.map((button) => {\r\n return (\r\n <Button key={button.contentUdi} className={styles.button} modal={button.content.modal} onClick={() => { button.content.modal ? handleOpenModal(button.content.modal, button.content.stickyLink, dispatch) : undefined; }} to={button.content.link} parameters={button.content.parameters} anchor={button.content.anchor} settings={button.settings}>\r\n {button.content.label}\r\n </Button>\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n </div>\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default TextImage;","// TextImage\r\nexport { default as TextImage } from \"./TextImage\";\r\nexport type { default as TextImageProps } from \"./TextImageProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"PoGydnm3E2qCBlmZ0Us1\",\"container\":\"UmEurPMNLZxuFJoxTbx8\",\"media\":\"a6M7At6UESGUcnMKp7Ye\",\"has_video_right\":\"zycrVC7TONh3tZXULTpX\",\"caption\":\"AAyDLEuoTUElzXZWguQR\",\"content\":\"RSdcQyxaGTyuGZ91xpLg\",\"tagline\":\"uWKJR7XscM_D0Qmsy5lf\",\"headline\":\"Zcd3FfTwHFjJOruu_bIq\",\"intro_text\":\"mArRv2QLvxi8k20DUqdH\",\"text\":\"ZPsgSZIpME7Cypjl4T3r\",\"buttons\":\"BEfe2fR9SbNZtdcpceXg\",\"button\":\"S0ybYaIJziqS9U2yRkaZ\"};","import { CROP_TYPE } from \"../crop.types\";\r\n\r\nexport default (preferredCropAlias?: CROP_TYPE, fallbackCropAlias?: CROP_TYPE): any => {\r\n const findAspectRatio = (crop?: CROP_TYPE): any => {\r\n if (crop === \"Square (1:1)\") {\r\n return {\r\n aspectRatioX: 1,\r\n aspectRatioY: 1\r\n };\r\n }\r\n else if (crop === \"Fullscreen (4:3)\") {\r\n return {\r\n aspectRatioX: 4,\r\n aspectRatioY: 3\r\n };\r\n }\r\n else if (crop === \"Widescreen (16:9)\") {\r\n return {\r\n aspectRatioX: 16,\r\n aspectRatioY: 9\r\n };\r\n }\r\n else if (crop === \"Ultrawide (21:9)\") {\r\n return {\r\n aspectRatioX: 21,\r\n aspectRatioY: 9\r\n };\r\n }\r\n else if (crop === \"Superwide (32:9)\") {\r\n return {\r\n aspectRatioX: 32,\r\n aspectRatioY: 9\r\n };\r\n }\r\n else {\r\n return undefined;\r\n }\r\n };\r\n\r\n const aspectRatio = findAspectRatio(preferredCropAlias);\r\n\r\n if (typeof (aspectRatio) !== \"undefined\") {\r\n return aspectRatio;\r\n }\r\n else {\r\n return findAspectRatio(fallbackCropAlias);\r\n }\r\n};","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"oOxRtooV9Ua5Hjy9uk2Y\",\"video\":\"bQ8uNqa9oUn8wC07OHki\",\"fadeIn\":\"BJQ5VXDCLO2uZHNYpRvj\",\"iframe\":\"BJPH5sUNpV_rxnhEuHiR\",\"caption\":\"r544PRuF9xPiV5dwrM3B\",\"ratio\":\"wjKLNszDhMuPJsUXCNTa\",\"button_wrapper\":\"CfGsAVg6g4mFdx7OnmtS\",\"is_playing\":\"hqGhR_6wmwKrLrJrnj0a\",\"button\":\"pnQW6DwzUaAqBcU_lnB7\",\"icon_play\":\"jTzAzYY0DXCIEfjfTxuL\",\"icon_pause\":\"jLgAijDmKivtnm0pN5qV\"};","export default (videoUrl?: string): string => {\r\n // Test cases\r\n // https://www.youtube.com/watch?v=soIGV6BszcM\r\n // https://www.youtube.com/watch?v=soIGV6BszcM&foo=bar\r\n // http://youtube.com/watch?v=j1ofke8z8wy\r\n // https://www.youtube.com/embed/wvUl43PJlXk\r\n // https://www.youtube.com/watch?v=soIGV6BszcM?foo=bar\r\n // https://youtube.com/embed/wvUl43PJlXk\r\n // https://youtu.be/wvUl43PJlXk\r\n // https://youtu.be/wvUl43PJlXk?foo=bar\r\n\r\n const regEx = /^(?:https?:\\/\\/)?(?:www\\.)?(?:youtu\\.be\\/|youtube\\.com\\/(?:embed\\/|v\\/|watch\\?v=|watch\\?.+&v=))((?:\\w|-){11})(.*?)$/g;\r\n const parsedVideoUrl = videoUrl?.replace(regEx, \"$1\") || \"\";\r\n return parsedVideoUrl;\r\n};","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport isEqual from 'fast-deep-equal';\nimport youTubePlayer from 'youtube-player';\n/**\n * Check whether a `props` change should result in the video being updated.\n *\n * @param {Object} prevProps\n * @param {Object} props\n */\n\nfunction shouldUpdateVideo(prevProps, props) {\n // A changing video should always trigger an update\n if (prevProps.videoId !== props.videoId) {\n return true;\n } // Otherwise, a change in the start/end time playerVars also requires a player\n // update.\n\n\n var prevVars = prevProps.opts.playerVars || {};\n var vars = props.opts.playerVars || {};\n return prevVars.start !== vars.start || prevVars.end !== vars.end;\n}\n/**\n * Neutralize API options that only require a video update, leaving only options\n * that require a player reset. The results can then be compared to see if a\n * player reset is necessary.\n *\n * @param {Object} opts\n */\n\n\nfunction filterResetOptions(opts) {\n return _objectSpread(_objectSpread({}, opts), {}, {\n height: 0,\n width: 0,\n playerVars: _objectSpread(_objectSpread({}, opts.playerVars), {}, {\n autoplay: 0,\n start: 0,\n end: 0\n })\n });\n}\n/**\n * Check whether a `props` change should result in the player being reset.\n * The player is reset when the `props.opts` change, except if the only change\n * is in the `start` and `end` playerVars, because a video update can deal with\n * those.\n *\n * @param {Object} prevProps\n * @param {Object} props\n */\n\n\nfunction shouldResetPlayer(prevProps, props) {\n return prevProps.videoId !== props.videoId || !isEqual(filterResetOptions(prevProps.opts), filterResetOptions(props.opts));\n}\n/**\n * Check whether a props change should result in an id or className update.\n *\n * @param {Object} prevProps\n * @param {Object} props\n */\n\n\nfunction shouldUpdatePlayer(prevProps, props) {\n return prevProps.id !== props.id || prevProps.className !== props.className || prevProps.opts.width !== props.opts.width || prevProps.opts.height !== props.opts.height || prevProps.title !== props.title;\n}\n\nvar YouTube = /*#__PURE__*/function (_React$Component) {\n _inherits(YouTube, _React$Component);\n\n var _super = _createSuper(YouTube);\n\n /**\n * Expose PlayerState constants for convenience. These constants can also be\n * accessed through the global YT object after the YouTube IFrame API is instantiated.\n * https://developers.google.com/youtube/iframe_api_reference#onStateChange\n */\n function YouTube(props) {\n var _this;\n\n _classCallCheck(this, YouTube);\n\n _this = _super.call(this, props);\n\n _defineProperty(_assertThisInitialized(_this), \"onPlayerReady\", function (event) {\n return _this.props.onReady(event);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPlayerError\", function (event) {\n return _this.props.onError(event);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPlayerStateChange\", function (event) {\n _this.props.onStateChange(event);\n\n switch (event.data) {\n case YouTube.PlayerState.ENDED:\n _this.props.onEnd(event);\n\n break;\n\n case YouTube.PlayerState.PLAYING:\n _this.props.onPlay(event);\n\n break;\n\n case YouTube.PlayerState.PAUSED:\n _this.props.onPause(event);\n\n break;\n\n default:\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPlayerPlaybackRateChange\", function (event) {\n return _this.props.onPlaybackRateChange(event);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPlayerPlaybackQualityChange\", function (event) {\n return _this.props.onPlaybackQualityChange(event);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"createPlayer\", function () {\n // do not attempt to create a player server-side, it won't work\n if (typeof document === 'undefined') return; // create player\n\n var playerOpts = _objectSpread(_objectSpread({}, _this.props.opts), {}, {\n // preload the `videoId` video if one is already given\n videoId: _this.props.videoId\n });\n\n _this.internalPlayer = youTubePlayer(_this.container, playerOpts); // attach event handlers\n\n _this.internalPlayer.on('ready', _this.onPlayerReady);\n\n _this.internalPlayer.on('error', _this.onPlayerError);\n\n _this.internalPlayer.on('stateChange', _this.onPlayerStateChange);\n\n _this.internalPlayer.on('playbackRateChange', _this.onPlayerPlaybackRateChange);\n\n _this.internalPlayer.on('playbackQualityChange', _this.onPlayerPlaybackQualityChange);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"resetPlayer\", function () {\n return _this.internalPlayer.destroy().then(_this.createPlayer);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"updatePlayer\", function () {\n _this.internalPlayer.getIframe().then(function (iframe) {\n if (_this.props.id) iframe.setAttribute('id', _this.props.id);else iframe.removeAttribute('id');\n if (_this.props.className) iframe.setAttribute('class', _this.props.className);else iframe.removeAttribute('class');\n if (_this.props.opts && _this.props.opts.width) iframe.setAttribute('width', _this.props.opts.width);else iframe.removeAttribute('width');\n if (_this.props.opts && _this.props.opts.height) iframe.setAttribute('height', _this.props.opts.height);else iframe.removeAttribute('height');\n if (typeof _this.props.title === 'string') iframe.setAttribute('title', _this.props.title);else iframe.setAttribute('title', 'YouTube video player');\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getInternalPlayer\", function () {\n return _this.internalPlayer;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"updateVideo\", function () {\n if (typeof _this.props.videoId === 'undefined' || _this.props.videoId === null) {\n _this.internalPlayer.stopVideo();\n\n return;\n } // set queueing options\n\n\n var autoplay = false;\n var opts = {\n videoId: _this.props.videoId\n };\n\n if ('playerVars' in _this.props.opts) {\n autoplay = _this.props.opts.playerVars.autoplay === 1;\n\n if ('start' in _this.props.opts.playerVars) {\n opts.startSeconds = _this.props.opts.playerVars.start;\n }\n\n if ('end' in _this.props.opts.playerVars) {\n opts.endSeconds = _this.props.opts.playerVars.end;\n }\n } // if autoplay is enabled loadVideoById\n\n\n if (autoplay) {\n _this.internalPlayer.loadVideoById(opts);\n\n return;\n } // default behaviour just cues the video\n\n\n _this.internalPlayer.cueVideoById(opts);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"refContainer\", function (container) {\n _this.container = container;\n });\n\n _this.container = null;\n _this.internalPlayer = null;\n return _this;\n }\n\n _createClass(YouTube, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.createPlayer();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n if (shouldUpdatePlayer(prevProps, this.props)) {\n this.updatePlayer();\n }\n\n if (shouldResetPlayer(prevProps, this.props)) {\n this.resetPlayer();\n }\n\n if (shouldUpdateVideo(prevProps, this.props)) {\n this.updateVideo();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n /**\n * Note: The `youtube-player` package that is used promisifies all YouTube\n * Player API calls, which introduces a delay of a tick before it actually\n * gets destroyed. Since React attempts to remove the element instantly\n * this method isn't quick enough to reset the container element.\n */\n this.internalPlayer.destroy();\n }\n /**\n * https://developers.google.com/youtube/iframe_api_reference#onReady\n *\n * @param {Object} event\n * @param {Object} target - player object\n */\n\n }, {\n key: \"render\",\n value: function render() {\n return /*#__PURE__*/React.createElement(\"div\", {\n className: this.props.containerClassName\n }, /*#__PURE__*/React.createElement(\"div\", {\n id: this.props.id,\n className: this.props.className,\n ref: this.refContainer,\n loading: this.props.loading\n }));\n }\n }]);\n\n return YouTube;\n}(React.Component);\n\n_defineProperty(YouTube, \"PlayerState\", {\n UNSTARTED: -1,\n ENDED: 0,\n PLAYING: 1,\n PAUSED: 2,\n BUFFERING: 3,\n CUED: 5\n});\n\nYouTube.propTypes = {\n videoId: PropTypes.string,\n // custom ID for player element\n id: PropTypes.string,\n // custom class name for player element\n className: PropTypes.string,\n // custom class name for player container element\n containerClassName: PropTypes.string,\n // custom title for the iFrame, see https://www.w3.org/TR/WCAG20-TECHS/H64.html\n title: PropTypes.string,\n // custom loading for player element\n loading: PropTypes.oneOf(['lazy', 'eager', 'auto']),\n // https://developers.google.com/youtube/iframe_api_reference#Loading_a_Video_Player\n opts: PropTypes.objectOf(PropTypes.any),\n // event subscriptions\n onReady: PropTypes.func,\n onError: PropTypes.func,\n onPlay: PropTypes.func,\n onPause: PropTypes.func,\n onEnd: PropTypes.func,\n onStateChange: PropTypes.func,\n onPlaybackRateChange: PropTypes.func,\n onPlaybackQualityChange: PropTypes.func\n};\nYouTube.defaultProps = {\n videoId: null,\n id: null,\n className: null,\n loading: null,\n opts: {},\n containerClassName: '',\n onReady: function onReady() {},\n onError: function onError() {},\n onPlay: function onPlay() {},\n onPause: function onPause() {},\n onEnd: function onEnd() {},\n onStateChange: function onStateChange() {},\n onPlaybackRateChange: function onPlaybackRateChange() {},\n onPlaybackQualityChange: function onPlaybackQualityChange() {},\n title: null\n};\nexport default YouTube;\n","import React, { FunctionComponent, useState } from \"react\";\r\nimport styles from \"./VideoEmbed.module.scss\";\r\nimport VideoEmbedProps from \"./VideoEmbedProps.interface\";\r\n\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport parseVideoUrl from \"blocks/helpers/parseVideoUrl\";\r\nimport YouTube from \"react-youtube\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\n\r\nconst VideoEmbed: FunctionComponent<VideoEmbedProps> = (props) => {\r\n const [isPlaying, setIsPlaying] = useState(false);\r\n const [player, setPlayer] = useState<any>(undefined);\r\n\r\n const isPlayingClass = isPlaying === true ? styles.is_playing : undefined;\r\n const isAutoplay = props.autoplay ? props.autoplay : false;\r\n const isLoop = props.loop ? props.loop : false;\r\n\r\n const toggleVideoHandler = () => {\r\n if (typeof (player) !== \"undefined\") {\r\n const isPlayerPlaying = player.getPlayerState() === 1 ? true : false;\r\n setIsPlaying(!isPlaying);\r\n\r\n // Plays or pauses the current video\r\n { !isPlayerPlaying ? player.playVideo() : player.pauseVideo(); }\r\n }\r\n };\r\n\r\n const onReady = (event: any) => {\r\n setPlayer(event.target);\r\n };\r\n\r\n const onPlayerPlay = (event: any) => {\r\n setIsPlaying(true);\r\n };\r\n\r\n const onPlayerPause = (event: any) => {\r\n setIsPlaying(false);\r\n };\r\n\r\n return (\r\n <div className={styles.wrapper}>\r\n {/* Media */}\r\n {props.src ? (\r\n <YouTube\r\n videoId={parseVideoUrl(props.src)}\r\n opts={{\r\n playerVars: {\r\n autoplay: isAutoplay ? 1 : 0,\r\n mute: isAutoplay ? 1 : 0, // Must mute to autoplay\r\n color: \"white\",\r\n controls: isAutoplay ? 0 : 1, // Hide controls on autoplay\r\n rel: 0,\r\n loop: isLoop ? 1 : 0,\r\n showinfo: 0\r\n }\r\n }}\r\n containerClassName={styles.video}\r\n className={styles.iframe}\r\n onReady={onReady}\r\n onPlay={onPlayerPlay}\r\n onPause={onPlayerPause}\r\n />\r\n ) : null}\r\n\r\n {!isAutoplay ? (\r\n <div className={combineClasses([styles.button_wrapper, isPlayingClass])} onClick={() => toggleVideoHandler()}>\r\n <button aria-label=\"Play / Pause Video\" type=\"button\" className={styles.button}>\r\n {!isPlaying ? (\r\n <IconViewer name=\"play\" className={styles.icon_play} />\r\n ) : (\r\n <IconViewer name=\"pause\" className={styles.icon_pause} />\r\n )}\r\n </button>\r\n </div>\r\n ) : null}\r\n\r\n {typeof (props.aspectRatioX) !== \"undefined\" && typeof (props.aspectRatioY) !== \"undefined\" ? (\r\n <svg viewBox={`0 0 ${props.aspectRatioX} ${props.aspectRatioY}`} version=\"1.1\" className={styles.ratio} preserveAspectRatio=\"xMidYMid\" xmlSpace=\"preserve\"></svg>\r\n ) : null}\r\n </div>\r\n );\r\n};\r\n\r\nexport default VideoEmbed;","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"wo_zxglvmJGDCJjoyMkT\",\"video\":\"ygbOCsHH_LVqZSIJSyee\",\"fadeIn\":\"qoq2rEWyzRG3t_SvRXD3\",\"loading\":\"YkjfRYae6rSKJ9Ra1o0E\",\"error\":\"w0B9Mo47yUhYT6tkX_03\",\"ratio\":\"UnZif8zdGIqszszINeKw\",\"button_wrapper\":\"qcr879WPpCe3jV5oKkSg\",\"is_playing\":\"rdlw5xwY1XDRi_16yQ5t\",\"button\":\"VoQ1KERCfGfep97ev21k\",\"icon_play\":\"h0jlH6Y5Weetzb28tmE1\",\"icon_pause\":\"TZK5T3P47z5sxk64Ma4n\"};","import urlBuilder from \"app/umbraco/helpers/urlBuilder\";\r\n\r\nexport default (src?: string): string => {\r\n if (!src) {\r\n return \"\";\r\n }\r\n\r\n const fileUrl = urlBuilder(src);\r\n const params = new URLSearchParams();\r\n\r\n const querySeparator = fileUrl.toString().indexOf(\"?\") > 0 ? \"&\" : \"?\";\r\n return `${fileUrl}${querySeparator}${params.toString()}`;\r\n};\r\n","import React, { createRef, Fragment, FunctionComponent, useState } from \"react\";\r\nimport styles from \"./VideoViewer.module.scss\";\r\nimport VideoViewerProps from \"./VideoViewerProps.interface\";\r\n\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport setFileOptions from \"app/media/helpers/setFileOptions\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\n\r\nconst VideoViewer: FunctionComponent<VideoViewerProps> = (props) => {\r\n const videoUrl = setFileOptions(props.src);\r\n const video = createRef<HTMLVideoElement>();\r\n\r\n const isAutoplay = props.autoplay ? props.autoplay : false;\r\n const isLoop = props.loop ? props.loop : false;\r\n const showControls = props.controls ? props.controls : false;\r\n\r\n const [isPlaying, setIsPlaying] = useState(false);\r\n const isPlayingClass = isPlaying === true ? styles.is_playing : undefined;\r\n\r\n const toggleVideoHandler = () => {\r\n const videoCurrent = video.current;\r\n setIsPlaying(!isPlaying);\r\n\r\n //Plays or pauses the current video\r\n { videoCurrent && !isPlaying ? videoCurrent?.play() : videoCurrent?.pause(); }\r\n };\r\n\r\n const onLoadStartHandler = (event: any) => {\r\n if (event && event.target)\r\n event.target.volume = isAutoplay ? 0 : 1;\r\n };\r\n\r\n return (\r\n <Fragment>\r\n <div className={combineClasses([styles.wrapper, props.className])}>\r\n {props.src ? (\r\n <video className={styles.video} controls={(isAutoplay && showControls) || (!isAutoplay && isPlaying)} autoPlay={isAutoplay} loop={isLoop} playsInline={isAutoplay} muted={isAutoplay} ref={video} onLoadStart={onLoadStartHandler}>\r\n <source src={videoUrl} type=\"video/mp4\" />\r\n {props.alt}\r\n </video>\r\n ) : null}\r\n\r\n {!isAutoplay ? (\r\n <div className={combineClasses([styles.button_wrapper, isPlayingClass])} onClick={() => toggleVideoHandler()}>\r\n <button aria-label=\"Play / Pause Video\" type=\"button\" className={styles.button}>\r\n {!isPlaying ? (\r\n <IconViewer name=\"play\" className={styles.icon_play} />\r\n ) : (\r\n <IconViewer name=\"pause\" className={styles.icon_pause} />\r\n )}\r\n </button>\r\n </div>\r\n ) : null}\r\n\r\n {typeof (props.aspectRatioX) !== \"undefined\" && typeof (props.aspectRatioY) !== \"undefined\" ? (\r\n <svg viewBox={`0 0 ${props.aspectRatioX} ${props.aspectRatioY}`} version=\"1.1\" className={styles.ratio} preserveAspectRatio=\"xMidYMid\" xmlSpace=\"preserve\"></svg>\r\n ) : null}\r\n </div>\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default VideoViewer;","import React, { FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./TextVideo.module.scss\";\r\nimport TextVideoProps from \"./TextVideoProps.interface\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport DynamicHeading from \"components/DynamicHeading/DynamicHeading\";\r\nimport getVideoAspectRatio from \"app/media/helpers/getVideoAspectRatio\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport handleOpenModal from \"blocks/helpers/handleOpenModal\";\r\nimport Paragraph from \"components/Paragraph/Paragraph\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport VideoEmbed from \"components/VideoEmbed/VideoEmbed\";\r\nimport VideoViewer from \"components/VideoViewer/VideoViewer\";\r\nimport Button from \"components/Button/Button\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst TextVideo: FunctionComponent<TextVideoProps> = (props) => {\r\n const dispatch = useDispatch();\r\n\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const videoAspectRatio = getVideoAspectRatio(props.settings.videoCrop, \"Widescreen (16:9)\");\r\n const videoPositionClass = props.settings.videoPosition === \"Media Right\" ? ` ${styles.has_video_right}` : undefined;\r\n\r\n const isAutoplay = props.settings.videoAutoplay ? props.settings.videoAutoplay : false;\r\n const isLoop = props.settings.videoLoop ? props.settings.videoLoop : false;\r\n const showControls = !isAutoplay;\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={combineClasses([styles.container, videoPositionClass])}>\r\n <div className={styles.media}>\r\n {/* Media */}\r\n {props.content.video && props.content.video[0] && props.content.video[0].content.video?.umbracoFile ? (\r\n <VideoViewer src={props.content.video[0].content.video?.umbracoFile} alt={props.content.videoAlternative} autoplay={isAutoplay} loop={isLoop} controls={showControls} aspectRatioX={videoAspectRatio.aspectRatioX} aspectRatioY={videoAspectRatio.aspectRatioY} />\r\n ) : null}\r\n\r\n {/* Video Embed */}\r\n {props.content.video && props.content.video[0] && props.content.video[0].content.videoUrl ? (\r\n <VideoEmbed src={props.content.video[0].content.videoUrl} alt={props.content.videoAlternative} autoplay={isAutoplay} loop={isLoop} aspectRatioX={16} aspectRatioY={9} />\r\n ) : null}\r\n\r\n {/* Caption */}\r\n {props.content.videoCaption && props.content.videoCaption.length > 0 ? (\r\n <div className={styles.caption}>{props.content.videoCaption}</div>\r\n ) : null}\r\n </div>\r\n\r\n <div className={combineClasses([styles.content])}>\r\n {/* Tagline */}\r\n {props.content.tagline ? (\r\n <span className={styles.tagline}>{props.content.tagline}</span>\r\n ) : null}\r\n\r\n {/* Headline */}\r\n {props.content.headline ? (\r\n <DynamicHeading className={styles.headline} headlineSize={props.settings.headlineSize} headlineWeight={props.settings.headlineWeight}>{props.content.headline}</DynamicHeading>\r\n ) : null}\r\n\r\n {/* Text */}\r\n {props.content.bodyText ? (\r\n <Paragraph className={styles.text} innerHTML={props.content.bodyText} />\r\n ) : null}\r\n\r\n {/* Buttons */}\r\n {props.content.buttons && props.content.buttons.length > 0 ? (\r\n <div className={styles.buttons}>\r\n {props.content.buttons.map((button) => {\r\n return (\r\n <Button key={button.contentUdi} className={styles.button} modal={button.content.modal} onClick={() => { button.content.modal ? handleOpenModal(button.content.modal, button.content.stickyLink, dispatch) : undefined; }} to={button.content.link} parameters={button.content.parameters} anchor={button.content.anchor} settings={button.settings}>\r\n {button.content.label}\r\n </Button>\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n </div>\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default TextVideo;","// TextVideo\r\nexport { default as TextVideo } from \"./TextVideo\";\r\nexport type { default as TextVideoProps } from \"./TextVideoProps.interface\";","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"K9hurjtU70SDJTEDMqWW\",\"Full\":\"I14I35DGQANcJ6S6BLLU\",\"container\":\"fBxMEDxQ328kThoYsWpM\",\"Small\":\"vKFfbrFJDQ8o101BvE57\",\"Medium\":\"GLKRDheQ9lS7JlLCyGUR\",\"Large\":\"T9T4Tw3EQmJmUy52IocO\",\"media\":\"MiFwKzte7oxSNnl388uR\",\"caption\":\"BTbaJ6ArD7amb4Aqf262\"};","import React, { FunctionComponent, useEffect } from \"react\";\r\nimport styles from \"./Video.module.scss\";\r\nimport VideoProps from \"./VideoProps.interface\";\r\n\r\nimport { motion, useAnimation } from \"framer-motion\";\r\nimport { useInView } from \"react-intersection-observer\";\r\nimport BubbleBackground from \"components/BubbleBackground/BubbleBackground\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport getVideoAspectRatio from \"app/media/helpers/getVideoAspectRatio\";\r\nimport getWrapperClasses from \"blocks/helpers/getWrapperClasses\";\r\nimport useAnchorIdentifier from \"hooks/useAnchorIdentifier\";\r\nimport VideoEmbed from \"components/VideoEmbed/VideoEmbed\";\r\nimport VideoViewer from \"components/VideoViewer/VideoViewer\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\n\r\nconst Video: FunctionComponent<VideoProps> = (props) => {\r\n const wrapperClasses = getWrapperClasses(props.settings);\r\n const identifier = useAnchorIdentifier(props.settings.anchorIdentifier);\r\n\r\n const videoAspectRatio = getVideoAspectRatio(props.settings.videoCrop, \"Widescreen (16:9)\");\r\n const videoSizeClass = props.settings.videoSize ? styles[props.settings.videoSize] : undefined;\r\n\r\n const isAutoplay = props.content.video && props.content.video[0] && props.content.video[0].content.videoAutoplay ? props.content.video[0].content.videoAutoplay : false;\r\n const isLoop = props.content.video && props?.content.video[0] && props.content.video[0].content.videoLoop ? props.content.video[0].content.videoLoop : false;\r\n const showControls = !isAutoplay;\r\n\r\n // ANIMATION\r\n const controls = useAnimation();\r\n const { ref, inView } = useInView({ threshold: 0.3 });\r\n\r\n const animateUp = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: 80, opacity: 0 }\r\n };\r\n const animateDown = {\r\n visible: { y: 0, opacity: 1 },\r\n hidden: { y: -80, opacity: 0 }\r\n };\r\n\r\n const selectAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content._contentType : undefined;\r\n const selectVariants = selectAnimation === \"animateUp\" ? animateUp : selectAnimation === \"animateDown\" ? animateDown : undefined;\r\n const repeatAnimation = props.settings.animation && props.settings.animation.length > 0 ? props.settings.animation[0].content.repeatAnimation : false;\r\n\r\n useEffect(() => {\r\n if (inView) {\r\n controls.start(\"visible\");\r\n }\r\n if (!inView && repeatAnimation) {\r\n controls.start(\"hidden\");\r\n }\r\n }, [controls, inView]);\r\n\r\n return (\r\n <motion.section className={combineClasses([styles.wrapper, videoSizeClass, ...wrapperClasses])} id={identifier} ref={ref} initial={isBrowserContext() ? \"hidden\" : \"shown\"} animate={controls} variants={selectVariants} transition={{ duration: 0.4 }}>\r\n <div className={combineClasses([styles.container, videoSizeClass])}>\r\n <div className={styles.media}>\r\n {/* Media */}\r\n {props.content.video && props.content.video[0] && props.content.video[0].content.video?.umbracoFile ? (\r\n <VideoViewer src={props.content.video[0].content.video?.umbracoFile} alt={props.content.videoAlternative} autoplay={isAutoplay} loop={isLoop} controls={showControls} aspectRatioX={videoAspectRatio.aspectRatioX} aspectRatioY={videoAspectRatio.aspectRatioY} />\r\n ) : null}\r\n\r\n {/* Video Embed */}\r\n {props.content.video && props.content.video[0] && props.content.video[0].content.videoUrl ? (\r\n <VideoEmbed src={props.content.video[0].content.videoUrl} alt={props.content.videoAlternative} autoplay={isAutoplay} loop={isLoop} aspectRatioX={16} aspectRatioY={9} />\r\n ) : null}\r\n\r\n {/* Caption */}\r\n {props.content.videoCaption && props.content.videoCaption.length > 0 ? (\r\n <div className={styles.caption}>{props.content.videoCaption}</div>\r\n ) : null}\r\n </div>\r\n </div>\r\n\r\n {props.settings.bubbleBackground && props.settings.bubbleBackground.length > 0 ? (\r\n <BubbleBackground {...props.settings.bubbleBackground[0]} />\r\n ) : null}\r\n </motion.section>\r\n );\r\n};\r\n\r\nexport default Video;","// Video\r\nexport { default as Video } from \"./Video\";\r\nexport type { default as VideoProps } from \"./VideoProps.interface\";","import React, { Fragment, FunctionComponent } from \"react\";\r\n\r\nimport { BLOCK_TYPE } from \"app/blocks/block.types\";\r\n\r\nimport { Accordions, AccordionsProps } from \"blocks/components/Accordions\";\r\nimport { Banner, BannerProps } from \"blocks/components/Banner\";\r\nimport { Cards, CardsProps } from \"blocks/components/Cards\";\r\nimport { DownloadLinks, DownloadLinksProps } from \"blocks/components/DownloadLinks\";\r\nimport { Embed, EmbedProps } from \"blocks/components/Embed\";\r\nimport { Employees, EmployeesProps } from \"blocks/components/Employees\";\r\nimport { Events, EventsProps } from \"blocks/components/Events\";\r\nimport { Form, FormProps } from \"blocks/components/Form\";\r\nimport { Image, ImageProps } from \"blocks/components/Image\";\r\nimport { Logos, LogosProps } from \"blocks/components/Logos\";\r\nimport { LogosSponsors, LogosSponsorsProps } from \"blocks/components/LogosSponsors\";\r\nimport { News, NewsProps } from \"blocks/components/News\";\r\nimport { Quote, QuoteProps } from \"blocks/components/Quote\";\r\nimport { QuoteSlideshow, QuoteSlideshowProps } from \"blocks/components/QuoteSlideshow\";\r\nimport { Spots, SpotsProps } from \"blocks/components/Spots\";\r\nimport { Text, TextProps } from \"blocks/components/Text\";\r\nimport { TextImage, TextImageProps } from \"blocks/components/TextImage\";\r\nimport { TextVideo, TextVideoProps } from \"blocks/components/TextVideo\";\r\nimport { Video, VideoProps } from \"blocks/components/Video\";\r\n\r\nconst ContentPageBlock: FunctionComponent<BLOCK_TYPE> = (props) => {\r\n const renderControl = (props: BLOCK_TYPE): null | JSX.Element => {\r\n switch (props?.content?._contentType) {\r\n case \"blockAccordions\": {\r\n return (\r\n <Accordions {...props as AccordionsProps} />\r\n );\r\n }\r\n case \"blockBanner\": {\r\n return (\r\n <Banner {...props as BannerProps} />\r\n );\r\n }\r\n case \"blockCardsCarousel\": {\r\n return (\r\n <Cards {...props as CardsProps} />\r\n );\r\n }\r\n case \"blockDownloadLinksList\": {\r\n return (\r\n <DownloadLinks {...props as DownloadLinksProps} />\r\n );\r\n }\r\n case \"blockEmbed\": {\r\n return (\r\n <Embed {...props as EmbedProps} />\r\n );\r\n }\r\n case \"blockEmployeesList\": {\r\n return (\r\n <Employees {...props as EmployeesProps} />\r\n );\r\n }\r\n case \"blockEventsList\": {\r\n return (\r\n <Events {...props as EventsProps} />\r\n );\r\n }\r\n case \"blockImage\": {\r\n return (\r\n <Image {...props as ImageProps} />\r\n );\r\n }\r\n case \"blockLogosList\": {\r\n return (\r\n <Logos {...props as LogosProps} />\r\n );\r\n }\r\n case \"blockLogosSponsors\": {\r\n return (\r\n <LogosSponsors {...props as LogosSponsorsProps} />\r\n );\r\n }\r\n case \"blockNewsList\": {\r\n return (\r\n <News {...props as NewsProps} />\r\n );\r\n }\r\n case \"blockQuote\": {\r\n return (\r\n <Quote {...props as QuoteProps} />\r\n );\r\n }\r\n case \"blockQuoteSlideshow\": {\r\n return (\r\n <QuoteSlideshow {...props as QuoteSlideshowProps} />\r\n );\r\n }\r\n case \"blockSpots\": {\r\n return (\r\n <Spots {...props as SpotsProps} />\r\n );\r\n }\r\n case \"blockText\": {\r\n return (\r\n <Text {...props as TextProps} />\r\n );\r\n }\r\n case \"blockTextImage\": {\r\n return (\r\n <TextImage {...props as TextImageProps} />\r\n );\r\n }\r\n case \"blockTextVideo\": {\r\n return (\r\n <TextVideo {...props as TextVideoProps} />\r\n );\r\n }\r\n case \"blockVideo\": {\r\n return (\r\n <Video {...props as VideoProps} />\r\n );\r\n }\r\n case \"blockForm\": {\r\n return (\r\n <Form {...props as FormProps} />\r\n );\r\n }\r\n default: {\r\n return null;\r\n }\r\n }\r\n };\r\n\r\n return (\r\n <Fragment>\r\n {renderControl(props)}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default ContentPageBlock;","import React, { Fragment, FunctionComponent } from \"react\";\r\nimport ContentPageProps from \"./ContentPageProps.interface\";\r\n\r\nimport ContentPageBlock from \"./ContentPage.block\";\r\n\r\nconst ContentPage: FunctionComponent<ContentPageProps> = (props) => {\r\n return (\r\n <Fragment>\r\n {props.blocks?.map((blockContent, index) => {\r\n return (\r\n <ContentPageBlock key={blockContent?.contentUdi} {...blockContent} />\r\n );\r\n })}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default ContentPage;","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"hgu6EmKs8IQLctoC1cyt\",\"inner\":\"eu8xrvW9fDS44ZF9PrWn\",\"tagline\":\"GkvcniHE5T_uBSe23hkZ\",\"headline\":\"MEuNhRDS4B8iyZxZgSIN\"};","import React, { FunctionComponent } from \"react\";\r\nimport styles from \"./ErrorPage.module.scss\";\r\n\r\nconst ErrorPage: FunctionComponent = () => {\r\n return (\r\n <div className={styles.wrapper}>\r\n <div className={styles.inner}>\r\n <span className={styles.tagline}>500</span>\r\n <h1 className={styles.headline}>An error occured</h1>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default ErrorPage;","import React, { Fragment, FunctionComponent } from \"react\";\r\nimport EventPageProps from \"./EventPageProps.interface\";\r\n\r\nimport ContentPageBlock from \"pages/ContentPage/ContentPage.block\";\r\n\r\nconst EventPage: FunctionComponent<EventPageProps> = (props) => {\r\n return (\r\n <Fragment>\r\n {props.blocks?.map((blockContent, index) => {\r\n return (\r\n <ContentPageBlock key={blockContent?.contentUdi} {...blockContent} />\r\n );\r\n })}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default EventPage;","import setImageOptions from \"app/media/helpers/setImageOptions\";\r\nimport { UmbracoImage } from \"app/media/models/media.interface\";\r\nimport { SiteSetting } from \"../models/settings.model\";\r\nimport { PAGE_TYPE } from \"../pages/page.types\";\r\n\r\n/* Getting meta data for head from page content */\r\ninterface PageMeta {\r\n language: string;\r\n metaTitle: string;\r\n metaDescription: string;\r\n metaKeywords: string;\r\n metaCanonical: string;\r\n robots: string;\r\n socialTitle: string;\r\n socialDescription: string;\r\n socialImage: string;\r\n url: string;\r\n}\r\n\r\nconst getImageUrl = (umbracoImage?: UmbracoImage): string | undefined => {\r\n if (umbracoImage) {\r\n const crop = umbracoImage.umbracoFile.crops?.find(\r\n (crop) => crop.alias === \"Square (1:1)\"\r\n );\r\n return setImageOptions(\r\n umbracoImage.umbracoFile.src,\r\n 1280,\r\n umbracoImage.umbracoExtension,\r\n crop,\r\n umbracoImage.umbracoFile.focalPoint,\r\n 1\r\n );\r\n } else {\r\n return undefined;\r\n }\r\n};\r\n\r\nexport default (page: PAGE_TYPE, settings: SiteSetting): PageMeta => {\r\n let language = \"\";\r\n let metaTitle = \"\";\r\n let metaDescription = \"\";\r\n let metaKeywords = \"\";\r\n let metaCanonical = \"\";\r\n let robots = \"\";\r\n let socialTitle = \"\";\r\n let socialDescription = \"\";\r\n let socialImage = \"\";\r\n let url = \"\";\r\n\r\n if (page) {\r\n switch (page._contentType) {\r\n case \"homePage\":\r\n case \"contentPage\":\r\n case \"eventPage\":\r\n case \"newsPage\": {\r\n language = page._culture || \"da-dk\";\r\n metaTitle = page.metaTitle || page._name || \"WLS\";\r\n metaDescription = page.metaDescription || \"\";\r\n metaKeywords = page.metaKeywords || \"\";\r\n metaCanonical = page.canonical || page._url || \"\";\r\n robots = `${page.metaAllowIndexing ? \"index\" : \"noindex\"},${\r\n page.metaAllowFollowing ? \"follow\" : \"nofollow\"\r\n }`;\r\n socialTitle =\r\n page.socialTitle ||\r\n page.metaTitle ||\r\n settings?.fallbackSocialTitle ||\r\n page._name ||\r\n \"WLS\";\r\n socialDescription =\r\n page.socialDescription ||\r\n page.metaDescription ||\r\n settings?.fallbackSocialDescription ||\r\n \"\";\r\n socialImage =\r\n getImageUrl(page.socialImage) ||\r\n getImageUrl(settings?.fallbackSocialImage) ||\r\n \"\";\r\n url =\r\n page._url || `${window.location.origin}${window.location.pathname}`;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // TODO: Make a prettier return type\r\n return {\r\n language: language,\r\n metaTitle: metaTitle,\r\n metaDescription: metaDescription,\r\n metaKeywords: metaKeywords,\r\n metaCanonical: metaCanonical,\r\n robots: robots,\r\n socialTitle: socialTitle,\r\n socialDescription: socialDescription,\r\n socialImage: socialImage,\r\n url: url,\r\n };\r\n};\r\n","import React, { Fragment, FunctionComponent } from \"react\";\r\nimport HomePageProps from \"./HomePageProps.interface\";\r\n\r\nimport ContentPageBlock from \"pages/ContentPage/ContentPage.block\";\r\n\r\nconst HomePage: FunctionComponent<HomePageProps> = (props) => {\r\n return (\r\n <Fragment>\r\n {props.blocks?.map((blockContent, index) => {\r\n return <ContentPageBlock key={blockContent?.contentUdi} {...blockContent} />;\r\n })}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default HomePage;","import React, { Fragment, FunctionComponent } from \"react\";\r\nimport NewsPageProps from \"./NewsPageProps.interface\";\r\n\r\nimport ContentPageBlock from \"pages/ContentPage/ContentPage.block\";\r\n\r\nconst NewsPage: FunctionComponent<NewsPageProps> = (props) => {\r\n return (\r\n <Fragment>\r\n {props.blocks?.map((blockContent, index) => {\r\n return (\r\n <ContentPageBlock key={blockContent?.contentUdi} {...blockContent} />\r\n );\r\n })}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default NewsPage;","import React, { Fragment, FunctionComponent } from \"react\";\r\nimport NotFoundPageProps from \"./NotFoundPageProps.interface\";\r\n\r\nimport ContentPageBlock from \"pages/ContentPage/ContentPage.block\";\r\n\r\nconst NotFoundPage: FunctionComponent<NotFoundPageProps> = (props) => {\r\n return (\r\n <Fragment>\r\n {props.blocks?.map((blockContent, index) => {\r\n return <ContentPageBlock key={index} {...blockContent} />;\r\n })}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default NotFoundPage;","// extracted by mini-css-extract-plugin\nexport default {\"top_overview_menu\":\"XIbkcpAFpnNq_T7_nDkB\",\"inner\":\"Dr7FV7mfeZV44iqFmg3_\",\"toggle\":\"jeKTqDkDviBqFNmMkbWj\",\"button\":\"zRE0wguwVK7BtroX_YVp\",\"active\":\"xiFUPIlQeXi0VRzQ1wIv\",\"button_background\":\"SvgGXxHW6q2ltxQ53L8y\"};","import React, { Fragment, FunctionComponent, useState, useEffect } from \"react\";\r\nimport OverviewPageProps from \"./OverviewPageProps.interface\";\r\nimport styles from \"./OverviewPage.module.scss\";\r\nimport ContentPageBlock from \"pages/ContentPage/ContentPage.block\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport { motion } from \"framer-motion\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport Dictionary from \"components/Dictionary/Dictionary\";\r\nimport { BLOCK_TYPE } from \"app/blocks/block.types\";\r\n\r\nconst OverviewPage: FunctionComponent<OverviewPageProps> = (props) => {\r\n const history = useHistory();\r\n\r\n const [blocks, setBlocks] = useState<BLOCK_TYPE[]>([]);\r\n const [activeBlock, setActiveBlock] = useState(\"blockEventsList\");\r\n const activeNews = activeBlock === \"blockNewsList\" ? styles.active : undefined;\r\n const activeEvents = activeBlock === \"blockEventsList\" ? styles.active : undefined;\r\n\r\n useEffect(() => {\r\n const query = new URLSearchParams(history.location.search);\r\n const block = query.get(\"b\");\r\n\r\n if (typeof(block) !== \"undefined\" && block !== null) {\r\n setActiveBlock(block);\r\n }\r\n else {\r\n history.replace({\r\n pathname: location.pathname,\r\n search: `?b=${activeBlock}`,\r\n hash: location.hash\r\n });\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n const blocksResult = props.blocks && props.blocks.length > 0 ? props.blocks.filter(block => block?.content._contentType === activeBlock) : [];\r\n setBlocks(blocksResult);\r\n }, [activeBlock]);\r\n\r\n const onActiveBlockClick = (name: string) => {\r\n setActiveBlock(name);\r\n\r\n let query = \"\";\r\n // TODO: This is a bugfix for not showing all on init\r\n if (name === \"blockEventsList\") {\r\n query = `?b=${name}&f=UPCOMING`;\r\n }\r\n else {\r\n query = `?b=${name}`;\r\n }\r\n\r\n history.replace({\r\n pathname: history.location.pathname,\r\n search: query,\r\n hash: history.location.hash\r\n });\r\n };\r\n\r\n return (\r\n <Fragment>\r\n <div className={styles.top_overview_menu}>\r\n <div className={styles.inner}>\r\n <div className={styles.toggle}>\r\n <button onClick={() => onActiveBlockClick(\"blockEventsList\")} className={combineClasses([styles.button, activeEvents])}>\r\n <Dictionary name=\"OVERVIEW.EVENTS\" />\r\n </button>\r\n <button onClick={() => onActiveBlockClick(\"blockNewsList\")} className={combineClasses([styles.button, activeNews])}>\r\n <Dictionary name=\"OVERVIEW.NEWS\" />\r\n </button>\r\n <motion.div style={{ scaleY: 0.9, scaleX: 0.96 }} animate={{ x: activeEvents ? 0 : \"100%\" }} className={styles.button_background} />\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {/* Blocks */}\r\n {blocks && blocks.length > 0 && blocks.map((blockContent, index) => {\r\n return (\r\n <ContentPageBlock key={blockContent?.contentUdi} {...blockContent} />\r\n );\r\n })}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default OverviewPage;","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"LFJTn20LDz_jYZRh6Idk\",\"container\":\"hkeIsmp4dYQhSpdJDL3Y\",\"page_title\":\"uSI8Ob_Sw_l89c6ciWZ_\",\"search_bar\":\"vu6_V4fHHXc90TtcqsFF\",\"results\":\"DJbMn9_ONVY8Kd4P19YQ\",\"loader\":\"QF4P9K5zmwTU3c5zs3AU\",\"load6\":\"R8Dogv_3pa7u5LPSbbXX\",\"round\":\"Ww5MKrCEcrFXXoKGKwRV\"};","import urlBuilder from \"./urlBuilder\";\r\nimport { PAGE_TYPE } from \"../pages/page.types\";\r\nimport getUmbracoEndPoint from \"./UmbracoEndPoint\";\r\n\r\ninterface ContentByRouteResponse {\r\n statusCode: number;\r\n statusText?: string;\r\n items: PAGE_TYPE[];\r\n}\r\n\r\nexport default async (route: string, term: string): Promise<ContentByRouteResponse> => {\r\n const url = urlBuilder(\"/api/search\", { route: route, term: term, page: \"0\", take: \"5\" });\r\n\r\n const response = await fetch(url.toString(), {\r\n method: \"GET\",\r\n headers: {\r\n \"Accept\": \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n \"Origin\": getUmbracoEndPoint(),\r\n \"X-Request-Domain\": getUmbracoEndPoint()\r\n },\r\n body: undefined\r\n });\r\n\r\n return await response.json();\r\n};","import SearchResultsListItem from \"../models/item.interface\";\r\nimport fetchSearchItemsByRoute from \"app/umbraco/helpers/fetchSearchItemsByRoute\";\r\n\r\nconst fetchSearchResults = async (searchQuery: string) => {\r\n if(!searchQuery || searchQuery.trim() === \"\") return;\r\n\r\n if(searchQuery.length > 0) {\r\n const response: SearchResultsListItem = await fetchSearchItemsByRoute(window.location.origin, searchQuery);\r\n return response.items;\r\n }\r\n};\r\n\r\nexport default fetchSearchResults;","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"zKlCtn7LXqFHZZ3GPC6T\",\"title\":\"ZX5U1c3yHrXDUdHrVjd4\",\"text\":\"maTrDkB5RulzCOTtv28d\",\"date\":\"r38spA4c38B2MgCQYsNq\"};","import Anchor from \"components/Anchor/Anchor\";\r\nimport getRelativeUrl from \"helpers/getRelativeUrl\";\r\nimport React, { FunctionComponent } from \"react\";\r\nimport Moment from \"react-moment\";\r\nimport styles from \"./ResultCard.module.scss\";\r\nimport ResultCardProps from \"./ResultCardProps.interface\";\r\n\r\nconst ResultCard: FunctionComponent<ResultCardProps> = (props) => {\r\n return (\r\n <Anchor className={styles.wrapper} to={getRelativeUrl(props.content._url)}>\r\n {/* Date */}\r\n {props.content.date ? (\r\n <p className={styles.date}>\r\n <Moment parse=\"YYYY-MM-DDTHH:mm:ss\" format=\"DD. MMM YYYY\">{props.content.date}</Moment>\r\n </p>\r\n ) : null}\r\n\r\n {/* Name */}\r\n {props.content._name ? (\r\n <h1 className={styles.title}>{props.content._name}</h1>\r\n ): null}\r\n\r\n {/* Summary */}\r\n {props.content.pageExcerpt ? (\r\n <p className={styles.text}>{props.content.pageExcerpt}</p>\r\n ) : null}\r\n </Anchor>\r\n );\r\n};\r\n\r\nexport default ResultCard;\r\n","import { useEffect } from \"react\";\r\nimport { useState } from \"react\";\r\n\r\nexport default function useDebounce(value: string, timeout:number, callback: () => Promise<void>): void {\r\n const [timer, setTimer] = useState<null | NodeJS.Timeout>(null);\r\n\r\n const clearTimer = () => {\r\n if (timer) clearTimeout(timer);\r\n };\r\n\r\n useEffect(() => {\r\n clearTimer();\r\n\r\n if (value && callback) {\r\n const newTimer = setTimeout(callback, timeout);\r\n setTimer(newTimer);\r\n }\r\n }, [value]);\r\n}\r\n\r\n","import React, { FunctionComponent, useState, useEffect } from \"react\";\r\nimport SearchPageProps from \"./SearchPageProps.interface\";\r\nimport styles from \"./SearchPage.module.scss\";\r\nimport fetchSearchResults from \"./helpers/fetchSearchResults\";\r\nimport ResultCard from \"./components/ResultCard/ResultCard\";\r\nimport useDebounce from \"./hooks/useDebounce\";\r\n\r\nconst SearchPage: FunctionComponent<SearchPageProps> = (props) => {\r\n const [searchQuery, setSearchQuery] = useState(\"\");\r\n const [items, setItems] = useState<any[] | undefined>([]);\r\n const [loading, setLoading] = useState(false);\r\n\r\n useEffect(() => {\r\n searchQuery.length > 0 ? setLoading(true) : setLoading(false);\r\n if(searchQuery.length === 0) setItems([]);\r\n }, [searchQuery]);\r\n\r\n const fetchResults = async () => {\r\n setLoading(false);\r\n const fetchedItems = await fetchSearchResults(searchQuery);\r\n setItems(fetchedItems);\r\n };\r\n\r\n useDebounce(searchQuery, 500, fetchResults);\r\n\r\n const handleInputChange = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n e.preventDefault();\r\n setSearchQuery(e.target.value);\r\n };\r\n\r\n return (\r\n <section className={styles.wrapper} >\r\n <div className={styles.container} >\r\n <h1 className={styles.page_title}>{props.pageTitle ? props.pageTitle : \"Search Page\"}</h1>\r\n <input type=\"text\" className={styles.search_bar} value={searchQuery} onChange={handleInputChange}/>\r\n\r\n <div className={styles.results}>\r\n {loading ? (\r\n <div>\r\n <div className={styles.loader}>Loading...</div>\r\n </div>\r\n ): null}\r\n {!loading && items && items.map((item: any) => {\r\n return (\r\n <ResultCard key={item.content._id} {...item} />\r\n );\r\n })}\r\n </div>\r\n </div>\r\n </section>\r\n );\r\n};\r\n\r\nexport default SearchPage;","import React, { Fragment, FunctionComponent, useEffect } from \"react\";\r\nimport { PAGE_TYPE } from \"./page.types\";\r\n\r\nimport { CLOSE_ALL_OVERLAYS } from \"layout/redux/overlay.actions\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport { thunkUpdatePage } from \"app/umbraco/redux/page.actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { useHistory, useLocation, useRouteMatch } from \"react-router-dom\";\r\nimport ContentPage from \"pages/ContentPage/ContentPage\";\r\nimport ErrorPage from \"pages/ErrorPage/ErrorPage\";\r\nimport EventPage from \"pages/EventPage/EventPage\";\r\nimport getPageMeta from \"app/umbraco/helpers/getPageMeta\";\r\nimport HomePage from \"pages/HomePage/HomePage\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\nimport NewsPage from \"pages/NewsPage/NewsPage\";\r\nimport NotFoundPage from \"pages/NotFoundPage/NotFoundPage\";\r\nimport OverviewPage from \"pages/OverviewPage/OverviewPage\";\r\nimport SearchPage from \"pages/SearchPage/SearchPage\";\r\n\r\nconst UmbracoPage: FunctionComponent = () => {\r\n const match = useRouteMatch();\r\n const page = useSelector((state) => state.page.content);\r\n const settings = useSelector((state) => state.settings.content);\r\n\r\n // TODO: Declare type for UmbracoPage thunk actions\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n const location = useLocation<any>();\r\n\r\n // Page update - request\r\n useEffect(() => {\r\n // TODO: Dispatch UpdatePageRequest to show a loader while waiting (show if >250ms and show for minimum 250ms to avoid flashes.)\r\n dispatch(thunkUpdatePage(match.url, history));\r\n }, [dispatch, match.url]);\r\n\r\n // Page update - callback\r\n useEffect(() => {\r\n if (page?._url) {\r\n // #SCROLL_RESTORATION: Resetting scrollbar on page changes to top page page\r\n if (isBrowserContext()) {\r\n window.scrollTo({\r\n left: 0,\r\n top: location.state?.scrollY ?? 0,\r\n behavior: \"instant\",\r\n } as any); // behavior instant is working, types is not.\r\n }\r\n\r\n // #OVERLAY: Reset the redux drawer state to None when changing to a new page\r\n if (page?._url) {\r\n dispatch({\r\n type: CLOSE_ALL_OVERLAYS,\r\n });\r\n }\r\n }\r\n }, [page]);\r\n\r\n const renderHead = (page: PAGE_TYPE): JSX.Element => {\r\n // TODO: Open Graph\r\n const {\r\n language,\r\n metaTitle,\r\n metaDescription,\r\n metaKeywords,\r\n metaCanonical,\r\n robots,\r\n socialTitle,\r\n socialDescription,\r\n socialImage,\r\n url,\r\n } = getPageMeta(page, settings);\r\n\r\n return (\r\n <Helmet>\r\n <html lang={language} />\r\n <title>{metaTitle}</title>\r\n\r\n <meta name=\"title\" content={metaTitle} />\r\n <meta name=\"description\" content={metaDescription} />\r\n <meta name=\"keywords\" content={metaKeywords} />\r\n <meta name=\"canonical\" content={metaCanonical} />\r\n <meta name=\"robots\" content={robots} />\r\n\r\n <meta property=\"og:title\" content={socialTitle} />\r\n <meta property=\"og:description\" content={socialDescription} />\r\n <meta property=\"og:image\" content={socialImage} />\r\n <meta property=\"og:locale\" content={language} />\r\n <meta property=\"og:site_name\" content=\"WLS\" />\r\n <meta property=\"og:type\" content=\"website\" />\r\n <meta property=\"og:url\" content={url} />\r\n </Helmet>\r\n );\r\n };\r\n\r\n const renderBody = (page: PAGE_TYPE): JSX.Element => {\r\n // TODO: Schema JSON-LD\r\n // TODO: Schema Breadcrumb\r\n\r\n switch (page?._contentType) {\r\n case \"homePage\": {\r\n return <HomePage {...page} />;\r\n }\r\n case \"contentPage\": {\r\n return <ContentPage {...page} />;\r\n }\r\n case \"eventPage\": {\r\n return <EventPage {...page} />;\r\n }\r\n case \"newsPage\": {\r\n return <NewsPage {...page} />;\r\n }\r\n case \"overviewPage\": {\r\n return <OverviewPage {...page} />;\r\n }\r\n case \"searchPage\": {\r\n return <SearchPage {...page} />;\r\n }\r\n case \"notFoundPage\": {\r\n return <NotFoundPage {...page} />;\r\n }\r\n case \"errorPage\": {\r\n return <ErrorPage />;\r\n }\r\n default: {\r\n return <Fragment></Fragment>;\r\n }\r\n }\r\n };\r\n\r\n return (\r\n <Fragment>\r\n {renderHead(page)}\r\n {renderBody(page)}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default UmbracoPage;\r\n","import { useState, useEffect, useRef } from \"react\";\r\n\r\nexport enum AppLoadingState {\r\n NONE = \"NONE\",\r\n START_LOADING = \"START_LOADING\",\r\n STILL_LOADING = \"STILL_LOADING\",\r\n LOADED = \"LOADED\"\r\n}\r\n\r\nexport default (settings?: any) => {\r\n const [viewState, setViewState] = useState<string>(\"NONE\");\r\n const appLoadTimer = useRef<any>(null);\r\n\r\n useEffect(() => {\r\n if (typeof (settings) === \"undefined\") {\r\n appLoadTimer.current = setTimeout(() => {\r\n setViewState(\"START_LOADING\");\r\n\r\n appLoadTimer.current = setTimeout(() => {\r\n setViewState(\"STILL_LOADING\");\r\n }, 2000);\r\n }, 250);\r\n }\r\n\r\n if (typeof (settings) !== \"undefined\") {\r\n const waitTime = viewState === \"START_LOADING\" ? 2000 : 0;\r\n\r\n clearTimeout(appLoadTimer.current);\r\n\r\n appLoadTimer.current = setTimeout(() => {\r\n setViewState(\"LOADED\");\r\n }, waitTime);\r\n }\r\n }, [settings]);\r\n\r\n return viewState;\r\n};","import * as cookie from 'cookie';\nexport function hasDocumentCookie() {\n const testingValue = typeof global === 'undefined'\n ? undefined\n : global.TEST_HAS_DOCUMENT_COOKIE;\n if (typeof testingValue === 'boolean') {\n return testingValue;\n }\n // Can we get/set cookies on document.cookie?\n return typeof document === 'object' && typeof document.cookie === 'string';\n}\nexport function cleanCookies() {\n document.cookie.split(';').forEach(function (c) {\n document.cookie = c\n .replace(/^ +/, '')\n .replace(/=.*/, '=;expires=' + new Date().toUTCString() + ';path=/');\n });\n}\nexport function parseCookies(cookies) {\n if (typeof cookies === 'string') {\n return cookie.parse(cookies);\n }\n else if (typeof cookies === 'object' && cookies !== null) {\n return cookies;\n }\n else {\n return {};\n }\n}\nexport function readCookie(value, options = {}) {\n const cleanValue = cleanupCookieValue(value);\n if (!options.doNotParse) {\n try {\n return JSON.parse(cleanValue);\n }\n catch (e) {\n // At least we tried\n }\n }\n // Ignore clean value if we failed the deserialization\n // It is not relevant anymore to trim those values\n return value;\n}\nfunction cleanupCookieValue(value) {\n // express prepend j: before serializing a cookie\n if (value && value[0] === 'j' && value[1] === ':') {\n return value.substr(2);\n }\n return value;\n}\n","import * as cookie from 'cookie';\nimport { hasDocumentCookie, parseCookies, readCookie } from './utils';\nexport default class Cookies {\n constructor(cookies, defaultSetOptions = {}) {\n this.changeListeners = [];\n this.HAS_DOCUMENT_COOKIE = false;\n this.update = () => {\n if (!this.HAS_DOCUMENT_COOKIE) {\n return;\n }\n const previousCookies = this.cookies;\n this.cookies = cookie.parse(document.cookie);\n this._checkChanges(previousCookies);\n };\n const domCookies = typeof document === 'undefined' ? '' : document.cookie;\n this.cookies = parseCookies(cookies || domCookies);\n this.defaultSetOptions = defaultSetOptions;\n this.HAS_DOCUMENT_COOKIE = hasDocumentCookie();\n }\n _emitChange(params) {\n for (let i = 0; i < this.changeListeners.length; ++i) {\n this.changeListeners[i](params);\n }\n }\n _checkChanges(previousCookies) {\n const names = new Set(Object.keys(previousCookies).concat(Object.keys(this.cookies)));\n names.forEach((name) => {\n if (previousCookies[name] !== this.cookies[name]) {\n this._emitChange({\n name,\n value: readCookie(this.cookies[name]),\n });\n }\n });\n }\n _startPolling() {\n this.pollingInterval = setInterval(this.update, 300);\n }\n _stopPolling() {\n if (this.pollingInterval) {\n clearInterval(this.pollingInterval);\n }\n }\n get(name, options = {}) {\n if (!options.doNotUpdate) {\n this.update();\n }\n return readCookie(this.cookies[name], options);\n }\n getAll(options = {}) {\n if (!options.doNotUpdate) {\n this.update();\n }\n const result = {};\n for (let name in this.cookies) {\n result[name] = readCookie(this.cookies[name], options);\n }\n return result;\n }\n set(name, value, options) {\n if (options) {\n options = Object.assign(Object.assign({}, this.defaultSetOptions), options);\n }\n else {\n options = this.defaultSetOptions;\n }\n const stringValue = typeof value === 'string' ? value : JSON.stringify(value);\n this.cookies = Object.assign(Object.assign({}, this.cookies), { [name]: stringValue });\n if (this.HAS_DOCUMENT_COOKIE) {\n document.cookie = cookie.serialize(name, stringValue, options);\n }\n this._emitChange({ name, value, options });\n }\n remove(name, options) {\n const finalOptions = (options = Object.assign(Object.assign(Object.assign({}, this.defaultSetOptions), options), { expires: new Date(1970, 1, 1, 0, 0, 1), maxAge: 0 }));\n this.cookies = Object.assign({}, this.cookies);\n delete this.cookies[name];\n if (this.HAS_DOCUMENT_COOKIE) {\n document.cookie = cookie.serialize(name, '', finalOptions);\n }\n this._emitChange({ name, value: undefined, options });\n }\n addChangeListener(callback) {\n this.changeListeners.push(callback);\n if (this.HAS_DOCUMENT_COOKIE && this.changeListeners.length === 1) {\n if (typeof window === 'object' && 'cookieStore' in window) {\n window.cookieStore.addEventListener('change', this.update);\n }\n else {\n this._startPolling();\n }\n }\n }\n removeChangeListener(callback) {\n const idx = this.changeListeners.indexOf(callback);\n if (idx >= 0) {\n this.changeListeners.splice(idx, 1);\n }\n if (this.HAS_DOCUMENT_COOKIE && this.changeListeners.length === 0) {\n if (typeof window === 'object' && 'cookieStore' in window) {\n window.cookieStore.removeEventListener('change', this.update);\n }\n else {\n this._stopPolling();\n }\n }\n }\n}\n","import Cookies from './Cookies';\nexport default Cookies;\nexport * from './types';\n","import Cookies from 'universal-cookie';\nexport default Cookies;\n","import * as React from 'react';\nimport Cookies from './Cookies';\nconst CookiesContext = React.createContext(new Cookies());\nexport const { Provider, Consumer } = CookiesContext;\nexport default CookiesContext;\n","export function isInBrowser() {\n return (typeof window !== 'undefined' &&\n typeof window.document !== 'undefined' &&\n typeof window.document.createElement !== 'undefined');\n}\n","import { useContext, useLayoutEffect, useState, useMemo } from 'react';\nimport CookiesContext from './CookiesContext';\nimport { isInBrowser } from './utils';\nexport default function useCookies(dependencies) {\n const cookies = useContext(CookiesContext);\n if (!cookies) {\n throw new Error('Missing <CookiesProvider>');\n }\n const [allCookies, setCookies] = useState(() => cookies.getAll());\n if (isInBrowser()) {\n useLayoutEffect(() => {\n function onChange() {\n const newCookies = cookies.getAll({\n doNotUpdate: true,\n });\n if (shouldUpdate(dependencies || null, newCookies, allCookies)) {\n setCookies(newCookies);\n }\n }\n cookies.addChangeListener(onChange);\n return () => {\n cookies.removeChangeListener(onChange);\n };\n }, [cookies, allCookies]);\n }\n const setCookie = useMemo(() => cookies.set.bind(cookies), [cookies]);\n const removeCookie = useMemo(() => cookies.remove.bind(cookies), [cookies]);\n const updateCookies = useMemo(() => cookies.update.bind(cookies), [cookies]);\n return [allCookies, setCookie, removeCookie, updateCookies];\n}\nfunction shouldUpdate(dependencies, newCookies, oldCookies) {\n if (!dependencies) {\n return true;\n }\n for (let dependency of dependencies) {\n if (newCookies[dependency] !== oldCookies[dependency]) {\n return true;\n }\n }\n return false;\n}\n","import { useCookies } from \"react-cookie\";\r\n\r\nexport default (styles?: any): { isClient: boolean, isCrawler: boolean, isClientClass: string } => {\r\n const [cookies] = useCookies([\"HeydayHeadless\"]);\r\n\r\n let isClient = false;\r\n let isCrawler = true;\r\n let isClientClass = undefined;\r\n\r\n const detectRobot = (userAgent: string): boolean => {\r\n const robots = new RegExp(([\r\n /bot/, /spider/, /crawl/,\r\n /APIs-Google/, /AdsBot/, /Googlebot/,\r\n /mediapartners/, /Google Favicon/,\r\n /FeedFetcher/, /Google-Read-Aloud/,\r\n /DuplexWeb-Google/, /googleweblight/,\r\n /bing/, /yandex/, /baidu/, /duckduck/, /yahoo/,\r\n /ecosia/, /ia_archiver/,\r\n /facebook/, /instagram/, /pinterest/, /reddit/,\r\n /slack/, /twitter/, /whatsapp/, /youtube/,\r\n /semrush/,\r\n ] as RegExp[]).map(r => r.source).join(\"|\"), \"i\");\r\n\r\n return robots.test(userAgent);\r\n };\r\n\r\n if (typeof (cookies.HeydayHeadless) === \"undefined\" && !detectRobot(window?.navigator?.userAgent ?? \"\")) {\r\n isClient = true;\r\n isCrawler = false;\r\n isClientClass = styles ? styles.is_client : undefined;\r\n }\r\n\r\n return { isClient, isCrawler, isClientClass };\r\n};","import React, { createContext, useReducer, useEffect, useContext } from 'react';\n\nfunction _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\n\nvar DEFAULT_DOMAIN = 'https://www.googletagmanager.com';\nvar DEFAULT_SCRIPT_NAME = 'gtm.js';\n/**\r\n * Function to get and set dataLayer\r\n * @param dataLayer - The dataLayer\r\n * @param dataLayerName - The dataLayer name\r\n */\nvar getDataLayerSnippet = function getDataLayerSnippet(dataLayer, dataLayerName) {\n if (dataLayerName === void 0) {\n dataLayerName = 'dataLayer';\n }\n return \"window.\" + dataLayerName + \" = window.\" + dataLayerName + \" || [];\" + (dataLayer ? \"window.\" + dataLayerName + \".push(\" + JSON.stringify(dataLayer) + \")\" : '');\n};\n/**\r\n * Function to get the Iframe snippet\r\n * @param environment - The parameters to use a custom environment\r\n * @param customDomain - Custom domain for gtm\r\n * @param id - The id of the container\r\n */\nvar getIframeSnippet = function getIframeSnippet(id, environment, customDomain) {\n if (customDomain === void 0) {\n customDomain = DEFAULT_DOMAIN;\n }\n var params = \"\";\n if (environment) {\n var gtm_auth = environment.gtm_auth,\n gtm_preview = environment.gtm_preview;\n params = \">m_auth=\" + gtm_auth + \">m_preview=\" + gtm_preview + \">m_cookies_win=x\";\n }\n return \"<iframe src=\\\"\" + customDomain + \"/ns.html?id=\" + id + params + \"\\\" height=\\\"0\\\" width=\\\"0\\\" style=\\\"display:none;visibility:hidden\\\" id=\\\"tag-manager\\\"></iframe>\";\n};\n/**\r\n * Function to get the GTM script\r\n * @param dataLayerName - The name of the dataLayer\r\n * @param customDomain - Custom domain for gtm\r\n * @param customScriptName - Custom script file name for gtm\r\n * @param environment - The parameters to use a custom environment\r\n * @param id - The id of the container\r\n */\nvar getGTMScript = function getGTMScript(dataLayerName, id, environment, customDomain, customScriptName) {\n if (customDomain === void 0) {\n customDomain = DEFAULT_DOMAIN;\n }\n if (customScriptName === void 0) {\n customScriptName = DEFAULT_SCRIPT_NAME;\n }\n var params = \"\";\n if (environment) {\n var gtm_auth = environment.gtm_auth,\n gtm_preview = environment.gtm_preview;\n params = \"+\\\">m_auth=\" + gtm_auth + \">m_preview=\" + gtm_preview + \">m_cookies_win=x\\\"\";\n }\n return \"\\n (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\\n new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\\n j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\\n '\" + customDomain + \"/\" + customScriptName + \"?id='+i+dl\" + params + \";f.parentNode.insertBefore(j,f);\\n })(window,document,'script','\" + dataLayerName + \"','\" + id + \"');\\n \";\n};\n\n/**\r\n * Function to setup the Google Tag Manager\r\n * @param params - The snippets params\r\n */\nvar setupGTM = function setupGTM(params) {\n var getDataLayerScript = function getDataLayerScript() {\n var dataLayerScript = document.createElement('script');\n if (params.nonce) {\n dataLayerScript.setAttribute('nonce', params.nonce);\n }\n dataLayerScript.innerHTML = getDataLayerSnippet(params.dataLayer, params.dataLayerName);\n return dataLayerScript;\n };\n var getNoScript = function getNoScript() {\n var noScript = document.createElement('noscript');\n noScript.innerHTML = getIframeSnippet(params.id, params.environment, params.customDomain);\n return noScript;\n };\n var getScript = function getScript() {\n var script = document.createElement('script');\n if (params.nonce) {\n script.setAttribute('nonce', params.nonce);\n }\n script.innerHTML = getGTMScript(params.dataLayerName, params.id, params.environment, params.customDomain, params.customScriptName);\n return script;\n };\n return {\n getDataLayerScript: getDataLayerScript,\n getNoScript: getNoScript,\n getScript: getScript\n };\n};\n/**\r\n * Function to init the GTM\r\n * @param dataLayer - The dataLayer\r\n * @param dataLayerName - The dataLayer name\r\n * @param environment - Specify the custom environment to use\r\n * @param nonce - Server-generated nonce\r\n * @param id - The ID of the GTM\r\n */\nvar initGTM = function initGTM(_ref) {\n var dataLayer = _ref.dataLayer,\n dataLayerName = _ref.dataLayerName,\n environment = _ref.environment,\n nonce = _ref.nonce,\n id = _ref.id,\n customDomain = _ref.customDomain,\n customScriptName = _ref.customScriptName;\n var gtm = setupGTM({\n dataLayer: dataLayer,\n dataLayerName: dataLayerName,\n environment: environment,\n nonce: nonce,\n id: id,\n customDomain: customDomain,\n customScriptName: customScriptName\n });\n var dataLayerScript = gtm.getDataLayerScript();\n var script = gtm.getScript();\n var noScript = gtm.getNoScript();\n document.head.insertBefore(dataLayerScript, document.head.childNodes[0]);\n document.head.insertBefore(script, document.head.childNodes[1]);\n document.body.insertBefore(noScript, document.body.childNodes[0]);\n};\n/**\r\n * Function to send the events to the GTM\r\n * @param dataLayerName - The dataLayer name\r\n * @param data - The data to push\r\n */\nvar sendToGTM = function sendToGTM(_ref2) {\n var dataLayerName = _ref2.dataLayerName,\n data = _ref2.data;\n if (window[dataLayerName]) {\n window[dataLayerName].push(data);\n } else {\n console.warn(\"dataLayer \" + dataLayerName + \" does not exist, has script be initialized\");\n }\n};\n\n/**\r\n * The initial state\r\n */\nvar initialState = {\n dataLayer: undefined,\n dataLayerName: 'dataLayer',\n environment: undefined,\n nonce: undefined,\n id: '',\n injectScript: true\n};\n/**\r\n * The context\r\n */\nvar GTMContext = /*#__PURE__*/createContext(initialState);\nvar GTMContextDispatch = /*#__PURE__*/createContext(undefined);\nfunction dataReducer(state, data) {\n sendToGTM({\n data: data,\n dataLayerName: state == null ? void 0 : state.dataLayerName\n });\n return state;\n}\n/**\r\n * The Google Tag Manager Provider\r\n */\nfunction GTMProvider(_ref) {\n var state = _ref.state,\n children = _ref.children;\n var _useReducer = useReducer(dataReducer, _extends({}, initialState, state)),\n store = _useReducer[0],\n dispatch = _useReducer[1];\n useEffect(function () {\n if (!state || state.injectScript == false) return;\n var mergedState = _extends({}, store, state);\n initGTM(mergedState);\n }, [JSON.stringify(state)]);\n return React.createElement(GTMContext.Provider, {\n value: store\n }, React.createElement(GTMContextDispatch.Provider, {\n value: dispatch\n }, children));\n}\nfunction useGTMDispatch() {\n var context = useContext(GTMContextDispatch);\n if (context === undefined) {\n throw new Error('dispatchGTMEvent must be used within a GTMProvider');\n }\n return context;\n}\n\nexport { GTMContext, GTMContextDispatch, GTMProvider, initialState, sendToGTM, useGTMDispatch };\n//# sourceMappingURL=react-gtm-hook.esm.js.map\n","import useClientContext from \"./useClientContext\";\r\n\r\nimport { useGTMDispatch } from \"@elgorditosalsero/react-gtm-hook\";\r\nimport { useLocation } from \"react-router-dom\";\r\nimport { useState, useEffect } from \"react\";\r\n\r\nexport default () => {\r\n const location = useLocation();\r\n const sendDataToGTM = useGTMDispatch();\r\n const { isClient } = useClientContext();\r\n\r\n const [originalLocation, setOriginalLocation] = useState<string>();\r\n const [referer, setReferer] = useState<string>();\r\n\r\n useEffect(() => {\r\n if (isClient) {\r\n window.dataLayer = window.dataLayer || [];\r\n\r\n // Fixes \"The Rogue Referral Problem\" for Single-page sites\r\n // https://www.simoahava.com/gtm-tips/fix-rogue-referral-problem-single-page-sites/\r\n const url = document.location.protocol + \"//\" + document.location.hostname + document.location.pathname + document.location.search;\r\n if (typeof (originalLocation) === \"undefined\") {\r\n setOriginalLocation(url);\r\n setReferer(url);\r\n }\r\n\r\n // Trigger on all sites\r\n sendDataToGTM({\r\n \"event\": \"Heyday.FirstPageview\",\r\n \"eventTimeout\": 2000,\r\n \"originalLocation\": url\r\n });\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (isClient) {\r\n window.dataLayer = window.dataLayer || [];\r\n\r\n // Trigger for all other pages after this\r\n const url = document.location.protocol + \"//\" + document.location.hostname + document.location.pathname + document.location.search;\r\n setReferer(url);\r\n\r\n if (referer !== url) {\r\n sendDataToGTM({\r\n \"event\": \"Heyday.Pageview\",\r\n \"eventTimeout\": 2000,\r\n \"originalLocation\": originalLocation ?? url\r\n });\r\n }\r\n }\r\n }, [referer, location, originalLocation]);\r\n\r\n return;\r\n};","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"YoN5BycO4mbgLnQHP3sP\",\"inner\":\"NOejNJQCkUObtukqVlN3\",\"content\":\"HSE5eh2L23CYvVib2zWd\",\"navigation\":\"DNadocxO9y4xvzifnaVu\",\"disabled\":\"m9_8hHblWfUObd0KM0eq\",\"sub_navigation\":\"z2Cpc13w4ey3lyVBCpE2\",\"link_wrapper\":\"u5_eo6pY23ZvB912S3Iq\",\"link_wrapper_with_submenu\":\"F8yMbAgnQnYTCqJbILdA\",\"first_level_link_with_submenu\":\"yL0zD4_Ht2ppUiGUMsl8\",\"first_level_link_single\":\"MIr0RmBVbgYrDs3HX5L4\",\"second_level_link_wrapper\":\"hamwJSqSHBNmEBcPJtMg\",\"second_level_link\":\"WL6Gw59E7LCBeHYGsTwS\",\"header\":\"rleZCGa2QJyJOo69DA71\",\"outer\":\"DZaNQ7ME0LNOLvz6Uox7\",\"fadeIn\":\"c0AhpzQlI_koPyrz5Z3w\",\"close_button\":\"dz4i3HoP_zqA0di6a4NY\",\"close_button_inner\":\"T6k8J1PAks4S1rETjrtz\",\"accessibility_close_menu\":\"vq3svqYaHX8N8G9e843g\",\"sub_heading_link\":\"RFsMEfC9ZztoTY4Hgxs2\",\"sub_heading_icon\":\"uVC41651Cua55aNa7RXC\"};","// extracted by mini-css-extract-plugin\nexport default {\"link_slide_left\":\"hDuNtiNvgkPQT_xbLjRS\",\"button_icon\":\"MTGWg3ZbgXVp4eHct_9X\"};","import React, { FunctionComponent, useState, useEffect } from \"react\";\r\nimport LinkSlideLeftProps from \"./LinkSlideLeftProps.interface\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport styles from \"./LinkSlideLeft.module.scss\";\r\nimport { motion } from \"framer-motion\";\r\n\r\nconst LinkSlideLeft: FunctionComponent<LinkSlideLeftProps> = (props) => {\r\n const [linkActive, setLinkActive] = useState(false);\r\n\r\n const transition = { duration: 0.3 };\r\n\r\n useEffect(() => {\r\n if (props.clickedLink) {\r\n setLinkActive(true);\r\n }\r\n else {\r\n setLinkActive(false);\r\n }\r\n }, [props.clickedLink]);\r\n\r\n return (\r\n <motion.div className={styles.link_slide_left} onMouseEnter={() => setLinkActive(true)} onMouseLeave={() => !props.clickedLink && setLinkActive(false)}>\r\n <motion.div transition={transition} animate={{ x: linkActive ? 0 : 50 }}>\r\n {props.children}\r\n </motion.div>\r\n <motion.div transition={transition} animate={{ opacity: linkActive ? 1 : 0, x: linkActive ? 0 : -10 }}>\r\n <IconViewer className={styles.button_icon} name=\"arrow-top-right\" aspectRatioX={1} aspectRatioY={1} />\r\n </motion.div>\r\n </motion.div>\r\n );\r\n};\r\n\r\nexport default LinkSlideLeft;\r\n","import MenuLink, { SubMenuLink } from \"blocks/models/menu-link.interface\";\r\nimport { OPEN_MEGA_DROPDOWN_MENU } from \"layout/redux/overlay.actions\";\r\n\r\nlet megaDropdownTimer: NodeJS.Timeout;\r\n\r\nexport default (event: any, item: MenuLink[] | undefined, subMenu: SubMenuLink[] | undefined, dispatch: any, overlay?: any) => {\r\n if (megaDropdownTimer) {\r\n clearTimeout(megaDropdownTimer);\r\n }\r\n\r\n if (overlay.currentOverlay === \"MEGA_DROPDOWN_MENU\") {\r\n megaDropdownTimer = setTimeout(() => {\r\n if (item && item.length > 0) {\r\n dispatch({\r\n type: OPEN_MEGA_DROPDOWN_MENU,\r\n menu: item,\r\n subMenu: subMenu\r\n });\r\n }\r\n else {\r\n dispatch({\r\n type: OPEN_MEGA_DROPDOWN_MENU,\r\n menu: undefined,\r\n subMenu: undefined\r\n });\r\n }\r\n }, 200);\r\n }\r\n};","import React, { Fragment, FunctionComponent, useState } from \"react\";\r\nimport styles from \"./MegaDropdown.module.scss\";\r\nimport MegaDropdownProps from \"./MegaDropdownProps.interface\";\r\nimport LinkSlideLeft from \"./Animations/LinkSlideLeft/LinkSlideLeft\";\r\nimport { AnimatePresence, motion } from \"framer-motion\";\r\nimport { Helmet } from \"react-helmet-async\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport megaDropdownHandler from \"layout/helpers/megaDropdownHandler\";\r\nimport MenuLink, { SubMenuLink } from \"blocks/models/menu-link.interface\";\r\nimport { CLOSE_ALL_OVERLAYS } from \"layout/redux/overlay.actions\";\r\nimport FocusTrap from \"focus-trap-react\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\n\r\nconst MegaDropdown: FunctionComponent<MegaDropdownProps> = (props) => {\r\n const dispatch = useDispatch();\r\n const overlay = useSelector(state => state.overlay);\r\n const menuOpen = useSelector(state => state.overlay.menuOpen);\r\n const [clickedLink, setClickedLink] = useState<null | number>(null);\r\n\r\n const subMenuTriggerHandler = (event: any, firstItem: any, index: number) => {\r\n event?.preventDefault();\r\n\r\n if (typeof(index) !== \"undefined\") {\r\n setClickedLink(index);\r\n }\r\n\r\n megaDropdownHandler(event, props.menu, firstItem.content.subMenu, dispatch, overlay);\r\n };\r\n\r\n const handleClick = () => {\r\n dispatch({\r\n type: CLOSE_ALL_OVERLAYS,\r\n });\r\n };\r\n\r\n const container = {\r\n hidden: { opacity: 0 },\r\n show: {\r\n opacity: 1,\r\n transition: {\r\n staggerChildren: 0.1\r\n }\r\n }\r\n };\r\n\r\n const listItem = {\r\n hidden: { opacity: 0, y: 30 },\r\n show: { opacity: 1, y: 0, transition: {\r\n ease: \"easeInOut\"\r\n } }\r\n };\r\n\r\n return (\r\n <Fragment>\r\n {/* Lock the scrollbar for the rest of the page on mobile, while drawer is open */}\r\n {/* TODO: Remember the scroll position and restore it when toggling locked state */}\r\n <Helmet bodyAttributes={{ class: \"is-locked\" }} />\r\n\r\n <FocusTrap active={menuOpen} focusTrapOptions={{ allowOutsideClick: true }}>\r\n <nav className={styles.wrapper}>\r\n <div className={styles.inner}>\r\n <div className={styles.content}>\r\n {/* 1. Level */}\r\n <nav className={styles.navigation}>\r\n {props.menu ? props.menu.map((firstItem: MenuLink, index: number) => {\r\n return (\r\n <Fragment key={index}>\r\n {firstItem.content.subMenu && firstItem.content.subMenu.length > 0 ? (\r\n <div tabIndex={0} className={styles.link_wrapper} onKeyDown={event => { if (event.key === \"Enter\") subMenuTriggerHandler(event, firstItem, index); }} onClick={event => subMenuTriggerHandler(event, firstItem, index)}>\r\n <div className={styles.first_level_link_with_submenu}>\r\n <LinkSlideLeft clickedLink={clickedLink === index}>\r\n {firstItem.content.label}\r\n </LinkSlideLeft>\r\n </div>\r\n </div>\r\n ) : null}\r\n\r\n {!firstItem.content.subMenu || firstItem.content.subMenu.length === 0 ? (\r\n <div className={styles.link_wrapper} onClick={handleClick}>\r\n <Anchor className={styles.first_level_link_single} to={firstItem.content.link}>\r\n {firstItem.content.label}\r\n </Anchor>\r\n </div>\r\n ) : null}\r\n </Fragment>\r\n );\r\n }) : null}\r\n </nav>\r\n\r\n {/* 2. Level */}\r\n <nav className={styles.sub_navigation}>\r\n {props.menu && clickedLink ? (\r\n <Anchor className={styles.sub_heading_link} to={props.menu[clickedLink].content.link}>\r\n {props.menu[clickedLink].content.label}\r\n </Anchor>\r\n ) : null}\r\n\r\n <AnimatePresence>\r\n {props.subMenu ?\r\n <motion.div variants={container} initial=\"hidden\" animate=\"show\" >\r\n {props.subMenu && props.subMenu.length > 0 ? props.subMenu.map((secondItem: SubMenuLink, index: number) => {\r\n return (\r\n <motion.div variants={listItem} className={styles.second_level_link_wrapper} key={secondItem.contentUdi} onClick={handleClick}>\r\n <Anchor className={styles.second_level_link} to={secondItem.content.link}>\r\n {secondItem.content.label}\r\n </Anchor>\r\n </motion.div>\r\n );\r\n }) : null}\r\n </motion.div>\r\n : null}\r\n </AnimatePresence>\r\n </nav>\r\n </div>\r\n </div>\r\n {/* Accessibility Close Menu */}\r\n <button className={styles.accessibility_close_menu} onClick={handleClick} aria-label=\"Close Main Menu\"></button>\r\n </nav>\r\n </FocusTrap>\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default MegaDropdown;","import React, { Fragment, FunctionComponent } from \"react\";\r\nimport { BLOCK_TYPE } from \"app/blocks/block.types\";\r\n\r\nimport { Accordions, AccordionsProps } from \"blocks/components/Accordions\";\r\nimport { DownloadLinks, DownloadLinksProps } from \"blocks/components/DownloadLinks\";\r\nimport { Embed, EmbedProps } from \"blocks/components/Embed\";\r\nimport { Form, FormProps } from \"blocks/components/Form\";\r\nimport { Image, ImageProps } from \"blocks/components/Image\";\r\nimport { Quote, QuoteProps } from \"blocks/components/Quote\";\r\nimport { Text, TextProps } from \"blocks/components/Text\";\r\nimport { Video, VideoProps } from \"blocks/components/Video\";\r\n\r\nconst ModalBlock: FunctionComponent<BLOCK_TYPE> = (props) => {\r\n const renderControl = (props: BLOCK_TYPE): null | JSX.Element => {\r\n switch (props?.content?._contentType) {\r\n case \"blockAccordions\": {\r\n return (\r\n <Accordions {...props as AccordionsProps} />\r\n );\r\n }\r\n case \"blockDownloadLinksList\": {\r\n return (\r\n <DownloadLinks {...props as DownloadLinksProps} />\r\n );\r\n }\r\n case \"blockEmbed\": {\r\n return (\r\n <Embed {...props as EmbedProps} />\r\n );\r\n }\r\n case \"blockImage\": {\r\n return (\r\n <Image {...props as ImageProps} />\r\n );\r\n }\r\n case \"blockQuote\": {\r\n return (\r\n <Quote {...props as QuoteProps} />\r\n );\r\n }\r\n case \"blockText\": {\r\n return (\r\n <Text {...props as TextProps} />\r\n );\r\n }\r\n case \"blockVideo\": {\r\n return (\r\n <Video {...props as VideoProps} />\r\n );\r\n }\r\n case \"blockForm\": {\r\n return (\r\n <Form {...props as FormProps} />\r\n );\r\n }\r\n default: {\r\n return null;\r\n }\r\n }\r\n };\r\n\r\n return (\r\n <Fragment>\r\n {renderControl(props)}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default ModalBlock;","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"j_UrEgLe0OV1p5wVLom9\",\"align_top\":\"yBJpt0rk5RCrUOp9oXyO\",\"content\":\"fp0QgCrX1y48p3elvLVi\",\"overlay\":\"l66GiFKS1Ux_BNd603Cu\",\"modal_header\":\"lpwsHcffk1MC3kgodFUi\",\"close_button\":\"myg2d9N7Q_cHaABytW3d\",\"sticky_link\":\"aABe91EwuUUzuvBpeBJ_\",\"link_arrow\":\"mcoVnu5vRgPCz8Cbg0sb\"};","import React, { FunctionComponent } from \"react\";\r\nimport ModalBlock from \"./Modal.block\";\r\nimport ModalProps from \"./ModalProps.interface\";\r\nimport styles from \"./Modal.module.scss\";\r\nimport { AnimatePresence, motion } from \"framer-motion\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { CLOSE_ALL_OVERLAYS } from \"layout/redux/overlay.actions\";\r\nimport ScrollLock from \"react-scrolllock\";\r\nimport Anchor from \"components/Anchor/Anchor\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport FocusTrap from \"focus-trap-react\";\r\n\r\nconst Modal: FunctionComponent<ModalProps> = (props) => {\r\n const dispatch = useDispatch();\r\n const modalOpen = useSelector(state => state.overlay.modalOpen);\r\n\r\n const handleCloseModal = () => {\r\n dispatch({ type: CLOSE_ALL_OVERLAYS });\r\n };\r\n\r\n const alignContentTop = props.stickyLink && props.stickyLink.length === 0 ? styles.align_top : undefined;\r\n\r\n return (\r\n <div>\r\n <FocusTrap active={modalOpen}>\r\n <div>\r\n <ScrollLock>\r\n <motion.div initial={{ x: \"100%\", opacity: 0 }} animate={{ x: 0, opacity: 1 }} transition={{ duration: 0.4, ease: \"easeOut\" }} className={combineClasses([styles.wrapper, alignContentTop])}>\r\n {/* Close Button */}\r\n <div className={styles.modal_header}>\r\n <button className={styles.close_button} onClick={handleCloseModal}>\r\n <span></span>\r\n <span></span>\r\n </button>\r\n </div>\r\n\r\n {/* Modal Blocks */}\r\n {props.modal ? (\r\n <div className={styles.content}>\r\n {props.modal?.map((blockContent, index) => {\r\n return (\r\n <ModalBlock key={blockContent?.contentUdi} {...blockContent} />\r\n );\r\n })}\r\n </div>\r\n ) : null}\r\n\r\n {/* Sticky Link */}\r\n {props.stickyLink && props.stickyLink.length > 0 ? (\r\n <Anchor to={props.stickyLink[0].content.link} className={styles.sticky_link}>\r\n {props.stickyLink[0].content.label}\r\n <IconViewer className={styles.link_arrow} name=\"arrow-bottom-right\" />\r\n </Anchor>\r\n ) : null}\r\n </motion.div>\r\n </ScrollLock>\r\n <AnimatePresence>\r\n {modalOpen && props.modal ? (\r\n <motion.div onClick={handleCloseModal} initial={{ opacity: 0 }} animate={{ opacity: 0.7 }} exit={{ opacity: 0 }} className={styles.overlay} />\r\n ) : null}\r\n </AnimatePresence>\r\n </div>\r\n </FocusTrap>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Modal;","import React, { Fragment, FunctionComponent, useEffect, useState } from \"react\";\r\nimport styles from \"./App.module.scss\";\r\nimport { Route, useHistory } from \"react-router-dom\";\r\nimport { thunkGetSiteSettings } from \"./umbraco/redux/settings.actions\";\r\nimport { thunkLoadDictionary } from \"components/Dictionary/redux/dictionary.actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport combineClasses from \"helpers/combine-classes\";\r\nimport Footer from \"../layout/Footer/Footer\";\r\nimport Header from \"../layout/Header/Header\";\r\nimport MobileMenu from \"../layout/Header/components/MobileMenu/MobileMenu\";\r\nimport UmbracoPage from \"./umbraco/pages/UmbracoPage\";\r\nimport useAppLoading, { AppLoadingState } from \"./hooks/useAppLoading\";\r\nimport useTagManager from \"./hooks/useTagManager\";\r\nimport MegaDropdown from \"layout/MegaDropdown/MegaDropdown\";\r\nimport Modal from \"components/Modal/Modal\";\r\nimport { AnimatePresence, motion } from \"framer-motion\";\r\nimport IconViewer from \"components/IconViewer/IconViewer\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\nimport Moment from \"react-moment\";\r\n\r\nimport \"@fontsource/nunito/400.css\";\r\nimport \"@fontsource/nunito/400-italic.css\";\r\nimport \"@fontsource/nunito/900.css\";\r\n\r\nMoment.globalLocale = \"da\";\r\n\r\nconst App: FunctionComponent = () => {\r\n const dispatch = useDispatch();\r\n const [animationDelay, setAnimationDelay] = useState(0.2);\r\n const history = useHistory();\r\n const settings = useSelector(state => state.settings.content);\r\n const overlay = useSelector(state => state.overlay);\r\n const menuOpen = useSelector(state => state.overlay.menuOpen);\r\n\r\n const viewState = useAppLoading(settings);\r\n const appLoadingClass = viewState !== AppLoadingState.LOADED && isBrowserContext() ? styles.app_loading : undefined;\r\n\r\n useTagManager(history);\r\n\r\n useEffect(() => {\r\n dispatch(thunkGetSiteSettings(history.location.pathname));\r\n dispatch(thunkLoadDictionary(\"/\"));\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (menuOpen) {\r\n setAnimationDelay(0);\r\n }\r\n else {\r\n setAnimationDelay(0.2);\r\n }\r\n }, [menuOpen]);\r\n\r\n return (\r\n <Fragment>\r\n <div className={styles.wrapper}>\r\n {!isBrowserContext() || viewState === AppLoadingState.LOADED ? (\r\n <Header settings={settings} />\r\n ) : null}\r\n\r\n <main className={combineClasses([styles.content, appLoadingClass])}>\r\n <Route path=\"*\" component={UmbracoPage} />\r\n </main>\r\n\r\n {isBrowserContext() && viewState === AppLoadingState.START_LOADING || viewState === AppLoadingState.STILL_LOADING ? (\r\n <div className={styles.app_loading_wrapper}>\r\n <IconViewer className={styles.app_loading_icon} name=\"logo\" aspectRatioX={1} aspectRatioY={1} />\r\n <span className={styles.app_loading_label}>Timeout; an error properly occured please try again later</span>\r\n </div>\r\n ) : null}\r\n\r\n {!isBrowserContext() || viewState === AppLoadingState.LOADED ? (\r\n <Footer settings={settings} />\r\n ) : null}\r\n </div>\r\n\r\n <AnimatePresence>\r\n {overlay.currentOverlay === \"MODAL\" ? (\r\n <motion.div className={styles.modal_wrapper} initial={{ opacity: 0 }} animate={{ opacity: 1 }} exit={{ opacity: 0 }} transition={{ duration: 0.5 }}>\r\n <Modal modal={overlay.modal} stickyLink={overlay.stickyLink} />\r\n </motion.div>\r\n ) : null}\r\n </AnimatePresence>\r\n\r\n <AnimatePresence>\r\n {overlay.currentOverlay === \"MEGA_DROPDOWN_MENU\" && overlay.menu ? (\r\n <motion.div className={styles.megadropdown_wrapper} initial={{ opacity: 0, y: 100 }} animate={{ opacity: 1, y: 0 }} exit={{ opacity: 0, y: 100 }} transition={{ delay: animationDelay, duration: 0.5 }}>\r\n <MegaDropdown menu={overlay.menu} subMenu={overlay.subMenu} />\r\n </motion.div>\r\n ) : null}\r\n </AnimatePresence>\r\n\r\n {/* TODO: Make a new MOBILE_MENU_CLOSING action to not have it close instant */}\r\n {overlay.currentOverlay === \"MOBILE_MENU\" ? (\r\n <MobileMenu settings={settings} menu={overlay.menu} subMenu={overlay.subMenu} />\r\n ) : null}\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default App;","import defineProperty from \"./defineProperty.js\";\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}","import _objectSpread from '@babel/runtime/helpers/esm/objectSpread2';\n\n/**\n * Adapted from React: https://github.com/facebook/react/blob/master/packages/shared/formatProdErrorMessage.js\n *\n * Do not require this module directly! Use normal throw error calls. These messages will be replaced with error codes\n * during build.\n * @param {number} code\n */\nfunction formatProdErrorMessage(code) {\n return \"Minified Redux error #\" + code + \"; visit https://redux.js.org/Errors?code=\" + code + \" for the full message or \" + 'use the non-minified dev environment for full errors. ';\n}\n\n// Inlined version of the `symbol-observable` polyfill\nvar $$observable = (function () {\n return typeof Symbol === 'function' && Symbol.observable || '@@observable';\n})();\n\n/**\n * These are private action types reserved by Redux.\n * For any unknown actions, you must return the current state.\n * If the current state is undefined, you must return the initial state.\n * Do not reference these action types directly in your code.\n */\nvar randomString = function randomString() {\n return Math.random().toString(36).substring(7).split('').join('.');\n};\n\nvar ActionTypes = {\n INIT: \"@@redux/INIT\" + randomString(),\n REPLACE: \"@@redux/REPLACE\" + randomString(),\n PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() {\n return \"@@redux/PROBE_UNKNOWN_ACTION\" + randomString();\n }\n};\n\n/**\n * @param {any} obj The object to inspect.\n * @returns {boolean} True if the argument appears to be a plain object.\n */\nfunction isPlainObject(obj) {\n if (typeof obj !== 'object' || obj === null) return false;\n var proto = obj;\n\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n\n return Object.getPrototypeOf(obj) === proto;\n}\n\n// Inlined / shortened version of `kindOf` from https://github.com/jonschlinkert/kind-of\nfunction miniKindOf(val) {\n if (val === void 0) return 'undefined';\n if (val === null) return 'null';\n var type = typeof val;\n\n switch (type) {\n case 'boolean':\n case 'string':\n case 'number':\n case 'symbol':\n case 'function':\n {\n return type;\n }\n }\n\n if (Array.isArray(val)) return 'array';\n if (isDate(val)) return 'date';\n if (isError(val)) return 'error';\n var constructorName = ctorName(val);\n\n switch (constructorName) {\n case 'Symbol':\n case 'Promise':\n case 'WeakMap':\n case 'WeakSet':\n case 'Map':\n case 'Set':\n return constructorName;\n } // other\n\n\n return type.slice(8, -1).toLowerCase().replace(/\\s/g, '');\n}\n\nfunction ctorName(val) {\n return typeof val.constructor === 'function' ? val.constructor.name : null;\n}\n\nfunction isError(val) {\n return val instanceof Error || typeof val.message === 'string' && val.constructor && typeof val.constructor.stackTraceLimit === 'number';\n}\n\nfunction isDate(val) {\n if (val instanceof Date) return true;\n return typeof val.toDateString === 'function' && typeof val.getDate === 'function' && typeof val.setDate === 'function';\n}\n\nfunction kindOf(val) {\n var typeOfVal = typeof val;\n\n if (process.env.NODE_ENV !== 'production') {\n typeOfVal = miniKindOf(val);\n }\n\n return typeOfVal;\n}\n\n/**\n * Creates a Redux store that holds the state tree.\n * The only way to change the data in the store is to call `dispatch()` on it.\n *\n * There should only be a single store in your app. To specify how different\n * parts of the state tree respond to actions, you may combine several reducers\n * into a single reducer function by using `combineReducers`.\n *\n * @param {Function} reducer A function that returns the next state tree, given\n * the current state tree and the action to handle.\n *\n * @param {any} [preloadedState] The initial state. You may optionally specify it\n * to hydrate the state from the server in universal apps, or to restore a\n * previously serialized user session.\n * If you use `combineReducers` to produce the root reducer function, this must be\n * an object with the same shape as `combineReducers` keys.\n *\n * @param {Function} [enhancer] The store enhancer. You may optionally specify it\n * to enhance the store with third-party capabilities such as middleware,\n * time travel, persistence, etc. The only store enhancer that ships with Redux\n * is `applyMiddleware()`.\n *\n * @returns {Store} A Redux store that lets you read the state, dispatch actions\n * and subscribe to changes.\n */\n\nfunction createStore(reducer, preloadedState, enhancer) {\n var _ref2;\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'function' || typeof enhancer === 'function' && typeof arguments[3] === 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(0) : 'It looks like you are passing several store enhancers to ' + 'createStore(). This is not supported. Instead, compose them ' + 'together to a single function. See https://redux.js.org/tutorials/fundamentals/part-4-store#creating-a-store-with-enhancers for an example.');\n }\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') {\n enhancer = preloadedState;\n preloadedState = undefined;\n }\n\n if (typeof enhancer !== 'undefined') {\n if (typeof enhancer !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(1) : \"Expected the enhancer to be a function. Instead, received: '\" + kindOf(enhancer) + \"'\");\n }\n\n return enhancer(createStore)(reducer, preloadedState);\n }\n\n if (typeof reducer !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(2) : \"Expected the root reducer to be a function. Instead, received: '\" + kindOf(reducer) + \"'\");\n }\n\n var currentReducer = reducer;\n var currentState = preloadedState;\n var currentListeners = [];\n var nextListeners = currentListeners;\n var isDispatching = false;\n /**\n * This makes a shallow copy of currentListeners so we can use\n * nextListeners as a temporary list while dispatching.\n *\n * This prevents any bugs around consumers calling\n * subscribe/unsubscribe in the middle of a dispatch.\n */\n\n function ensureCanMutateNextListeners() {\n if (nextListeners === currentListeners) {\n nextListeners = currentListeners.slice();\n }\n }\n /**\n * Reads the state tree managed by the store.\n *\n * @returns {any} The current state tree of your application.\n */\n\n\n function getState() {\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(3) : 'You may not call store.getState() while the reducer is executing. ' + 'The reducer has already received the state as an argument. ' + 'Pass it down from the top reducer instead of reading it from the store.');\n }\n\n return currentState;\n }\n /**\n * Adds a change listener. It will be called any time an action is dispatched,\n * and some part of the state tree may potentially have changed. You may then\n * call `getState()` to read the current state tree inside the callback.\n *\n * You may call `dispatch()` from a change listener, with the following\n * caveats:\n *\n * 1. The subscriptions are snapshotted just before every `dispatch()` call.\n * If you subscribe or unsubscribe while the listeners are being invoked, this\n * will not have any effect on the `dispatch()` that is currently in progress.\n * However, the next `dispatch()` call, whether nested or not, will use a more\n * recent snapshot of the subscription list.\n *\n * 2. The listener should not expect to see all state changes, as the state\n * might have been updated multiple times during a nested `dispatch()` before\n * the listener is called. It is, however, guaranteed that all subscribers\n * registered before the `dispatch()` started will be called with the latest\n * state by the time it exits.\n *\n * @param {Function} listener A callback to be invoked on every dispatch.\n * @returns {Function} A function to remove this change listener.\n */\n\n\n function subscribe(listener) {\n if (typeof listener !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(4) : \"Expected the listener to be a function. Instead, received: '\" + kindOf(listener) + \"'\");\n }\n\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(5) : 'You may not call store.subscribe() while the reducer is executing. ' + 'If you would like to be notified after the store has been updated, subscribe from a ' + 'component and invoke store.getState() in the callback to access the latest state. ' + 'See https://redux.js.org/api/store#subscribelistener for more details.');\n }\n\n var isSubscribed = true;\n ensureCanMutateNextListeners();\n nextListeners.push(listener);\n return function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(6) : 'You may not unsubscribe from a store listener while the reducer is executing. ' + 'See https://redux.js.org/api/store#subscribelistener for more details.');\n }\n\n isSubscribed = false;\n ensureCanMutateNextListeners();\n var index = nextListeners.indexOf(listener);\n nextListeners.splice(index, 1);\n currentListeners = null;\n };\n }\n /**\n * Dispatches an action. It is the only way to trigger a state change.\n *\n * The `reducer` function, used to create the store, will be called with the\n * current state tree and the given `action`. Its return value will\n * be considered the **next** state of the tree, and the change listeners\n * will be notified.\n *\n * The base implementation only supports plain object actions. If you want to\n * dispatch a Promise, an Observable, a thunk, or something else, you need to\n * wrap your store creating function into the corresponding middleware. For\n * example, see the documentation for the `redux-thunk` package. Even the\n * middleware will eventually dispatch plain object actions using this method.\n *\n * @param {Object} action A plain object representing “what changedâ€. It is\n * a good idea to keep actions serializable so you can record and replay user\n * sessions, or use the time travelling `redux-devtools`. An action must have\n * a `type` property which may not be `undefined`. It is a good idea to use\n * string constants for action types.\n *\n * @returns {Object} For convenience, the same action object you dispatched.\n *\n * Note that, if you use a custom middleware, it may wrap `dispatch()` to\n * return something else (for example, a Promise you can await).\n */\n\n\n function dispatch(action) {\n if (!isPlainObject(action)) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(7) : \"Actions must be plain objects. Instead, the actual type was: '\" + kindOf(action) + \"'. You may need to add middleware to your store setup to handle dispatching other values, such as 'redux-thunk' to handle dispatching functions. See https://redux.js.org/tutorials/fundamentals/part-4-store#middleware and https://redux.js.org/tutorials/fundamentals/part-6-async-logic#using-the-redux-thunk-middleware for examples.\");\n }\n\n if (typeof action.type === 'undefined') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(8) : 'Actions may not have an undefined \"type\" property. You may have misspelled an action type string constant.');\n }\n\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(9) : 'Reducers may not dispatch actions.');\n }\n\n try {\n isDispatching = true;\n currentState = currentReducer(currentState, action);\n } finally {\n isDispatching = false;\n }\n\n var listeners = currentListeners = nextListeners;\n\n for (var i = 0; i < listeners.length; i++) {\n var listener = listeners[i];\n listener();\n }\n\n return action;\n }\n /**\n * Replaces the reducer currently used by the store to calculate the state.\n *\n * You might need this if your app implements code splitting and you want to\n * load some of the reducers dynamically. You might also need this if you\n * implement a hot reloading mechanism for Redux.\n *\n * @param {Function} nextReducer The reducer for the store to use instead.\n * @returns {void}\n */\n\n\n function replaceReducer(nextReducer) {\n if (typeof nextReducer !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(10) : \"Expected the nextReducer to be a function. Instead, received: '\" + kindOf(nextReducer));\n }\n\n currentReducer = nextReducer; // This action has a similiar effect to ActionTypes.INIT.\n // Any reducers that existed in both the new and old rootReducer\n // will receive the previous state. This effectively populates\n // the new state tree with any relevant data from the old one.\n\n dispatch({\n type: ActionTypes.REPLACE\n });\n }\n /**\n * Interoperability point for observable/reactive libraries.\n * @returns {observable} A minimal observable of state changes.\n * For more information, see the observable proposal:\n * https://github.com/tc39/proposal-observable\n */\n\n\n function observable() {\n var _ref;\n\n var outerSubscribe = subscribe;\n return _ref = {\n /**\n * The minimal observable subscription method.\n * @param {Object} observer Any object that can be used as an observer.\n * The observer object should have a `next` method.\n * @returns {subscription} An object with an `unsubscribe` method that can\n * be used to unsubscribe the observable from the store, and prevent further\n * emission of values from the observable.\n */\n subscribe: function subscribe(observer) {\n if (typeof observer !== 'object' || observer === null) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(11) : \"Expected the observer to be an object. Instead, received: '\" + kindOf(observer) + \"'\");\n }\n\n function observeState() {\n if (observer.next) {\n observer.next(getState());\n }\n }\n\n observeState();\n var unsubscribe = outerSubscribe(observeState);\n return {\n unsubscribe: unsubscribe\n };\n }\n }, _ref[$$observable] = function () {\n return this;\n }, _ref;\n } // When a store is created, an \"INIT\" action is dispatched so that every\n // reducer returns their initial state. This effectively populates\n // the initial state tree.\n\n\n dispatch({\n type: ActionTypes.INIT\n });\n return _ref2 = {\n dispatch: dispatch,\n subscribe: subscribe,\n getState: getState,\n replaceReducer: replaceReducer\n }, _ref2[$$observable] = observable, _ref2;\n}\n\n/**\n * Prints a warning in the console if it exists.\n *\n * @param {String} message The warning message.\n * @returns {void}\n */\nfunction warning(message) {\n /* eslint-disable no-console */\n if (typeof console !== 'undefined' && typeof console.error === 'function') {\n console.error(message);\n }\n /* eslint-enable no-console */\n\n\n try {\n // This error was thrown as a convenience so that if you enable\n // \"break on all exceptions\" in your console,\n // it would pause the execution at this line.\n throw new Error(message);\n } catch (e) {} // eslint-disable-line no-empty\n\n}\n\nfunction getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {\n var reducerKeys = Object.keys(reducers);\n var argumentName = action && action.type === ActionTypes.INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer';\n\n if (reducerKeys.length === 0) {\n return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.';\n }\n\n if (!isPlainObject(inputState)) {\n return \"The \" + argumentName + \" has unexpected type of \\\"\" + kindOf(inputState) + \"\\\". Expected argument to be an object with the following \" + (\"keys: \\\"\" + reducerKeys.join('\", \"') + \"\\\"\");\n }\n\n var unexpectedKeys = Object.keys(inputState).filter(function (key) {\n return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];\n });\n unexpectedKeys.forEach(function (key) {\n unexpectedKeyCache[key] = true;\n });\n if (action && action.type === ActionTypes.REPLACE) return;\n\n if (unexpectedKeys.length > 0) {\n return \"Unexpected \" + (unexpectedKeys.length > 1 ? 'keys' : 'key') + \" \" + (\"\\\"\" + unexpectedKeys.join('\", \"') + \"\\\" found in \" + argumentName + \". \") + \"Expected to find one of the known reducer keys instead: \" + (\"\\\"\" + reducerKeys.join('\", \"') + \"\\\". Unexpected keys will be ignored.\");\n }\n}\n\nfunction assertReducerShape(reducers) {\n Object.keys(reducers).forEach(function (key) {\n var reducer = reducers[key];\n var initialState = reducer(undefined, {\n type: ActionTypes.INIT\n });\n\n if (typeof initialState === 'undefined') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(12) : \"The slice reducer for key \\\"\" + key + \"\\\" returned undefined during initialization. \" + \"If the state passed to the reducer is undefined, you must \" + \"explicitly return the initial state. The initial state may \" + \"not be undefined. If you don't want to set a value for this reducer, \" + \"you can use null instead of undefined.\");\n }\n\n if (typeof reducer(undefined, {\n type: ActionTypes.PROBE_UNKNOWN_ACTION()\n }) === 'undefined') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(13) : \"The slice reducer for key \\\"\" + key + \"\\\" returned undefined when probed with a random type. \" + (\"Don't try to handle '\" + ActionTypes.INIT + \"' or other actions in \\\"redux/*\\\" \") + \"namespace. They are considered private. Instead, you must return the \" + \"current state for any unknown actions, unless it is undefined, \" + \"in which case you must return the initial state, regardless of the \" + \"action type. The initial state may not be undefined, but can be null.\");\n }\n });\n}\n/**\n * Turns an object whose values are different reducer functions, into a single\n * reducer function. It will call every child reducer, and gather their results\n * into a single state object, whose keys correspond to the keys of the passed\n * reducer functions.\n *\n * @param {Object} reducers An object whose values correspond to different\n * reducer functions that need to be combined into one. One handy way to obtain\n * it is to use ES6 `import * as reducers` syntax. The reducers may never return\n * undefined for any action. Instead, they should return their initial state\n * if the state passed to them was undefined, and the current state for any\n * unrecognized action.\n *\n * @returns {Function} A reducer function that invokes every reducer inside the\n * passed object, and builds a state object with the same shape.\n */\n\n\nfunction combineReducers(reducers) {\n var reducerKeys = Object.keys(reducers);\n var finalReducers = {};\n\n for (var i = 0; i < reducerKeys.length; i++) {\n var key = reducerKeys[i];\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof reducers[key] === 'undefined') {\n warning(\"No reducer provided for key \\\"\" + key + \"\\\"\");\n }\n }\n\n if (typeof reducers[key] === 'function') {\n finalReducers[key] = reducers[key];\n }\n }\n\n var finalReducerKeys = Object.keys(finalReducers); // This is used to make sure we don't warn about the same\n // keys multiple times.\n\n var unexpectedKeyCache;\n\n if (process.env.NODE_ENV !== 'production') {\n unexpectedKeyCache = {};\n }\n\n var shapeAssertionError;\n\n try {\n assertReducerShape(finalReducers);\n } catch (e) {\n shapeAssertionError = e;\n }\n\n return function combination(state, action) {\n if (state === void 0) {\n state = {};\n }\n\n if (shapeAssertionError) {\n throw shapeAssertionError;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);\n\n if (warningMessage) {\n warning(warningMessage);\n }\n }\n\n var hasChanged = false;\n var nextState = {};\n\n for (var _i = 0; _i < finalReducerKeys.length; _i++) {\n var _key = finalReducerKeys[_i];\n var reducer = finalReducers[_key];\n var previousStateForKey = state[_key];\n var nextStateForKey = reducer(previousStateForKey, action);\n\n if (typeof nextStateForKey === 'undefined') {\n var actionType = action && action.type;\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(14) : \"When called with an action of type \" + (actionType ? \"\\\"\" + String(actionType) + \"\\\"\" : '(unknown type)') + \", the slice reducer for key \\\"\" + _key + \"\\\" returned undefined. \" + \"To ignore an action, you must explicitly return the previous state. \" + \"If you want this reducer to hold no value, you can return null instead of undefined.\");\n }\n\n nextState[_key] = nextStateForKey;\n hasChanged = hasChanged || nextStateForKey !== previousStateForKey;\n }\n\n hasChanged = hasChanged || finalReducerKeys.length !== Object.keys(state).length;\n return hasChanged ? nextState : state;\n };\n}\n\nfunction bindActionCreator(actionCreator, dispatch) {\n return function () {\n return dispatch(actionCreator.apply(this, arguments));\n };\n}\n/**\n * Turns an object whose values are action creators, into an object with the\n * same keys, but with every function wrapped into a `dispatch` call so they\n * may be invoked directly. This is just a convenience method, as you can call\n * `store.dispatch(MyActionCreators.doSomething())` yourself just fine.\n *\n * For convenience, you can also pass an action creator as the first argument,\n * and get a dispatch wrapped function in return.\n *\n * @param {Function|Object} actionCreators An object whose values are action\n * creator functions. One handy way to obtain it is to use ES6 `import * as`\n * syntax. You may also pass a single function.\n *\n * @param {Function} dispatch The `dispatch` function available on your Redux\n * store.\n *\n * @returns {Function|Object} The object mimicking the original object, but with\n * every action creator wrapped into the `dispatch` call. If you passed a\n * function as `actionCreators`, the return value will also be a single\n * function.\n */\n\n\nfunction bindActionCreators(actionCreators, dispatch) {\n if (typeof actionCreators === 'function') {\n return bindActionCreator(actionCreators, dispatch);\n }\n\n if (typeof actionCreators !== 'object' || actionCreators === null) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(16) : \"bindActionCreators expected an object or a function, but instead received: '\" + kindOf(actionCreators) + \"'. \" + \"Did you write \\\"import ActionCreators from\\\" instead of \\\"import * as ActionCreators from\\\"?\");\n }\n\n var boundActionCreators = {};\n\n for (var key in actionCreators) {\n var actionCreator = actionCreators[key];\n\n if (typeof actionCreator === 'function') {\n boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);\n }\n }\n\n return boundActionCreators;\n}\n\n/**\n * Composes single-argument functions from right to left. The rightmost\n * function can take multiple arguments as it provides the signature for\n * the resulting composite function.\n *\n * @param {...Function} funcs The functions to compose.\n * @returns {Function} A function obtained by composing the argument functions\n * from right to left. For example, compose(f, g, h) is identical to doing\n * (...args) => f(g(h(...args))).\n */\nfunction compose() {\n for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {\n funcs[_key] = arguments[_key];\n }\n\n if (funcs.length === 0) {\n return function (arg) {\n return arg;\n };\n }\n\n if (funcs.length === 1) {\n return funcs[0];\n }\n\n return funcs.reduce(function (a, b) {\n return function () {\n return a(b.apply(void 0, arguments));\n };\n });\n}\n\n/**\n * Creates a store enhancer that applies middleware to the dispatch method\n * of the Redux store. This is handy for a variety of tasks, such as expressing\n * asynchronous actions in a concise manner, or logging every action payload.\n *\n * See `redux-thunk` package as an example of the Redux middleware.\n *\n * Because middleware is potentially asynchronous, this should be the first\n * store enhancer in the composition chain.\n *\n * Note that each middleware will be given the `dispatch` and `getState` functions\n * as named arguments.\n *\n * @param {...Function} middlewares The middleware chain to be applied.\n * @returns {Function} A store enhancer applying the middleware.\n */\n\nfunction applyMiddleware() {\n for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) {\n middlewares[_key] = arguments[_key];\n }\n\n return function (createStore) {\n return function () {\n var store = createStore.apply(void 0, arguments);\n\n var _dispatch = function dispatch() {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(15) : 'Dispatching while constructing your middleware is not allowed. ' + 'Other middleware would not be applied to this dispatch.');\n };\n\n var middlewareAPI = {\n getState: store.getState,\n dispatch: function dispatch() {\n return _dispatch.apply(void 0, arguments);\n }\n };\n var chain = middlewares.map(function (middleware) {\n return middleware(middlewareAPI);\n });\n _dispatch = compose.apply(void 0, chain)(store.dispatch);\n return _objectSpread(_objectSpread({}, store), {}, {\n dispatch: _dispatch\n });\n };\n };\n}\n\n/*\n * This is a dummy function to check if the function name has been altered by minification.\n * If the function has been minified and NODE_ENV !== 'production', warn the user.\n */\n\nfunction isCrushed() {}\n\nif (process.env.NODE_ENV !== 'production' && typeof isCrushed.name === 'string' && isCrushed.name !== 'isCrushed') {\n warning('You are currently using minified code outside of NODE_ENV === \"production\". ' + 'This means that you are running a slower development build of Redux. ' + 'You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify ' + 'or setting mode to production in webpack (https://webpack.js.org/concepts/mode/) ' + 'to ensure you have the correct code for your production build.');\n}\n\nexport { ActionTypes as __DO_NOT_USE__ActionTypes, applyMiddleware, bindActionCreators, combineReducers, compose, createStore };\n","function n(n){for(var r=arguments.length,t=Array(r>1?r-1:0),e=1;e<r;e++)t[e-1]=arguments[e];if(\"production\"!==process.env.NODE_ENV){var i=Y[n],o=i?\"function\"==typeof i?i.apply(null,t):i:\"unknown error nr: \"+n;throw Error(\"[Immer] \"+o)}throw Error(\"[Immer] minified error nr: \"+n+(t.length?\" \"+t.map((function(n){return\"'\"+n+\"'\"})).join(\",\"):\"\")+\". Find the full error at: https://bit.ly/3cXEKWf\")}function r(n){return!!n&&!!n[Q]}function t(n){return!!n&&(function(n){if(!n||\"object\"!=typeof n)return!1;var r=Object.getPrototypeOf(n);if(null===r)return!0;var t=Object.hasOwnProperty.call(r,\"constructor\")&&r.constructor;return t===Object||\"function\"==typeof t&&Function.toString.call(t)===Z}(n)||Array.isArray(n)||!!n[L]||!!n.constructor[L]||s(n)||v(n))}function e(t){return r(t)||n(23,t),t[Q].t}function i(n,r,t){void 0===t&&(t=!1),0===o(n)?(t?Object.keys:nn)(n).forEach((function(e){t&&\"symbol\"==typeof e||r(e,n[e],n)})):n.forEach((function(t,e){return r(e,t,n)}))}function o(n){var r=n[Q];return r?r.i>3?r.i-4:r.i:Array.isArray(n)?1:s(n)?2:v(n)?3:0}function u(n,r){return 2===o(n)?n.has(r):Object.prototype.hasOwnProperty.call(n,r)}function a(n,r){return 2===o(n)?n.get(r):n[r]}function f(n,r,t){var e=o(n);2===e?n.set(r,t):3===e?(n.delete(r),n.add(t)):n[r]=t}function c(n,r){return n===r?0!==n||1/n==1/r:n!=n&&r!=r}function s(n){return X&&n instanceof Map}function v(n){return q&&n instanceof Set}function p(n){return n.o||n.t}function l(n){if(Array.isArray(n))return Array.prototype.slice.call(n);var r=rn(n);delete r[Q];for(var t=nn(r),e=0;e<t.length;e++){var i=t[e],o=r[i];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(r[i]={configurable:!0,writable:!0,enumerable:o.enumerable,value:n[i]})}return Object.create(Object.getPrototypeOf(n),r)}function d(n,e){return void 0===e&&(e=!1),y(n)||r(n)||!t(n)?n:(o(n)>1&&(n.set=n.add=n.clear=n.delete=h),Object.freeze(n),e&&i(n,(function(n,r){return d(r,!0)}),!0),n)}function h(){n(2)}function y(n){return null==n||\"object\"!=typeof n||Object.isFrozen(n)}function b(r){var t=tn[r];return t||n(18,r),t}function m(n,r){tn[n]||(tn[n]=r)}function _(){return\"production\"===process.env.NODE_ENV||U||n(0),U}function j(n,r){r&&(b(\"Patches\"),n.u=[],n.s=[],n.v=r)}function O(n){g(n),n.p.forEach(S),n.p=null}function g(n){n===U&&(U=n.l)}function w(n){return U={p:[],l:U,h:n,m:!0,_:0}}function S(n){var r=n[Q];0===r.i||1===r.i?r.j():r.O=!0}function P(r,e){e._=e.p.length;var i=e.p[0],o=void 0!==r&&r!==i;return e.h.g||b(\"ES5\").S(e,r,o),o?(i[Q].P&&(O(e),n(4)),t(r)&&(r=M(e,r),e.l||x(e,r)),e.u&&b(\"Patches\").M(i[Q].t,r,e.u,e.s)):r=M(e,i,[]),O(e),e.u&&e.v(e.u,e.s),r!==H?r:void 0}function M(n,r,t){if(y(r))return r;var e=r[Q];if(!e)return i(r,(function(i,o){return A(n,e,r,i,o,t)}),!0),r;if(e.A!==n)return r;if(!e.P)return x(n,e.t,!0),e.t;if(!e.I){e.I=!0,e.A._--;var o=4===e.i||5===e.i?e.o=l(e.k):e.o;i(3===e.i?new Set(o):o,(function(r,i){return A(n,e,o,r,i,t)})),x(n,o,!1),t&&n.u&&b(\"Patches\").R(e,t,n.u,n.s)}return e.o}function A(e,i,o,a,c,s){if(\"production\"!==process.env.NODE_ENV&&c===o&&n(5),r(c)){var v=M(e,c,s&&i&&3!==i.i&&!u(i.D,a)?s.concat(a):void 0);if(f(o,a,v),!r(v))return;e.m=!1}if(t(c)&&!y(c)){if(!e.h.F&&e._<1)return;M(e,c),i&&i.A.l||x(e,c)}}function x(n,r,t){void 0===t&&(t=!1),n.h.F&&n.m&&d(r,t)}function z(n,r){var t=n[Q];return(t?p(t):n)[r]}function I(n,r){if(r in n)for(var t=Object.getPrototypeOf(n);t;){var e=Object.getOwnPropertyDescriptor(t,r);if(e)return e;t=Object.getPrototypeOf(t)}}function k(n){n.P||(n.P=!0,n.l&&k(n.l))}function E(n){n.o||(n.o=l(n.t))}function R(n,r,t){var e=s(r)?b(\"MapSet\").N(r,t):v(r)?b(\"MapSet\").T(r,t):n.g?function(n,r){var t=Array.isArray(n),e={i:t?1:0,A:r?r.A:_(),P:!1,I:!1,D:{},l:r,t:n,k:null,o:null,j:null,C:!1},i=e,o=en;t&&(i=[e],o=on);var u=Proxy.revocable(i,o),a=u.revoke,f=u.proxy;return e.k=f,e.j=a,f}(r,t):b(\"ES5\").J(r,t);return(t?t.A:_()).p.push(e),e}function D(e){return r(e)||n(22,e),function n(r){if(!t(r))return r;var e,u=r[Q],c=o(r);if(u){if(!u.P&&(u.i<4||!b(\"ES5\").K(u)))return u.t;u.I=!0,e=F(r,c),u.I=!1}else e=F(r,c);return i(e,(function(r,t){u&&a(u.t,r)===t||f(e,r,n(t))})),3===c?new Set(e):e}(e)}function F(n,r){switch(r){case 2:return new Map(n);case 3:return Array.from(n)}return l(n)}function N(){function t(n,r){var t=s[n];return t?t.enumerable=r:s[n]=t={configurable:!0,enumerable:r,get:function(){var r=this[Q];return\"production\"!==process.env.NODE_ENV&&f(r),en.get(r,n)},set:function(r){var t=this[Q];\"production\"!==process.env.NODE_ENV&&f(t),en.set(t,n,r)}},t}function e(n){for(var r=n.length-1;r>=0;r--){var t=n[r][Q];if(!t.P)switch(t.i){case 5:a(t)&&k(t);break;case 4:o(t)&&k(t)}}}function o(n){for(var r=n.t,t=n.k,e=nn(t),i=e.length-1;i>=0;i--){var o=e[i];if(o!==Q){var a=r[o];if(void 0===a&&!u(r,o))return!0;var f=t[o],s=f&&f[Q];if(s?s.t!==a:!c(f,a))return!0}}var v=!!r[Q];return e.length!==nn(r).length+(v?0:1)}function a(n){var r=n.k;if(r.length!==n.t.length)return!0;var t=Object.getOwnPropertyDescriptor(r,r.length-1);if(t&&!t.get)return!0;for(var e=0;e<r.length;e++)if(!r.hasOwnProperty(e))return!0;return!1}function f(r){r.O&&n(3,JSON.stringify(p(r)))}var s={};m(\"ES5\",{J:function(n,r){var e=Array.isArray(n),i=function(n,r){if(n){for(var e=Array(r.length),i=0;i<r.length;i++)Object.defineProperty(e,\"\"+i,t(i,!0));return e}var o=rn(r);delete o[Q];for(var u=nn(o),a=0;a<u.length;a++){var f=u[a];o[f]=t(f,n||!!o[f].enumerable)}return Object.create(Object.getPrototypeOf(r),o)}(e,n),o={i:e?5:4,A:r?r.A:_(),P:!1,I:!1,D:{},l:r,t:n,k:i,o:null,O:!1,C:!1};return Object.defineProperty(i,Q,{value:o,writable:!0}),i},S:function(n,t,o){o?r(t)&&t[Q].A===n&&e(n.p):(n.u&&function n(r){if(r&&\"object\"==typeof r){var t=r[Q];if(t){var e=t.t,o=t.k,f=t.D,c=t.i;if(4===c)i(o,(function(r){r!==Q&&(void 0!==e[r]||u(e,r)?f[r]||n(o[r]):(f[r]=!0,k(t)))})),i(e,(function(n){void 0!==o[n]||u(o,n)||(f[n]=!1,k(t))}));else if(5===c){if(a(t)&&(k(t),f.length=!0),o.length<e.length)for(var s=o.length;s<e.length;s++)f[s]=!1;else for(var v=e.length;v<o.length;v++)f[v]=!0;for(var p=Math.min(o.length,e.length),l=0;l<p;l++)o.hasOwnProperty(l)||(f[l]=!0),void 0===f[l]&&n(o[l])}}}}(n.p[0]),e(n.p))},K:function(n){return 4===n.i?o(n):a(n)}})}function T(){function e(n){if(!t(n))return n;if(Array.isArray(n))return n.map(e);if(s(n))return new Map(Array.from(n.entries()).map((function(n){return[n[0],e(n[1])]})));if(v(n))return new Set(Array.from(n).map(e));var r=Object.create(Object.getPrototypeOf(n));for(var i in n)r[i]=e(n[i]);return u(n,L)&&(r[L]=n[L]),r}function f(n){return r(n)?e(n):n}var c=\"add\";m(\"Patches\",{$:function(r,t){return t.forEach((function(t){for(var i=t.path,u=t.op,f=r,s=0;s<i.length-1;s++){var v=o(f),p=\"\"+i[s];0!==v&&1!==v||\"__proto__\"!==p&&\"constructor\"!==p||n(24),\"function\"==typeof f&&\"prototype\"===p&&n(24),\"object\"!=typeof(f=a(f,p))&&n(15,i.join(\"/\"))}var l=o(f),d=e(t.value),h=i[i.length-1];switch(u){case\"replace\":switch(l){case 2:return f.set(h,d);case 3:n(16);default:return f[h]=d}case c:switch(l){case 1:return\"-\"===h?f.push(d):f.splice(h,0,d);case 2:return f.set(h,d);case 3:return f.add(d);default:return f[h]=d}case\"remove\":switch(l){case 1:return f.splice(h,1);case 2:return f.delete(h);case 3:return f.delete(t.value);default:return delete f[h]}default:n(17,u)}})),r},R:function(n,r,t,e){switch(n.i){case 0:case 4:case 2:return function(n,r,t,e){var o=n.t,s=n.o;i(n.D,(function(n,i){var v=a(o,n),p=a(s,n),l=i?u(o,n)?\"replace\":c:\"remove\";if(v!==p||\"replace\"!==l){var d=r.concat(n);t.push(\"remove\"===l?{op:l,path:d}:{op:l,path:d,value:p}),e.push(l===c?{op:\"remove\",path:d}:\"remove\"===l?{op:c,path:d,value:f(v)}:{op:\"replace\",path:d,value:f(v)})}}))}(n,r,t,e);case 5:case 1:return function(n,r,t,e){var i=n.t,o=n.D,u=n.o;if(u.length<i.length){var a=[u,i];i=a[0],u=a[1];var s=[e,t];t=s[0],e=s[1]}for(var v=0;v<i.length;v++)if(o[v]&&u[v]!==i[v]){var p=r.concat([v]);t.push({op:\"replace\",path:p,value:f(u[v])}),e.push({op:\"replace\",path:p,value:f(i[v])})}for(var l=i.length;l<u.length;l++){var d=r.concat([l]);t.push({op:c,path:d,value:f(u[l])})}i.length<u.length&&e.push({op:\"replace\",path:r.concat([\"length\"]),value:i.length})}(n,r,t,e);case 3:return function(n,r,t,e){var i=n.t,o=n.o,u=0;i.forEach((function(n){if(!o.has(n)){var i=r.concat([u]);t.push({op:\"remove\",path:i,value:n}),e.unshift({op:c,path:i,value:n})}u++})),u=0,o.forEach((function(n){if(!i.has(n)){var o=r.concat([u]);t.push({op:c,path:o,value:n}),e.unshift({op:\"remove\",path:o,value:n})}u++}))}(n,r,t,e)}},M:function(n,r,t,e){t.push({op:\"replace\",path:[],value:r===H?void 0:r}),e.push({op:\"replace\",path:[],value:n})}})}function C(){function r(n,r){function t(){this.constructor=n}a(n,r),n.prototype=(t.prototype=r.prototype,new t)}function e(n){n.o||(n.D=new Map,n.o=new Map(n.t))}function o(n){n.o||(n.o=new Set,n.t.forEach((function(r){if(t(r)){var e=R(n.A.h,r,n);n.p.set(r,e),n.o.add(e)}else n.o.add(r)})))}function u(r){r.O&&n(3,JSON.stringify(p(r)))}var a=function(n,r){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var t in r)r.hasOwnProperty(t)&&(n[t]=r[t])})(n,r)},f=function(){function n(n,r){return this[Q]={i:2,l:r,A:r?r.A:_(),P:!1,I:!1,o:void 0,D:void 0,t:n,k:this,C:!1,O:!1},this}r(n,Map);var o=n.prototype;return Object.defineProperty(o,\"size\",{get:function(){return p(this[Q]).size}}),o.has=function(n){return p(this[Q]).has(n)},o.set=function(n,r){var t=this[Q];return u(t),p(t).has(n)&&p(t).get(n)===r||(e(t),k(t),t.D.set(n,!0),t.o.set(n,r),t.D.set(n,!0)),this},o.delete=function(n){if(!this.has(n))return!1;var r=this[Q];return u(r),e(r),k(r),r.t.has(n)?r.D.set(n,!1):r.D.delete(n),r.o.delete(n),!0},o.clear=function(){var n=this[Q];u(n),p(n).size&&(e(n),k(n),n.D=new Map,i(n.t,(function(r){n.D.set(r,!1)})),n.o.clear())},o.forEach=function(n,r){var t=this;p(this[Q]).forEach((function(e,i){n.call(r,t.get(i),i,t)}))},o.get=function(n){var r=this[Q];u(r);var i=p(r).get(n);if(r.I||!t(i))return i;if(i!==r.t.get(n))return i;var o=R(r.A.h,i,r);return e(r),r.o.set(n,o),o},o.keys=function(){return p(this[Q]).keys()},o.values=function(){var n,r=this,t=this.keys();return(n={})[V]=function(){return r.values()},n.next=function(){var n=t.next();return n.done?n:{done:!1,value:r.get(n.value)}},n},o.entries=function(){var n,r=this,t=this.keys();return(n={})[V]=function(){return r.entries()},n.next=function(){var n=t.next();if(n.done)return n;var e=r.get(n.value);return{done:!1,value:[n.value,e]}},n},o[V]=function(){return this.entries()},n}(),c=function(){function n(n,r){return this[Q]={i:3,l:r,A:r?r.A:_(),P:!1,I:!1,o:void 0,t:n,k:this,p:new Map,O:!1,C:!1},this}r(n,Set);var t=n.prototype;return Object.defineProperty(t,\"size\",{get:function(){return p(this[Q]).size}}),t.has=function(n){var r=this[Q];return u(r),r.o?!!r.o.has(n)||!(!r.p.has(n)||!r.o.has(r.p.get(n))):r.t.has(n)},t.add=function(n){var r=this[Q];return u(r),this.has(n)||(o(r),k(r),r.o.add(n)),this},t.delete=function(n){if(!this.has(n))return!1;var r=this[Q];return u(r),o(r),k(r),r.o.delete(n)||!!r.p.has(n)&&r.o.delete(r.p.get(n))},t.clear=function(){var n=this[Q];u(n),p(n).size&&(o(n),k(n),n.o.clear())},t.values=function(){var n=this[Q];return u(n),o(n),n.o.values()},t.entries=function(){var n=this[Q];return u(n),o(n),n.o.entries()},t.keys=function(){return this.values()},t[V]=function(){return this.values()},t.forEach=function(n,r){for(var t=this.values(),e=t.next();!e.done;)n.call(r,e.value,e.value,this),e=t.next()},n}();m(\"MapSet\",{N:function(n,r){return new f(n,r)},T:function(n,r){return new c(n,r)}})}function J(){N(),C(),T()}function K(n){return n}function $(n){return n}var G,U,W=\"undefined\"!=typeof Symbol&&\"symbol\"==typeof Symbol(\"x\"),X=\"undefined\"!=typeof Map,q=\"undefined\"!=typeof Set,B=\"undefined\"!=typeof Proxy&&void 0!==Proxy.revocable&&\"undefined\"!=typeof Reflect,H=W?Symbol.for(\"immer-nothing\"):((G={})[\"immer-nothing\"]=!0,G),L=W?Symbol.for(\"immer-draftable\"):\"__$immer_draftable\",Q=W?Symbol.for(\"immer-state\"):\"__$immer_state\",V=\"undefined\"!=typeof Symbol&&Symbol.iterator||\"@@iterator\",Y={0:\"Illegal state\",1:\"Immer drafts cannot have computed properties\",2:\"This object has been frozen and should not be mutated\",3:function(n){return\"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? \"+n},4:\"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.\",5:\"Immer forbids circular references\",6:\"The first or second argument to `produce` must be a function\",7:\"The third argument to `produce` must be a function or undefined\",8:\"First argument to `createDraft` must be a plain object, an array, or an immerable object\",9:\"First argument to `finishDraft` must be a draft returned by `createDraft`\",10:\"The given draft is already finalized\",11:\"Object.defineProperty() cannot be used on an Immer draft\",12:\"Object.setPrototypeOf() cannot be used on an Immer draft\",13:\"Immer only supports deleting array indices\",14:\"Immer only supports setting array indices and the 'length' property\",15:function(n){return\"Cannot apply patch, path doesn't resolve: \"+n},16:'Sets cannot have \"replace\" patches.',17:function(n){return\"Unsupported patch operation: \"+n},18:function(n){return\"The plugin for '\"+n+\"' has not been loaded into Immer. To enable the plugin, import and call `enable\"+n+\"()` when initializing your application.\"},20:\"Cannot use proxies if Proxy, Proxy.revocable or Reflect are not available\",21:function(n){return\"produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '\"+n+\"'\"},22:function(n){return\"'current' expects a draft, got: \"+n},23:function(n){return\"'original' expects a draft, got: \"+n},24:\"Patching reserved attributes like __proto__, prototype and constructor is not allowed\"},Z=\"\"+Object.prototype.constructor,nn=\"undefined\"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(n){return Object.getOwnPropertyNames(n).concat(Object.getOwnPropertySymbols(n))}:Object.getOwnPropertyNames,rn=Object.getOwnPropertyDescriptors||function(n){var r={};return nn(n).forEach((function(t){r[t]=Object.getOwnPropertyDescriptor(n,t)})),r},tn={},en={get:function(n,r){if(r===Q)return n;var e=p(n);if(!u(e,r))return function(n,r,t){var e,i=I(r,t);return i?\"value\"in i?i.value:null===(e=i.get)||void 0===e?void 0:e.call(n.k):void 0}(n,e,r);var i=e[r];return n.I||!t(i)?i:i===z(n.t,r)?(E(n),n.o[r]=R(n.A.h,i,n)):i},has:function(n,r){return r in p(n)},ownKeys:function(n){return Reflect.ownKeys(p(n))},set:function(n,r,t){var e=I(p(n),r);if(null==e?void 0:e.set)return e.set.call(n.k,t),!0;if(!n.P){var i=z(p(n),r),o=null==i?void 0:i[Q];if(o&&o.t===t)return n.o[r]=t,n.D[r]=!1,!0;if(c(t,i)&&(void 0!==t||u(n.t,r)))return!0;E(n),k(n)}return n.o[r]===t&&\"number\"!=typeof t&&(void 0!==t||r in n.o)||(n.o[r]=t,n.D[r]=!0,!0)},deleteProperty:function(n,r){return void 0!==z(n.t,r)||r in n.t?(n.D[r]=!1,E(n),k(n)):delete n.D[r],n.o&&delete n.o[r],!0},getOwnPropertyDescriptor:function(n,r){var t=p(n),e=Reflect.getOwnPropertyDescriptor(t,r);return e?{writable:!0,configurable:1!==n.i||\"length\"!==r,enumerable:e.enumerable,value:t[r]}:e},defineProperty:function(){n(11)},getPrototypeOf:function(n){return Object.getPrototypeOf(n.t)},setPrototypeOf:function(){n(12)}},on={};i(en,(function(n,r){on[n]=function(){return arguments[0]=arguments[0][0],r.apply(this,arguments)}})),on.deleteProperty=function(r,t){return\"production\"!==process.env.NODE_ENV&&isNaN(parseInt(t))&&n(13),on.set.call(this,r,t,void 0)},on.set=function(r,t,e){return\"production\"!==process.env.NODE_ENV&&\"length\"!==t&&isNaN(parseInt(t))&&n(14),en.set.call(this,r[0],t,e,r[0])};var un=function(){function e(r){var e=this;this.g=B,this.F=!0,this.produce=function(r,i,o){if(\"function\"==typeof r&&\"function\"!=typeof i){var u=i;i=r;var a=e;return function(n){var r=this;void 0===n&&(n=u);for(var t=arguments.length,e=Array(t>1?t-1:0),o=1;o<t;o++)e[o-1]=arguments[o];return a.produce(n,(function(n){var t;return(t=i).call.apply(t,[r,n].concat(e))}))}}var f;if(\"function\"!=typeof i&&n(6),void 0!==o&&\"function\"!=typeof o&&n(7),t(r)){var c=w(e),s=R(e,r,void 0),v=!0;try{f=i(s),v=!1}finally{v?O(c):g(c)}return\"undefined\"!=typeof Promise&&f instanceof Promise?f.then((function(n){return j(c,o),P(n,c)}),(function(n){throw O(c),n})):(j(c,o),P(f,c))}if(!r||\"object\"!=typeof r){if(void 0===(f=i(r))&&(f=r),f===H&&(f=void 0),e.F&&d(f,!0),o){var p=[],l=[];b(\"Patches\").M(r,f,p,l),o(p,l)}return f}n(21,r)},this.produceWithPatches=function(n,r){if(\"function\"==typeof n)return function(r){for(var t=arguments.length,i=Array(t>1?t-1:0),o=1;o<t;o++)i[o-1]=arguments[o];return e.produceWithPatches(r,(function(r){return n.apply(void 0,[r].concat(i))}))};var t,i,o=e.produce(n,r,(function(n,r){t=n,i=r}));return\"undefined\"!=typeof Promise&&o instanceof Promise?o.then((function(n){return[n,t,i]})):[o,t,i]},\"boolean\"==typeof(null==r?void 0:r.useProxies)&&this.setUseProxies(r.useProxies),\"boolean\"==typeof(null==r?void 0:r.autoFreeze)&&this.setAutoFreeze(r.autoFreeze)}var i=e.prototype;return i.createDraft=function(e){t(e)||n(8),r(e)&&(e=D(e));var i=w(this),o=R(this,e,void 0);return o[Q].C=!0,g(i),o},i.finishDraft=function(r,t){var e=r&&r[Q];\"production\"!==process.env.NODE_ENV&&(e&&e.C||n(9),e.I&&n(10));var i=e.A;return j(i,t),P(void 0,i)},i.setAutoFreeze=function(n){this.F=n},i.setUseProxies=function(r){r&&!B&&n(20),this.g=r},i.applyPatches=function(n,t){var e;for(e=t.length-1;e>=0;e--){var i=t[e];if(0===i.path.length&&\"replace\"===i.op){n=i.value;break}}e>-1&&(t=t.slice(e+1));var o=b(\"Patches\").$;return r(n)?o(n,t):this.produce(n,(function(n){return o(n,t)}))},e}(),an=new un,fn=an.produce,cn=an.produceWithPatches.bind(an),sn=an.setAutoFreeze.bind(an),vn=an.setUseProxies.bind(an),pn=an.applyPatches.bind(an),ln=an.createDraft.bind(an),dn=an.finishDraft.bind(an);export default fn;export{un as Immer,pn as applyPatches,K as castDraft,$ as castImmutable,ln as createDraft,D as current,J as enableAllPlugins,N as enableES5,C as enableMapSet,T as enablePatches,dn as finishDraft,d as freeze,L as immerable,r as isDraft,t as isDraftable,H as nothing,e as original,fn as produce,cn as produceWithPatches,sn as setAutoFreeze,vn as setUseProxies};\n//# sourceMappingURL=immer.esm.js.map\n","import produce from \"immer\";\r\nimport { PageAction, UPDATE_PAGE } from \"./page.actions\";\r\nimport UmbracoPageRootState from \"app/umbraco/models/page-redux-state.interface\";\r\n\r\nconst initialState: UmbracoPageRootState = {\r\n content: undefined,\r\n statusCode: 0,\r\n redirectUrl: undefined,\r\n};\r\n\r\nexport default (pageState = initialState, action: PageAction): UmbracoPageRootState => produce(pageState, draft => {\r\n switch (action.type) {\r\n case UPDATE_PAGE: {\r\n draft.content = action.content;\r\n draft.statusCode = action.statusCode;\r\n draft.redirectUrl = action.redirectUrl;\r\n break;\r\n }\r\n }\r\n});\r\n","import produce from \"immer\";\r\nimport { SiteSettingsAction, GET_SITE_SETTINGS } from \"./settings.actions\";\r\nimport UmbracoSettingsRootState from \"../models/settings-redux-state.interface\";\r\n\r\nconst initialState: UmbracoSettingsRootState = {\r\n content: undefined\r\n};\r\n\r\nexport default (settingsState = initialState, action: SiteSettingsAction): UmbracoSettingsRootState => produce(settingsState, draft => {\r\n switch (action.type) {\r\n case GET_SITE_SETTINGS: {\r\n draft.content = action.content;\r\n break;\r\n }\r\n }\r\n});\r\n","import produce from \"immer\";\r\nimport { OverlayAction, CLOSE_ALL_OVERLAYS, OPEN_MOBILE_MENU, OPEN_MEGA_DROPDOWN_MENU, OPEN_MODAL } from \"./overlay.actions\";\r\nimport OverlayRootState from \"../models/redux-state.interface\";\r\n\r\nconst initialState: OverlayRootState = {\r\n currentOverlay: undefined,\r\n modal: undefined,\r\n stickyLink: undefined,\r\n menu: undefined,\r\n subMenu: undefined,\r\n menuOpen: false,\r\n modalOpen: false,\r\n};\r\n\r\nexport default (overlayState = initialState, action: OverlayAction): OverlayRootState => produce(overlayState, draft => {\r\n switch (action.type) {\r\n case OPEN_MOBILE_MENU: {\r\n draft.currentOverlay = \"MOBILE_MENU\";\r\n draft.menu = action.menu;\r\n draft.subMenu = action.subMenu;\r\n draft.menuOpen = true;\r\n break;\r\n }\r\n case OPEN_MEGA_DROPDOWN_MENU: {\r\n draft.currentOverlay = \"MEGA_DROPDOWN_MENU\";\r\n draft.menu = action.menu;\r\n draft.subMenu = action.subMenu;\r\n draft.menuOpen = true;\r\n break;\r\n }\r\n case OPEN_MODAL: {\r\n draft.currentOverlay = \"MODAL\";\r\n draft.modal = action.modal;\r\n draft.modalOpen = true;\r\n draft.stickyLink = action.stickyLink;\r\n break;\r\n }\r\n case CLOSE_ALL_OVERLAYS: {\r\n draft.currentOverlay = undefined;\r\n draft.modal = undefined;\r\n draft.menu = undefined;\r\n draft.subMenu = undefined;\r\n draft.menuOpen = false;\r\n draft.modalOpen = false;\r\n break;\r\n }\r\n }\r\n});\r\n","import produce from \"immer\";\r\nimport { DictionaryAction, LOAD_DICTIONARY } from \"./dictionary.actions\";\r\nimport DictionaryRootState from \"components/Dictionary/redux/dictionary-redux-state.interface\";\r\n\r\nconst initialState: DictionaryRootState = {\r\n translations: {}\r\n};\r\n\r\nexport default (dictionaryState = initialState, action: DictionaryAction): DictionaryRootState => produce(dictionaryState, draft => {\r\n switch (action.type) {\r\n case LOAD_DICTIONARY: {\r\n draft.translations = action.translations;\r\n break;\r\n }\r\n }\r\n});","/**\n * This action type will be dispatched when your history\n * receives a location change.\n */\nexport var LOCATION_CHANGE = '@@router/LOCATION_CHANGE';\nexport var onLocationChanged = function onLocationChanged(location, action) {\n var isFirstRendering = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return {\n type: LOCATION_CHANGE,\n payload: {\n location: location,\n action: action,\n isFirstRendering: isFirstRendering\n }\n };\n};\n/**\n * This action type will be dispatched by the history actions below.\n * If you're writing a middleware to watch for navigation events, be sure to\n * look for actions of this type.\n */\n\nexport var CALL_HISTORY_METHOD = '@@router/CALL_HISTORY_METHOD';\n\nvar updateLocation = function updateLocation(method) {\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return {\n type: CALL_HISTORY_METHOD,\n payload: {\n method: method,\n args: args\n }\n };\n };\n};\n/**\n * These actions correspond to the history API.\n * The associated routerMiddleware will capture these events before they get to\n * your reducer and reissue them as the matching function on your history.\n */\n\n\nexport var push = updateLocation('push');\nexport var replace = updateLocation('replace');\nexport var go = updateLocation('go');\nexport var goBack = updateLocation('goBack');\nexport var goForward = updateLocation('goForward');\nexport var routerActions = {\n push: push,\n replace: replace,\n go: go,\n goBack: goBack,\n goForward: goForward\n};","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(n); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { LOCATION_CHANGE } from './actions';\n/**\n * Adds query to location.\n * Utilises the search prop of location to construct query.\n */\n\nvar injectQuery = function injectQuery(location) {\n if (location && location.query) {\n // Don't inject query if it already exists in history\n return location;\n }\n\n var searchQuery = location && location.search;\n\n if (typeof searchQuery !== 'string' || searchQuery.length === 0) {\n return _objectSpread({}, location, {\n query: {}\n });\n } // Ignore the `?` part of the search string e.g. ?username=codejockie\n\n\n var search = searchQuery.substring(1); // Split the query string on `&` e.g. ?username=codejockie&name=Kennedy\n\n var queries = search.split('&'); // Contruct query\n\n var query = queries.reduce(function (acc, currentQuery) {\n // Split on `=`, to get key and value\n var _currentQuery$split = currentQuery.split('='),\n _currentQuery$split2 = _slicedToArray(_currentQuery$split, 2),\n queryKey = _currentQuery$split2[0],\n queryValue = _currentQuery$split2[1];\n\n return _objectSpread({}, acc, _defineProperty({}, queryKey, queryValue));\n }, {});\n return _objectSpread({}, location, {\n query: query\n });\n};\n\nvar createConnectRouter = function createConnectRouter(structure) {\n var fromJS = structure.fromJS,\n merge = structure.merge;\n\n var createRouterReducer = function createRouterReducer(history) {\n var initialRouterState = fromJS({\n location: injectQuery(history.location),\n action: history.action\n });\n /*\n * This reducer will update the state with the most recent location history\n * has transitioned to.\n */\n\n return function () {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialRouterState;\n\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n type = _ref.type,\n payload = _ref.payload;\n\n if (type === LOCATION_CHANGE) {\n var location = payload.location,\n action = payload.action,\n isFirstRendering = payload.isFirstRendering; // Don't update the state ref for the first rendering\n // to prevent the double-rendering issue on initilization\n\n return isFirstRendering ? state : merge(state, {\n location: fromJS(injectQuery(location)),\n action: action\n });\n }\n\n return state;\n };\n };\n\n return createRouterReducer;\n};\n\nexport default createConnectRouter;","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nimport { matchPath } from \"react-router\";\n\nvar createSelectors = function createSelectors(structure) {\n var getIn = structure.getIn,\n toJS = structure.toJS;\n\n var isRouter = function isRouter(value) {\n return value != null && _typeof(value) === 'object' && getIn(value, ['location']) && getIn(value, ['action']);\n };\n\n var getRouter = function getRouter(state) {\n var router = toJS(getIn(state, ['router']));\n\n if (!isRouter(router)) {\n throw 'Could not find router reducer in state tree, it must be mounted under \"router\"';\n }\n\n return router;\n };\n\n var getLocation = function getLocation(state) {\n return toJS(getIn(getRouter(state), ['location']));\n };\n\n var getAction = function getAction(state) {\n return toJS(getIn(getRouter(state), ['action']));\n };\n\n var getSearch = function getSearch(state) {\n return toJS(getIn(getRouter(state), ['location', 'search']));\n };\n\n var getHash = function getHash(state) {\n return toJS(getIn(getRouter(state), ['location', 'hash']));\n }; // It only makes sense to recalculate the `matchPath` whenever the pathname\n // of the location changes. That's why `createMatchSelector` memoizes\n // the latest result based on the location's pathname.\n\n\n var createMatchSelector = function createMatchSelector(path) {\n var lastPathname = null;\n var lastMatch = null;\n return function (state) {\n var _ref = getLocation(state) || {},\n pathname = _ref.pathname;\n\n if (pathname === lastPathname) {\n return lastMatch;\n }\n\n lastPathname = pathname;\n var match = matchPath(pathname, path);\n\n if (!match || !lastMatch || match.url !== lastMatch.url // When URL matched for nested routes, URL is the same but isExact is not.\n || match.isExact !== lastMatch.isExact) {\n lastMatch = match;\n }\n\n return lastMatch;\n };\n };\n\n return {\n getLocation: getLocation,\n getAction: getAction,\n getRouter: getRouter,\n getSearch: getSearch,\n getHash: getHash,\n createMatchSelector: createMatchSelector\n };\n};\n\nexport default createSelectors;","/* Code from github.com/erikras/redux-form by Erik Rasmussen */\nvar getIn = function getIn(state, path) {\n if (!state) {\n return state;\n }\n\n var length = path.length;\n\n if (!length) {\n return undefined;\n }\n\n var result = state;\n\n for (var i = 0; i < length && !!result; ++i) {\n result = result[path[i]];\n }\n\n return result;\n};\n\nexport default getIn;","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport getIn from './getIn';\nvar structure = {\n fromJS: function fromJS(value) {\n return value;\n },\n getIn: getIn,\n merge: function merge(state, payload) {\n return _objectSpread({}, state, {}, payload);\n },\n toJS: function toJS(value) {\n return value;\n }\n};\nexport default structure;","import createConnectedRouter from \"./ConnectedRouter\";\nimport createConnectRouter from \"./reducer\";\nimport createSelectors from \"./selectors\";\nimport plainStructure from \"./structure/plain\";\nexport { LOCATION_CHANGE, CALL_HISTORY_METHOD, onLocationChanged, push, replace, go, goBack, goForward, routerActions } from \"./actions\";\nexport { default as routerMiddleware } from \"./middleware\";\nexport var ConnectedRouter = /*#__PURE__*/createConnectedRouter(plainStructure);\nexport var connectRouter = /*#__PURE__*/createConnectRouter(plainStructure);\n\nvar _createSelectors = /*#__PURE__*/createSelectors(plainStructure),\n getLocation = _createSelectors.getLocation,\n getAction = _createSelectors.getAction,\n getHash = _createSelectors.getHash,\n getRouter = _createSelectors.getRouter,\n getSearch = _createSelectors.getSearch,\n createMatchSelector = _createSelectors.createMatchSelector;\n\nexport { getLocation, getAction, getHash, getRouter, getSearch, createMatchSelector };","import { combineReducers } from \"redux\";\r\nimport umbracoPageReducer from \"./umbraco/redux/page.reducer\";\r\nimport umbracoSettingsReducer from \"./umbraco/redux/settings.reducer\";\r\nimport overlayReducer from \"layout/redux/overlay.reducer\";\r\nimport dictionaryReducer from \"components/Dictionary/redux/dictionary.reducer\";\r\nimport { connectRouter } from \"connected-react-router\";\r\nimport { History } from \"history\";\r\n\r\nexport const reducer = (history: History): any => combineReducers({\r\n dictionary: dictionaryReducer,\r\n overlay: overlayReducer,\r\n page: umbracoPageReducer,\r\n router: connectRouter(history),\r\n settings: umbracoSettingsReducer\r\n});\r\n\r\nexport type AppRootState = ReturnType<typeof reducer>;","function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(n); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nimport { CALL_HISTORY_METHOD } from './actions';\n/**\n * This middleware captures CALL_HISTORY_METHOD actions to redirect to the\n * provided history object. This will prevent these actions from reaching your\n * reducer or any middleware that comes after this one.\n */\n\nvar routerMiddleware = function routerMiddleware(history) {\n return function (store) {\n return function (next) {\n return function (action) {\n // eslint-disable-line no-unused-vars\n if (action.type !== CALL_HISTORY_METHOD) {\n return next(action);\n }\n\n var _action$payload = action.payload,\n method = _action$payload.method,\n args = _action$payload.args;\n history[method].apply(history, _toConsumableArray(args));\n };\n };\n };\n};\n\nexport default routerMiddleware;","export type EnvironmentName = \"development\" | \"production\";\r\n\r\nexport default (): EnvironmentName => {\r\n return process.env.NODE_ENV as EnvironmentName;\r\n};\r\n","import getEnvironment from \"./getEnvironment\";\r\n\r\nexport default (): boolean => {\r\n return getEnvironment() === \"development\";\r\n};","/** A function that accepts a potential \"extra argument\" value to be injected later,\r\n * and returns an instance of the thunk middleware that uses that value\r\n */\nfunction createThunkMiddleware(extraArgument) {\n // Standard Redux middleware definition pattern:\n // See: https://redux.js.org/tutorials/fundamentals/part-4-store#writing-custom-middleware\n var middleware = function middleware(_ref) {\n var dispatch = _ref.dispatch,\n getState = _ref.getState;\n return function (next) {\n return function (action) {\n // The thunk middleware looks for any functions that were passed to `store.dispatch`.\n // If this \"action\" is really a function, call it and return the result.\n if (typeof action === 'function') {\n // Inject the store's `dispatch` and `getState` methods, as well as any \"extra arg\"\n return action(dispatch, getState, extraArgument);\n } // Otherwise, pass the action down the middleware chain as usual\n\n\n return next(action);\n };\n };\n };\n\n return middleware;\n}\n\nvar thunk = createThunkMiddleware(); // Attach the factory function so users can create a customized version\n// with whatever \"extra arg\" they want to inject into their thunks\n\nthunk.withExtraArgument = createThunkMiddleware;\nexport default thunk;","import { applyMiddleware, compose, createStore } from \"redux\";\r\nimport { DefaultRootState } from \"react-redux\";\r\nimport { History, createMemoryHistory } from \"history\";\r\nimport { reducer } from \"./redux.store\";\r\nimport { routerMiddleware } from \"connected-react-router\";\r\nimport isBrowserContext from \"helpers/isBrowserContext\";\r\nimport isDevelopment from \"helpers/isDevelopment\";\r\nimport thunk from \"redux-thunk\";\r\n\r\nconst configureStore = (initialState?: DefaultRootState, history?: History): any => {\r\n if (!history) {\r\n history = createMemoryHistory();\r\n }\r\n\r\n const middleware = [\r\n thunk,\r\n routerMiddleware(history)\r\n ];\r\n\r\n const composeEnhancers = isBrowserContext() && isDevelopment() && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ : compose;\r\n\r\n const enhancer = composeEnhancers(\r\n applyMiddleware(...middleware)\r\n );\r\n\r\n const store = createStore(\r\n reducer(history),\r\n initialState,\r\n enhancer\r\n );\r\n\r\n return store;\r\n};\r\n\r\nexport default configureStore;","import React from \"react\";\r\nimport \"./index.scss\";\r\n\r\nimport { BrowserRouter } from \"react-router-dom\";\r\nimport { createBrowserHistory } from \"history\";\r\nimport { DefaultRootState, Provider } from \"react-redux\";\r\nimport { HelmetProvider } from \"react-helmet-async\";\r\nimport App from \"./app/App\";\r\nimport configureStore from \"app/configure.store\";\r\nimport { decompressFromBase64 } from \"lz-string\";\r\nimport ReactDOM from \"react-dom\";\r\nimport { GTMProvider } from \"@elgorditosalsero/react-gtm-hook\";\r\n\r\nconst history = createBrowserHistory();\r\nlet initialState: DefaultRootState | undefined = undefined;\r\nconst store = configureStore(initialState, history);\r\n\r\nif (window.__PRELOADED_STATE__) {\r\n const compressed = decompressFromBase64(window.__PRELOADED_STATE__);\r\n initialState = JSON.parse(compressed ?? \"\");\r\n delete window.__PRELOADED_STATE__;\r\n}\r\n\r\nif (typeof (document) !== \"undefined\" && typeof (window) !== \"undefined\") {\r\n setTimeout(() => {\r\n document.documentElement.style.setProperty(\"--scrollbar-width\", (window.innerWidth - document.body.clientWidth) + \"px\");\r\n }, 250);\r\n}\r\n\r\nconst gtmParams = { id: \"GTM-NTGS4FP\" };\r\n\r\nReactDOM.render(\r\n <HelmetProvider>\r\n <GTMProvider state={gtmParams}>\r\n <BrowserRouter>\r\n <Provider store={store}>\r\n <App />\r\n </Provider>\r\n </BrowserRouter>\r\n </GTMProvider>\r\n </HelmetProvider>,\r\n document.getElementById(\"root\")\r\n);\r\n"],"names":["url","params","newURL","URL","toString","key","searchParams","append","window","document","isBrowserContext","location","origin","globalThis","Error","addUrlParams","getUmbracoEndPoint","request","baseURL","process","env","NODE_ENV","startsWith","urlBuilder","route","fetch","method","headers","body","undefined","response","json","fetchContentByRoute","UPDATE_PAGE","thunkUpdatePage","history","dispatch","pageResponse","result","umbracoRedirect","redirectUrl","href","action","type","content","statusCode","replace","pathname","search","hash","state","page","_contentType","_name","_url","fetchSiteSettings","GET_SITE_SETTINGS","siteSettingsCache","thunkGetSiteSettings","fetchDictionary","LOAD_DICTIONARY","thunkLoadDictionary","translations","combineClasses","classNames","length","forEach","className","push","join","React","Suspense","lazy","styles","Anchor","ArrowBottomLeft","ArrowBottomRight","ArrowLeft","ArrowRight","ArrowTopRight","ChevronRight","Download","Email","Facebook","Handshake","Instagram","LinkedIn","Logo","Magnet","Pause","Phone","Play","Quote","Search","Twitter","YouTube","Talent","Talents","Tools","Lighthouse","ICON_TYPES","IconViewer","props","Icon","name","wrapper","icon","aspectRatioX","aspectRatioY","ratio","RegExp","Fragment","Link","useHistory","useLocation","getRelativeUrl","link","to","saveScrollYState","scrollY","modal","style","aria","onClick","children","indexOf","Footer","columns","settings","footerColumns","map","column","index","contentUdi","column_headline","headline","buttons","button","bIndex","column_button","label","bottom","links","footerLinks","lIndex","link_button","social","socialFacebookUrl","social_link","socialInstagramUrl","socialLinkedinUrl","socialTwitterUrl","socialYoutubeUrl","OPEN_MOBILE_MENU","OPEN_MEGA_DROPDOWN_MENU","OPEN_MODAL","CLOSE_ALL_OVERLAYS","motion","appBarOverThreshold","logo","scale","duration","ease","opacity","BreadcrumbLink","isLast","breadcrumb_link","breadcrumb_span","chevron_right","useState","useEffect","useIsAppBarVisible","appBarVisible","setAppBarVisible","setAppBarOverThreshold","threshold","prevScrollpos","pageYOffset","scrollHandler","currentScrollPos","addEventListener","removeEventListener","getWindowDimensions","width","height","innerWidth","innerHeight","windowDimensions","setWindowDimensions","handleResize","useDispatch","useSelector","AnimatePresence","useWindowDimensions","Header","menuOpen","overlay","whiteBreadcrumbs","breadcrumbsDarkBackground","white_breadcrumbs","openMobileMenu","menu","subMenu","handleMenuClick","handleClickCloseMenu","transition","color","header","inner","menu_right","search_button","search_icon","menu_wrapper","hamburger_menu_button","y","rotate","backgroundColor","hamburger_menu_background","translateX","translateY","mobile_menu_wrapper","_breadcrumbs","breadcrumb_wrapper","header_circle","hamburger_menu_background_outer","Dictionary","dictionary","fallback","Helmet","MobileMenu","handleClick","goBack","goForward","event","preventDefault","class","navigation","firstItem","nav_item","next_level_button","first_link","sub_heading_link","sub_heading_icon","secondItem","nav_sub_item","back_button","text","parsedText","__html","handleOpenModal","stickyLink","Button","buttonTypeClass","buttonType","anchor","parameters","anchor_icon","createRef","getProcessedRichtext","Accordion","isOpen","setIsOpen","setHeight","processedBodyText","bodyText","iconIsOpen","contentIsOpen","processedHeadline","heading","current","scrollHeight","title","maxHeight","item__spacer","BubbleBackground","background","bubbleType","DynamicHeading","headlineSizeClass","headlineSize","HeadingWeight","headlineWeight","toLowerCase","innerHTML","getWrapperClasses","classes","spacingTop","spacingBottom","showBorderTop","showBorderBottom","identifier","setIdentifier","slug","setTimeout","element","getElementById","scrollTo","offsetTop","useAnimation","useInView","useAnchorIdentifier","Accordions","wrapperClasses","anchorIdentifier","controls","ref","inView","animateUp","visible","hidden","animateDown","selectAnimation","animation","selectVariants","repeatAnimation","start","intro","accordions","item","bubbleBackground","default","crop","imageWidth","imageHeight","crops","preferredCropAlias","cropFallback","imageCrop","find","alias","ImageLoadingState","imageUrl","setImageLoadingState","newImg","Image","onload","LOADED","onerror","ERROR","src","closestTo","widthTiers","closest","Math","max","apply","widthTier","getClosestWidthTier","clientWidth","extensionType","focalPoint","heightRatio","URLSearchParams","coordinates","set","x1","y1","x2","y2","top","left","querySeparator","useWebPSupportCheck","preloadImage","setImageOptions","ImageViewer","triggerOnce","entry","supportsWebP","setImageUrl","NONE","imageLoadingState","boundsClass","contain_wide","contain_long","fallbackUrl","boundingClientRect","target","getBoundingClientRect","boundingClientWidth","boundingClientHeight","devicePixelRatio","clientHeight","imageUrlWithResizeOptions","image","alt","is_server","LOADING","loading","error","Paragraph","getImageAspectRatio","getImageCrop","Banner","wrapperElementRef","umbracoFile","imageAspectRatio","umbracoWidth","umbracoHeight","circle1BackgroundColor","overlayColor","circle2BackgroundColor","circleColor","circle3BackgroundColor","clickScrollHandler","scrollOverThreshold","scrollTop","offsetHeight","behavior","tagline","image_wrapper","image_overlay","circle","aside","asideImage","aside_image","aside_text","aside_heading","aside_buttons","aside_button","showAnchorButton","scroll_button","modalLink","x","anchorLink","getSpecialLink","Card","rootMargin","isInViewClass","hasLinkClass","has_link","imageAlternative","listElementRef","i","isInView","classList","contains","value","delay","debouncedValue","setDebouncedValue","handler","clearTimeout","useRef","getInViewChildren","useDebounce","Carousel","inputElementRef","showScrollBar","setShowScrollbar","scrollbarPosition","setScrollbarPosition","debouncedScrollbarPosition","scrollWidth","onScrollHandler","maxScrollWidth","scrollLeft","scroll","onPreviousClick","inViewIndexes","firstIndex","scrollIntoView","block","inline","onNextClick","lastIndex","list","pagination","pagination_inner","previous","next","scroll_wrapper","scroll_input","Cards","header_inner","header_content","cards","DownloadLink","link_wrapper","asset","download_icon","DownloadLinks","container","links_wrapper","Embed","showSnippet","setShowSnippet","embedSizeClass","size","loadScript","promise","Promise","resolve","reject","scriptElement","createElement","async","appendChild","embeds","includes","iframe","Employee","media","fullName","description","contact","email","email_icon","email_link","phone","phone_icon","phone_link","linkedin","linkedin_icon","linkedin_link","doctype","contentType","fetchContentByType","tags","initialItems","employees","items","setItems","viewState","setViewState","isComponentMounted","fetchEmployees","eligibleEmployees","filter","itemHasMatchTag","every","tag","then","catch","fetchTagsByRoute","fetchFilters","useCallback","useFilter","Employees","filters","filterViewState","currentFilters","setCurrentFilters","itemViewState","filteredItems","givenFilters","_id","currentFilter","handleTagClick","filterId","id","query","get","top_content","currentFilterClass","is_active","moment","posts","setFilteredItems","setCurrentFilter","fetchEvents","eligibleItems","endDate","eventDateEnd","nowDate","isSameOrAfter","isSameOrBefore","sortedItems","sort","a","b","aDate","eventDateStart","bDate","diff","Moment","Event","date","eventTitle","eventDescription","Events","currentFilterUpcomingClass","currentFilterEndedClass","onFilterClick","loader","empty","Alerts","success","alerts","alert","successAlert","InputField","setFormFieldsState","formFieldsState","setRequiredFieldsEach","requiredFieldsEach","setCurrentAlerts","currentAlerts","setIsAlert","isAlert","resetFields","fieldValue","setFieldValue","validateEmail","input","regex","regexp","test","updatedAlerts","invalidErrorMessage","splice","includesAlert","handleChange","e","el","includesAlias","mandatory","alertClass","validateClass","validate","input_field","label_wrapper","caption","TextareaField","textarea_field","textarea","RadioButtons","selectedOption","checked","setChecked","validateLength","requiredErrorMessage","handleChecked","radio_buttons","preValues","radioButton","radio_button_wrapper","radio_button","Checkbox","defaultValue","acceptCopy","Dropdown","select_field","dropdown","option","Field","renderControl","fieldTypeId","FormFields","Form","wrapperStyles","formFields","form","pages","fieldSets","containers","fields","formFieldsExist","setLoading","setSuccessAlert","setSuccess","setResetFields","requiredFieldsForm","setRequiredFieldsForm","requiredMessage","successMessage","messageOnSubmit","requiredFields","field","formWidthClass","formWidth","entriesArr","Object","entries","sameValues","setSuccessAndHide","checkRequiredArrays","handleSubmit","formId","arraysCheck","JSON","stringify","formField","button_and_loading","submitLabel","imageSizeClass","imageSize","imageCaption","focused","setFocused","overlayFocused","partnerLogo","button_text","arrow_down_right","Logos","logos","clearFilters","noFiltersClass","itemsFiltered","LogosSponsors","sponsors","sponsors_heading","alternative","logo_image","fetchNews","eligibleNews","some","sortedNews","NewsCard","News","activeBlock","showIcon","quote_icon","author","author_wrapper","authorTitle","useLayoutEffect","useRect","getRect","rect","setRect","ResizeObserver","resizeObserver","observe","disconnect","right","setQuoteWidth","slideListRef","QuoteSlideshow","quoteWidth","currentSlideIndex","setCurrentSlideIndex","elementHovered","setElementHovered","paginateSlide","quotes","nextSlideIndex","swipeConfidenceThreshold","swipePower","offset","velocity","abs","handleDrag","swipe","handlePaginationKeyDown","interval","setInterval","clearInterval","quote","quote_wrapper","arrow_left","disabled","arrow_right","_","dot_wrapper","dot","active_dot","modalButton","anchorButton","Spot","iconName","hasIconClass","has_icon","has_image","icon_wrapper","Spots","spots","Text","textAlignment","textWidth","introductoryText","intro_text","TextImage","cropSetting","imageMask","imagePositionClass","imagePosition","has_image_right","hasMask","masked","detailColor","media_wrapper","media_detail","fallbackCropAlias","findAspectRatio","aspectRatio","videoUrl","regEx","parsedVideoUrl","parseVideoUrl","VideoEmbed","isPlaying","setIsPlaying","player","setPlayer","isPlayingClass","is_playing","isAutoplay","autoplay","isLoop","loop","toggleVideoHandler","isPlayerPlaying","getPlayerState","playVideo","pauseVideo","onReady","onPlayerPlay","onPlayerPause","playerVars","mute","rel","showinfo","video","button_wrapper","icon_play","icon_pause","fileUrl","setFileOptions","VideoViewer","showControls","videoCurrent","play","pause","onLoadStartHandler","volume","getVideoAspectRatio","TextVideo","videoAspectRatio","videoCrop","videoPositionClass","videoPosition","has_video_right","videoAutoplay","videoLoop","videoAlternative","videoCaption","Video","videoSizeClass","videoSize","ContentPageBlock","ContentPage","blocks","blockContent","ErrorPage","EventPage","getImageUrl","umbracoImage","umbracoExtension","language","metaTitle","metaDescription","metaKeywords","metaCanonical","robots","socialTitle","socialDescription","socialImage","_culture","canonical","metaAllowIndexing","metaAllowFollowing","fallbackSocialTitle","fallbackSocialDescription","fallbackSocialImage","HomePage","NewsPage","NotFoundPage","OverviewPage","setBlocks","setActiveBlock","activeNews","active","activeEvents","blocksResult","onActiveBlockClick","top_overview_menu","toggle","scaleY","scaleX","button_background","term","take","fetchSearchItemsByRoute","fetchSearchResults","searchQuery","trim","ResultCard","pageExcerpt","timeout","callback","timer","setTimer","clearTimer","newTimer","SearchPage","setSearchQuery","fetchResults","fetchedItems","handleInputChange","page_title","pageTitle","search_bar","results","useRouteMatch","getPageMeta","UmbracoPage","match","renderHead","renderBody","AppLoadingState","appLoadTimer","waitTime","useCookies","cookies","isClient","isCrawler","isClientClass","detectRobot","userAgent","r","source","HeydayHeadless","navigator","is_client","useClientContext","useGTMDispatch","sendDataToGTM","originalLocation","setOriginalLocation","referer","setReferer","dataLayer","protocol","hostname","LinkSlideLeft","linkActive","setLinkActive","clickedLink","link_slide_left","button_icon","megaDropdownTimer","currentOverlay","megaDropdownHandler","FocusTrap","MegaDropdown","setClickedLink","subMenuTriggerHandler","show","staggerChildren","listItem","allowOutsideClick","first_level_link_with_submenu","first_level_link_single","sub_navigation","second_level_link_wrapper","second_level_link","accessibility_close_menu","ModalBlock","ScrollLock","Modal","modalOpen","handleCloseModal","alignContentTop","align_top","modal_header","close_button","sticky_link","link_arrow","Route","useAppLoading","useTagManager","globalLocale","App","animationDelay","setAnimationDelay","appLoadingClass","app_loading","START_LOADING","STILL_LOADING","app_loading_wrapper","app_loading_icon","app_loading_label","modal_wrapper","megadropdown_wrapper","produce","initialState","pageState","draft","settingsState","overlayState","dictionaryState","combineReducers","umbracoPageReducer","umbracoSettingsReducer","overlayReducer","dictionaryReducer","connectRouter","reducer","router","getEnvironment","applyMiddleware","compose","createStore","createMemoryHistory","routerMiddleware","isDevelopment","thunk","configureStore","middleware","composeEnhancers","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","enhancer","store","BrowserRouter","createBrowserHistory","Provider","HelmetProvider","decompressFromBase64","ReactDOM","GTMProvider","__PRELOADED_STATE__","compressed","parse","documentElement","setProperty","gtmParams","render"],"sourceRoot":""}