@zoom/cobrowsesdk 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ var e='var _templateObject,_templateObject2,_templateObject3,_templateObject4,_templateObject5,_templateObject6,_templateObject7,_templateObject8,_templateObject9,_templateObject10,_templateObject11,_templateObject12,_templateObject13,_excluded4=["axis","bounds","children","defaultPosition","defaultClassName","defaultClassNameDragging","defaultClassNameDragged","position","positionOffset","scale"];function _objectWithoutProperties(e,t){if(null==e)return{};var n,i,o=_objectWithoutPropertiesLoose3(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(i=0;i<r.length;i++)n=r[i],-1===t.indexOf(n)&&{}.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function _objectWithoutPropertiesLoose3(e,t){if(null==e)return{};var n={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(-1!==t.indexOf(i))continue;n[i]=e[i]}return n}function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function _toArray(e){return _arrayWithHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableRest()}function _createForOfIteratorHelper(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=_unsupportedIterableToArray(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var i=0,o=function(){};return{s:o,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,r=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw r}}}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _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.")}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(n),!0).forEach((function(t){_defineProperty2(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _regeneratorRuntime(){"use strict";/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */_regeneratorRuntime=function(){return t};var e,t={},n=Object.prototype,i=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},r=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(e,t,n,i){return Object.defineProperty(e,t,{value:n,enumerable:!i,configurable:!i,writable:!i})}try{l({},"")}catch(e){l=function(e,t,n){return e[t]=n}}function c(t,n,i,o){var r=n&&n.prototype instanceof d?n:d,a=Object.create(r.prototype);return l(a,"_invoke",function(t,n,i){var o=1;return function(r,a){if(3===o)throw Error("Generator is already running");if(4===o){if("throw"===r)throw a;return{value:e,done:!0}}for(i.method=r,i.arg=a;;){var s=i.delegate;if(s){var l=k(s,i);if(l){if(l===h)continue;return l}}if("next"===i.method)i.sent=i._sent=i.arg;else if("throw"===i.method){if(1===o)throw o=4,i.arg;i.dispatchException(i.arg)}else"return"===i.method&&i.abrupt("return",i.arg);o=3;var c=u(t,n,i);if("normal"===c.type){if(o=i.done?4:2,c.arg===h)continue;return{value:c.arg,done:i.done}}"throw"===c.type&&(o=4,i.method="throw",i.arg=c.arg)}}}(t,i,new C(o||[])),!0),a}function u(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=c;var h={};function d(){}function f(){}function p(){}var g={};l(g,r,(function(){return this}));var m=Object.getPrototypeOf,v=m&&m(m(E([])));v&&v!==n&&i.call(v,r)&&(g=v);var y=p.prototype=d.prototype=Object.create(g);function b(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function _(e,t){function n(o,r,a,s){var l=u(e[o],e,r);if("throw"!==l.type){var c=l.arg,h=c.value;return h&&"object"==_typeof(h)&&i.call(h,"__await")?t.resolve(h.__await).then((function(e){n("next",e,a,s)}),(function(e){n("throw",e,a,s)})):t.resolve(h).then((function(e){c.value=e,a(c)}),(function(e){return n("throw",e,a,s)}))}s(l.arg)}var o;l(this,"_invoke",(function(e,i){function r(){return new t((function(t,o){n(e,i,t,o)}))}return o=o?o.then(r,r):r()}),!0)}function k(t,n){var i=n.method,o=t.i[i];if(o===e)return n.delegate=null,"throw"===i&&t.i.return&&(n.method="return",n.arg=e,k(t,n),"throw"===n.method)||"return"!==i&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a \'"+i+"\' method")),h;var r=u(o,t.i,n.arg);if("throw"===r.type)return n.method="throw",n.arg=r.arg,n.delegate=null,h;var a=r.arg;return a?a.done?(n[t.r]=a.value,n.next=t.n,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,h):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,h)}function w(e){this.tryEntries.push(e)}function S(t){var n=t[4]||{};n.type="normal",n.arg=e,t[4]=n}function C(e){this.tryEntries=[[-1]],e.forEach(w,this),this.reset(!0)}function E(t){if(null!=t){var n=t[r];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function n(){for(;++o<t.length;)if(i.call(t,o))return n.value=t[o],n.done=!1,n;return n.value=e,n.done=!0,n};return a.next=a}}throw new TypeError(_typeof(t)+" is not iterable")}return f.prototype=p,l(y,"constructor",p),l(p,"constructor",f),f.displayName=l(p,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,p):(e.__proto__=p,l(e,s,"GeneratorFunction")),e.prototype=Object.create(y),e},t.awrap=function(e){return{__await:e}},b(_.prototype),l(_.prototype,a,(function(){return this})),t.AsyncIterator=_,t.async=function(e,n,i,o,r){void 0===r&&(r=Promise);var a=new _(c(e,n,i,o),r);return t.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},b(y),l(y,s,"Generator"),l(y,r,(function(){return this})),l(y,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var i in t)n.unshift(i);return function e(){for(;n.length;)if((i=n.pop())in t)return e.value=i,e.done=!1,e;return e.done=!0,e}},t.values=E,C.prototype={constructor:C,reset:function(t){if(this.prev=this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(S),!t)for(var n in this)"t"===n.charAt(0)&&i.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0][4];if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function i(e){a.type="throw",a.arg=t,n.next=e}for(var o=n.tryEntries.length-1;o>=0;--o){var r=this.tryEntries[o],a=r[4],s=this.prev,l=r[1],c=r[2];if(-1===r[0])return i("end"),!1;if(!l&&!c)throw Error("try statement without catch or finally");if(null!=r[0]&&r[0]<=s){if(s<l)return this.method="next",this.arg=e,i(l),!0;if(s<c)return i(c),!1}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i[0]>-1&&i[0]<=this.prev&&this.prev<i[2]){var o=i;break}}o&&("break"===e||"continue"===e)&&o[0]<=t&&t<=o[2]&&(o=null);var r=o?o[4]:{};return r.type=e,r.arg=t,o?(this.method="next",this.next=o[2],h):this.complete(r)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),h},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n[2]===e)return this.complete(n[4],n[3]),S(n),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n[0]===e){var i=n[4];if("throw"===i.type){var o=i.arg;S(n)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,n,i){return this.delegate={i:E(t),r:n,n:i},"next"===this.method&&(this.arg=e),h}},t}function _wrapNativeSuper(e){var t="function"==typeof Map?new Map:void 0;return _wrapNativeSuper=function(e){if(null===e||!_isNativeFunction(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return _construct(e,arguments,_getPrototypeOf(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),_setPrototypeOf2(n,e)},_wrapNativeSuper(e)}function _construct(e,t,n){if(_isNativeReflectConstruct())return Reflect.construct.apply(null,arguments);var i=[null];i.push.apply(i,t);var o=new(e.bind.apply(e,i));return n&&_setPrototypeOf2(o,n.prototype),o}function _isNativeFunction(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}function _get(){return _get="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,n){var i=_superPropBase(e,t);if(i){var o=Object.getOwnPropertyDescriptor(i,t);return o.get?o.get.call(arguments.length<3?e:n):o.value}},_get.apply(null,arguments)}function _superPropBase(e,t){for(;!{}.hasOwnProperty.call(e,t)&&null!==(e=_getPrototypeOf(e)););return e}function _inherits(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}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&_setPrototypeOf2(e,t)}function _setPrototypeOf2(e,t){return _setPrototypeOf2=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_setPrototypeOf2(e,t)}function _createSuper(e){var t=_isNativeReflectConstruct();return function(){var n,i=_getPrototypeOf(e);if(t){var o=_getPrototypeOf(this).constructor;n=Reflect.construct(i,arguments,o)}else n=i.apply(this,arguments);return _possibleConstructorReturn(this,n)}}function _possibleConstructorReturn(e,t){if(t&&("object"==_typeof(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized2(e)}function _assertThisInitialized2(e){if(void 0===e)throw new ReferenceError("this hasn\'t been initialised - super() hasn\'t been called");return e}function _isNativeReflectConstruct(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(_isNativeReflectConstruct=function(){return!!e})()}function _getPrototypeOf(e){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},_getPrototypeOf(e)}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _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.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}function _iterableToArrayLimit(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var i,o,r,a,s=[],l=!0,c=!1;try{if(r=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(i=r.call(n)).done)&&(s.push(i.value),s.length!==t);l=!0);}catch(e){c=!0,o=e}finally{try{if(!l&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw o}}return s}}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,_toPropertyKey2(i.key),i)}}function _createClass(e,t,n){return t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function _typeof(e){return _typeof="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},_typeof(e)}function _defineProperty2(e,t,n){return(t=_toPropertyKey2(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _toPropertyKey2(e){var t=_toPrimitive2(e,"string");return"symbol"==_typeof(t)?t:t+""}function _toPrimitive2(e,t){if("object"!=_typeof(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}var ZCBController=function(e,t,n,i,o,r,a){"use strict";function s(e,t){return t.forEach((function(t){t&&"string"!=typeof t&&!Array.isArray(t)&&Object.keys(t).forEach((function(n){if("default"!==n&&!(n in e)){var i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,i.get?i:{enumerable:!0,get:function(){return t[n]}})}}))})),Object.freeze(e)}var l,c,u="evt";!function(e){e.USER_ROSTER="msg_user_roster",e.ROOM_ROSTER="msg_room_roster",e.SESSION_CLOSED="msg_session_closed",e.SESSION_STARTED="msg_session_started",e.SESSION_PERSISTED="msg_session_persisted",e.ERROR="msg_error",e.SESSION_CONNECTING="msg_session_connecting",e.SESSION_RECONNECTING="msg_session_reconnecting",e.RECORD_APPROVE_REQUEST="msg_record_approve_request",e.START_RECORD_RESPONSE="msg_record_started_response",e.STOP_RECORD_RESPONSE="msg_record_stopped_response",e.PAUSE_RECORD_RESPONSE="msg_record_paused_response",e.RESUME_RECORD_RESPONSE="msg_record_resumed_response",e.SOCKET_OPEN="msg_socket_open",e.RECORD_APPROVE_RESPONSE="msg_record_approve_response",e.USER_BE_HOLD_STATUS_CHANGE="msg_user_be_hold_status_change",e.REMOTE_CONTROL_REQUEST="msg_remote_control_request",e.REMOTE_CONTROL_RESPONSE="msg_remote_control_response",e.REMOTE_CONTROL_GIVE_UP="msg_remote_control_give_up",e.REMOTE_CONTROL_TAKE_BACK="msg_remote_control_take_back",e.REMOTE_CONTROL_REJECT="msg_remote_control_reject",e.REMOTE_CONTROL_CANCEL="msg_remote_control_cancel",e.LEADER_PAGE_VISIBILITY="msg_leader_page_visibility"}(l||(l={})),function(e){e.SESSION_STARTED="session_started",e.SESSION_INITED="session_inited",e.SESSION_PAUSED="session_paused",e.SESSION_RESUMED="session_resumed",e.SESSION_ENDED="session_ended",e.SESSION_LEFT="session_left",e.SESSION_CANCELING="session_canceling",e.SESSION_CONNECTING="session_connecting",e.SESSION_RECONNECTING="session_reconnecting",e.SESSION_PERSISTING="session_persisting",e.PARTICIPANT_CHANGED="participant_changed",e.AGENT_JOINED="agent_joined",e.AGENT_LEFT="agent_left",e.AGENT_DISCONNECTED="agent_disconnected",e.CUSTOMER_JOINED="customer_joined",e.CUSTOMER_LEFT="customer_left",e.CUSTOMER_DISCONNECTED="customer_disconnected",e.SESSION_ERROR="session_error",e.REMOTE_CONTROL_STARTED="remote_control_started",e.REMOTE_CONTROL_STATUS="remote_control_status",e.REMOTE_CONTROL_REQUEST="remote_control_request",e.REMOTE_CONTROL_RESPONSE="remote_control_response",e.REMOTE_CONTROL_GIVE_UP="remote_control_give_up",e.REMOTE_CONTROL_TAKE_BACK="remote_control_take_back",e.REMOTE_CONTROL_REJECT="remote_control_reject",e.REMOTE_CONTROL_CANCEL="remote_control_cancel",e.PINCODE_UPDATED="pincode_updated",e.RECORD_STARTED="record_started",e.RECORD_STOPPED="record_stopped",e.RECORD_PAUSED="record_paused",e.RECORD_RESUMED="record_resumed",e.ORIGIN_UPDATED="origin_updated",e.START_REPLAY="start_replay",e.CURRENT_USER_TRANSFER="current_user_transfer",e.CUSTOMER_FOCUS_LOST="customer_focus_lost",e.CUSTOMER_TRANSFERRED="customer_transferred"}(c||(c={}));var h;!function(e){e.COM_DESK="com-desk",e.COM_VIEWER="com-viewer",e.COM_BYOP_DESK="com_byop_desk"}(h||(h={}));var d,f,p,g,m,v,y,b=2147483647;!function(e){e[e.Normal=0]="Normal",e[e.AgentReconnectFailed=1]="AgentReconnectFailed",e[e.CustomerReconnectFailed=2]="CustomerReconnectFailed",e[e.CustomerEnded=3]="CustomerEnded"}(d||(d={})),function(e){e[e.Voice=1]="Voice",e[e.Chat=2]="Chat"}(f||(f={})),function(e){e.tabFollowingWaitTransferringCustomer="tabFollowingWaitTransferringCustomer",e.tabFollowingTransferringFailedCustomer="tabFollowingTransferringFailedCustomer",e.tabFollowingTransferringFailedAgent="tabFollowingTransferringFailedAgent"}(p||(p={})),function(e){e.NOT_CREATED="session_not_created",e.RECOVERABLE="session_recoverable",e.STARTED="session_started",e.CONNECT_FAILED="connect_failed",e.CONNECTING="session_connecting",e.CANCELING="session_canceling",e.RECONNECTING="session_reconnecting",e.CAN_PERSIST="session_can_persist",e.PERSISTING="session_persisting"}(g||(g={})),function(e){e.UNKNOWN="unknown"}(m||(m={})),function(e){e.UNKNOWN="unknown",e.NO_ROOT_DOM="no_root_dom"}(v||(v={})),function(e){e.START="START",e.JOIN="JOIN",e.AUTO="AUTO",e.PERSIST="persist"}(y||(y={}));var _,k,w,S,C="co-browsing-replay-iframe",E="en-US",T="CBS-internal-block",O="CBS-internal-hide";!function(e){e.zcc="zcc",e.common="common"}(_||(_={})),function(e){e[e.NoAction=0]="NoAction",e[e.Accept=1]="Accept",e[e.Decline=2]="Decline",e[e.Leave=3]="Leave"}(k||(k={})),function(e){e[e.END_ROOM=41e3]="END_ROOM",e[e.DESTROY_DEACTIVE_ROOM=41001]="DESTROY_DEACTIVE_ROOM",e[e.DESTROY_SLEEP_ROOM=41002]="DESTROY_SLEEP_ROOM"}(w||(w={})),function(e){e.END_SESSION="end_session",e.DEACTIVE_SESSION="deactive_session",e.CANCEL_SESSION="cancel_session"}(S||(S={}));var j,x,R=_defineProperty2(_defineProperty2(_defineProperty2({},w.END_ROOM,S.END_SESSION),w.DESTROY_DEACTIVE_ROOM,S.DEACTIVE_SESSION),w.DESTROY_SLEEP_ROOM,S.DEACTIVE_SESSION);!function(e){e[e.LEAVE_ROOM=4e4]="LEAVE_ROOM",e[e.DISCONNECTED=40001]="DISCONNECTED"}(j||(j={})),function(e){e.LEAVE_SESSION="leave_session",e.DISCONNECT_SESSION="disconnect_session"}(x||(x={}));var I,A,D,N,P,L,M,z,F,B,U,V,W,G,H,Y,X,K,q=_defineProperty2(_defineProperty2({},j.LEAVE_ROOM,x.LEAVE_SESSION),j.DISCONNECTED,x.DISCONNECT_SESSION);!function(e){e.CUSTOMER_END_COBROWSE="Customer has left the Cobrowse session.",e.AGENT_END_COBROWSE="Agent has left the Cobrowse session.",e.END_COBROWSE_CC="THE_COBROWSE_SESSION_HAS_BEEN_ENDED"}(I||(I={})),function(e){e[e.DEFAULT=0]="DEFAULT",e[e.CC_UI_SESSION_END=1]="CC_UI_SESSION_END"}(A||(A={})),function(e){e.RECONNECTING_SESSION="Reconnecting Cobrowse session. Please wait....",e.CONNECTING_SESSION="Joining Cobrowse session...",e.UNABLE_JOIN_SESSION_TITLE="Unable to join the Cobrowse session",e.FAILED_RECONNECT_SESSION_TITLE="Failed to reconnect to the Cobrowse session",e.FAILED_RECONNECT_SESSION_CONTENT="The Cobrowse session has ended automatically due to failed reconnection. Please check your network connection and restart the session.",e.ENDED_RECONNECT_SESSION_TITLE="Cobrowse session has ended",e.RECONNECTING_SESSION_CC="RECONNECTING_COBROWSE",e.CONNECTING_SESSION_CC="JOINING_COBROWSE_SESSION",e.UNABLE_JOIN_SESSION_TITLE_CC="UNABLE_JOIN_SESSION_TITLE",e.FAILED_RECONNECT_SESSION_TITLE_CC="FAILED_RECONNECT_SESSION_TITLE",e.FAILED_RECONNECT_SESSION_CONTENT_CC="FAILED_RECONNECT_SESSION_CONTENT",e.ENDED_RECONNECT_SESSION_TITLE_CC="ENDED_RECONNECT_SESSION_TITLE",e.TRANSFER_FAILED_ERROR_TITLE="Failed to transfer to new tab"}(D||(D={})),function(e){e.TRANSFER_FAILED_ERROR_TIPS="Failed to transfer to new tab,Please return to the previous tab and have a try again."}(N||(N={})),function(e){e.RECONNECTING_SESSION="Reconnecting Cobrowse session...",e.CONNECTING_SESSION="Connecting to Cobrowse session...",e.GIVE_CONSUMER_CODE="Give the pairing code to your consumer to join:",e.COBROWSE_PIN_CODE="Cobrowse code",e.COBROWSE_PIN_CODE_TIPS="Please inform the following pin code to your support agent, your agent and you will browse this page together.",e.COBROWSE_PIN_CODE_TIPS_MOBILE="Please give this code to your agent.",e.GIVE_CONSUMER_CODE_CC="GIVE_CONSUMER_CODE",e.COBROWSE_PIN_CODE_ERROR_TITLE="Unable to generate pin code",e.COBROWSE_PIN_CODE_ERROR_TIPS="Unable to generate pin code. Please try again later."}(P||(P={})),function(e){e.WAIT_CONSUMER="WAIT_CONSUMER"}(L||(L={})),function(e){e.SESSION_TIMER="SESSION_TIMER",e.AUTO_END_SESSION="AUTO_END_SESSION",e.RECONNECTING_SESSION_CC="RECONNECTING_COBROWSE",e.CONNECTING_SESSION_CC="CONNECTING_TO_COBROWSE_SESSION"}(M||(M={})),function(e){e[e.DomContentLoaded=0]="DomContentLoaded",e[e.Load=1]="Load",e[e.FullSnapshot=2]="FullSnapshot",e[e.IncrementalSnapshot=3]="IncrementalSnapshot",e[e.Meta=4]="Meta",e[e.Custom=5]="Custom",e[e.Plugin=6]="Plugin",e[e.RemoteControl=7]="RemoteControl"}(z||(z={})),function(e){e[e.Mutation=0]="Mutation",e[e.MouseMove=1]="MouseMove",e[e.MouseInteraction=2]="MouseInteraction",e[e.Scroll=3]="Scroll",e[e.ViewportResize=4]="ViewportResize",e[e.Input=5]="Input",e[e.TouchMove=6]="TouchMove",e[e.MediaInteraction=7]="MediaInteraction",e[e.StyleSheetRule=8]="StyleSheetRule",e[e.CanvasMutation=9]="CanvasMutation",e[e.Font=10]="Font",e[e.Log=11]="Log",e[e.Drag=12]="Drag",e[e.StyleDeclaration=13]="StyleDeclaration",e[e.Selection=14]="Selection",e[e.AdoptedStyleSheet=15]="AdoptedStyleSheet"}(F||(F={})),function(e){e[e.Annotation=16]="Annotation"}(B||(B={})),function(e){e[e.MouseUp=0]="MouseUp",e[e.MouseDown=1]="MouseDown",e[e.Click=2]="Click",e[e.ContextMenu=3]="ContextMenu",e[e.DblClick=4]="DblClick",e[e.Focus=5]="Focus",e[e.Blur=6]="Blur",e[e.TouchStart=7]="TouchStart",e[e.TouchMove_Departed=8]="TouchMove_Departed",e[e.TouchEnd=9]="TouchEnd",e[e.TouchCancel=10]="TouchCancel"}(U||(U={})),function(e){e[e["2D"]=0]="2D",e[e.WebGL=1]="WebGL",e[e.WebGL2=2]="WebGL2"}(V||(V={})),function(e){e[e.Document=0]="Document",e[e.DocumentType=1]="DocumentType",e[e.Element=2]="Element",e[e.Text=3]="Text",e[e.CDATA=4]="CDATA",e[e.Comment=5]="Comment"}(W||(W={})),function(e){e.CBS="CBS",e.CBS_SUB="CBS_SUB",e.IFRAME_ANOTATION="IFRAME_ANOTATION"}(G||(G={})),function(e){e.TRANSFERRING="transferring_in",e.SUCCESS="transfer_in_success",e.FAIL="transfer_in_failed",e.CANCEL="transfer_in_cancelled",e.TRANSFER_OUT_SUCCESS="transfer_out_success"}(H||(H={})),function(e){e.RegisterUser="register-user",e.UnregisterUser="unregister-user",e.Position="position",e.RegisterCustomerCursorDOM="register-customer-dom",e.RegisterOtherAgentCursorDOM="register-other-agent-dom",e.UpdateCursorPositionLocal="update-cursor-position-local"}(Y||(Y={})),function(e){e[e.PENDING=0]="PENDING",e[e.READY=1]="READY",e[e.CLOSE=2]="CLOSE"}(X||(X={})),function(e){e[e.RECORD_NOT_ENABLED=2e4]="RECORD_NOT_ENABLED",e[e.START_RECORD_UNAVAILABLE=20001]="START_RECORD_UNAVAILABLE",e[e.START_RECORD_INVALID_BODY=20002]="START_RECORD_INVALID_BODY",e[e.EXIST_RECORD_CONFLICT=20003]="EXIST_RECORD_CONFLICT",e[e.RECORD_OVERHEAD_CAPACITY=20004]="RECORD_OVERHEAD_CAPACITY",e[e.LEADER_NOT_JOINED=20005]="LEADER_NOT_JOINED",e[e.LEADER_DENIED=20006]="LEADER_DENIED",e[e.RECORD_ABORTED=20007]="RECORD_ABORTED",e[e.END_RECORD_UNAVAILABLE=21e3]="END_RECORD_UNAVAILABLE",e[e.END_RECORD_INVALID_BODY=21001]="END_RECORD_INVALID_BODY",e[e.RECORD_ALREADY_PAUSED=22e3]="RECORD_ALREADY_PAUSED",e[e.RECORD_ALREADY_RESUMED=23e3]="RECORD_ALREADY_RESUMED",e[e.NO_ACTIVE_RECORD=24e3]="NO_ACTIVE_RECORD",e[e.RECORD_IN_START_PROGRESS=24001]="RECORD_IN_START_PROGRESS",e[e.RECORD_IN_STOP_PROGRESS=24002]="RECORD_IN_STOP_PROGRESS",e[e.CHS_JWT_MISSING=25100]="CHS_JWT_MISSING",e[e.CHS_JWT_DECODE_FAILED=25101]="CHS_JWT_DECODE_FAILED",e[e.CHS_JWT_INVALID_PAYLOAD=25102]="CHS_JWT_INVALID_PAYLOAD",e[e.CHS_JWT_ISS_AUD_MISSING=25103]="CHS_JWT_ISS_AUD_MISSING",e[e.CHS_JWT_ISS_AUD_DENIED=25104]="CHS_JWT_ISS_AUD_DENIED",e[e.CHS_JWT_VERIFY_FAILED=25105]="CHS_JWT_VERIFY_FAILED",e[e.SESSION_ID_NOT_MATCH=25200]="SESSION_ID_NOT_MATCH",e[e.AID_IN_JWT_MISSING=25201]="AID_IN_JWT_MISSING",e[e.UID_IN_JWT_MISSING=25202]="UID_IN_JWT_MISSING",e[e.RECORD_ID_MISSING=25203]="RECORD_ID_MISSING",e[e.RECORD_TASK_NOT_EXIST=25204]="RECORD_TASK_NOT_EXIST",e[e.PAGE_CONTEXT_BOOTSTRAP_FAILED=26100]="PAGE_CONTEXT_BOOTSTRAP_FAILED",e[e.PAGE_CONTROLLER_INIT_FAILED=26101]="PAGE_CONTROLLER_INIT_FAILED",e[e.PAGE_LOAD_HTML_FAILED=26102]="PAGE_LOAD_HTML_FAILED",e[e.PAGE_INJECT_INIT_FAILED=26103]="PAGE_INJECT_INIT_FAILED",e[e.PAGE_INJECT_CONTEXT_FAILED=26104]="PAGE_INJECT_CONTEXT_FAILED",e[e.PAGE_START_FAILED=26105]="PAGE_START_FAILED",e[e.PAGE_STOP_FAILED=26106]="PAGE_STOP_FAILED",e[e.RECORDER_INIT_FAILED=26200]="RECORDER_INIT_FAILED",e[e.RECORDER_CDP_SESSION_START_FAILED=26201]="RECORDER_CDP_SESSION_START_FAILED",e[e.RECORDER_CDP_SESSION_STOP_FAILED=26202]="RECORDER_CDP_SESSION_STOP_FAILED",e[e.RECORDER_CDP_SESSION_ALREADY_DESTROYED=26203]="RECORDER_CDP_SESSION_ALREADY_DESTROYED",e[e.DISK_USAGE_FULL=26204]="DISK_USAGE_FULL",e[e.CONNECT_CHS_FAILED=26301]="CONNECT_CHS_FAILED",e[e.CONNECT_CHS_FAILOVER=26302]="CONNECT_CHS_FAILOVER",e[e.CONNECT_CHS_DESTROYED=26303]="CONNECT_CHS_DESTROYED",e[e.CONNECT_CHS_DISCONNECTED=26304]="CONNECT_CHS_DISCONNECTED",e[e.CONNECT_CHS_TIMEOUT=26305]="CONNECT_CHS_TIMEOUT",e[e.UDS_INIT_FAILED=26400]="UDS_INIT_FAILED",e[e.UDS_SUB_PROCESS_INIT_FAILED=26401]="UDS_SUB_PROCESS_INIT_FAILED",e[e.UDS_SUB_PROCESS_INIT_TIMEOUT=26402]="UDS_SUB_PROCESS_INIT_TIMEOUT",e[e.UDS_CLINET_INIT_FAILED=26403]="UDS_CLINET_INIT_FAILED",e[e.UDS_SERVER_INIT_FAILED=26404]="UDS_SERVER_INIT_FAILED",e[e.UDS_SERVER_LISTEN_FAILED=26405]="UDS_SERVER_LISTEN_FAILED",e[e.FILE_INIT_FAILED=26500]="FILE_INIT_FAILED",e[e.FILE_META_INIT_FAILED=26501]="FILE_META_INIT_FAILED",e[e.FILE_META_CLIP_INIT_FAILED=26502]="FILE_META_CLIP_INIT_FAILED",e[e.FILE_META_OPEN_FAILED=26503]="FILE_META_OPEN_FAILED",e[e.FILE_META_LOCK_FAILED=26504]="FILE_META_LOCK_FAILED",e[e.FILE_META_RELEASE_FAILED=26505]="FILE_META_RELEASE_FAILED",e[e.FILE_META_WRITE_FAILED=26506]="FILE_META_WRITE_FAILED",e[e.ZCB_WEB_NOT_AVAILABLE=26600]="ZCB_WEB_NOT_AVAILABLE",e[e.ZCB_CRS_NOT_AVAILABLE=26601]="ZCB_CRS_NOT_AVAILABLE",e[e.REDIS_GET_CLIP_SIZE_FAILED=26700]="REDIS_GET_CLIP_SIZE_FAILED",e[e.REDIS_SET_CLIP_SIZE_FAILED=26701]="REDIS_SET_CLIP_SIZE_FAILED",e[e.REDIS_GET_START_TIME_FAILED=26702]="REDIS_GET_START_TIME_FAILED",e[e.REDIS_SET_START_TIME_FAILED=26703]="REDIS_SET_START_TIME_FAILED",e[e.ASSETS_FETCH_FAILED=26800]="ASSETS_FETCH_FAILED",e[e.ASSETS_WRITE_FAILED=26801]="ASSETS_WRITE_FAILED"}(K||(K={})),K.RECORD_OVERHEAD_CAPACITY,K.RECORD_OVERHEAD_CAPACITY;var J,Z={};_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Z,K.START_RECORD_UNAVAILABLE,"start record api not available"),K.START_RECORD_INVALID_BODY,"start record response body invalid"),K.END_RECORD_UNAVAILABLE,"end record api not available"),K.END_RECORD_INVALID_BODY,"end record response body invalid"),K.EXIST_RECORD_CONFLICT,"already has an existed recording"),K.NO_ACTIVE_RECORD,"no existed recording"),K.RECORD_IN_START_PROGRESS,"recording is in start progress"),K.RECORD_IN_STOP_PROGRESS,"recording is in stop progress"),K.RECORD_ALREADY_PAUSED,"recording already paused"),K.RECORD_ALREADY_RESUMED,"recording already resumed"),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Z,K.RECORD_NOT_ENABLED,"recording not enabled"),K.RECORD_OVERHEAD_CAPACITY,"recording capacity is overhead"),K.LEADER_NOT_JOINED,"leader not joined room"),K.LEADER_DENIED,"leader denied recording"),K.RECORD_ABORTED,"recording aborted"),K.CHS_JWT_MISSING,"CHS JWT is empty"),K.CHS_JWT_DECODE_FAILED,"CHS JWT decode error"),K.CHS_JWT_INVALID_PAYLOAD,"CHS JWT payload invalid"),K.CHS_JWT_ISS_AUD_MISSING,"CHS JWT iss or aud empty"),K.CHS_JWT_ISS_AUD_DENIED,"invalid iss and aud"),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Z,K.CHS_JWT_VERIFY_FAILED,"token verify failed"),K.SESSION_ID_NOT_MATCH,"sessionId in header is not match in jwt payload"),K.AID_IN_JWT_MISSING,"aid in token is required"),K.UID_IN_JWT_MISSING,"uid in token is required"),K.RECORD_ID_MISSING,"recordId is empty"),K.RECORD_TASK_NOT_EXIST,"record task not exist"),K.PAGE_CONTEXT_BOOTSTRAP_FAILED,"bootstrap playwright failed"),K.PAGE_CONTROLLER_INIT_FAILED,"PageController init failed"),K.PAGE_LOAD_HTML_FAILED,"page load html failed"),K.PAGE_INJECT_INIT_FAILED,"PageInjector init failed"),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Z,K.PAGE_INJECT_CONTEXT_FAILED,"injectPageContext failed"),K.PAGE_START_FAILED,"page start record failed"),K.PAGE_STOP_FAILED,"page start stop failed"),K.RECORDER_INIT_FAILED,"PageRecorder init failed"),K.RECORDER_CDP_SESSION_START_FAILED,"record start cdp session failed"),K.RECORDER_CDP_SESSION_STOP_FAILED,"record stop cdp session failed"),K.RECORDER_CDP_SESSION_ALREADY_DESTROYED,"PageRecorder has already been destroyed"),K.DISK_USAGE_FULL,"Server disk is full"),K.CONNECT_CHS_FAILED,"CHS is not available"),K.CONNECT_CHS_FAILOVER,"CHS connection is failover now"),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Z,K.CONNECT_CHS_DESTROYED,"CHS connection is destroyed by client"),K.CONNECT_CHS_DISCONNECTED,"CHS connection is disconnected"),K.CONNECT_CHS_TIMEOUT,"wait for CHS connection timeout"),K.UDS_INIT_FAILED,"UDSManager init failed"),K.UDS_SUB_PROCESS_INIT_FAILED,"uds sub process init failed"),K.UDS_SUB_PROCESS_INIT_TIMEOUT,"uds sub process init timeout"),K.UDS_CLINET_INIT_FAILED,"UDSClient init failed"),K.UDS_SERVER_INIT_FAILED,"UDSServer init failed"),K.UDS_SERVER_LISTEN_FAILED,"UDSServer listen failed"),K.FILE_INIT_FAILED,"FileManager init failed"),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Z,K.FILE_META_INIT_FAILED,"MetaDataManager init failed"),K.FILE_META_CLIP_INIT_FAILED,"SubClipManager init failed"),K.FILE_META_OPEN_FAILED,"open metadata failed"),K.FILE_META_LOCK_FAILED,"metadata lock failed"),K.FILE_META_RELEASE_FAILED,"metadata release failed"),K.FILE_META_WRITE_FAILED,"metadata write failed"),K.ZCB_WEB_NOT_AVAILABLE,"web is not available"),K.ZCB_CRS_NOT_AVAILABLE,"crs is not available"),K.REDIS_GET_CLIP_SIZE_FAILED,"get clip size failed"),K.REDIS_SET_CLIP_SIZE_FAILED,"set clip size failed"),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Z,K.REDIS_GET_START_TIME_FAILED,"get record start time failed"),K.REDIS_SET_START_TIME_FAILED,"set record start time failed"),K.ASSETS_FETCH_FAILED,"fetch assets from cdn failed"),K.ASSETS_WRITE_FAILED,"write assets to local disk failed"),function(e){e[e.INIT=0]="INIT",e[e.RUNNING=1]="RUNNING",e[e.PAUSE=2]="PAUSE",e[e.FINISH=3]="FINISH"}(J||(J={}));var $,Q;!function(e){e[e.WS_CONN_KEEPALIVE=0]="WS_CONN_KEEPALIVE",e[e.WS_CONN_VECTOR_DATA=1]="WS_CONN_VECTOR_DATA",e[e.WS_DOC_JSON_JOIN_RES=8194]="WS_DOC_JSON_JOIN_RES"}($||($={})),function(e){e.CONNECTED="CONNECTED",e.DISCONNECTED="DISCONNECTED",e.END_ROOM="END_ROOM",e.LEAVE_ROOM="LEAVE_ROOM",e.INTERACTION_BINARY="INTERACTION_BINARY",e.INTERACTION="INTERACTION",e.FULL_SNAPSHOT_REQUEST="FULL_SNAPSHOT_REQUEST",e.GET_BINARY="GET_BINARY",e.USER_BE_HOLD_STATUS_CHANGE="USER_BE_HOLD_STATUS_CHANGE",e.USER_ROSTER="USER_ROSTER",e.ROOM_ROSTER="ROOM_ROSTER",e.REMOTE_CONTROL_STATUS="REMOTE_CONTROL_STATUS",e.REMOTE_CONTROL_REQUEST="REMOTE_CONTROL_REQUEST",e.REMOTE_CONTROL_RESPONSE="REMOTE_CONTROL_RESPONSE",e.REMOTE_CONTROL_GIVE_UP="REMOTE_CONTROL_GIVE_UP",e.REMOTE_CONTROL_TAKE_BACK="REMOTE_CONTROL_TAKE_BACK",e.REMOTE_CONTROL_REJECT="REMOTE_CONTROL_REJECT",e.REMOTE_CONTROL_CANCEL="REMOTE_CONTROL_CANCEL",e.START_RECORD="START_RECORD",e.STOP_RECORD="STOP_RECORD",e.PAUSE_RECORD="PAUSE_RECORD",e.RESUME_RECORD="RESUME_RECORD",e.START_RECORD_RESPONSE="START_RECORD_RESPONSE",e.STOP_RECORD_RESPONSE="STOP_RECORD_RESPONSE",e.PAUSE_RECORD_RESPONSE="PAUSE_RECORD_RESPONSE",e.RESUME_RECORD_RESPONSE="RESUME_RECORD_RESPONSE",e.RECORD_APPROVE_REQUEST="RECORD_APPROVE_REQUEST",e.RECORD_APPROVE_RESPONSE="RECORD_APPROVE_RESPONSE",e.ANNOTATION="ANNOTATION",e.FLYING_CURSOR="FLYING_CURSOR",e.LEADER_PAGE_VISIBILITY="LEADER_PAGE_VISIBILITY",e.RTT="RTT",e.NTP="NTP"}(Q||(Q={})),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2({},Q.ANNOTATION,!0),Q.INTERACTION,!0),Q.INTERACTION_BINARY,!0),Q.FLYING_CURSOR,!0),_defineProperty2({},Q.RTT,!0);var ee={};_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(ee,Q.INTERACTION,!0),Q.INTERACTION_BINARY,!0),Q.FULL_SNAPSHOT_REQUEST,!0),Q.REMOTE_CONTROL_STATUS,!0),Q.REMOTE_CONTROL_REQUEST,!0),Q.REMOTE_CONTROL_RESPONSE,!0),Q.REMOTE_CONTROL_GIVE_UP,!0),Q.REMOTE_CONTROL_TAKE_BACK,!0),Q.REMOTE_CONTROL_REJECT,!0),Q.REMOTE_CONTROL_CANCEL,!0),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(ee,Q.START_RECORD,!0),Q.RESUME_RECORD,!0),Q.PAUSE_RECORD,!0),Q.STOP_RECORD,!0),Q.ANNOTATION,!0),Q.FLYING_CURSOR,!0);var te={};_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(te,Q.INTERACTION,!0),Q.INTERACTION_BINARY,!0),Q.FULL_SNAPSHOT_REQUEST,!0),Q.USER_ROSTER,!0),Q.ROOM_ROSTER,!0),Q.REMOTE_CONTROL_STATUS,!0),Q.REMOTE_CONTROL_REQUEST,!0),Q.REMOTE_CONTROL_RESPONSE,!0),Q.REMOTE_CONTROL_GIVE_UP,!0),Q.REMOTE_CONTROL_TAKE_BACK,!0),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(te,Q.REMOTE_CONTROL_REJECT,!0),Q.REMOTE_CONTROL_CANCEL,!0),Q.START_RECORD,!0),Q.RESUME_RECORD,!0),Q.PAUSE_RECORD,!0),Q.STOP_RECORD,!0),Q.START_RECORD_RESPONSE,!0),Q.STOP_RECORD_RESPONSE,!0),Q.PAUSE_RECORD_RESPONSE,!0),Q.RESUME_RECORD_RESPONSE,!0),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(te,Q.RECORD_APPROVE_REQUEST,!0),Q.RECORD_APPROVE_RESPONSE,!0),Q.ANNOTATION,!0),Q.FLYING_CURSOR,!0),_defineProperty2(_defineProperty2({},Q.RECORD_APPROVE_RESPONSE,!0),Q.LEAVE_ROOM,!0);var ne,ie,oe=_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2({},Y.RegisterCustomerCursorDOM,!0),Y.UnregisterUser,!0),Y.RegisterOtherAgentCursorDOM,!0),Y.UpdateCursorPositionLocal,!0);!function(e){e[e.IN_PROGRESS=4e4]="IN_PROGRESS",e[e.OPPOSITE_REJECT=40001]="OPPOSITE_REJECT"}(ne||(ne={})),_defineProperty2(_defineProperty2({},ne.IN_PROGRESS,"remote control is in progress"),ne.OPPOSITE_REJECT,"the opposite side refuses to be controlled"),function(e){e[e.LEAVE_ROOM=4e4]="LEAVE_ROOM",e[e.DISCONNECTED=40001]="DISCONNECTED",e[e.WEB_REPORT_REGION_FAILED=40100]="WEB_REPORT_REGION_FAILED",e[e.WEB_REPORT_REGION_NOT_MATCH=40101]="WEB_REPORT_REGION_NOT_MATCH",e[e.WEB_REPORT_USER_JOIN_FAILED=40102]="WEB_REPORT_USER_JOIN_FAILED",e[e.WEB_REPORT_USER_JOIN_EMPTY=40103]="WEB_REPORT_USER_JOIN_EMPTY",e[e.WEB_REPORT_USER_JOIN_EMPTY_USER=40104]="WEB_REPORT_USER_JOIN_EMPTY_USER",e[e.AUTH_CONFLICT=40200]="AUTH_CONFLICT",e[e.AUTH_VERIFY_FAILED=40201]="AUTH_VERIFY_FAILED",e[e.AUTH_DB_QUERY_ERROR=40202]="AUTH_DB_QUERY_ERROR",e[e.AUTH_USER_ID_VERIFY_FAILED=40203]="AUTH_USER_ID_VERIFY_FAILED",e[e.AUTH_USER_ID_NO_EXIST=40204]="AUTH_USER_ID_NO_EXIST",e[e.ROOM_NOT_EXIST=40210]="ROOM_NOT_EXIST",e[e.ROOM_ADD_USER_FAILED=40211]="ROOM_ADD_USER_FAILED",e[e.LEADER_CONFLICT=40212]="LEADER_CONFLICT",e[e.USER_CONFLICT=40213]="USER_CONFLICT",e[e.SESSION_ALREADY_ENDED=40214]="SESSION_ALREADY_ENDED",e[e.FOLLOWER_CONFLICT=40215]="FOLLOWER_CONFLICT",e[e.ROOM_DEPRECATED=40216]="ROOM_DEPRECATED",e[e.REACHED_LEADER_LIMIT=40217]="REACHED_LEADER_LIMIT",e[e.REACHED_FOLLOWER_LIMIT=40218]="REACHED_FOLLOWER_LIMIT",e[e.SAME_LEADER_JOINED=40219]="SAME_LEADER_JOINED",e[e.ROOM_ID_MISSING=40300]="ROOM_ID_MISSING",e[e.AUTH_PAYLOAD_MISSING=40301]="AUTH_PAYLOAD_MISSING",e[e.START_URL_INVALID=40302]="START_URL_INVALID",e[e.SERVER_RESTARTED=40400]="SERVER_RESTARTED",e[e.WSSGW_REMOVE_NODE=40401]="WSSGW_REMOVE_NODE",e[e.META_DATA_INVALID=40402]="META_DATA_INVALID",e[e.WSSGW_INSTANCE_NOT_FOUND=40403]="WSSGW_INSTANCE_NOT_FOUND",e[e.END_ROOM=41e3]="END_ROOM",e[e.DESTROY_DEACTIVE_ROOM=41001]="DESTROY_DEACTIVE_ROOM",e[e.DESTROY_SLEEP_ROOM=41002]="DESTROY_SLEEP_ROOM",e[e.NO_OTHER_ACTIVE_USER=42e3]="NO_OTHER_ACTIVE_USER",e[e.RECORD_ALREADY_ENDED=42001]="RECORD_ALREADY_ENDED",e[e.RECORD_START_FAILED=42002]="RECORD_START_FAILED"}(ie||(ie={})),ie.LEAVE_ROOM,ie.WEB_REPORT_USER_JOIN_FAILED,ie.AUTH_CONFLICT,ie.AUTH_VERIFY_FAILED,ie.LEADER_CONFLICT,ie.FOLLOWER_CONFLICT,ie.USER_CONFLICT,ie.SESSION_ALREADY_ENDED,ie.ROOM_ID_MISSING,ie.AUTH_PAYLOAD_MISSING,ie.START_URL_INVALID,ie.END_ROOM,ie.DESTROY_DEACTIVE_ROOM,ie.DESTROY_SLEEP_ROOM,ie.NO_OTHER_ACTIVE_USER,ie.RECORD_ALREADY_ENDED,ie.REACHED_LEADER_LIMIT,ie.REACHED_FOLLOWER_LIMIT,ie.SESSION_ALREADY_ENDED,ie.END_ROOM,ie.DESTROY_DEACTIVE_ROOM;var re,ae,se,le,ce={};_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(ce,ie.LEAVE_ROOM,"normal leave"),ie.DISCONNECTED,"user disconnected"),ie.WEB_REPORT_REGION_FAILED,"report region failed"),ie.WEB_REPORT_REGION_NOT_MATCH,"report region not match"),ie.WEB_REPORT_USER_JOIN_EMPTY,"report user join status empty result"),ie.WEB_REPORT_USER_JOIN_FAILED,"report user join status failed"),ie.WEB_REPORT_USER_JOIN_EMPTY_USER,"report user join response have no current user info"),ie.AUTH_CONFLICT,"auth is already consumed once"),ie.AUTH_VERIFY_FAILED,"auth payload is denyed"),ie.AUTH_DB_QUERY_ERROR,"get auth from redis failed"),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(ce,ie.AUTH_USER_ID_VERIFY_FAILED,"sub channel user_id verify failed"),ie.AUTH_USER_ID_NO_EXIST,"main channel user_id not exist"),ie.ROOM_NOT_EXIST,"room not exist or create failed"),ie.ROOM_ADD_USER_FAILED,"room add new user failed"),ie.LEADER_CONFLICT,"leader already exist"),ie.FOLLOWER_CONFLICT,"follower already exist"),ie.ROOM_DEPRECATED,"room is deprecated"),ie.SAME_LEADER_JOINED,"leader with the same user_id joined the room"),ie.USER_CONFLICT,"user conflict"),ie.SESSION_ALREADY_ENDED,"room is already ended"),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(ce,ie.ROOM_ID_MISSING,"room id is required"),ie.AUTH_PAYLOAD_MISSING,"auth payload is required"),ie.START_URL_INVALID,"startUrl is invalid"),ie.SERVER_RESTARTED,"server restarted"),ie.WSSGW_REMOVE_NODE,"wssgw node instance removed"),ie.META_DATA_INVALID,"message meta data invalid"),ie.WSSGW_INSTANCE_NOT_FOUND,"wssgw instance not found"),ie.END_ROOM,"The user actively clicked \'end\'."),ie.DESTROY_DEACTIVE_ROOM,"The session ended automatically because there was only 1 user present for 3 minutes."),ie.DESTROY_SLEEP_ROOM,"The session ended automatically due to no user activity in the session for 5 minutes."),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(ce,ie.NO_OTHER_ACTIVE_USER,"no other active user in this meeting except record virtual user"),ie.RECORD_ALREADY_ENDED,"record already ended"),ie.RECORD_START_FAILED,"record start failed"),ie.REACHED_LEADER_LIMIT,"the number of leaders has reached the limit"),ie.REACHED_FOLLOWER_LIMIT,"the number of followers has reached the limit"),function(e){e[e.RECORD_LEGAL_CONSENT=0]="RECORD_LEGAL_CONSENT"}(re||(re={})),function(e){e[e.ACTIVE=0]="ACTIVE",e[e.PASSIVE=1]="PASSIVE",e[e.REJECT=2]="REJECT"}(ae||(ae={})),function(e){e[e.ALL_PING_FAILED=10001]="ALL_PING_FAILED",e[e.REFRESH_PIN_CODE_FAILED=10002]="REFRESH_PIN_CODE_FAILED",e[e.EMPTY_PING_LIST=10003]="EMPTY_PING_LIST",e[e.SESSION_START_FAILED=10004]="SESSION_START_FAILED",e[e.SESSION_END_FAILED=10005]="SESSION_END_FAILED",e[e.SESSION_CREATE_FAILED=10006]="SESSION_CREATE_FAILED",e[e.PARTICIPANT_TYPE_ERROR=10007]="PARTICIPANT_TYPE_ERROR",e[e.CONNECT_SERVER_FAILED=10008]="CONNECT_SERVER_FAILED",e[e.CREATE_CHANNEL_FAILED=10009]="CREATE_CHANNEL_FAILED",e[e.SESSION_CONNECTING=10010]="SESSION_CONNECTING",e[e.SESSION_ID_NOT_FOUND=10011]="SESSION_ID_NOT_FOUND",e[e.SESSION_PERSISTING=10014]="SESSION_PERSISTING",e[e.SOCKET_RECONNECT_FAILED=10020]="SOCKET_RECONNECT_FAILED",e[e.SOCKET_FAIL_OVER_FAILED=10021]="SOCKET_FAIL_OVER_FAILED",e[e.DUPLICATE_SESSION=10023]="DUPLICATE_SESSION",e[e.FRAME_LEVEL_NOT_READY=10025]="FRAME_LEVEL_NOT_READY",e[e.SDK_VERSION_NOT_MATCH=10026]="SDK_VERSION_NOT_MATCH",e[e.SESSION_CANCELING=10027]="SESSION_CANCELING",e[e.UNKNOWN_SERVICE_EXCEPTION=19999]="UNKNOWN_SERVICE_EXCEPTION"}(se||(se={})),function(e){e[e.CONNECT_TIMEOUT_FAILED=10012]="CONNECT_TIMEOUT_FAILED",e[e.OTHER_SIDE_RECONNECT_TIMEOUT_FAILED=10013]="OTHER_SIDE_RECONNECT_TIMEOUT_FAILED",e[e.USER_EXIT_BEFORE_SESSION=10022]="USER_EXIT_BEFORE_SESSION"}(le||(le={}));var ue="Create channel failed.",he="Create session failed.",de="End session failed.",fe="Pin code update failed",pe="Start session failed.",ge="Session connecting.",me="Session persisting.",ve="Session canceling.",ye="Session id not found.",be="Session connect timeout.",_e="Session already exists.",ke="Unknown Service Exception.",we="SDK version not match.",Se=(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(r={},se.ALL_PING_FAILED,he),se.EMPTY_PING_LIST,he),se.SESSION_CREATE_FAILED,he),se.FRAME_LEVEL_NOT_READY,he),se.PARTICIPANT_TYPE_ERROR,pe),se.REFRESH_PIN_CODE_FAILED,fe),se.SESSION_START_FAILED,pe),se.SESSION_END_FAILED,de),se.SESSION_ID_NOT_FOUND,ye),se.CONNECT_SERVER_FAILED,ue),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(r,se.CREATE_CHANNEL_FAILED,ue),se.SESSION_CONNECTING,ge),se.SESSION_PERSISTING,me),se.SESSION_CANCELING,ve),se.UNKNOWN_SERVICE_EXCEPTION,ke),se.SOCKET_RECONNECT_FAILED,ue),se.SOCKET_FAIL_OVER_FAILED,ue),se.DUPLICATE_SESSION,_e),se.SDK_VERSION_NOT_MATCH,we));_defineProperty2({},le.CONNECT_TIMEOUT_FAILED,be);var Ce,Ee="The user actively clicked \'end\'.",Te="normal",Oe="user disconnected",je="customer already exist",xe="agent already exist",Re="get auth from redis failed",Ie="auth payload is denyed",Ae="auth is already used",De="room id is invalid",Ne="room not exist or create failed",Pe="room add new user failed",Le="server restarted",Me="wssgw node instance removed",ze="The session ended automatically because there was only 1 user present for 3 minutes.",Fe="The session ended automatically due to no user activity in the session for 5 minutes.",Be="user conflict",Ue="meta data invalid",Ve="wssgw instance not found",We="the number of customers has reached the limit",Ge="the number of agents has reached the limit",He={RECORD_START_FAILED:29e3,RECORD_STOP_FAILED:29001,RECORD_PAUSE_FAILED:29002,RECORD_RESUME_FAILED:29003},Ye={};_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Ye,ie.DISCONNECTED,Oe),ie.END_ROOM,Ee),ie.LEAVE_ROOM,Te),ie.LEADER_CONFLICT,je),ie.FOLLOWER_CONFLICT,xe),ie.AUTH_DB_QUERY_ERROR,Re),ie.AUTH_VERIFY_FAILED,Ie),ie.AUTH_CONFLICT,Ae),ie.ROOM_ID_MISSING,De),ie.ROOM_NOT_EXIST,Ne),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Ye,ie.ROOM_ADD_USER_FAILED,Pe),ie.SERVER_RESTARTED,Le),ie.WSSGW_REMOVE_NODE,Me),ie.DESTROY_DEACTIVE_ROOM,ze),ie.DESTROY_SLEEP_ROOM,Fe),ie.USER_CONFLICT,Be),ie.META_DATA_INVALID,Ue),ie.WSSGW_INSTANCE_NOT_FOUND,Ve),ie.REACHED_LEADER_LIMIT,We),ie.REACHED_FOLLOWER_LIMIT,Ge),function(e){e[e.UNKNOWN=-1]="UNKNOWN",e[e.INVALID_TOKEN=124]="INVALID_TOKEN",e[e.NO_PERMISSION=125]="NO_PERMISSION",e[e.LOCKED=126]="LOCKED",e[e.INVALID_TOKEN_MAX=127]="INVALID_TOKEN_MAX",e[e.INVALID_TOKEN_3=129]="INVALID_TOKEN_3",e[e.INVALID_TOKEN_4=401]="INVALID_TOKEN_4",e[e.NETWORK_ERROR=10016]="NETWORK_ERROR",e[e.PROVIDE_DATA=30100]="PROVIDE_DATA",e[e.TOKEN_EXPIRED=30101]="TOKEN_EXPIRED",e[e.INVALID_BUSINESS_TYPE=30102]="INVALID_BUSINESS_TYPE",e[e.INVALID_RECORDING_ID=30103]="INVALID_RECORDING_ID",e[e.MISSING_FIELD=30104]="MISSING_FIELD",e[e.INVALID_SDK_CDN_URL=30108]="INVALID_SDK_CDN_URL",e[e.INACTIVE_SDK_VERSION=30109]="INACTIVE_SDK_VERSION",e[e.SEARCH_ERROR=30200]="SEARCH_ERROR",e[e.INVALID_BUSINESS_TYPE2=30201]="INVALID_BUSINESS_TYPE2",e[e.APPKEY_NOT_FOUND=30202]="APPKEY_NOT_FOUND",e[e.FILE_SERVER_ERROR=30203]="FILE_SERVER_ERROR",e[e.FILE_SERVICE_ERROR=30204]="FILE_SERVICE_ERROR",e[e.FILE_SERVICE_ERROR2=30205]="FILE_SERVICE_ERROR2",e[e.SESSION_NOT_FOUND=30300]="SESSION_NOT_FOUND",e[e.INVALID_START_TIME=30301]="INVALID_START_TIME",e[e.INVALID_ACTION=30302]="INVALID_ACTION",e[e.INVALID_REGION=30303]="INVALID_REGION",e[e.INVALID_TOKEN2=30304]="INVALID_TOKEN2",e[e.EXCEEDED_FAILED=30305]="EXCEEDED_FAILED",e[e.INVALID_END_TIME=30306]="INVALID_END_TIME",e[e.PIN_CODE_ERROR=30307]="PIN_CODE_ERROR",e[e.PIN_CODE_NOT_FOUND=30308]="PIN_CODE_NOT_FOUND",e[e.PIN_CODE_EXPIRED=30309]="PIN_CODE_EXPIRED",e[e.PIN_CODE_NOT_READY=30310]="PIN_CODE_NOT_READY",e[e.PIN_CODE_INVALID=30311]="PIN_CODE_INVALID",e[e.PIN_CODE_IS_REQUIRED=30315]="PIN_CODE_IS_REQUIRED",e[e.PIN_CODE_HAS_BEEN_USED=30316]="PIN_CODE_HAS_BEEN_USED",e[e.SERVER_ERROR1=30400]="SERVER_ERROR1",e[e.SERVER_ERROR2=30401]="SERVER_ERROR2",e[e.SERVER_ERROR3=30402]="SERVER_ERROR3",e[e.SERVER_ERROR4=30403]="SERVER_ERROR4"}(Ce||(Ce={}));var Xe,Ke="Service exception.",qe="Invalid token.",Je="Invalid pincode.",Ze="No permission.",$e="Invalid business type.",Qe="App Key not found.",et="Session not found.",tt="Pincode is required.",nt="Pincode has been used.",it="Network error.",ot="Invalid sdk cdn url.",rt="Inactive sdk version.",at=(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(a={},Ce.INVALID_TOKEN,qe),Ce.INVALID_TOKEN_MAX,qe),Ce.TOKEN_EXPIRED,qe),Ce.INVALID_TOKEN2,qe),Ce.INVALID_TOKEN_3,qe),Ce.INVALID_TOKEN_4,qe),Ce.PIN_CODE_ERROR,Je),Ce.PIN_CODE_NOT_FOUND,Je),Ce.PIN_CODE_EXPIRED,Je),Ce.PIN_CODE_NOT_READY,Je),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(a,Ce.PIN_CODE_INVALID,Je),Ce.NO_PERMISSION,Ze),Ce.APPKEY_NOT_FOUND,Qe),Ce.SESSION_NOT_FOUND,et),Ce.PIN_CODE_IS_REQUIRED,tt),Ce.PIN_CODE_HAS_BEEN_USED,nt),Ce.INVALID_BUSINESS_TYPE2,$e),Ce.INVALID_BUSINESS_TYPE,$e),Ce.UNKNOWN,Ke),Ce.LOCKED,Ke),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(a,Ce.PROVIDE_DATA,Ke),Ce.INVALID_RECORDING_ID,Ke),Ce.MISSING_FIELD,Ke),Ce.INVALID_SDK_CDN_URL,ot),Ce.INACTIVE_SDK_VERSION,rt),Ce.SEARCH_ERROR,Ke),Ce.FILE_SERVER_ERROR,Ke),Ce.FILE_SERVICE_ERROR,Ke),Ce.FILE_SERVICE_ERROR2,Ke),Ce.INVALID_START_TIME,Ke),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(a,Ce.INVALID_ACTION,Ke),Ce.INVALID_REGION,Ke),Ce.EXCEEDED_FAILED,Ke),Ce.INVALID_END_TIME,Ke),Ce.SERVER_ERROR1,Ke),Ce.SERVER_ERROR2,Ke),Ce.SERVER_ERROR3,Ke),Ce.SERVER_ERROR4,Ke),Ce.NETWORK_ERROR,it));!function(e){e[e.CANCEL_END_ROOM=1]="CANCEL_END_ROOM",e[e.CANCEL_LEAVE_ROOM=2]="CANCEL_LEAVE_ROOM"}(Xe||(Xe={}));var st,lt,ct,ut,ht="Canceled and ended session.",dt="Canceled and left session.";_defineProperty2(_defineProperty2({},Xe.CANCEL_END_ROOM,ht),Xe.CANCEL_LEAVE_ROOM,dt),function(e){e.Cookies="cookie",e.LocalStorage="localStorage",e.SessionStorage="sessionStorage",e.All="all"}(st||(st={})),function(e){e.CustomerFloatingToolbar="customerFloatingToolbar",e.CustomerFloatingToolbarIcon="customerFloatingToolbarIcon",e.CustomerFloatingToolbarText="customerFloatingToolbarText",e.CustomerFloatingToolbarButton="customerFloatingToolbarButton",e.CustomerFloatingToolbarButtonPrefixIcon="customerFloatingToolbarButtonPrefixIcon",e.CustomerScreenBorder="customerScreenBorder",e.CustomerAnnotationToolbarMouseButton="customerAnnotationToolbarMouseButton",e.CustomerAnnotationToolbarVanishingPenButton="customerAnnotationToolbarVanishingPenButton",e.CustomerAnnotationToolbarPenButton="customerAnnotationToolbarPenButton",e.CustomerAnnotationToolbarVanishingRectangleButton="customerAnnotationToolbarVanishingRectangleButton",e.CustomerAnnotationToolbarRectangleButton="customerAnnotationToolbarRectangleButton",e.CustomerAnnotationToolbarEraserButton="customerAnnotationToolbarEraserButton",e.CustomerAnnotationToolbarColorButton="customerAnnotationToolbarColorButton",e.CustomerAnnotationToolbarClearButton="customerAnnotationToolbarClearButton",e.CustomerAnnotationToolbarCloseButton="customerAnnotationToolbarCloseButton",e.CustomerAnnotationToolbarOpenButton="customerAnnotationToolbarOpenButton",e.CustomerJoinSessionDialogOverall="customerJoinSessionDialogOverall",e.CustomerJoinSessionDialogTitle="customerJoinSessionDialogTitle",e.CustomerJoinSessionDialogTitleContent="customerJoinSessionDialogTitleContent",e.CustomerJoinSessionDialogTitleIcon="customerJoinSessionDialogTitleIcon",e.CustomerJoinSessionDialogTopRightCloseButton="customerJoinSessionDialogTopRightCloseButton",e.CustomerJoinSessionDialogLoadingPinCodeIcon="customerJoinSessionDialogLoadingPinCodeIcon",e.CustomerJoinSessionDialogPinCodeTipText="customerJoinSessionDialogPinCodeTipText",e.CustomerJoinSessionDialogPinCodeContent="customerJoinSessionDialogPinCodeContent",e.CustomerJoinSessionDialogFooterContainer="customerJoinSessionDialogFooterContainer",e.CustomerJoinSessionDialogCancelButton="customerJoinSessionDialogCancelButton",e.CustomerEndSessionDialogOverall="customerEndSessionDialogOverall",e.CustomerEndSessionDialogTitleContainer="customerEndSessionDialogTitleContainer",e.CustomerEndSessionDialogContentContainer="customerEndSessionDialogContentContainer",e.CustomerEndSessionDialogFooterContainer="customerEndSessionDialogFooterContainer",e.CustomerEndSessionDialogTitleContent="customerEndSessionDialogTitleContent",e.CustomerEndSessionDialogTitleIcon="customerEndSessionDialogTitleIcon",e.CustomerEndSessionDialogTextContent="customerEndSessionDialogTextContent",e.CustomerEndSessionDialogTopRightCloseButton="customerEndSessionDialogTopRightCloseButton",e.CustomerEndSessionDialogCancelButton="customerEndSessionDialogCancelButton",e.CustomerEndSessionDialogEndSessionButton="customerEndSessionDialogEndSessionButton",e.CustomerReconnectDialogOverall="customerReconnectDialogOverall",e.CustomerReconnectDialogContentContainer="customerReconnectDialogContentContainer",e.CustomerReconnectDialogFooterContainer="customerReconnectDialogFooterContainer",e.CustomerReconnectDialogLoadingIcon="customerReconnectDialogLoadingIcon",e.CustomerReconnectDialogTextContent="customerReconnectDialogTextContent",e.CustomerReconnectDialogCloseButton="customerReconnectDialogCloseButton",e.CustomerReconnectDialogCloseButtonPrefixIcon="customerReconnectDialogCloseButtonPrefixIcon",e.CustomerConnectDialogOverall="customerConnectDialogOverall",e.CustomerConnectDialogContentContainer="customerConnectDialogContentContainer",e.CustomerConnectDialogFooterContainer="customerConnectDialogFooterContainer",e.CustomerConnectDialogLoadingIcon="customerConnectDialogLoadingIcon",e.CustomerConnectDialogTextContent="customerConnectDialogTextContent",e.CustomerConnectDialogCloseButton="customerConnectDialogCloseButton",e.CustomerConnectDialogCloseButtonPrefixIcon="customerConnectDialogCloseButtonPrefixIcon",e.CustomerJoinFailedDialogOverall="customerJoinFailedDialogOverall",e.CustomerJoinFailedDialogTitleContainer="customerJoinFailedDialogTitleContainer",e.CustomerJoinFailedDialogContentContainer="customerJoinFailedDialogContentContainer",e.CustomerJoinFailedDialogFooterContainer="customerJoinFailedDialogFooterContainer",e.CustomerJoinFailedDialogTitleContent="customerJoinFailedDialogTitleContent",e.CustomerJoinFailedDialogTitleIcon="customerJoinFailedDialogTitleIcon",e.CustomerJoinFailedDialogTextContent="customerJoinFailedDialogTextContent",e.CustomerJoinFailedDialogTextSecondaryContent="customerJoinFailedDialogTextSecondaryContent",e.CustomerJoinFailedDialogOkButton="customerJoinFailedDialogOkButton",e.CustomerTransferFailedTitleContent="CustomerTransferFailedTitleContent",e.CustomerTransferFailedTextSecondaryContent="CustomerTransferFailedTextSecondaryContent",e.CustomerTransferFailedOkButton="CustomerTransferFailedOkButton",e.CustomerReconnectFailedDialogOverall="customerReconnectFailedDialogOverall",e.CustomerReconnectFailedDialogTitleContainer="customerReconnectFailedDialogTitleContainer",e.CustomerReconnectFailedDialogContentContainer="customerReconnectFailedDialogContentContainer",e.CustomerReconnectFailedDialogFooterContainer="customerReconnectFailedDialogFooterContainer",e.CustomerReconnectFailedDialogTitleContent="customerReconnectFailedDialogTitleContent",e.CustomerReconnectFailedDialogTitleIcon="customerReconnectFailedDialogTitleIcon",e.CustomerReconnectFailedDialogTextContent="customerReconnectFailedDialogTextContent",e.CustomerReconnectFailedDialogTextSecondaryContent="customerReconnectFailedDialogTextSecondaryContent",e.CustomerReconnectFailedDialogOkButton="customerReconnectFailedDialogOkButton",e.CustomerReconnectTimeoutDialogOverall="customerReconnectTimeoutDialogOverall",e.CustomerReconnectTimeoutDialogTitleContainer="customerReconnectTimeoutDialogTitleContainer",e.CustomerReconnectTimeoutDialogContentContainer="customerReconnectTimeoutDialogContentContainer",e.CustomerReconnectTimeoutDialogFooterContainer="customerReconnectTimeoutDialogFooterContainer",e.CustomerReconnectTimeoutDialogTitleContent="customerReconnectTimeoutDialogTitleContent",e.CustomerReconnectTimeoutDialogTitleIcon="customerReconnectTimeoutDialogTitleIcon",e.CustomerReconnectTimeoutDialogTextContent="customerReconnectTimeoutDialogTextContent",e.CustomerReconnectTimeoutDialogTextSecondaryContent="customerReconnectTimeoutDialogTextSecondaryContent",e.CustomerReconnectTimeoutDialogOkButton="customerReconnectTimeoutDialogOkButton",e.CustomerReconnectTimeoutDialogTopRightCloseButton="customerReconnectTimeoutDialogTopRightCloseButton",e.CustomerDisconnectDialogOverall="customerDisconnectDialogOverall",e.CustomerDisconnectDialogContentContainer="customerDisconnectDialogContentContainer",e.CustomerDisconnectDialogFooterContainer="customerDisconnectDialogFooterContainer",e.CustomerDisconnectDialogLoadingIcon="customerDisconnectDialogLoadingIcon",e.CustomerDisconnectDialogFirstLineTextContent="customerDisconnectDialogFirstLineTextContent",e.CustomerDisconnectDialogSecondLineTextContent="customerDisconnectDialogSecondLineTextContent",e.CustomerDisconnectDialogPinCode="customerDisconnectDialogPinCode",e.CustomerDisconnectDialogEndButton="customerDisconnectDialogCloseButton",e.CustomerDisconnectDialogEndButtonPrefixIcon="customerDisconnectDialogCloseButtonPrefixIcon",e.CustomerToastSuccessPrefixIcon="customerToastSuccessPrefixIcon",e.CustomerToastSuccessWrapper="customerToastSuccessWrapper",e.CustomerToastErrorPrefixIcon="customerToastErrorPrefixIcon",e.CustomerToastErrorWrapper="customerToastErrorWrapper",e.CustomerToastWarningPrefixIcon="customerToastWarningPrefixIcon",e.CustomerToastWarningWrapper="customerToastWarningWrapper",e.CustomerToastDefaultPrefixIcon="customerToastDefaultPrefixIcon",e.CustomerToastDefaultWrapper="customerToastDefaultWrapper",e.CustomerToastInfoPrefixIcon="customerToastInfoPrefixIcon",e.CustomerToastInfoWrapper="customerToastInfoWrapper",e.AgentToolbarVerticalWrapper="agentToolbarVerticalWrapper",e.AgentToolbarHorizontalWrapper="agentToolbarHorizontalWrapper",e.AgentToolbarAllowRotation="agentToolbarAllowRotation",e.AgentToolbarDefaultVertical="agentToolbarDefaultVertical",e.AgentToolbarVerticalNormalBtnsWrapper="agentToolbarVerticalNormalBtnsWrapper",e.AgentToolbarHorizontalNormalBtnsWrapper="agentToolbarHorizontalNormalBtnsWrapper",e.AgentToolbarButtonCommon="agentToolbarButtonCommon",e.AgentToolbarButtonActiveCommon="agentToolbarButtonActiveCommon",e.AgentToolbarTooltipCommon="agentToolbarTooltipCommon",e.AgentToolbarVerticalDivider="agentToolbarVerticalDivider",e.AgentToolbarHorizontalDivider="agentToolbarHorizontalDivider",e.AgentToolbarZoomInButton="agentToolbarZoomInButton",e.AgentToolbarZoomInIcon="agentToolbarZoomInIcon",e.AgentToolbarZoomOutButton="agentToolbarZoomOutButton",e.AgentToolbarZoomOutIcon="agentToolbarZoomOutIcon",e.AgentToolbarZoomMenuButton="agentToolbarZoomMenuButton",e.AgentToolbarZoomMenuIcon="agentToolbarZoomMenuIcon",e.AgentToolbarFullScreenButton="agentToolbarFullScreenButton",e.AgentToolbarFullScreenIcon="agentToolbarFullScreenIcon",e.AgentToolbarExitFullScreenButton="agentToolbarExitFullScreenButton",e.AgentToolbarExitFullScreenIcon="agentToolbarExitFullScreenIcon",e.AgentToolbarVanishingPenButton="agentToolbarVanishingPenButton",e.AgentToolbarVanishingPenIcon="agentToolbarVanishingPenIcon",e.AgentToolbarPenButton="agentToolbarPenButton",e.AgentToolbarPenIcon="agentToolbarPenIcon",e.AgentToolbarEndSessionButton="agentToolbarEndSessionButton",e.AgentToolbarEndSessionIcon="agentToolbarEndSessionIcon",e.AgentToolbarRemoteAssistIcon="agentToolbarRemoteAssistIcon",e.AgentVanishingPenSubMenuVerticalWrapper="agentVanishingPenSubMenuVerticalWrapper",e.AgentVanishingPenSubMenuHorizontalWrapper="agentVanishingPenSubMenuHorizontalWrapper",e.AgentVanishingPenSubMenuButtonCommon="agentVanishingPenSubMenuButtonCommon",e.AgentVanishingPenMenuButtonActiveCommon="agentVanishingPenSubMenuButtonActiveCommon",e.AgentVanishingPenSubMenuMouseButton="agentVanishingPenSubMenuMouseButton",e.AgentVanishingPenSubMenuMouseIcon="agentVanishingPenSubMenuMouseIcon",e.AgentVanishingPenSubMenuVanishingPenButton="agentVanishingPenSubMenuVanishingPenButton",e.AgentVanishingPenSubMenuVanishingPenIcon="agentVanishingPenSubMenuVanishingPenIcon",e.AgentVanishingPenSubMenuVanishingRectangleButton="agentVanishingPenSubMenuVanishingRectangleButton",e.AgentVanishingPenSubMenuVanishingRectangleIcon="agentVanishingPenSubMenuVanishingRectangleIcon",e.AgentVanishingPenSubMenuVanishingColorButton="agentVanishingPenSubMenuVanishingColorButton",e.AgentVanishingPenSubMenuVanishingColorIcon="agentVanishingPenSubMenuVanishingColorIcon",e.AgentPenAnnotationSubMenuVerticalWrapper="agentPenAnnotationSubMenuVerticalWrapper",e.AgentPenAnnotationSubMenuHorizontalWrapper="agentPenAnnotationSubMenuHorizontalWrapper",e.AgentPenAnnotationSubMenuButtonCommon="agentPenAnnotationSubMenuButtonCommon",e.AgentPenAnnotationSubMenuButtonActiveCommon="agentPenAnnotationSubMenuButtonActiveCommon",e.AgentPenAnnotationSubMenuMouseButton="agentPenAnnotationSubMenuMouseButton",e.AgentPenAnnotationSubMenuMouseIcon="agentPenAnnotationSubMenuMouseIcon",e.AgentPenAnnotationSubMenuPenButton="agentPenAnnotationSubMenuPenButton",e.AgentPenAnnotationSubMenuPenIcon="agentPenAnnotationSubMenuPenIcon",e.AgentPenAnnotationSubMenuRectangleButton="agentPenAnnotationSubMenuRectangleButton",e.AgentPenAnnotationSubMenuRectangleIcon="agentPenAnnotationSubMenuRectangleIcon",e.AgentPenAnnotationSubMenuEraserButton="agentPenAnnotationSubMenuEraserButton",e.AgentPenAnnotationSubMenuEraserIcon="agentPenAnnotationSubMenuEraserIcon",e.AgentPenAnnotationSubMenuColorButton="agentPenAnnotationSubMenuColorButton",e.AgentPenAnnotationSubMenuColorIcon="agentPenAnnotationSubMenuColorIcon",e.AgentPenAnnotationSubMenuUndoButton="agentPenAnnotationSubMenuUndoButton",e.AgentPenAnnotationSubMenuUndoIcon="agentPenAnnotationSubMenuUndoIcon",e.AgentPenAnnotationSubMenuRedoButton="agentPenAnnotationSubMenuRedoButton",e.AgentPenAnnotationSubMenuRedoIcon="agentPenAnnotationSubMenuRedoIcon",e.AgentPenAnnotationSubMenuClearButton="agentPenAnnotationSubMenuClearButton",e.AgentPenAnnotationSubMenuClearIcon="agentPenAnnotationSubMenuClearIcon",e.AgentPenSubMenuVerticalWrapper="agentPenSubMenuVerticalWrapper",e.AgentPenSubMenuHorizontalWrapper="agentPenSubMenuHorizontalWrapper",e.AgentPenSubMenuButtonCommon="agentPenSubMenuButtonCommon",e.AgentPenSubMenuButtonActiveCommon="agentPenSubMenuButtonActiveCommon",e.AgentPenSubMenuDrawText="agentPenSubMenuDrawText",e.AgentPenSubMenuLineWidthText="agentPenSubMenuLineWidthText",e.AgentColorSubMenuVerticalWrapper="agentColorSubMenuVerticalWrapper",e.AgentColorSubMenuHorizontalWrapper="agentColorSubMenuHorizontalWrapper",e.AgentColorSubMenuButtonCommon="agentColorSubMenuButtonCommon",e.AgentColorSubMenuActiveButtonCommon="agentColorSubMenuActiveButtonCommon",e.AgentZoomInOutMenuVerticalWrapper="agentZoomInOutMenuVerticalWrapper",e.AgentZoomInOutMenuHorizontalWrapper="agentZoomInOutMenuHorizontalWrapper",e.AgentZoomInOutMenuRoot="agentZoomInOutMenuRoot",e.AgentZoomInOutMenuItem="agentZoomInOutMenuItem",e.AgentZoomInOutMenuItemFitToWindow="agentZoomInOutMenuItemFitToWindow",e.AgentZoomInOutMenuItemActualSize="agentZoomInOutMenuItemActualSize",e.AgentSingleAgentEndSessionDialogOverall="agentSingleAgentEndSessionDialogOverall",e.AgentSingleAgentEndSessionDialogTitleContainer="agentSingleAgentEndSessionDialogTitleContainer",e.AgentSingleAgentEndSessionDialogContentContainer="agentSingleAgentEndSessionDialogContentContainer",e.AgentSingleAgentEndSessionDialogFooterContainer="agentSingleAgentEndSessionDialogFooterContainer",e.AgentSingleAgentEndSessionDialogTitleIcon="agentSingleAgentEndSessionDialogTitleIcon",e.AgentSingleAgentEndSessionDialogTitleContent="agentSingleAgentEndSessionDialogTitleContent",e.AgentSingleAgentEndSessionDialogTextContent="agentSingleAgentEndSessionDialogTextContent",e.AgentSingleAgentEndSessionDialogTopRightCloseButton="agentSingleAgentEndSessionDialogTopRightCloseButton",e.AgentSingleAgentEndSessionDialogCancelButton="agentSingleAgentEndSessionDialogCancelButton",e.AgentSingleAgentEndSessionDialogEndSessionButton="agentSingleAgentEndSessionDialogEndSessionButton",e.AgentMultiAgentsEndSessionDialogOverall="agentMultiAgentsEndSessionDialogOverall",e.AgentMultiAgentsEndSessionDialogTitleContainer="agentMultiAgentsEndSessionDialogTitleContainer",e.AgentMultiAgentsEndSessionDialogContentContainer="agentMultiAgentsEndSessionDialogContentContainer",e.AgentMultiAgentsEndSessionDialogFooterContainer="agentMultiAgentsEndSessionDialogFooterContainer",e.AgentMultiAgentsEndSessionDialogTitleIcon="agentMultiAgentsEndSessionDialogTitleIcon",e.AgentMultiAgentsEndSessionDialogTitleContent="agentMultiAgentsEndSessionDialogTitleContent",e.AgentMultiAgentsEndSessionDialogTextContent="agentMultiAgentsEndSessionDialogTextContent",e.AgentMultiAgentsEndSessionDialogTopRightCloseButton="agentMultiAgentsEndSessionDialogTopRightCloseButton",e.AgentMultiAgentsEndSessionDialogCancelButton="agentMultiAgentsEndSessionDialogCancelButton",e.AgentMultiAgentsEndSessionDialogLeaveSessionButton="agentMultiAgentsEndSessionDialogLeaveSessionButton",e.AgentMultiAgentsEndSessionDialogEndSessionButton="agentMultiAgentsEndSessionDialogEndSessionButton",e.AgentJoinFailedDialogOverall="agentJoinFailedDialogOverall",e.AgentJoinFailedDialogTitleContainer="agentJoinFailedDialogTitleContainer",e.AgentJoinFailedDialogContentContainer="agentJoinFailedDialogContentContainer",e.AgentJoinFailedDialogFooterContainer="agentJoinFailedDialogFooterContainer",e.AgentJoinFailedDialogTitleIcon="agentJoinFailedDialogTitleIcon",e.AgentJoinFailedDialogTitleContent="agentJoinFailedDialogTitleContent",e.AgentJoinFailedDialogTextContent="agentJoinFailedDialogTextContent",e.AgentJoinFailedDialogTopRightCloseButton="agentJoinFailedDialogTopRightCloseButton",e.AgentJoinFailedDialogOkButton="agentJoinFailedDialogOkButton",e.AgentFloatingPinToolbarWrapper="agentFloatingPinToolbarWrapper",e.AgentFloatingPinToolbarPrefixIcon="agentFloatingPinToolbarPrefixIcon",e.AgentFloatingPinToolbarContentText="agentFloatingPinToolbarContentText",e.AgentFloatingPinToolbarCopyIcon="agentFloatingPinToolbarCopyIcon",e.AgentToastSuccessPrefixIcon="agentToastSuccessPrefixIcon",e.AgentToastSuccessWrapper="agentToastSuccessWrapper",e.AgentToastErrorPrefixIcon="agentToastErrorPrefixIcon",e.AgentToastErrorWrapper="agentToastErrorWrapper",e.AgentToastWarningPrefixIcon="agentToastWarningPrefixIcon",e.AgentToastWarningWrapper="agentToastWarningWrapper",e.AgentToastDefaultPrefixIcon="agentToastDefaultPrefixIcon",e.AgentToastDefaultWrapper="agentToastDefaultWrapper",e.AgentToastInfoPrefixIcon="agentToastInfoPrefixIcon",e.AgentToastInfoWrapper="agentToastInfoWrapper"}(lt||(lt={})),function(e){e.SESSION_PRE_INIT="session_pre_init",e.SESSION_JOINED="session_joined",e.SESSION_LEFT="session_left",e.SESSION_ENDED="session_ended",e.SESSION_ERROR="session_error"}(ct||(ct={})),ct.SESSION_PRE_INIT,ct.SESSION_JOINED,ct.SESSION_LEFT,ct.SESSION_ENDED,ct.SESSION_ERROR,function(e){e.SEND_SESSION_OPTIONS="send_session_options"}(ut||(ut={})),ut.SEND_SESSION_OPTIONS;function ft(e,t){var n={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(n[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(i=Object.getOwnPropertySymbols(e);o<i.length;o++)t.indexOf(i[o])<0&&Object.prototype.propertyIsEnumerable.call(e,i[o])&&(n[i[o]]=e[i[o]])}return n}function pt(e,t,n,i){return new(n||(n=Promise))((function(o,r){function a(e){try{l(i.next(e))}catch(e){r(e)}}function s(e){try{l(i.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((i=i.apply(e,t||[])).next())}))}function gt(){}function mt(){mt.init.call(this)}function vt(e){return void 0===e._maxListeners?mt.defaultMaxListeners:e._maxListeners}function yt(e,t,n,i){var o,r,a,s;if("function"!=typeof n)throw new TypeError(\'"listener" argument must be a function\');if((r=e._events)?(r.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),r=e._events),a=r[t]):(r=e._events=new gt,e._eventsCount=0),a){if("function"==typeof a?a=r[t]=i?[n,a]:[a,n]:i?a.unshift(n):a.push(n),!a.warned&&(o=vt(e))&&o>0&&a.length>o){a.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+t+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=a.length,s=l,"function"==typeof console.warn?console.warn(s):console.log(s)}}else a=r[t]=n,++e._eventsCount;return e}function bt(e,t,n){var i=!1;function o(){e.removeListener(t,o),i||(i=!0,n.apply(e,arguments))}return o.listener=n,o}function _t(e){var t=this._events;if(t){var n=t[e];if("function"==typeof n)return 1;if(n)return n.length}return 0}function kt(e,t){for(var n=new Array(t);t--;)n[t]=e[t];return n}Object.assign(Object.assign({},{createLinearGradient:!0,createRadialGradient:!0,createConicGradient:!0}),{createPattern:!0}),gt.prototype=Object.create(null),mt.EventEmitter=mt,mt.usingDomains=!1,mt.prototype.domain=void 0,mt.prototype._events=void 0,mt.prototype._maxListeners=void 0,mt.defaultMaxListeners=10,mt.init=function(){this.domain=null,mt.usingDomains&&undefined.active,this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=new gt,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},mt.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw new TypeError(\'"n" argument must be a positive number\');return this._maxListeners=e,this},mt.prototype.getMaxListeners=function(){return vt(this)},mt.prototype.emit=function(e){var t,n,i,o,r,a,s,l="error"===e;if(a=this._events)l=l&&null==a.error;else if(!l)return!1;if(s=this.domain,l){if(t=arguments[1],!s){if(t instanceof Error)throw t;var c=new Error(\'Uncaught, unspecified "error" event. (\'+t+")");throw c.context=t,c}return t||(t=new Error(\'Uncaught, unspecified "error" event\')),t.domainEmitter=this,t.domain=s,t.domainThrown=!1,s.emit("error",t),!1}if(!(n=a[e]))return!1;var u="function"==typeof n;switch(i=arguments.length){case 1:!function(e,t,n){if(t)e.call(n);else for(var i=e.length,o=kt(e,i),r=0;r<i;++r)o[r].call(n)}(n,u,this);break;case 2:!function(e,t,n,i){if(t)e.call(n,i);else for(var o=e.length,r=kt(e,o),a=0;a<o;++a)r[a].call(n,i)}(n,u,this,arguments[1]);break;case 3:!function(e,t,n,i,o){if(t)e.call(n,i,o);else for(var r=e.length,a=kt(e,r),s=0;s<r;++s)a[s].call(n,i,o)}(n,u,this,arguments[1],arguments[2]);break;case 4:!function(e,t,n,i,o,r){if(t)e.call(n,i,o,r);else for(var a=e.length,s=kt(e,a),l=0;l<a;++l)s[l].call(n,i,o,r)}(n,u,this,arguments[1],arguments[2],arguments[3]);break;default:for(o=new Array(i-1),r=1;r<i;r++)o[r-1]=arguments[r];!function(e,t,n,i){if(t)e.apply(n,i);else for(var o=e.length,r=kt(e,o),a=0;a<o;++a)r[a].apply(n,i)}(n,u,this,o)}return!0},mt.prototype.addListener=function(e,t){return yt(this,e,t,!1)},mt.prototype.on=mt.prototype.addListener,mt.prototype.prependListener=function(e,t){return yt(this,e,t,!0)},mt.prototype.once=function(e,t){if("function"!=typeof t)throw new TypeError(\'"listener" argument must be a function\');return this.on(e,bt(this,e,t)),this},mt.prototype.prependOnceListener=function(e,t){if("function"!=typeof t)throw new TypeError(\'"listener" argument must be a function\');return this.prependListener(e,bt(this,e,t)),this},mt.prototype.removeListener=function(e,t){var n,i,o,r,a;if("function"!=typeof t)throw new TypeError(\'"listener" argument must be a function\');if(!(i=this._events))return this;if(!(n=i[e]))return this;if(n===t||n.listener&&n.listener===t)0==--this._eventsCount?this._events=new gt:(delete i[e],i.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(o=-1,r=n.length;r-- >0;)if(n[r]===t||n[r].listener&&n[r].listener===t){a=n[r].listener,o=r;break}if(o<0)return this;if(1===n.length){if(n[0]=void 0,0==--this._eventsCount)return this._events=new gt,this;delete i[e]}else!function(e,t){for(var n=t,i=n+1,o=e.length;i<o;n+=1,i+=1)e[n]=e[i];e.pop()}(n,o);i.removeListener&&this.emit("removeListener",e,a||t)}return this},mt.prototype.off=function(e,t){return this.removeListener(e,t)},mt.prototype.removeAllListeners=function(e){var t,n;if(!(n=this._events))return this;if(!n.removeListener)return 0===arguments.length?(this._events=new gt,this._eventsCount=0):n[e]&&(0==--this._eventsCount?this._events=new gt:delete n[e]),this;if(0===arguments.length){for(var i,o=Object.keys(n),r=0;r<o.length;++r)"removeListener"!==(i=o[r])&&this.removeAllListeners(i);return this.removeAllListeners("removeListener"),this._events=new gt,this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(t)do{this.removeListener(e,t[t.length-1])}while(t[0]);return this},mt.prototype.listeners=function(e){var t,n,i=this._events;return n=i&&(t=i[e])?"function"==typeof t?[t.listener||t]:function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(t):[],n},mt.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):_t.call(e,t)},mt.prototype.listenerCount=_t,mt.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};function wt(e){if("object"===("undefined"==typeof window?"undefined":_typeof(window))){var t=encodeURI(e);return btoa(t)}return Buffer.from(e).toString("base64")}var St=function(e){return wt(e)},Ct=function(){function e(t){var n=t.requestOrigin,i=t.parentFrameId;_classCallCheck(this,e),this.parentFrameId=i;var o=St(n);i&&(o=i+"--"+o),this.frameId=o}return _createClass(e,[{key:"equal",value:function(e){var t=e.requestOrigin,n=e.parentFrameId;return n===this.parentFrameId&&this.frameId===n+"--"+St(t)}},{key:"isParentFrame",value:function(e){return this.frameId===e}},{key:"isSubFrame",value:function(e){return this.parentFrameId===e}}]),e}(),Et=function(){function e(t){_classCallCheck(this,e),this.frames=new Map,this.tabId=t}return _createClass(e,[{key:"getFrame",value:function(e){var t=e.requestOrigin,n=e.parentFrameId,i=null;return this.frames.forEach((function(e){e.equal({requestOrigin:t,parentFrameId:n})&&(i=e)})),i}},{key:"checkAddFrame",value:function(e){var t=this,n=e.requestOrigin,i=e.parentFrameId,o=this.getFrame({requestOrigin:n,parentFrameId:i});if(o)return o;if(this.tabId===i)return this.addFrame({requestOrigin:n,parentFrameId:i});var r=null;return this.frames.forEach((function(e){r||e.isParentFrame(i)&&(r=t.addFrame({requestOrigin:n,parentFrameId:i}))})),r}},{key:"getSubFrames",value:function(e){var t=[];return this.frames.forEach((function(n){n.isSubFrame(e)&&t.push(n)})),t}},{key:"addFrame",value:function(e){var t=e.requestOrigin,n=e.parentFrameId,i=new Ct({requestOrigin:t,parentFrameId:n});return this.frames.set(i.frameId,i),i}}]),e}(),Tt=function(){function e(){_classCallCheck(this,e),this.tabs=new Map}return _createClass(e,[{key:"makeRequest",value:function(e){var t=e.requestOrigin,n=e.parentFrameId,i="";return n?(this.tabs.forEach((function(e){if(!i){var o=e.checkAddFrame({requestOrigin:t,parentFrameId:n});o&&(i=o.frameId)}})),i):this.tabs.size?(this.tabs.forEach((function(e,t){i||(i=t)})),i):(i=St(t),this.tabs.set(i,new Et(i)),i)}},{key:"makeViewerRequest",value:function(e){var t=e.parentFrameId,n="";return this.tabs.forEach((function(e){var i;if(t){if(n)return;var o=e.getSubFrames(t);n=(null===(i=o[0])||void 0===i?void 0:i.frameId)||""}else n=e.tabId})),n}}]),e}(),Ot=new(function(){function e(){_classCallCheck(this,e),this.rooms=new Map}return _createClass(e,[{key:"makeRequest",value:function(e){var t=e.roomId,n=e.requestOrigin,i=e.parentFrameId,o=e.isViewer;this.rooms.get(t)||this.rooms.set(t,new Tt);var r=this.rooms.get(t);return r?o?r.makeViewerRequest({parentFrameId:i}):r.makeRequest({requestOrigin:n,parentFrameId:i}):""}}]),e}());"undefined"!=typeof global&&(global.cpsRoomManager=Ot);var jt=function(e,t){return"".concat(e).concat(t)};!function e(t,n){var i={},o=function(){var o=t[r];"string"==typeof o?i[r]=jt(n,o):"function"==typeof o?i[r]=function(){return jt(n,o.apply(void 0,arguments))}:"object"===_typeof(o)&&(o instanceof RegExp||(i[r]=e(o,n)))};for(var r in t)o();return i}({log:{report:"/report-log"},blob:{uploadBlob:"/upload-blob",getBlobUrl:function(e){return"/cps-blob-".concat(e)},getBlobUrlReg:/cps-blob-([^?#\\/]+)/}},"/co-browsing");var xt,Rt=["zcb.zoomdev.us","dev-zcb.zoomdev.us","go-zcb.zoom.us","us01-zcb.zoom.us","eu01-zcb.zoom.us"];!function(e){e.LOCAL="local",e.PROD="prod"}(xt||(xt={}));var It,At,Dt=function(e){try{var t=new URL(e||"");if(Rt.includes(t.hostname))return t.origin+t.pathname}catch(e){console.log("getUrlExcludeDesk: parser url error")}return e};!function(e){e.LEADER="1",e.FOLLOWER="2",e.RECORDER="11"}(It||(It={})),function(e){e.IMG="IMG",e.SOURCE="SOURCE",e.LINK="LINK",e.A="A",e.AUDIO="AUDIO",e.IFRAME="IFRAME",e.FORM="FORM",e.SCRIPT="SCRIPT",e.STYLE="STYLE"}(At||(At={}));var Nt,Pt,Lt;!function(e){e.LEADER="HR",e.FOLLOWER="VR"}(Nt||(Nt={})),new RegExp("(.+)(HTTPS?)/(.+)/".concat("CPS-SEP-FLAG","/(").concat(Nt.FOLLOWER,"|").concat(Nt.LEADER,")")),function(e){e[e.TYPE_UNKNOWN=-1]="TYPE_UNKNOWN",e[e.TYPE_TOP=1]="TYPE_TOP",e[e.TYPE_FRAME=2]="TYPE_FRAME",e[e.TYPE_AUX=3]="TYPE_AUX",e[e.TYPE_SCRIPT=4]="TYPE_SCRIPT",e[e.TYPE_MODULE=5]="TYPE_MODULE",e[e.TYPE_LINK=6]="TYPE_LINK",e[e.TYPE_XHR=7]="TYPE_XHR",e[e.TYPE_RESOURCE=8]="TYPE_RESOURCE",e[e.TYPE_WORKER=9]="TYPE_WORKER",e[e.TYPE_WORKER_SCOPE=10]="TYPE_WORKER_SCOPE",e[e.TYPE_REDIRECT=11]="TYPE_REDIRECT",e[e.TYPE_PAWS=12]="TYPE_PAWS",e[e.TYPE_CONTINUATION=13]="TYPE_CONTINUATION"}(Pt||(Pt={})),function(e){e.UNKNOW="unknow",e.BROWSER="browser",e.BROWSER_WORKER="worker",e.NODE="node",e.NODE_WORKER="node_worker"}(Lt||(Lt={})),function(){var e="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,t="undefined"!=typeof window,n="function"==typeof importScripts,i=e&&!n,o=!e&&!t;n?Lt.BROWSER_WORKER:t?Lt.BROWSER:o?Lt.NODE:i?Lt.NODE_WORKER:Lt.UNKNOW}();var Mt=_createClass((function e(){var t=this;_classCallCheck(this,e),this.promise=new Promise((function(e,n){t.reject=n,t.resolve=e})),this.promise.then((function(e){return t.resolved=!0,e})).catch((function(){t.resolved=!1})).finally((function(){t.finished=!0,t.finishedTimestamp=Date.now()}))}));var zt,Ft=function(){function e(){var t=this;_classCallCheck(this,e),this.iframeMap=new Map,this.readyTabs=[],this._replayBuffer=[],window.Core_Frames&&(window.Core_Frames.forEach((function(e,n){t.iframeMap.set(n,e)})),window.Core_Frames.clear()),window.Core_Frames=this.iframeMap}return _createClass(e,[{key:"bindReadyTab",value:function(e,t){return e.sessionId=t,e.locked=!0,this.bindFrame(t,e.tabId||""),e}},{key:"unbindAllReadyTab",value:function(){this.readyTabs.forEach((function(e){e.sessionId="",e.locked=!1})),this.unbindFrame("")}},{key:"unbindReadyTab",value:function(e){var t="";this.readyTabs.forEach((function(n){n.sessionId===e&&(n.sessionId="",n.locked=!1,t=n.tabId||"")})),this.unbindFrame(t)}},{key:"bindFrame",value:function(e,t){this.iframeMap.forEach((function(t,n){n.sessionId=e}))}},{key:"unbindFrame",value:function(e){this.iframeMap.forEach((function(e,t){t.sessionId=""}))}},{key:"getUnlockedReadyTab",value:function(){var e=this.readyTabs.find((function(e){return!e.locked}));return e||(e={sessionId:"",tabId:"",deffer:new Mt,locked:!1},this.readyTabs.push(e),this.readyTabs.length>1&&console.warn("readyTabs length,".concat(this.readyTabs.length)),e)}},{key:"getReadyTabById",value:function(e){return this.readyTabs.find((function(e){return e.locked}))}},{key:"addFrame",value:function(e,t){var n=this.getReadyTabById(e.tabId||"");n&&(e.sessionId=n.sessionId||""),this.iframeMap.set(e,t),this._checkBuffer()}},{key:"hasFrame",value:function(e){var t=!1;return this.iframeMap.forEach((function(n){n===e&&(t=!0)})),t}},{key:"updateFrame",value:function(e,t){this.iframeMap.forEach((function(n,i){n===e&&Object.assign(i,t)}))}},{key:"_addOrClearBuffer",value:function(e){e&&(this._replayBuffer.push(e),(this._replayBuffer.length<10||this._replayBuffer.length%10==0)&&console.warn("target iframe is not found or not ready, push to replay buffer, total length: ".concat(this._replayBuffer.length)))}},{key:"_checkBuffer",value:function(){var e=this,t=[];this._replayBuffer.forEach((function(n){e.handleInteractionMessage(n,!0)||t.push(n)})),this._replayBuffer=t}},{key:"_isDataBelongToFrame",value:function(e,t){return this._isSubFrame(t)?this._isSubFrame(e)&&e.frameId===t.frameId:!!this._isTab(t)&&this._isDataBelongToTab(e,t)}},{key:"_isSubFrame",value:function(e){return!!e.frameId}},{key:"_isTab",value:function(e){return e.sessionId&&!e.frameId}},{key:"_isDataBelongToTab",value:function(e,t){return this._isTab(e)&&e.sessionId===t.sessionId}},{key:"handleInteractionMessage",value:function(e,t){var n=this;if(!e.sessionId)return console.error("recv message has no sessionId info"),!1;var i=!1;return this.iframeMap.forEach((function(t,o){(e.event.type===z.RemoteControl?n._isDataBelongToFrame(o,e):n._isDataBelongToTab(o,e))&&(i=!0,t.postMessage({eventType:Q.INTERACTION,data:e},o.origin))})),!!i||(t||this._addOrClearBuffer(e),!1)}},{key:"handleRemoteMessage",value:function(e,t){var n=this,i=e.eventType,o=e.data;switch(i){case Q.INTERACTION:this.handleInteractionMessage(o);break;case Q.FULL_SNAPSHOT_REQUEST:if(!o.sessionId)return void console.error("request full snapshot has no sessionId");var r=!1;Array.from(this.iframeMap).sort((function(e,t){return e[0].level-t[0].level})).forEach((function(e){var a=_slicedToArray(e,2),s=a[0],l=a[1];n._isDataBelongToTab(o,s)&&(r=!0,l.postMessage({eventType:i,data:o,batchNo:t},s.origin))})),r||console.error("request full snapshot iframe is not found or not ready");break;case Q.REMOTE_CONTROL_RESPONSE:case Q.REMOTE_CONTROL_GIVE_UP:case Q.REMOTE_CONTROL_TAKE_BACK:case Q.REMOTE_CONTROL_STATUS:case Q.USER_ROSTER:this.iframeMap.forEach((function(e,t){e.postMessage({eventType:i,data:o},t.origin)}));break;case Q.ROOM_ROSTER:break;case Q.END_ROOM:case Q.DISCONNECTED:case Q.LEAVE_ROOM:this.iframeMap.forEach((function(e,t){e.postMessage({eventType:i,data:o},t.origin)}));break;case Q.FLYING_CURSOR:oe[null==o?void 0:o.type]&&this.iframeMap.forEach((function(e,t){e.postMessage({eventType:i,data:o},t.origin)}))}}},{key:"postMessageToIframes",value:function(e){this.iframeMap.forEach((function(t,n){t.postMessage(e,n.origin)}))}}]),e}();!function(e){e.PING="ping",e.PONG="pong",e.PING_PONG_READY="ping_pong_ready",e.PAGE_READY="PAGE_READY",e.START_RECORD="start_record",e.STOP_RECORD="stop_record",e.UPDATE_PAGE_INFO="update_page_info",e.START_REPLAY="start_replay",e.REQUEST_AGENT_CURSOR_INFO="request_agent_cursor_info",e.POST_BACK_TO_FOLLOWER="post_back_to_follower"}(zt||(zt={}));var Bt=function(){function e(){_classCallCheck(this,e),window.ZCB_CoBrowseConfigController=this,this.requestNpmModeAgentConfig()}return _createClass(e,[{key:"getCoBrowsingConfig",value:function(e){var t;return e?window.ZMCoBrowsingConfig?window.ZMCoBrowsingConfig[e]:null===(t=this.coBrowsingConfig)||void 0===t?void 0:t[e]:window.ZMCoBrowsingConfig||this.coBrowsingConfig}},{key:"setCoBrowsingConfig",value:function(e){this.coBrowsingConfig=Object.assign(Object.assign({},this.coBrowsingConfig),e)}},{key:"requestNpmModeAgentConfig",value:function(){var e,t,n;(null===(e=window.ZCB_NPM_SDK_AGENT_MAIN)||void 0===e?void 0:e.isInnerFrame(document))&&window.ZCB_CoBrowseConfigController.setCoBrowsingConfig(Object.assign({isViewer:null===(t=window.ZCB_NPM_SDK_AGENT_SESSION_CONTEXT)||void 0===t?void 0:t.isViewer,appKey:null===(n=window.ZCB_NPM_SDK_AGENT_SESSION_CONTEXT)||void 0===n?void 0:n.appKey},window.parent.ZCB_CoBrowseConfigController.coBrowsingConfig))}}],[{key:"create",value:function(){return window.ZCB_CoBrowseConfigController||new e}}]),e}().create(),Ut=function(e){_inherits(n,e);var t=_createSuper(n);function n(){var e;return _classCallCheck(this,n),(e=t.call(this)).isToppest=null,e._pongList=[],e.WAIT_TIME=2e3,e._subFrameInfoTempList=[],e._subFrameWinList=[],e.isRecording=!1,e.coreFrameMessageManager=new Ft,e.isCoreFrame=!1,e.role=Nt.FOLLOWER,e._loadListeners=[],e.frameIdName="data-cbs-frame-id",e._toppestIsCoreFrame=!0,e.batchNo=Date.now(),window.ZCB_FrameTracer=_assertThisInitialized2(e),e._autoResponsePing(),window.parent===window?(e.setSelfAsToppest(),_possibleConstructorReturn(e)):(e._pingToTopper(),e._answerReady(),e)}return _createClass(n,[{key:"on",value:function(e,t){return _get(_getPrototypeOf(n.prototype),"on",this).call(this,e,t)}},{key:"emit",value:function(e){for(var t,i=arguments.length,o=new Array(i>1?i-1:0),r=1;r<i;r++)o[r-1]=arguments[r];return(t=_get(_getPrototypeOf(n.prototype),"emit",this)).call.apply(t,[this,e].concat(o))}},{key:"isSubFrame",value:function(){return!this.isToppest&&!!this.subFrameId&&this._toppestIsCoreFrame}},{key:"setSelfAsToppest",value:function(){this._toppestWin=window,this._toppestWinOrigin=window.location.origin,this.isToppest=!0}},{key:"_answerReady",value:function(){var e=this;this.isReady().then((function(t){var n,i;if(!t){var o="".concat(Math.floor(Date.now()%3e5),"-").concat(window.location.hostname);e.subFrameId=o;var r=e._toppestWinLevel+(e._toppestWinLevel!==e._parentWinLevel?"-".concat(e._parentWinLevel):""),a={type:zt.PING_PONG_READY,frameId:o,levelId:r,isToParent:!0,isToToppest:e._toppestWin===e._parentWin};null===(n=e._parentWin)||void 0===n||n.postMessage(a,e._parentWinOrigin),e._toppestWin!==e._parentWin&&(a={type:zt.PING_PONG_READY,frameId:o,levelId:r,isToToppest:!0},null===(i=e._toppestWin)||void 0===i||i.postMessage(a,e._toppestWinOrigin))}}))}},{key:"_logPingPong",value:function(e){console.log("%s","client-core: ".concat(e))}},{key:"notSelfWinMessage",value:function(e){return e.source!==window}},{key:"getEventSourceOrigin",value:function(e){try{var t=e.source.origin;if(t)return t}catch(t){return e.origin}return e.origin}},{key:"_autoResponsePing",value:function(){var e=this;window.addEventListener("message",(function(t){var n,i,o,r,a;if(t.source){var s=e.getEventSourceOrigin(t);if((null===(n=t.data)||void 0===n?void 0:n.type)===zt.PING&&e.notSelfWinMessage(t)){e._logPingPong("Ping: ".concat(s," ----\\x3e ").concat(window.location.origin));var l={type:zt.PONG};t.source.postMessage(l,s),e._subFrameWinList.push({win:t.source,origin:s})}else if((null===(i=t.data)||void 0===i?void 0:i.type)===zt.PING_PONG_READY&&e.notSelfWinMessage(t))t.data.isToParent&&e._addFrameIdAttr(t.source,t.data.frameId,t.data.levelId),t.data.isToToppest&&(e._logPingPong("Ping pong Ready: ".concat(s)),e._addSubFrameId(t.data.frameId,t.source),e.isRecording&&e.notifyWinStartRecord(t.source,s));else if((null===(o=t.data)||void 0===o?void 0:o.type)===zt.START_RECORD&&t.source===e._toppestWin&&e.notSelfWinMessage(t))t.data.batchNo&&(e.batchNo=t.data.batchNo),e.handleStartRecord(t.data);else if((null===(r=t.data)||void 0===r?void 0:r.type)===zt.PAGE_READY){e._logPingPong("SUB_PAGE_READY: from=".concat(s));var c=t.data,u=c.frameId,h=c.level;e.coreFrameMessageManager.hasFrame(t.source)||e.coreFrameMessageManager.addFrame({frameId:u,origin:s,level:h,tabId:"",sessionId:""},t.source);var d=(window.ZCB_TrackingIdController||{}).ZCB_ZmTrackingIds,f={type:zt.POST_BACK_TO_FOLLOWER,ZCB_ZmTrackingIds:d,ZCB_ZmDeviceId:window.ZCB_ZmDeviceId};t.source.postMessage(f);var p=e.coreFrameMessageManager.getUnlockedReadyTab();p.deffer.resolve(p)}else if(t.data.type===zt.UPDATE_PAGE_INFO){var g=ft(t.data,["type"]);e.coreFrameMessageManager.updateFrame(t.source,g)}else if(t.data.type===zt.START_REPLAY){var m=t.data,v=m.type,y=ft(m,["type"]);e.emit(v,y)}else if(t.data.type===zt.REQUEST_AGENT_CURSOR_INFO){var b=t.data,_=b.type,k=b.userId;e.emit(_,k)}else(null===(a=t.data)||void 0===a?void 0:a.type)===zt.POST_BACK_TO_FOLLOWER&&e.emit(t.data.type,t.data)}}))}},{key:"handleStartRecord",value:function(e){e.sessionSettings&&(this.sessionSettings=e.sessionSettings),e.coBrowsingConfig&&(this.coBrowsingConfig=e.coBrowsingConfig,Bt.setCoBrowsingConfig(e.coBrowsingConfig)),this._toppestIsCoreFrame=!!e.toppestIsCoreFrame,this._toppestIsCoreFrame||this.updatePageInfoToTop({frameId:""}),this.notifySelfFrameStartRecord(e.sessionId)}},{key:"updatePageInfoToTop",value:function(e){var t;if(!this.isToppest&&this.isCoreFrame){var n=Object.assign({type:zt.UPDATE_PAGE_INFO},e);null===(t=this._toppestWin)||void 0===t||t.postMessage(n,this._toppestWinOrigin)}}},{key:"_addSubFrameId",value:function(e,t){e&&(0===this._loadListeners.length?this._subFrameInfoTempList.push({frameId:e,win:t}):this._loadListeners.forEach((function(n){n(e,t)})))}},{key:"addLoadListener",value:function(e){this.isToppest&&(this._loadListeners.push(e),this._subFrameInfoTempList.length>0&&this._subFrameInfoTempList.forEach((function(t){var n=t.frameId,i=t.win;e(n,i)})))}},{key:"_addFrameIdAttr",value:function(e,t,n){var i=this;document.querySelectorAll("iframe").forEach((function(o){o.contentWindow===e&&(t&&o.setAttribute(i.frameIdName,t),n&&o.setAttribute("data-cbs-frame-level-id",n))}))}},{key:"isReady",value:function(){var e=this;return null!==this.isToppest?Promise.resolve(this.isToppest):this._pongList.length?Promise.all(this._pongList.map((function(e){return e.promise}))).then((function(t){return e.isToppest=!t.some((function(e){return!0===e})),e.isToppest})):Promise.resolve(!0)}},{key:"checkUnlockedReadyTab",value:function(){return this.coreFrameMessageManager.getUnlockedReadyTab().deffer.promise}},{key:"bindReadyTab",value:function(e,t){return this.coreFrameMessageManager.unbindAllReadyTab(),this.coreFrameMessageManager.bindReadyTab(e,t)}},{key:"unbindReadyTab",value:function(e){this.coreFrameMessageManager.unbindReadyTab(e)}},{key:"isSameOriginWithParent",value:function(){if(window.parent===window&&(this._isSameOriginWithParent=!1),"boolean"==typeof this._isSameOriginWithParent)return this._isSameOriginWithParent;try{window.parent.location.href;this._isSameOriginWithParent=!0}catch(e){this._isSameOriginWithParent=!1}return this._isSameOriginWithParent}},{key:"_setToppestWin",value:function(e,t,n){this._toppestWin&&this._toppestWinLevel>t||(this._toppestWin=e,this._toppestWinOrigin=n,this._toppestWinLevel=t)}},{key:"_setParentWin",value:function(e,t,n){this._parentWin&&this._parentWinLevel<t||(this._parentWin=e,this._parentWinOrigin=n,this._parentWinLevel=t)}},{key:"getCurrentPageLevel",value:function(){return"number"==typeof this._toppestWinLevel?this._toppestWinLevel:-1}},{key:"_pingToTopper",value:function(){for(var e=this,t=window.parent,n=this,i=[],o=function(){var o=new Mt,r=e._pongList.length,a=t;e._pongList.push(o);var s,l=performance.now(),c=function(){i.forEach((function(e){e&&clearTimeout(e)})),i=[],e._pongList.forEach((function(e){e.finished||e.resolve(!1)}))};window.addEventListener("message",(function e(t){var i;if((null===(i=t.data)||void 0===i?void 0:i.type)===zt.PONG&&t.source&&n.notSelfWinMessage(t)&&t.source===a){var s=n.getEventSourceOrigin(t);n._logPingPong("Pong: ".concat(s," ----\\x3e ").concat(window.location.origin)),o.finished?console.error("client-core: ping pong response setTimeout (".concat(n.WAIT_TIME,") too short, takes ").concat(performance.now()-l)):(n._setToppestWin(t.source,r,s),n._setParentWin(t.source,r,s),o.resolve(!0),c()),window.removeEventListener("message",e)}}));var u={type:zt.PING};a.postMessage(u,"*"),s=setTimeout((function(){o.finished||(e.setSelfAsToppest(),o.resolve(!1)),c()}),e.WAIT_TIME),i.push(s),t=a.parent===a?null:a.parent};null!==t&&t!==window;)o()}},{key:"init",value:function(e){var t=this,n=e.isCoreFrame,i=e.role;return this.role=i,this.isCoreFrame=n,this.isCoreFrame&&this.isReady().then((function(){t.notifyTopWindowReady()})),this}},{key:"isLeader",value:function(){return this.role===Nt.LEADER}},{key:"sendCoreMessage",value:function(e){return this._toppestWin&&this._toppestWinOrigin&&this._toppestWin.postMessage(e,this._toppestWinOrigin),this}},{key:"handleRemoteMessage",value:function(e){this.isSubFrame()||e.eventType!==Q.FULL_SNAPSHOT_REQUEST||this.batchNo++,this.coreFrameMessageManager.handleRemoteMessage(e,this.batchNo)}},{key:"postMessageToIframes",value:function(e){this.coreFrameMessageManager.postMessageToIframes(e)}},{key:"notifyWinStartRecord",value:function(e,t,n){var i={type:zt.START_RECORD,sessionId:this.recordingSessionId,toppestIsCoreFrame:this.isCoreFrame,sessionSettings:this.sessionSettings,coBrowsingConfig:Bt.getCoBrowsingConfig()};n&&(i.batchNo=this.batchNo),this.coreFrameMessageManager.updateFrame(e,{sessionId:this.recordingSessionId,tabId:this.recordingSessionId}),e.postMessage(i,t)}},{key:"notifySubFrameStartRecord",value:function(){var e=this;this._subFrameWinList.forEach((function(t){var n=t.win,i=t.origin;e.notifyWinStartRecord(n,i,!0)}))}},{key:"notifySelfFrameStartRecord",value:function(e){var t=this;this.isRecording=!0,this.recordingSessionId=e,this.isCoreFrame&&this.isLeader()&&this.isReady().then((function(){t.emit(zt.START_RECORD,{sessionId:e,sessionSettings:t.sessionSettings})}))}},{key:"notifyCoreStartRecord",value:function(e){var t=e.sessionId,n=e.sessionSettings;return n&&(this.sessionSettings=n),Vt.batchNo++,this.notifySelfFrameStartRecord(t),this.notifySubFrameStartRecord(),this}},{key:"notifyWinStopRecord",value:function(e,t){var n={type:zt.STOP_RECORD};e.postMessage(n,t)}},{key:"notifySubFrameStopRecord",value:function(){var e=this;this._subFrameWinList.forEach((function(t){var n=t.win,i=t.origin;e.notifyWinStopRecord(n,i)}))}},{key:"notifySelfFrameStopRecord",value:function(){this.isRecording=!1,this.recordingSessionId="",this.isCoreFrame&&this.emit(zt.STOP_RECORD)}},{key:"notifyCoreStopRecord",value:function(){return this.notifySelfFrameStopRecord(),this.notifySubFrameStopRecord(),this}},{key:"notifyTopWindowReady",value:function(){var e,t={type:zt.PAGE_READY,frameId:this.isLeader()?this.subFrameId:"",isLeader:this.isLeader(),level:this.getCurrentPageLevel()};return null===(e=this._toppestWin)||void 0===e||e.postMessage(t,this._toppestWinOrigin),this}},{key:"isCrossOriginFromToppestWin",value:function(){try{return window.location.origin!==new URL(this._toppestWinOrigin,window.location.href).origin}catch(e){return!0}}}],[{key:"create",value:function(){return window.ZCB_FrameTracer||new n}}]),n}(mt),Vt=Ut.create(),Wt=function(){return!0===Bt.getCoBrowsingConfig("isLoadFromSDKEntry")},Gt=function(){return!!window.ZCB_NPM_SDK_AGENT_MAIN||window.ZCB_NPM_SDK_CUSTOMER_MAIN},Ht=function(){return window.ZCB_NPM_SDK_AGENT_SESSION_CONTEXT||window.ZCB_NPM_SDK_CUSTOMER_SESSION_CONTEXT},Yt=function(){return Bt.getCoBrowsingConfig("sdkVersion")},Xt=function(e,t,n){var i,o={};try{var r=e.split(".")[1].replace(/-/g,"+").replace(/_/g,"/"),a=decodeURIComponent(atob(r).split("").map((function(e){return"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)})).join("")),s=JSON.parse(a);return t.forEach((function(e){o[e]=s[e]})),o}catch(e){return null===(i=null==n?void 0:n.error)||void 0===i||i.call(n,"getValueFromJwt failed"),o}};function Kt(){return document.documentElement&&document.documentElement.clientHeight||window.innerHeight||document.body&&document.body.clientHeight}function qt(){return document.documentElement&&document.documentElement.clientWidth||window.innerWidth||document.body&&document.body.clientWidth}var Jt=qt(),Zt=Kt();function $t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{width:0,height:0},t=e.width,n=e.height;t&&(Jt=t),n&&(Zt=n);var i=function(){var e=document.querySelector(\'[title="\'.concat(C,\'"]\'));if(e){var t=e.getBoundingClientRect();if(void 0!==t.width&&void 0!==t.height)return t;console.error("[getIframeEleSize] ERROR: size=".concat(t," is falsy."))}else console.error("[getIframeEleSize] ERROR: iframeEle=".concat(e," is falsy."))}();return(null==i?void 0:i.width)&&(null==i?void 0:i.height)?Math.min((null==i?void 0:i.width)/(t||Jt),(null==i?void 0:i.height)/(n||Zt)):1}function Qt(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{width:0,height:0},t=e.width,n=e.height;return t&&(Jt=t),n&&(Zt=n),Math.min(qt()/(t||Jt),Kt()/(n||Zt))}var en,tn="3.7.7",nn=tn,on="function"==typeof Buffer,rn="function"==typeof TextDecoder?new TextDecoder:void 0,an="function"==typeof TextEncoder?new TextEncoder:void 0,sn=Array.prototype.slice.call("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="),ln=(en={},sn.forEach((function(e,t){return en[e]=t})),en),cn=/^(?:[A-Za-z\\d+\\/]{4})*?(?:[A-Za-z\\d+\\/]{2}(?:==)?|[A-Za-z\\d+\\/]{3}=?)?$/,un=String.fromCharCode.bind(String),hn="function"==typeof Uint8Array.from?Uint8Array.from.bind(Uint8Array):function(e){return new Uint8Array(Array.prototype.slice.call(e,0))},dn=function(e){return e.replace(/=/g,"").replace(/[+\\/]/g,(function(e){return"+"==e?"-":"_"}))},fn=function(e){return e.replace(/[^A-Za-z0-9\\+\\/]/g,"")},pn=function(e){for(var t,n,i,o,r="",a=e.length%3,s=0;s<e.length;){if((n=e.charCodeAt(s++))>255||(i=e.charCodeAt(s++))>255||(o=e.charCodeAt(s++))>255)throw new TypeError("invalid character found");r+=sn[(t=n<<16|i<<8|o)>>18&63]+sn[t>>12&63]+sn[t>>6&63]+sn[63&t]}return a?r.slice(0,a-3)+"===".substring(a):r},gn="function"==typeof btoa?function(e){return btoa(e)}:on?function(e){return Buffer.from(e,"binary").toString("base64")}:pn,mn=on?function(e){return Buffer.from(e).toString("base64")}:function(e){for(var t=[],n=0,i=e.length;n<i;n+=4096)t.push(un.apply(null,e.subarray(n,n+4096)));return gn(t.join(""))},vn=function(e){return arguments.length>1&&void 0!==arguments[1]&&arguments[1]?dn(mn(e)):mn(e)},yn=function(e){if(e.length<2)return(t=e.charCodeAt(0))<128?e:t<2048?un(192|t>>>6)+un(128|63&t):un(224|t>>>12&15)+un(128|t>>>6&63)+un(128|63&t);var t=65536+1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320);return un(240|t>>>18&7)+un(128|t>>>12&63)+un(128|t>>>6&63)+un(128|63&t)},bn=/[\\uD800-\\uDBFF][\\uDC00-\\uDFFFF]|[^\\x00-\\x7F]/g,_n=function(e){return e.replace(bn,yn)},kn=on?function(e){return Buffer.from(e,"utf8").toString("base64")}:an?function(e){return mn(an.encode(e))}:function(e){return gn(_n(e))},wn=function(e){return arguments.length>1&&void 0!==arguments[1]&&arguments[1]?dn(kn(e)):kn(e)},Sn=function(e){return wn(e,!0)},Cn=/[\\xC0-\\xDF][\\x80-\\xBF]|[\\xE0-\\xEF][\\x80-\\xBF]{2}|[\\xF0-\\xF7][\\x80-\\xBF]{3}/g,En=function(e){switch(e.length){case 4:var t=((7&e.charCodeAt(0))<<18|(63&e.charCodeAt(1))<<12|(63&e.charCodeAt(2))<<6|63&e.charCodeAt(3))-65536;return un(55296+(t>>>10))+un(56320+(1023&t));case 3:return un((15&e.charCodeAt(0))<<12|(63&e.charCodeAt(1))<<6|63&e.charCodeAt(2));default:return un((31&e.charCodeAt(0))<<6|63&e.charCodeAt(1))}},Tn=function(e){return e.replace(Cn,En)},On=function(e){if(e=e.replace(/\\s+/g,""),!cn.test(e))throw new TypeError("malformed base64.");e+="==".slice(2-(3&e.length));for(var t,n,i,o="",r=0;r<e.length;)t=ln[e.charAt(r++)]<<18|ln[e.charAt(r++)]<<12|(n=ln[e.charAt(r++)])<<6|(i=ln[e.charAt(r++)]),o+=64===n?un(t>>16&255):64===i?un(t>>16&255,t>>8&255):un(t>>16&255,t>>8&255,255&t);return o},jn="function"==typeof atob?function(e){return atob(fn(e))}:on?function(e){return Buffer.from(e,"base64").toString("binary")}:On,xn=on?function(e){return hn(Buffer.from(e,"base64"))}:function(e){return hn(jn(e).split("").map((function(e){return e.charCodeAt(0)})))},Rn=function(e){return xn(An(e))},In=on?function(e){return Buffer.from(e,"base64").toString("utf8")}:rn?function(e){return rn.decode(xn(e))}:function(e){return Tn(jn(e))},An=function(e){return fn(e.replace(/[-_]/g,(function(e){return"-"==e?"+":"/"})))},Dn=function(e){return In(An(e))},Nn=function(e){return{value:e,enumerable:!1,writable:!0,configurable:!0}},Pn=function(){var e=function(e,t){return Object.defineProperty(String.prototype,e,Nn(t))};e("fromBase64",(function(){return Dn(this)})),e("toBase64",(function(e){return wn(this,e)})),e("toBase64URI",(function(){return wn(this,!0)})),e("toBase64URL",(function(){return wn(this,!0)})),e("toUint8Array",(function(){return Rn(this)}))},Ln=function(){var e=function(e,t){return Object.defineProperty(Uint8Array.prototype,e,Nn(t))};e("toBase64",(function(e){return vn(this,e)})),e("toBase64URI",(function(){return vn(this,!0)})),e("toBase64URL",(function(){return vn(this,!0)}))},Mn={version:tn,VERSION:nn,atob:jn,atobPolyfill:On,btoa:gn,btoaPolyfill:pn,fromBase64:Dn,toBase64:wn,encode:wn,encodeURI:Sn,encodeURL:Sn,utob:_n,btou:Tn,decode:Dn,isValid:function(e){if("string"!=typeof e)return!1;var t=e.replace(/\\s+/g,"").replace(/={0,2}$/,"");return!/[^\\s0-9a-zA-Z\\+/]/.test(t)||!/[^\\s0-9a-zA-Z\\-_]/.test(t)},fromUint8Array:vn,toUint8Array:Rn,extendString:Pn,extendUint8Array:Ln,extendBuiltins:function(){Pn(),Ln()}};function zn(e){var t=!0;try{return Mn.encode(e,!0)}catch(e){t=!1}if(!t)try{return btoa(e)}catch(e){}return e}function Fn(e){var t=!0;try{return Mn.decode(e)}catch(e){t=!1}if(!t)try{return atob(e)}catch(e){}return e}function Bn(e){var t="";try{t=Fn(e)}catch(n){t=e}return t}var Un=function(){try{var e=zn("zcb_ta");return!!sessionStorage.getItem(e)}catch(e){return!1}};function Vn(){return e=navigator.userAgent,/iPhone|iPad|iPod/.test(e)||navigator.userAgent.match(/Android/i)||navigator.userAgent.match(/webOS/i)||navigator.userAgent.match(/Windows Phone/i);var e}var Wn=function(e){return!![He.RECORD_START_FAILED,He.RECORD_STOP_FAILED,He.RECORD_PAUSE_FAILED,He.RECORD_RESUME_FAILED].includes(e)},Gn=function(e){return!![se.DUPLICATE_SESSION,se.REFRESH_PIN_CODE_FAILED].includes(e)},Hn=function(e){_inherits(n,_wrapNativeSuper(Error));var t=_createSuper(n);function n(e){var i,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:-1;return _classCallCheck(this,n),(i=t.call(this,e)).msg=e,i.code=o,i.statusCode=r,i}return _createClass(n)}();function Yn(e,t){var n=this,i=t||{},o=i.retry,r=i.handleJsonResponse,a=ft(i,["retry","handleJsonResponse"]),s=r||function(e){return pt(n,void 0,void 0,_regeneratorRuntime().mark((function t(){var n;return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!e.ok){t.next=4;break}return t.abrupt("return",e);case 4:return t.next=6,e.json();case 6:throw n=t.sent,new Hn(n.message,n.code,e.status);case 8:case"end":return t.stop()}}),t)})))},l=Object.assign({limit:3},o),c=l.limit,u=l.delay;return new Promise((function(t,n){var i=function(i){var r,l;return pt(this,void 0,void 0,_regeneratorRuntime().mark((function u(){var h,d,f;return _regeneratorRuntime().wrap((function(u){for(;;)switch(u.prev=u.next){case 0:return u.prev=0,u.next=3,fetch(e,a);case 3:return h=u.sent,u.next=6,s(h);case 6:return d=u.sent,t(d),u.abrupt("return");case 11:if(u.prev=11,u.t0=u.catch(0),f=u.t0&&null!==(l=null!==(r=u.t0.statusCode)&&void 0!==r?r:u.t0.status)&&void 0!==l?l:1/0,!(i>=c||f<500&&0!==f)){u.next=17;break}return!u.t0||u.t0 instanceof TypeError&&/Load failed|fetch/i.test(u.t0.message)?n(new Hn(at[Ce.NETWORK_ERROR],Ce.NETWORK_ERROR)):n(u.t0),u.abrupt("return");case 17:o(i);case 18:case"end":return u.stop()}}),u,null,[[0,11]])})))};function o(e){void 0!==u?window.setTimeout((function(){i(++e)}),u):i(++e)}i(0)}))}var Xn={initCanvasAndToolbar:"initCanvasAndToolbar",endAnotation:"endAnotation",toggleDrawMode:"toggleDrawMode",updateCanvasSize:"updateCanvasSize",triggerRedo:"triggerRedo",triggerUndo:"triggerUndo",triggerClear:"triggerClear",triggerVanishingPen:"triggerVanishingPen",hideToolbar:"hideToolbar",hideOpenBtn:"hideOpenBtn",changeDrawWidth:"changeDrawWidth",toggleEraser:"toggleEraser",changeColor:"changeColor",toggleSelectMode:"toggleSelectMode",enableControlMode:"enableControlMode",addEventHandler:"addEventHandler",removeEventHandler:"removeEventHandler",requestFullDataReplay:"requestFullDataReplay",customerRequestFullDataReplay:"customerRequestFullDataReplay",toggleDrawGraphBase:"toggleDrawGraphBase"},Kn=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"setAnotationInstance",value:function(e){this.anotationInstance=e}},{key:"getAnotationInstance",value:function(){return this.anotationInstance}},{key:"use",value:function(e){var t,n,i;if(this.anotationInstance){for(var o=arguments.length,r=new Array(o>1?o-1:0),a=1;a<o;a++)r[a-1]=arguments[a];null===(i=(n=this.anotationInstance)[e])||void 0===i||(t=i).call.apply(t,[n].concat(r))}}}]),e}(),qn=new Kn,Jn={wrapper:"anotation-wrapper",wrapperCustomer:"anotation-wrapper-customer",wrapperAgent:"anotation-wrapper-agent",controller:"anotation-controller",toolbar:"anotation-toolbar",openBtn:"anotation-open-btn",fabricContainer:"anotation-fabric-container",basic:"anotation-canvas",drawing:"anotation-canvas-drawing",subMenuWrapper:"anotation-sub-menu-wrapper"};function Zn(){var e=document.querySelector("."+Jn.wrapper);e&&e.remove();var t=document.querySelector("."+Jn.controller);t&&t.remove()}var $n="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},Qn="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function ei(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function ti(e){if(e.__esModule)return e;var t=e.default;if("function"==typeof t){var n=function e(){if(this instanceof e){var n=[null];return n.push.apply(n,arguments),new(Function.bind.apply(t,n))}return t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach((function(t){var i=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,i.get?i:{enumerable:!0,get:function(){return e[t]}})})),n}var ni,ii={},oi={get exports(){return ii},set exports(e){ii=e}},ri={},ai={},si={};function li(){if(ni)return si;ni=1;var e=Symbol.for("react.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),r=Symbol.for("react.provider"),a=Symbol.for("react.context"),s=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),c=Symbol.for("react.memo"),u=Symbol.for("react.lazy"),h=Symbol.iterator;var d={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},f=Object.assign,p={};function g(e,t,n){this.props=e,this.context=t,this.refs=p,this.updater=n||d}function m(){}function v(e,t,n){this.props=e,this.context=t,this.refs=p,this.updater=n||d}g.prototype.isReactComponent={},g.prototype.setState=function(e,t){if("object"!==_typeof(e)&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},g.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},m.prototype=g.prototype;var y=v.prototype=new m;y.constructor=v,f(y,g.prototype),y.isPureReactComponent=!0;var b=Array.isArray,_=Object.prototype.hasOwnProperty,k={current:null},w={key:!0,ref:!0,__self:!0,__source:!0};function S(t,n,i){var o,r={},a=null,s=null;if(null!=n)for(o in void 0!==n.ref&&(s=n.ref),void 0!==n.key&&(a=""+n.key),n)_.call(n,o)&&!w.hasOwnProperty(o)&&(r[o]=n[o]);var l=arguments.length-2;if(1===l)r.children=i;else if(1<l){for(var c=Array(l),u=0;u<l;u++)c[u]=arguments[u+2];r.children=c}if(t&&t.defaultProps)for(o in l=t.defaultProps)void 0===r[o]&&(r[o]=l[o]);return{$$typeof:e,type:t,key:a,ref:s,props:r,_owner:k.current}}function C(t){return"object"===_typeof(t)&&null!==t&&t.$$typeof===e}var E=/\\/+/g;function T(e,t){return"object"===_typeof(e)&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function O(n,i,o,r,a){var s=_typeof(n);"undefined"!==s&&"boolean"!==s||(n=null);var l=!1;if(null===n)l=!0;else switch(s){case"string":case"number":l=!0;break;case"object":switch(n.$$typeof){case e:case t:l=!0}}if(l)return a=a(l=n),n=""===r?"."+T(l,0):r,b(a)?(o="",null!=n&&(o=n.replace(E,"$&/")+"/"),O(a,i,o,"",(function(e){return e}))):null!=a&&(C(a)&&(a=function(t,n){return{$$typeof:e,type:t.type,key:n,ref:t.ref,props:t.props,_owner:t._owner}}(a,o+(!a.key||l&&l.key===a.key?"":(""+a.key).replace(E,"$&/")+"/")+n)),i.push(a)),1;if(l=0,r=""===r?".":r+":",b(n))for(var c=0;c<n.length;c++){var u=r+T(s=n[c],c);l+=O(s,i,o,u,a)}else if(u=function(e){return null===e||"object"!==_typeof(e)?null:"function"==typeof(e=h&&e[h]||e["@@iterator"])?e:null}(n),"function"==typeof u)for(n=u.call(n),c=0;!(s=n.next()).done;)l+=O(s=s.value,i,o,u=r+T(s,c++),a);else if("object"===s)throw i=String(n),Error("Objects are not valid as a React child (found: "+("[object Object]"===i?"object with keys {"+Object.keys(n).join(", ")+"}":i)+"). If you meant to render a collection of children, use an array instead.");return l}function j(e,t,n){if(null==e)return e;var i=[],o=0;return O(e,i,"","",(function(e){return t.call(n,e,o++)})),i}function x(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var R={current:null},I={transition:null},A={ReactCurrentDispatcher:R,ReactCurrentBatchConfig:I,ReactCurrentOwner:k};return si.Children={map:j,forEach:function(e,t,n){j(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return j(e,(function(){t++})),t},toArray:function(e){return j(e,(function(e){return e}))||[]},only:function(e){if(!C(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},si.Component=g,si.Fragment=n,si.Profiler=o,si.PureComponent=v,si.StrictMode=i,si.Suspense=l,si.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=A,si.cloneElement=function(t,n,i){if(null==t)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+t+".");var o=f({},t.props),r=t.key,a=t.ref,s=t._owner;if(null!=n){if(void 0!==n.ref&&(a=n.ref,s=k.current),void 0!==n.key&&(r=""+n.key),t.type&&t.type.defaultProps)var l=t.type.defaultProps;for(c in n)_.call(n,c)&&!w.hasOwnProperty(c)&&(o[c]=void 0===n[c]&&void 0!==l?l[c]:n[c])}var c=arguments.length-2;if(1===c)o.children=i;else if(1<c){l=Array(c);for(var u=0;u<c;u++)l[u]=arguments[u+2];o.children=l}return{$$typeof:e,type:t.type,key:r,ref:a,props:o,_owner:s}},si.createContext=function(e){return(e={$$typeof:a,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:r,_context:e},e.Consumer=e},si.createElement=S,si.createFactory=function(e){var t=S.bind(null,e);return t.type=e,t},si.createRef=function(){return{current:null}},si.forwardRef=function(e){return{$$typeof:s,render:e}},si.isValidElement=C,si.lazy=function(e){return{$$typeof:u,_payload:{_status:-1,_result:e},_init:x}},si.memo=function(e,t){return{$$typeof:c,type:e,compare:void 0===t?null:t}},si.startTransition=function(e){var t=I.transition;I.transition={};try{e()}finally{I.transition=t}},si.unstable_act=function(){throw Error("act(...) is not supported in production builds of React.")},si.useCallback=function(e,t){return R.current.useCallback(e,t)},si.useContext=function(e){return R.current.useContext(e)},si.useDebugValue=function(){},si.useDeferredValue=function(e){return R.current.useDeferredValue(e)},si.useEffect=function(e,t){return R.current.useEffect(e,t)},si.useId=function(){return R.current.useId()},si.useImperativeHandle=function(e,t,n){return R.current.useImperativeHandle(e,t,n)},si.useInsertionEffect=function(e,t){return R.current.useInsertionEffect(e,t)},si.useLayoutEffect=function(e,t){return R.current.useLayoutEffect(e,t)},si.useMemo=function(e,t){return R.current.useMemo(e,t)},si.useReducer=function(e,t,n){return R.current.useReducer(e,t,n)},si.useRef=function(e){return R.current.useRef(e)},si.useState=function(e){return R.current.useState(e)},si.useSyncExternalStore=function(e,t,n){return R.current.useSyncExternalStore(e,t,n)},si.useTransition=function(){return R.current.useTransition()},si.version="18.2.0",si}({get exports(){return ai},set exports(e){ai=e}}).exports=li();var ci,ui=ei(ai),hi=s({__proto__:null,default:ui},[ai]);!function(e){e.exports=function(){if(ci)return ri;ci=1;var e=ai,t=Symbol.for("react.element"),n=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,o=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,r={key:!0,ref:!0,__self:!0,__source:!0};function a(e,n,a){var s,l={},c=null,u=null;for(s in void 0!==a&&(c=""+a),void 0!==n.key&&(c=""+n.key),void 0!==n.ref&&(u=n.ref),n)i.call(n,s)&&!r.hasOwnProperty(s)&&(l[s]=n[s]);if(e&&e.defaultProps)for(s in n=e.defaultProps)void 0===l[s]&&(l[s]=n[s]);return{$$typeof:t,type:e,key:c,ref:u,props:l,_owner:o.current}}return ri.Fragment=n,ri.jsx=a,ri.jsxs=a,ri}()}(oi);var di=function(){function e(e){var t=this;this._insertTag=function(e){var n;n=0===t.tags.length?t.insertionPoint?t.insertionPoint.nextSibling:t.prepend?t.container.firstChild:t.before:t.tags[t.tags.length-1].nextSibling,t.container.insertBefore(e,n),t.tags.push(e)},this.isSpeedy=void 0===e.speedy||e.speedy,this.tags=[],this.ctr=0,this.nonce=e.nonce,this.key=e.key,this.container=e.container,this.prepend=e.prepend,this.insertionPoint=e.insertionPoint,this.before=null}var t=e.prototype;return t.hydrate=function(e){e.forEach(this._insertTag)},t.insert=function(e){this.ctr%(this.isSpeedy?65e3:1)==0&&this._insertTag(function(e){var t=document.createElement("style");return t.setAttribute("data-emotion",e.key),void 0!==e.nonce&&t.setAttribute("nonce",e.nonce),t.appendChild(document.createTextNode("")),t.setAttribute("data-s",""),t}(this));var t=this.tags[this.tags.length-1];if(this.isSpeedy){var n=function(e){if(e.sheet)return e.sheet;for(var t=0;t<document.styleSheets.length;t++)if(document.styleSheets[t].ownerNode===e)return document.styleSheets[t]}(t);try{n.insertRule(e,n.cssRules.length)}catch(e){}}else t.appendChild(document.createTextNode(e));this.ctr++},t.flush=function(){this.tags.forEach((function(e){var t;return null==(t=e.parentNode)?void 0:t.removeChild(e)})),this.tags=[],this.ctr=0},e}(),fi="-ms-",pi="-moz-",gi="-webkit-",mi="comm",vi="rule",yi="decl",bi="@keyframes",_i=Math.abs,ki=String.fromCharCode,wi=Object.assign;function Si(e){return e.trim()}function Ci(e,t,n){return e.replace(t,n)}function Ei(e,t){return e.indexOf(t)}function Ti(e,t){return 0|e.charCodeAt(t)}function Oi(e,t,n){return e.slice(t,n)}function ji(e){return e.length}function xi(e){return e.length}function Ri(e,t){return t.push(e),e}var Ii=1,Ai=1,Di=0,Ni=0,Pi=0,Li="";function Mi(e,t,n,i,o,r,a){return{value:e,root:t,parent:n,type:i,props:o,children:r,line:Ii,column:Ai,length:a,return:""}}function zi(e,t){return wi(Mi("",null,null,"",null,null,0),e,{length:-e.length},t)}function Fi(){return Pi=Ni>0?Ti(Li,--Ni):0,Ai--,10===Pi&&(Ai=1,Ii--),Pi}function Bi(){return Pi=Ni<Di?Ti(Li,Ni++):0,Ai++,10===Pi&&(Ai=1,Ii++),Pi}function Ui(){return Ti(Li,Ni)}function Vi(){return Ni}function Wi(e,t){return Oi(Li,e,t)}function Gi(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function Hi(e){return Ii=Ai=1,Di=ji(Li=e),Ni=0,[]}function Yi(e){return Li="",e}function Xi(e){return Si(Wi(Ni-1,Ji(91===e?e+2:40===e?e+1:e)))}function Ki(e){for(;(Pi=Ui())&&Pi<33;)Bi();return Gi(e)>2||Gi(Pi)>3?"":" "}function qi(e,t){for(;--t&&Bi()&&!(Pi<48||Pi>102||Pi>57&&Pi<65||Pi>70&&Pi<97););return Wi(e,Vi()+(t<6&&32==Ui()&&32==Bi()))}function Ji(e){for(;Bi();)switch(Pi){case e:return Ni;case 34:case 39:34!==e&&39!==e&&Ji(Pi);break;case 40:41===e&&Ji(e);break;case 92:Bi()}return Ni}function Zi(e,t){for(;Bi()&&e+Pi!==57&&(e+Pi!==84||47!==Ui()););return"/*"+Wi(t,Ni-1)+"*"+ki(47===e?e:Bi())}function $i(e){for(;!Gi(Ui());)Bi();return Wi(e,Ni)}function Qi(e){return Yi(eo("",null,null,null,[""],e=Hi(e),0,[0],e))}function eo(e,t,n,i,o,r,a,s,l){for(var c=0,u=0,h=a,d=0,f=0,p=0,g=1,m=1,v=1,y=0,b="",_=o,k=r,w=i,S=b;m;)switch(p=y,y=Bi()){case 40:if(108!=p&&58==Ti(S,h-1)){-1!=Ei(S+=Ci(Xi(y),"&","&\\f"),"&\\f")&&(v=-1);break}case 34:case 39:case 91:S+=Xi(y);break;case 9:case 10:case 13:case 32:S+=Ki(p);break;case 92:S+=qi(Vi()-1,7);continue;case 47:switch(Ui()){case 42:case 47:Ri(no(Zi(Bi(),Vi()),t,n),l);break;default:S+="/"}break;case 123*g:s[c++]=ji(S)*v;case 125*g:case 59:case 0:switch(y){case 0:case 125:m=0;case 59+u:-1==v&&(S=Ci(S,/\\f/g,"")),f>0&&ji(S)-h&&Ri(f>32?io(S+";",i,n,h-1):io(Ci(S," ","")+";",i,n,h-2),l);break;case 59:S+=";";default:if(Ri(w=to(S,t,n,c,u,o,s,b,_=[],k=[],h),r),123===y)if(0===u)eo(S,t,w,w,_,r,h,s,k);else switch(99===d&&110===Ti(S,3)?100:d){case 100:case 108:case 109:case 115:eo(e,w,w,i&&Ri(to(e,w,w,0,0,o,s,b,o,_=[],h),k),o,k,h,s,i?_:k);break;default:eo(S,w,w,w,[""],k,0,s,k)}}c=u=f=0,g=v=1,b=S="",h=a;break;case 58:h=1+ji(S),f=p;default:if(g<1)if(123==y)--g;else if(125==y&&0==g++&&125==Fi())continue;switch(S+=ki(y),y*g){case 38:v=u>0?1:(S+="\\f",-1);break;case 44:s[c++]=(ji(S)-1)*v,v=1;break;case 64:45===Ui()&&(S+=Xi(Bi())),d=Ui(),u=h=ji(b=S+=$i(Vi())),y++;break;case 45:45===p&&2==ji(S)&&(g=0)}}return r}function to(e,t,n,i,o,r,a,s,l,c,u){for(var h=o-1,d=0===o?r:[""],f=xi(d),p=0,g=0,m=0;p<i;++p)for(var v=0,y=Oi(e,h+1,h=_i(g=a[p])),b=e;v<f;++v)(b=Si(g>0?d[v]+" "+y:Ci(y,/&\\f/g,d[v])))&&(l[m++]=b);return Mi(e,t,n,0===o?vi:s,l,c,u)}function no(e,t,n){return Mi(e,t,n,mi,ki(Pi),Oi(e,2,-2),0)}function io(e,t,n,i){return Mi(e,t,n,yi,Oi(e,0,i),Oi(e,i+1,-1),i)}function oo(e,t){for(var n="",i=xi(e),o=0;o<i;o++)n+=t(e[o],o,e,t)||"";return n}function ro(e,t,n,i){switch(e.type){case"@layer":if(e.children.length)break;case"@import":case yi:return e.return=e.return||e.value;case mi:return"";case bi:return e.return=e.value+"{"+oo(e.children,i)+"}";case vi:e.value=e.props.join(",")}return ji(n=oo(e.children,i))?e.return=e.value+"{"+n+"}":""}var ao=function(e,t,n){for(var i=0,o=0;i=o,o=Ui(),38===i&&12===o&&(t[n]=1),!Gi(o);)Bi();return Wi(e,Ni)},so=function(e,t){return Yi(function(e,t){var n=-1,i=44;do{switch(Gi(i)){case 0:38===i&&12===Ui()&&(t[n]=1),e[n]+=ao(Ni-1,t,n);break;case 2:e[n]+=Xi(i);break;case 4:if(44===i){e[++n]=58===Ui()?"&\\f":"",t[n]=e[n].length;break}default:e[n]+=ki(i)}}while(i=Bi());return e}(Hi(e),t))},lo=new WeakMap,co=function(e){if("rule"===e.type&&e.parent&&!(e.length<1)){for(var t=e.value,n=e.parent,i=e.column===n.column&&e.line===n.line;"rule"!==n.type;)if(!(n=n.parent))return;if((1!==e.props.length||58===t.charCodeAt(0)||lo.get(n))&&!i){lo.set(e,!0);for(var o=[],r=so(t,o),a=n.props,s=0,l=0;s<r.length;s++)for(var c=0;c<a.length;c++,l++)e.props[l]=o[s]?r[s].replace(/&\\f/g,a[c]):a[c]+" "+r[s]}}},uo=function(e){if("decl"===e.type){var t=e.value;108===t.charCodeAt(0)&&98===t.charCodeAt(2)&&(e.return="",e.value="")}};function ho(e,t){switch(function(e,t){return 45^Ti(e,0)?(((t<<2^Ti(e,0))<<2^Ti(e,1))<<2^Ti(e,2))<<2^Ti(e,3):0}(e,t)){case 5103:return gi+"print-"+e+e;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return gi+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return gi+e+pi+e+fi+e+e;case 6828:case 4268:return gi+e+fi+e+e;case 6165:return gi+e+fi+"flex-"+e+e;case 5187:return gi+e+Ci(e,/(\\w+).+(:[^]+)/,gi+"box-$1$2"+fi+"flex-$1$2")+e;case 5443:return gi+e+fi+"flex-item-"+Ci(e,/flex-|-self/,"")+e;case 4675:return gi+e+fi+"flex-line-pack"+Ci(e,/align-content|flex-|-self/,"")+e;case 5548:return gi+e+fi+Ci(e,"shrink","negative")+e;case 5292:return gi+e+fi+Ci(e,"basis","preferred-size")+e;case 6060:return gi+"box-"+Ci(e,"-grow","")+gi+e+fi+Ci(e,"grow","positive")+e;case 4554:return gi+Ci(e,/([^-])(transform)/g,"$1"+gi+"$2")+e;case 6187:return Ci(Ci(Ci(e,/(zoom-|grab)/,gi+"$1"),/(image-set)/,gi+"$1"),e,"")+e;case 5495:case 3959:return Ci(e,/(image-set\\([^]*)/,gi+"$1$`$1");case 4968:return Ci(Ci(e,/(.+:)(flex-)?(.*)/,gi+"box-pack:$3"+fi+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+gi+e+e;case 4095:case 3583:case 4068:case 2532:return Ci(e,/(.+)-inline(.+)/,gi+"$1$2")+e;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(ji(e)-1-t>6)switch(Ti(e,t+1)){case 109:if(45!==Ti(e,t+4))break;case 102:return Ci(e,/(.+:)(.+)-([^]+)/,"$1"+gi+"$2-$3$1"+pi+(108==Ti(e,t+3)?"$3":"$2-$3"))+e;case 115:return~Ei(e,"stretch")?ho(Ci(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==Ti(e,t+1))break;case 6444:switch(Ti(e,ji(e)-3-(~Ei(e,"!important")&&10))){case 107:return Ci(e,":",":"+gi)+e;case 101:return Ci(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+gi+(45===Ti(e,14)?"inline-":"")+"box$3$1"+gi+"$2$3$1"+fi+"$2box$3")+e}break;case 5936:switch(Ti(e,t+11)){case 114:return gi+e+fi+Ci(e,/[svh]\\w+-[tblr]{2}/,"tb")+e;case 108:return gi+e+fi+Ci(e,/[svh]\\w+-[tblr]{2}/,"tb-rl")+e;case 45:return gi+e+fi+Ci(e,/[svh]\\w+-[tblr]{2}/,"lr")+e}return gi+e+fi+e+e}return e}var fo=[function(e,t,n,i){if(e.length>-1&&!e.return)switch(e.type){case yi:e.return=ho(e.value,e.length);break;case bi:return oo([zi(e,{value:Ci(e.value,"@","@"+gi)})],i);case vi:if(e.length)return function(e,t){return e.map(t).join("")}(e.props,(function(t){switch(function(e,t){return(e=t.exec(e))?e[0]:e}(t,/(::plac\\w+|:read-\\w+)/)){case":read-only":case":read-write":return oo([zi(e,{props:[Ci(t,/:(read-\\w+)/,":-moz-$1")]})],i);case"::placeholder":return oo([zi(e,{props:[Ci(t,/:(plac\\w+)/,":"+gi+"input-$1")]}),zi(e,{props:[Ci(t,/:(plac\\w+)/,":-moz-$1")]}),zi(e,{props:[Ci(t,/:(plac\\w+)/,fi+"input-$1")]})],i)}return""}))}}],po=function(e){var t=e.key;if("css"===t){var n=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(n,(function(e){-1!==e.getAttribute("data-emotion").indexOf(" ")&&(document.head.appendChild(e),e.setAttribute("data-s",""))}))}var i,o,r=e.stylisPlugins||fo,a={},s=[];i=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll(\'style[data-emotion^="\'+t+\' "]\'),(function(e){for(var t=e.getAttribute("data-emotion").split(" "),n=1;n<t.length;n++)a[t[n]]=!0;s.push(e)}));var l,c,u=[ro,(c=function(e){l.insert(e)},function(e){e.root||(e=e.return)&&c(e)})],h=function(e){var t=xi(e);return function(n,i,o,r){for(var a="",s=0;s<t;s++)a+=e[s](n,i,o,r)||"";return a}}([co,uo].concat(r,u));o=function(e,t,n,i){l=n,oo(Qi(e?e+"{"+t.styles+"}":t.styles),h),i&&(d.inserted[t.name]=!0)};var d={key:t,sheet:new di({key:t,container:i,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:a,registered:{},insert:o};return d.sheet.hydrate(s),d};function go(){return go=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)({}).hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},go.apply(null,arguments)}var mo,vo={},yo={};!function(e){e.exports=function(){if(mo)return yo;mo=1;var e="function"==typeof Symbol&&Symbol.for,t=e?Symbol.for("react.element"):60103,n=e?Symbol.for("react.portal"):60106,i=e?Symbol.for("react.fragment"):60107,o=e?Symbol.for("react.strict_mode"):60108,r=e?Symbol.for("react.profiler"):60114,a=e?Symbol.for("react.provider"):60109,s=e?Symbol.for("react.context"):60110,l=e?Symbol.for("react.async_mode"):60111,c=e?Symbol.for("react.concurrent_mode"):60111,u=e?Symbol.for("react.forward_ref"):60112,h=e?Symbol.for("react.suspense"):60113,d=e?Symbol.for("react.suspense_list"):60120,f=e?Symbol.for("react.memo"):60115,p=e?Symbol.for("react.lazy"):60116,g=e?Symbol.for("react.block"):60121,m=e?Symbol.for("react.fundamental"):60117,v=e?Symbol.for("react.responder"):60118,y=e?Symbol.for("react.scope"):60119;function b(e){if("object"===_typeof(e)&&null!==e){var d=e.$$typeof;switch(d){case t:switch(e=e.type){case l:case c:case i:case r:case o:case h:return e;default:switch(e=e&&e.$$typeof){case s:case u:case p:case f:case a:return e;default:return d}}case n:return d}}}function _(e){return b(e)===c}return yo.AsyncMode=l,yo.ConcurrentMode=c,yo.ContextConsumer=s,yo.ContextProvider=a,yo.Element=t,yo.ForwardRef=u,yo.Fragment=i,yo.Lazy=p,yo.Memo=f,yo.Portal=n,yo.Profiler=r,yo.StrictMode=o,yo.Suspense=h,yo.isAsyncMode=function(e){return _(e)||b(e)===l},yo.isConcurrentMode=_,yo.isContextConsumer=function(e){return b(e)===s},yo.isContextProvider=function(e){return b(e)===a},yo.isElement=function(e){return"object"===_typeof(e)&&null!==e&&e.$$typeof===t},yo.isForwardRef=function(e){return b(e)===u},yo.isFragment=function(e){return b(e)===i},yo.isLazy=function(e){return b(e)===p},yo.isMemo=function(e){return b(e)===f},yo.isPortal=function(e){return b(e)===n},yo.isProfiler=function(e){return b(e)===r},yo.isStrictMode=function(e){return b(e)===o},yo.isSuspense=function(e){return b(e)===h},yo.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===i||e===c||e===r||e===o||e===h||e===d||"object"===_typeof(e)&&null!==e&&(e.$$typeof===p||e.$$typeof===f||e.$$typeof===a||e.$$typeof===s||e.$$typeof===u||e.$$typeof===m||e.$$typeof===v||e.$$typeof===y||e.$$typeof===g)},yo.typeOf=b,yo}()}({get exports(){return vo},set exports(e){vo=e}});var bo=vo,_o={};_o[bo.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},_o[bo.Memo]={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0};function ko(e,t,n){var i="";return n.split(" ").forEach((function(n){void 0!==e[n]?t.push(e[n]+";"):n&&(i+=n+" ")})),i}var wo=function(e,t,n){var i=e.key+"-"+t.name;!1===n&&void 0===e.registered[i]&&(e.registered[i]=t.styles)},So=function(e,t,n){wo(e,t,n);var i=e.key+"-"+t.name;if(void 0===e.inserted[t.name]){var o=t;do{e.insert(t===o?"."+i:"",o,e.sheet,!0),o=o.next}while(void 0!==o)}};var Co={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1};function Eo(e){var t=Object.create(null);return function(n){return void 0===t[n]&&(t[n]=e(n)),t[n]}}var To=/[A-Z]|^ms/g,Oo=/_EMO_([^_]+?)_([^]*?)_EMO_/g,jo=function(e){return 45===e.charCodeAt(1)},xo=function(e){return null!=e&&"boolean"!=typeof e},Ro=Eo((function(e){return jo(e)?e:e.replace(To,"-$&").toLowerCase()})),Io=function(e,t){switch(e){case"animation":case"animationName":if("string"==typeof t)return t.replace(Oo,(function(e,t,n){return Do={name:t,styles:n,next:Do},t}))}return 1===Co[e]||jo(e)||"number"!=typeof t||0===t?t:t+"px"};function Ao(e,t,n){if(null==n)return"";if(void 0!==n.__emotion_styles)return n;switch(_typeof(n)){case"boolean":return"";case"object":if(1===n.anim)return Do={name:n.name,styles:n.styles,next:Do},n.name;if(void 0!==n.styles){var i=n.next;if(void 0!==i)for(;void 0!==i;)Do={name:i.name,styles:i.styles,next:Do},i=i.next;return n.styles+";"}return function(e,t,n){var i="";if(Array.isArray(n))for(var o=0;o<n.length;o++)i+=Ao(e,t,n[o])+";";else for(var r in n){var a=n[r];if("object"!==_typeof(a))null!=t&&void 0!==t[a]?i+=r+"{"+t[a]+"}":xo(a)&&(i+=Ro(r)+":"+Io(r,a)+";");else if(!Array.isArray(a)||"string"!=typeof a[0]||null!=t&&void 0!==t[a[0]]){var s=Ao(e,t,a);switch(r){case"animation":case"animationName":i+=Ro(r)+":"+s+";";break;default:i+=r+"{"+s+"}"}}else for(var l=0;l<a.length;l++)xo(a[l])&&(i+=Ro(r)+":"+Io(r,a[l])+";")}return i}(e,t,n);case"function":if(void 0!==e){var o=Do,r=n(e);return Do=o,Ao(e,t,r)}}if(null==t)return n;var a=t[n];return void 0!==a?a:n}var Do,No=/label:\\s*([^\\s;\\n{]+)\\s*(;|$)/g,Po=function(e,t,n){if(1===e.length&&"object"===_typeof(e[0])&&null!==e[0]&&void 0!==e[0].styles)return e[0];var i=!0,o="";Do=void 0;var r=e[0];null==r||void 0===r.raw?(i=!1,o+=Ao(n,t,r)):o+=r[0];for(var a=1;a<e.length;a++)o+=Ao(n,t,e[a]),i&&(o+=r[a]);No.lastIndex=0;for(var s,l="";null!==(s=No.exec(o));)l+="-"+s[1];var c=function(e){for(var t,n=0,i=0,o=e.length;o>=4;++i,o-=4)t=1540483477*(65535&(t=255&e.charCodeAt(i)|(255&e.charCodeAt(++i))<<8|(255&e.charCodeAt(++i))<<16|(255&e.charCodeAt(++i))<<24))+(59797*(t>>>16)<<16),n=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&n)+(59797*(n>>>16)<<16);switch(o){case 3:n^=(255&e.charCodeAt(i+2))<<16;case 2:n^=(255&e.charCodeAt(i+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(i)))+(59797*(n>>>16)<<16)}return(((n=1540483477*(65535&(n^=n>>>13))+(59797*(n>>>16)<<16))^n>>>15)>>>0).toString(36)}(o)+l;return{name:c,styles:o,next:Do}},Lo=!!hi.useInsertionEffect&&hi.useInsertionEffect,Mo=Lo||function(e){return e()},zo=Lo||ai.useLayoutEffect,Fo={}.hasOwnProperty,Bo=ai.createContext("undefined"!=typeof HTMLElement?po({key:"css"}):null),Uo=Bo.Provider,Vo=function(e){return ai.forwardRef((function(t,n){var i=ai.useContext(Bo);return e(t,i,n)}))},Wo=ai.createContext({}),Go="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",Ho=function(e,t){var n={};for(var i in t)Fo.call(t,i)&&(n[i]=t[i]);return n[Go]=e,n},Yo=function(e){var t=e.cache,n=e.serialized,i=e.isStringTag;return wo(t,n,i),Mo((function(){return So(t,n,i)})),null},Xo=Vo((function(e,t,n){var i=e.css;"string"==typeof i&&void 0!==t.registered[i]&&(i=t.registered[i]);var o=e[Go],r=[i],a="";"string"==typeof e.className?a=ko(t.registered,r,e.className):null!=e.className&&(a=e.className+" ");var s=Po(r,void 0,ai.useContext(Wo));a+=t.key+"-"+s.name;var l={};for(var c in e)Fo.call(e,c)&&"css"!==c&&c!==Go&&(l[c]=e[c]);return l.ref=n,l.className=a,ai.createElement(ai.Fragment,null,ai.createElement(Yo,{cache:t,serialized:s,isStringTag:"string"==typeof o}),ai.createElement(o,l))})),Ko=Xo,qo=ii.Fragment;function Jo(e,t,n){return Fo.call(t,"css")?ii.jsx(Ko,Ho(e,t),n):ii.jsx(e,t,n)}function Zo(e,t,n){return Fo.call(t,"css")?ii.jsxs(Ko,Ho(e,t),n):ii.jsxs(e,t,n)}var $o,Qo,er,tr,nr={},ir={},or={},rr={get exports(){return or},set exports(e){or=e}},ar={};function sr(){return Qo||(Qo=1,function(e){e.exports=($o||($o=1,function(e){function t(e,t){var n=e.length;e.push(t);e:for(;0<n;){var i=n-1>>>1,r=e[i];if(!(0<o(r,t)))break e;e[i]=t,e[n]=r,n=i}}function n(e){return 0===e.length?null:e[0]}function i(e){if(0===e.length)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;e:for(var i=0,r=e.length,a=r>>>1;i<a;){var s=2*(i+1)-1,l=e[s],c=s+1,u=e[c];if(0>o(l,n))c<r&&0>o(u,l)?(e[i]=u,e[c]=n,i=c):(e[i]=l,e[s]=n,i=s);else{if(!(c<r&&0>o(u,n)))break e;e[i]=u,e[c]=n,i=c}}}return t}function o(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if("object"===("undefined"==typeof performance?"undefined":_typeof(performance))&&"function"==typeof performance.now){var r=performance;e.unstable_now=function(){return r.now()}}else{var a=Date,s=a.now();e.unstable_now=function(){return a.now()-s}}var l=[],c=[],u=1,h=null,d=3,f=!1,p=!1,g=!1,m="function"==typeof setTimeout?setTimeout:null,v="function"==typeof clearTimeout?clearTimeout:null,y="undefined"!=typeof setImmediate?setImmediate:null;function b(e){for(var o=n(c);null!==o;){if(null===o.callback)i(c);else{if(!(o.startTime<=e))break;i(c),o.sortIndex=o.expirationTime,t(l,o)}o=n(c)}}function _(e){if(g=!1,b(e),!p)if(null!==n(l))p=!0,A(k);else{var t=n(c);null!==t&&D(_,t.startTime-e)}}function k(t,o){p=!1,g&&(g=!1,v(E),E=-1),f=!0;var r=d;try{for(b(o),h=n(l);null!==h&&(!(h.expirationTime>o)||t&&!j());){var a=h.callback;if("function"==typeof a){h.callback=null,d=h.priorityLevel;var s=a(h.expirationTime<=o);o=e.unstable_now(),"function"==typeof s?h.callback=s:h===n(l)&&i(l),b(o)}else i(l);h=n(l)}if(null!==h)var u=!0;else{var m=n(c);null!==m&&D(_,m.startTime-o),u=!1}return u}finally{h=null,d=r,f=!1}}"undefined"!=typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var w,S=!1,C=null,E=-1,T=5,O=-1;function j(){return!(e.unstable_now()-O<T)}function x(){if(null!==C){var t=e.unstable_now();O=t;var n=!0;try{n=C(!0,t)}finally{n?w():(S=!1,C=null)}}else S=!1}if("function"==typeof y)w=function(){y(x)};else if("undefined"!=typeof MessageChannel){var R=new MessageChannel,I=R.port2;R.port1.onmessage=x,w=function(){I.postMessage(null)}}else w=function(){m(x,0)};function A(e){C=e,S||(S=!0,w())}function D(t,n){E=m((function(){t(e.unstable_now())}),n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_continueExecution=function(){p||f||(p=!0,A(k))},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):T=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return d},e.unstable_getFirstCallbackNode=function(){return n(l)},e.unstable_next=function(e){switch(d){case 1:case 2:case 3:var t=3;break;default:t=d}var n=d;d=t;try{return e()}finally{d=n}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=d;d=e;try{return t()}finally{d=n}},e.unstable_scheduleCallback=function(i,o,r){var a=e.unstable_now();switch(r="object"===_typeof(r)&&null!==r&&"number"==typeof(r=r.delay)&&0<r?a+r:a,i){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return i={id:u++,callback:o,priorityLevel:i,startTime:r,expirationTime:s=r+s,sortIndex:-1},r>a?(i.sortIndex=r,t(c,i),null===n(l)&&i===n(c)&&(g?(v(E),E=-1):g=!0,D(_,r-a))):(i.sortIndex=s,t(l,i),p||f||(p=!0,A(k))),i},e.unstable_shouldYield=j,e.unstable_wrapCallback=function(e){var t=d;return function(){var n=d;d=t;try{return e.apply(this,arguments)}finally{d=n}}}}(ar)),ar)}(rr)),or}\n/**\n * @license React\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 */function lr(){if(er)return ir;er=1;var e=ai,t=sr();function n(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var i=new Set,o={};function r(e,t){a(e,t),a(e+"Capture",t)}function a(e,t){for(o[e]=t,e=0;e<t.length;e++)i.add(t[e])}var s=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),l=Object.prototype.hasOwnProperty,c=/^[: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]*$/,u={},h={};function d(e,t,n,i){if(null==t||function(e,t,n,i){if(null!==n&&0===n.type)return!1;switch(_typeof(t)){case"function":case"symbol":return!0;case"boolean":return!i&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,i))return!0;if(i)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function f(e,t,n,i,o,r,a){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=i,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=r,this.removeEmptyString=a}var p={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){p[e]=new f(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];p[t]=new f(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){p[e]=new f(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){p[e]=new f(e,2,!1,e,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(e){p[e]=new f(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){p[e]=new f(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){p[e]=new f(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){p[e]=new f(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){p[e]=new f(e,5,!1,e.toLowerCase(),null,!1,!1)}));var g=/[\\-:]([a-z])/g;function m(e){return e[1].toUpperCase()}function v(e,t,n,i){var o=p.hasOwnProperty(t)?p[t]:null;(null!==o?0!==o.type:i||!(2<t.length)||"o"!==t[0]&&"O"!==t[0]||"n"!==t[1]&&"N"!==t[1])&&(d(t,n,o,i)&&(n=null),i||null===o?function(e){return!!l.call(h,e)||!l.call(u,e)&&(c.test(e)?h[e]=!0:(u[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):o.mustUseProperty?e[o.propertyName]=null===n?3!==o.type&&"":n:(t=o.attributeName,i=o.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(o=o.type)||4===o&&!0===n?"":""+n,i?e.setAttributeNS(i,t,n):e.setAttribute(t,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(e){var t=e.replace(g,m);p[t]=new f(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(g,m);p[t]=new f(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(g,m);p[t]=new f(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){p[e]=new f(e,1,!1,e.toLowerCase(),null,!1,!1)})),p.xlinkHref=new f("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){p[e]=new f(e,1,!1,e.toLowerCase(),null,!0,!0)}));var y=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,b=Symbol.for("react.element"),_=Symbol.for("react.portal"),k=Symbol.for("react.fragment"),w=Symbol.for("react.strict_mode"),S=Symbol.for("react.profiler"),C=Symbol.for("react.provider"),E=Symbol.for("react.context"),T=Symbol.for("react.forward_ref"),O=Symbol.for("react.suspense"),j=Symbol.for("react.suspense_list"),x=Symbol.for("react.memo"),R=Symbol.for("react.lazy"),I=Symbol.for("react.offscreen"),A=Symbol.iterator;function D(e){return null===e||"object"!==_typeof(e)?null:"function"==typeof(e=A&&e[A]||e["@@iterator"])?e:null}var N,P=Object.assign;function L(e){if(void 0===N)try{throw Error()}catch(e){var t=e.stack.trim().match(/\\n( *(at )?)/);N=t&&t[1]||""}return"\\n"+N+e}var M=!1;function z(e,t){if(!e||M)return"";M=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"===("undefined"==typeof Reflect?"undefined":_typeof(Reflect))&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var i=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){i=e}e.call(t.prototype)}else{try{throw Error()}catch(e){i=e}e()}}catch(t){if(t&&i&&"string"==typeof t.stack){for(var o=t.stack.split("\\n"),r=i.stack.split("\\n"),a=o.length-1,s=r.length-1;1<=a&&0<=s&&o[a]!==r[s];)s--;for(;1<=a&&0<=s;a--,s--)if(o[a]!==r[s]){if(1!==a||1!==s)do{if(a--,0>--s||o[a]!==r[s]){var l="\\n"+o[a].replace(" at new "," at ");return e.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",e.displayName)),l}}while(1<=a&&0<=s);break}}}finally{M=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?L(e):""}function F(e){switch(e.tag){case 5:return L(e.type);case 16:return L("Lazy");case 13:return L("Suspense");case 19:return L("SuspenseList");case 0:case 2:case 15:return e=z(e.type,!1);case 11:return e=z(e.type.render,!1);case 1:return e=z(e.type,!0);default:return""}}function B(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case k:return"Fragment";case _:return"Portal";case S:return"Profiler";case w:return"StrictMode";case O:return"Suspense";case j:return"SuspenseList"}if("object"===_typeof(e))switch(e.$$typeof){case E:return(e.displayName||"Context")+".Consumer";case C:return(e._context.displayName||"Context")+".Provider";case T:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case x:return null!==(t=e.displayName||null)?t:B(e.type)||"Memo";case R:t=e._payload,e=e._init;try{return B(e(t))}catch(e){}}return null}function U(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=(e=t.render).displayName||e.name||"",t.displayName||(""!==e?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return B(t);case 8:return t===w?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"==typeof t)return t.displayName||t.name||null;if("string"==typeof t)return t}return null}function V(e){switch(_typeof(e)){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function W(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function G(e){e._valueTracker||(e._valueTracker=function(e){var t=W(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),i=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var o=n.get,r=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(e){i=""+e,r.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return i},setValue:function(e){i=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function H(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),i="";return e&&(i=W(e)?e.checked?"true":"false":e.value),(e=i)!==n&&(t.setValue(e),!0)}function Y(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function X(e,t){var n=t.checked;return P({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function K(e,t){var n=null==t.defaultValue?"":t.defaultValue,i=null!=t.checked?t.checked:t.defaultChecked;n=V(null!=t.value?t.value:n),e._wrapperState={initialChecked:i,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function q(e,t){null!=(t=t.checked)&&v(e,"checked",t,!1)}function J(e,t){q(e,t);var n=V(t.value),i=t.type;if(null!=n)"number"===i?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===i||"reset"===i)return void e.removeAttribute("value");t.hasOwnProperty("value")?$(e,t.type,n):t.hasOwnProperty("defaultValue")&&$(e,t.type,V(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function Z(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var i=t.type;if(!("submit"!==i&&"reset"!==i||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function $(e,t,n){"number"===t&&Y(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Q=Array.isArray;function ee(e,t,n,i){if(e=e.options,t){t={};for(var o=0;o<n.length;o++)t["$"+n[o]]=!0;for(n=0;n<e.length;n++)o=t.hasOwnProperty("$"+e[n].value),e[n].selected!==o&&(e[n].selected=o),o&&i&&(e[n].defaultSelected=!0)}else{for(n=""+V(n),t=null,o=0;o<e.length;o++){if(e[o].value===n)return e[o].selected=!0,void(i&&(e[o].defaultSelected=!0));null!==t||e[o].disabled||(t=e[o])}null!==t&&(t.selected=!0)}}function te(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(n(91));return P({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function ne(e,t){var i=t.value;if(null==i){if(i=t.children,t=t.defaultValue,null!=i){if(null!=t)throw Error(n(92));if(Q(i)){if(1<i.length)throw Error(n(93));i=i[0]}t=i}null==t&&(t=""),i=t}e._wrapperState={initialValue:V(i)}}function ie(e,t){var n=V(t.value),i=V(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=i&&(e.defaultValue=""+i)}function oe(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}function re(e){switch(e){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 ae(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?re(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var se,le=function(e){return"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(t,n,i,o){MSApp.execUnsafeLocalFunction((function(){return e(t,n)}))}:e}((function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((se=se||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=se.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}}));function ce(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var ue={animationIterationCount:!0,aspectRatio:!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,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},he=["Webkit","ms","Moz","O"];function de(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||ue.hasOwnProperty(e)&&ue[e]?(""+t).trim():t+"px"}function fe(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var i=0===n.indexOf("--"),o=de(n,t[n],i);"float"===n&&(n="cssFloat"),i?e.setProperty(n,o):e[n]=o}}Object.keys(ue).forEach((function(e){he.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),ue[t]=ue[e]}))}));var pe=P({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});function ge(e,t){if(t){if(pe[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(n(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(n(60));if("object"!==_typeof(t.dangerouslySetInnerHTML)||!("__html"in t.dangerouslySetInnerHTML))throw Error(n(61))}if(null!=t.style&&"object"!==_typeof(t.style))throw Error(n(62))}}function me(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){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}}var ve=null;function ye(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var be=null,_e=null,ke=null;function we(e){if(e=yo(e)){if("function"!=typeof be)throw Error(n(280));var t=e.stateNode;t&&(t=_o(t),be(e.stateNode,e.type,t))}}function Se(e){_e?ke?ke.push(e):ke=[e]:_e=e}function Ce(){if(_e){var e=_e,t=ke;if(ke=_e=null,we(e),t)for(e=0;e<t.length;e++)we(t[e])}}function Ee(e,t){return e(t)}function Te(){}var Oe=!1;function je(e,t,n){if(Oe)return e(t,n);Oe=!0;try{return Ee(e,t,n)}finally{Oe=!1,(null!==_e||null!==ke)&&(Te(),Ce())}}function xe(e,t){var i=e.stateNode;if(null===i)return null;var o=_o(i);if(null===o)return null;i=o[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(o=!o.disabled)||(o=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!o;break e;default:e=!1}if(e)return null;if(i&&"function"!=typeof i)throw Error(n(231,t,_typeof(i)));return i}var Re=!1;if(s)try{var Ie={};Object.defineProperty(Ie,"passive",{get:function(){Re=!0}}),window.addEventListener("test",Ie,Ie),window.removeEventListener("test",Ie,Ie)}catch(e){Re=!1}function Ae(e,t,n,i,o,r,a,s,l){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(e){this.onError(e)}}var De=!1,Ne=null,Pe=!1,Le=null,Me={onError:function(e){De=!0,Ne=e}};function ze(e,t,n,i,o,r,a,s,l){De=!1,Ne=null,Ae.apply(Me,arguments)}function Fe(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{0!=(4098&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function Be(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function Ue(e){if(Fe(e)!==e)throw Error(n(188))}function Ve(e){return null!==(e=function(e){var t=e.alternate;if(!t){if(null===(t=Fe(e)))throw Error(n(188));return t!==e?null:e}for(var i=e,o=t;;){var r=i.return;if(null===r)break;var a=r.alternate;if(null===a){if(null!==(o=r.return)){i=o;continue}break}if(r.child===a.child){for(a=r.child;a;){if(a===i)return Ue(r),e;if(a===o)return Ue(r),t;a=a.sibling}throw Error(n(188))}if(i.return!==o.return)i=r,o=a;else{for(var s=!1,l=r.child;l;){if(l===i){s=!0,i=r,o=a;break}if(l===o){s=!0,o=r,i=a;break}l=l.sibling}if(!s){for(l=a.child;l;){if(l===i){s=!0,i=a,o=r;break}if(l===o){s=!0,o=a,i=r;break}l=l.sibling}if(!s)throw Error(n(189))}}if(i.alternate!==o)throw Error(n(190))}if(3!==i.tag)throw Error(n(188));return i.stateNode.current===i?e:t}(e))?We(e):null}function We(e){if(5===e.tag||6===e.tag)return e;for(e=e.child;null!==e;){var t=We(e);if(null!==t)return t;e=e.sibling}return null}var Ge=t.unstable_scheduleCallback,He=t.unstable_cancelCallback,Ye=t.unstable_shouldYield,Xe=t.unstable_requestPaint,Ke=t.unstable_now,qe=t.unstable_getCurrentPriorityLevel,Je=t.unstable_ImmediatePriority,Ze=t.unstable_UserBlockingPriority,$e=t.unstable_NormalPriority,Qe=t.unstable_LowPriority,et=t.unstable_IdlePriority,tt=null,nt=null;var it=Math.clz32?Math.clz32:function(e){return e>>>=0,0===e?32:31-(ot(e)/rt|0)|0},ot=Math.log,rt=Math.LN2;var at=64,st=4194304;function lt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ct(e,t){var n=e.pendingLanes;if(0===n)return 0;var i=0,o=e.suspendedLanes,r=e.pingedLanes,a=268435455&n;if(0!==a){var s=a&~o;0!==s?i=lt(s):0!==(r&=a)&&(i=lt(r))}else 0!==(a=n&~o)?i=lt(a):0!==r&&(i=lt(r));if(0===i)return 0;if(0!==t&&t!==i&&0==(t&o)&&((o=i&-i)>=(r=t&-t)||16===o&&0!=(4194240&r)))return t;if(0!=(4&i)&&(i|=16&n),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=i;0<t;)o=1<<(n=31-it(t)),i|=e[n],t&=~o;return i}function ut(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function ht(e){return 0!==(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function dt(){var e=at;return 0==(4194240&(at<<=1))&&(at=64),e}function ft(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function pt(e,t,n){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-it(t)]=n}function gt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var i=31-it(n),o=1<<i;o&t|e[i]&t&&(e[i]|=t),n&=~o}}var mt=0;function vt(e){return 1<(e&=-e)?4<e?0!=(268435455&e)?16:536870912:4:1}var yt,bt,_t,kt,wt,St=!1,Ct=[],Et=null,Tt=null,Ot=null,jt=new Map,xt=new Map,Rt=[],It="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(" ");function At(e,t){switch(e){case"focusin":case"focusout":Et=null;break;case"dragenter":case"dragleave":Tt=null;break;case"mouseover":case"mouseout":Ot=null;break;case"pointerover":case"pointerout":jt.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":xt.delete(t.pointerId)}}function Dt(e,t,n,i,o,r){return null===e||e.nativeEvent!==r?(e={blockedOn:t,domEventName:n,eventSystemFlags:i,nativeEvent:r,targetContainers:[o]},null!==t&&(null!==(t=yo(t))&&bt(t)),e):(e.eventSystemFlags|=i,t=e.targetContainers,null!==o&&-1===t.indexOf(o)&&t.push(o),e)}function Nt(e){var t=vo(e.target);if(null!==t){var n=Fe(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=Be(n)))return e.blockedOn=t,void wt(e.priority,(function(){_t(n)}))}else if(3===t&&n.stateNode.current.memoizedState.isDehydrated)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function Pt(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Yt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=yo(n))&&bt(t),e.blockedOn=n,!1;var i=new(n=e.nativeEvent).constructor(n.type,n);ve=i,n.target.dispatchEvent(i),ve=null,t.shift()}return!0}function Lt(e,t,n){Pt(e)&&n.delete(t)}function Mt(){St=!1,null!==Et&&Pt(Et)&&(Et=null),null!==Tt&&Pt(Tt)&&(Tt=null),null!==Ot&&Pt(Ot)&&(Ot=null),jt.forEach(Lt),xt.forEach(Lt)}function zt(e,n){e.blockedOn===n&&(e.blockedOn=null,St||(St=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,Mt)))}function Ft(e){function t(t){return zt(t,e)}if(0<Ct.length){zt(Ct[0],e);for(var n=1;n<Ct.length;n++){var i=Ct[n];i.blockedOn===e&&(i.blockedOn=null)}}for(null!==Et&&zt(Et,e),null!==Tt&&zt(Tt,e),null!==Ot&&zt(Ot,e),jt.forEach(t),xt.forEach(t),n=0;n<Rt.length;n++)(i=Rt[n]).blockedOn===e&&(i.blockedOn=null);for(;0<Rt.length&&null===(n=Rt[0]).blockedOn;)Nt(n),null===n.blockedOn&&Rt.shift()}var Bt=y.ReactCurrentBatchConfig,Ut=!0;function Vt(e,t,n,i){var o=mt,r=Bt.transition;Bt.transition=null;try{mt=1,Gt(e,t,n,i)}finally{mt=o,Bt.transition=r}}function Wt(e,t,n,i){var o=mt,r=Bt.transition;Bt.transition=null;try{mt=4,Gt(e,t,n,i)}finally{mt=o,Bt.transition=r}}function Gt(e,t,n,i){if(Ut){var o=Yt(e,t,n,i);if(null===o)Vi(e,t,i,Ht,n),At(e,i);else if(function(e,t,n,i,o){switch(t){case"focusin":return Et=Dt(Et,e,t,n,i,o),!0;case"dragenter":return Tt=Dt(Tt,e,t,n,i,o),!0;case"mouseover":return Ot=Dt(Ot,e,t,n,i,o),!0;case"pointerover":var r=o.pointerId;return jt.set(r,Dt(jt.get(r)||null,e,t,n,i,o)),!0;case"gotpointercapture":return r=o.pointerId,xt.set(r,Dt(xt.get(r)||null,e,t,n,i,o)),!0}return!1}(o,e,t,n,i))i.stopPropagation();else if(At(e,i),4&t&&-1<It.indexOf(e)){for(;null!==o;){var r=yo(o);if(null!==r&&yt(r),null===(r=Yt(e,t,n,i))&&Vi(e,t,i,Ht,n),r===o)break;o=r}null!==o&&i.stopPropagation()}else Vi(e,t,i,null,n)}}var Ht=null;function Yt(e,t,n,i){if(Ht=null,null!==(e=vo(e=ye(i))))if(null===(t=Fe(e)))e=null;else if(13===(n=t.tag)){if(null!==(e=Be(t)))return e;e=null}else if(3===n){if(t.stateNode.current.memoizedState.isDehydrated)return 3===t.tag?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Ht=e,null}function Xt(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(qe()){case Je:return 1;case Ze:return 4;case $e:case Qe:return 16;case et:return 536870912;default:return 16}default:return 16}}var Kt=null,qt=null,Jt=null;function Zt(){if(Jt)return Jt;var e,t,n=qt,i=n.length,o="value"in Kt?Kt.value:Kt.textContent,r=o.length;for(e=0;e<i&&n[e]===o[e];e++);var a=i-e;for(t=1;t<=a&&n[i-t]===o[r-t];t++);return Jt=o.slice(e,1<t?1-t:void 0)}function $t(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function Qt(){return!0}function en(){return!1}function tn(e){function t(t,n,i,o,r){for(var a in this._reactName=t,this._targetInst=i,this.type=n,this.nativeEvent=o,this.target=r,this.currentTarget=null,e)e.hasOwnProperty(a)&&(t=e[a],this[a]=t?t(o):o[a]);return this.isDefaultPrevented=(null!=o.defaultPrevented?o.defaultPrevented:!1===o.returnValue)?Qt:en,this.isPropagationStopped=en,this}return P(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=Qt)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=Qt)},persist:function(){},isPersistent:Qt}),t}var nn,on,rn,an={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},sn=tn(an),ln=P({},an,{view:0,detail:0}),cn=tn(ln),un=P({},ln,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:wn,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==rn&&(rn&&"mousemove"===e.type?(nn=e.screenX-rn.screenX,on=e.screenY-rn.screenY):on=nn=0,rn=e),nn)},movementY:function(e){return"movementY"in e?e.movementY:on}}),hn=tn(un),dn=tn(P({},un,{dataTransfer:0})),fn=tn(P({},ln,{relatedTarget:0})),pn=tn(P({},an,{animationName:0,elapsedTime:0,pseudoElement:0})),gn=P({},an,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),mn=tn(gn),vn=tn(P({},an,{data:0})),yn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},bn={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",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},_n={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function kn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=_n[e])&&!!t[e]}function wn(){return kn}var Sn=P({},ln,{key:function(e){if(e.key){var t=yn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=$t(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?bn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:wn,charCode:function(e){return"keypress"===e.type?$t(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?$t(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Cn=tn(Sn),En=tn(P({},un,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Tn=tn(P({},ln,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:wn})),On=tn(P({},an,{propertyName:0,elapsedTime:0,pseudoElement:0})),jn=P({},un,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),xn=tn(jn),Rn=[9,13,27,32],In=s&&"CompositionEvent"in window,An=null;s&&"documentMode"in document&&(An=document.documentMode);var Dn=s&&"TextEvent"in window&&!An,Nn=s&&(!In||An&&8<An&&11>=An),Pn=String.fromCharCode(32),Ln=!1;function Mn(e,t){switch(e){case"keyup":return-1!==Rn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function zn(e){return"object"===_typeof(e=e.detail)&&"data"in e?e.data:null}var Fn=!1;var Bn={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 Un(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Bn[e.type]:"textarea"===t}function Vn(e,t,n,i){Se(i),0<(t=Gi(t,"onChange")).length&&(n=new sn("onChange","change",null,n,i),e.push({event:n,listeners:t}))}var Wn=null,Gn=null;function Hn(e){Li(e,0)}function Yn(e){if(H(bo(e)))return e}function Xn(e,t){if("change"===e)return t}var Kn=!1;if(s){var qn;if(s){var Jn="oninput"in document;if(!Jn){var Zn=document.createElement("div");Zn.setAttribute("oninput","return;"),Jn="function"==typeof Zn.oninput}qn=Jn}else qn=!1;Kn=qn&&(!document.documentMode||9<document.documentMode)}function $n(){Wn&&(Wn.detachEvent("onpropertychange",Qn),Gn=Wn=null)}function Qn(e){if("value"===e.propertyName&&Yn(Gn)){var t=[];Vn(t,Gn,e,ye(e)),je(Hn,t)}}function ei(e,t,n){"focusin"===e?($n(),Gn=n,(Wn=t).attachEvent("onpropertychange",Qn)):"focusout"===e&&$n()}function ti(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Yn(Gn)}function ni(e,t){if("click"===e)return Yn(t)}function ii(e,t){if("input"===e||"change"===e)return Yn(t)}var oi="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t};function ri(e,t){if(oi(e,t))return!0;if("object"!==_typeof(e)||null===e||"object"!==_typeof(t)||null===t)return!1;var n=Object.keys(e),i=Object.keys(t);if(n.length!==i.length)return!1;for(i=0;i<n.length;i++){var o=n[i];if(!l.call(t,o)||!oi(e[o],t[o]))return!1}return!0}function si(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function li(e,t){var n,i=si(e);for(e=0;i;){if(3===i.nodeType){if(n=e+i.textContent.length,e<=t&&n>=t)return{node:i,offset:t-e};e=n}e:{for(;i;){if(i.nextSibling){i=i.nextSibling;break e}i=i.parentNode}i=void 0}i=si(i)}}function ci(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?ci(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function ui(){for(var e=window,t=Y();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(e){n=!1}if(!n)break;t=Y((e=t.contentWindow).document)}return t}function hi(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function di(e){var t=ui(),n=e.focusedElem,i=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&ci(n.ownerDocument.documentElement,n)){if(null!==i&&hi(n))if(t=i.start,void 0===(e=i.end)&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if((e=(t=n.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var o=n.textContent.length,r=Math.min(i.start,o);i=void 0===i.end?r:Math.min(i.end,o),!e.extend&&r>i&&(o=i,i=r,r=o),o=li(n,r);var a=li(n,i);o&&a&&(1!==e.rangeCount||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&((t=t.createRange()).setStart(o.node,o.offset),e.removeAllRanges(),r>i?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.offset),e.addRange(t)))}for(t=[],e=n;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"==typeof n.focus&&n.focus(),n=0;n<t.length;n++)(e=t[n]).element.scrollLeft=e.left,e.element.scrollTop=e.top}}var fi=s&&"documentMode"in document&&11>=document.documentMode,pi=null,gi=null,mi=null,vi=!1;function yi(e,t,n){var i=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;vi||null==pi||pi!==Y(i)||("selectionStart"in(i=pi)&&hi(i)?i={start:i.selectionStart,end:i.selectionEnd}:i={anchorNode:(i=(i.ownerDocument&&i.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:i.anchorOffset,focusNode:i.focusNode,focusOffset:i.focusOffset},mi&&ri(mi,i)||(mi=i,0<(i=Gi(gi,"onSelect")).length&&(t=new sn("onSelect","select",null,t,n),e.push({event:t,listeners:i}),t.target=pi)))}function bi(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var _i={animationend:bi("Animation","AnimationEnd"),animationiteration:bi("Animation","AnimationIteration"),animationstart:bi("Animation","AnimationStart"),transitionend:bi("Transition","TransitionEnd")},ki={},wi={};function Si(e){if(ki[e])return ki[e];if(!_i[e])return e;var t,n=_i[e];for(t in n)if(n.hasOwnProperty(t)&&t in wi)return ki[e]=n[t];return e}s&&(wi=document.createElement("div").style,"AnimationEvent"in window||(delete _i.animationend.animation,delete _i.animationiteration.animation,delete _i.animationstart.animation),"TransitionEvent"in window||delete _i.transitionend.transition);var Ci=Si("animationend"),Ei=Si("animationiteration"),Ti=Si("animationstart"),Oi=Si("transitionend"),ji=new Map,xi="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Ri(e,t){ji.set(e,t),r(t,[e])}for(var Ii=0;Ii<xi.length;Ii++){var Ai=xi[Ii];Ri(Ai.toLowerCase(),"on"+(Ai[0].toUpperCase()+Ai.slice(1)))}Ri(Ci,"onAnimationEnd"),Ri(Ei,"onAnimationIteration"),Ri(Ti,"onAnimationStart"),Ri("dblclick","onDoubleClick"),Ri("focusin","onFocus"),Ri("focusout","onBlur"),Ri(Oi,"onTransitionEnd"),a("onMouseEnter",["mouseout","mouseover"]),a("onMouseLeave",["mouseout","mouseover"]),a("onPointerEnter",["pointerout","pointerover"]),a("onPointerLeave",["pointerout","pointerover"]),r("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),r("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),r("onBeforeInput",["compositionend","keypress","textInput","paste"]),r("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),r("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),r("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Di="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Ni=new Set("cancel close invalid load scroll toggle".split(" ").concat(Di));function Pi(e,t,i){var o=e.type||"unknown-event";e.currentTarget=i,function(e,t,i,o,r,a,s,l,c){if(ze.apply(this,arguments),De){if(!De)throw Error(n(198));var u=Ne;De=!1,Ne=null,Pe||(Pe=!0,Le=u)}}(o,t,void 0,e),e.currentTarget=null}function Li(e,t){t=0!=(4&t);for(var n=0;n<e.length;n++){var i=e[n],o=i.event;i=i.listeners;e:{var r=void 0;if(t)for(var a=i.length-1;0<=a;a--){var s=i[a],l=s.instance,c=s.currentTarget;if(s=s.listener,l!==r&&o.isPropagationStopped())break e;Pi(o,s,c),r=l}else for(a=0;a<i.length;a++){if(l=(s=i[a]).instance,c=s.currentTarget,s=s.listener,l!==r&&o.isPropagationStopped())break e;Pi(o,s,c),r=l}}}if(Pe)throw e=Le,Pe=!1,Le=null,e}function Mi(e,t){var n=t[po];void 0===n&&(n=t[po]=new Set);var i=e+"__bubble";n.has(i)||(Ui(t,e,2,!1),n.add(i))}function zi(e,t,n){var i=0;t&&(i|=4),Ui(n,e,i,t)}var Fi="_reactListening"+Math.random().toString(36).slice(2);function Bi(e){if(!e[Fi]){e[Fi]=!0,i.forEach((function(t){"selectionchange"!==t&&(Ni.has(t)||zi(t,!1,e),zi(t,!0,e))}));var t=9===e.nodeType?e:e.ownerDocument;null===t||t[Fi]||(t[Fi]=!0,zi("selectionchange",!1,t))}}function Ui(e,t,n,i){switch(Xt(t)){case 1:var o=Vt;break;case 4:o=Wt;break;default:o=Gt}n=o.bind(null,t,n,e),o=void 0,!Re||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(o=!0),i?void 0!==o?e.addEventListener(t,n,{capture:!0,passive:o}):e.addEventListener(t,n,!0):void 0!==o?e.addEventListener(t,n,{passive:o}):e.addEventListener(t,n,!1)}function Vi(e,t,n,i,o){var r=i;if(0==(1&t)&&0==(2&t)&&null!==i)e:for(;;){if(null===i)return;var a=i.tag;if(3===a||4===a){var s=i.stateNode.containerInfo;if(s===o||8===s.nodeType&&s.parentNode===o)break;if(4===a)for(a=i.return;null!==a;){var l=a.tag;if((3===l||4===l)&&((l=a.stateNode.containerInfo)===o||8===l.nodeType&&l.parentNode===o))return;a=a.return}for(;null!==s;){if(null===(a=vo(s)))return;if(5===(l=a.tag)||6===l){i=r=a;continue e}s=s.parentNode}}i=i.return}je((function(){var i=r,o=ye(n),a=[];e:{var s=ji.get(e);if(void 0!==s){var l=sn,c=e;switch(e){case"keypress":if(0===$t(n))break e;case"keydown":case"keyup":l=Cn;break;case"focusin":c="focus",l=fn;break;case"focusout":c="blur",l=fn;break;case"beforeblur":case"afterblur":l=fn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":l=hn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":l=dn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":l=Tn;break;case Ci:case Ei:case Ti:l=pn;break;case Oi:l=On;break;case"scroll":l=cn;break;case"wheel":l=xn;break;case"copy":case"cut":case"paste":l=mn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":l=En}var u=0!=(4&t),h=!u&&"scroll"===e,d=u?null!==s?s+"Capture":null:s;u=[];for(var f,p=i;null!==p;){var g=(f=p).stateNode;if(5===f.tag&&null!==g&&(f=g,null!==d&&(null!=(g=xe(p,d))&&u.push(Wi(p,g,f)))),h)break;p=p.return}0<u.length&&(s=new l(s,c,null,n,o),a.push({event:s,listeners:u}))}}if(0==(7&t)){if(l="mouseout"===e||"pointerout"===e,(!(s="mouseover"===e||"pointerover"===e)||n===ve||!(c=n.relatedTarget||n.fromElement)||!vo(c)&&!c[fo])&&(l||s)&&(s=o.window===o?o:(s=o.ownerDocument)?s.defaultView||s.parentWindow:window,l?(l=i,null!==(c=(c=n.relatedTarget||n.toElement)?vo(c):null)&&(c!==(h=Fe(c))||5!==c.tag&&6!==c.tag)&&(c=null)):(l=null,c=i),l!==c)){if(u=hn,g="onMouseLeave",d="onMouseEnter",p="mouse","pointerout"!==e&&"pointerover"!==e||(u=En,g="onPointerLeave",d="onPointerEnter",p="pointer"),h=null==l?s:bo(l),f=null==c?s:bo(c),(s=new u(g,p+"leave",l,n,o)).target=h,s.relatedTarget=f,g=null,vo(o)===i&&((u=new u(d,p+"enter",c,n,o)).target=f,u.relatedTarget=h,g=u),h=g,l&&c)e:{for(d=c,p=0,f=u=l;f;f=Hi(f))p++;for(f=0,g=d;g;g=Hi(g))f++;for(;0<p-f;)u=Hi(u),p--;for(;0<f-p;)d=Hi(d),f--;for(;p--;){if(u===d||null!==d&&u===d.alternate)break e;u=Hi(u),d=Hi(d)}u=null}else u=null;null!==l&&Yi(a,s,l,u,!1),null!==c&&null!==h&&Yi(a,h,c,u,!0)}if("select"===(l=(s=i?bo(i):window).nodeName&&s.nodeName.toLowerCase())||"input"===l&&"file"===s.type)var m=Xn;else if(Un(s))if(Kn)m=ii;else{m=ti;var v=ei}else(l=s.nodeName)&&"input"===l.toLowerCase()&&("checkbox"===s.type||"radio"===s.type)&&(m=ni);switch(m&&(m=m(e,i))?Vn(a,m,n,o):(v&&v(e,s,i),"focusout"===e&&(v=s._wrapperState)&&v.controlled&&"number"===s.type&&$(s,"number",s.value)),v=i?bo(i):window,e){case"focusin":(Un(v)||"true"===v.contentEditable)&&(pi=v,gi=i,mi=null);break;case"focusout":mi=gi=pi=null;break;case"mousedown":vi=!0;break;case"contextmenu":case"mouseup":case"dragend":vi=!1,yi(a,n,o);break;case"selectionchange":if(fi)break;case"keydown":case"keyup":yi(a,n,o)}var y;if(In)e:{switch(e){case"compositionstart":var b="onCompositionStart";break e;case"compositionend":b="onCompositionEnd";break e;case"compositionupdate":b="onCompositionUpdate";break e}b=void 0}else Fn?Mn(e,n)&&(b="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(b="onCompositionStart");b&&(Nn&&"ko"!==n.locale&&(Fn||"onCompositionStart"!==b?"onCompositionEnd"===b&&Fn&&(y=Zt()):(qt="value"in(Kt=o)?Kt.value:Kt.textContent,Fn=!0)),0<(v=Gi(i,b)).length&&(b=new vn(b,e,null,n,o),a.push({event:b,listeners:v}),y?b.data=y:null!==(y=zn(n))&&(b.data=y))),(y=Dn?function(e,t){switch(e){case"compositionend":return zn(t);case"keypress":return 32!==t.which?null:(Ln=!0,Pn);case"textInput":return(e=t.data)===Pn&&Ln?null:e;default:return null}}(e,n):function(e,t){if(Fn)return"compositionend"===e||!In&&Mn(e,t)?(e=Zt(),Jt=qt=Kt=null,Fn=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Nn&&"ko"!==t.locale?null:t.data}}(e,n))&&(0<(i=Gi(i,"onBeforeInput")).length&&(o=new vn("onBeforeInput","beforeinput",null,n,o),a.push({event:o,listeners:i}),o.data=y))}Li(a,t)}))}function Wi(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Gi(e,t){for(var n=t+"Capture",i=[];null!==e;){var o=e,r=o.stateNode;5===o.tag&&null!==r&&(o=r,null!=(r=xe(e,n))&&i.unshift(Wi(e,r,o)),null!=(r=xe(e,t))&&i.push(Wi(e,r,o))),e=e.return}return i}function Hi(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Yi(e,t,n,i,o){for(var r=t._reactName,a=[];null!==n&&n!==i;){var s=n,l=s.alternate,c=s.stateNode;if(null!==l&&l===i)break;5===s.tag&&null!==c&&(s=c,o?null!=(l=xe(n,r))&&a.unshift(Wi(n,l,s)):o||null!=(l=xe(n,r))&&a.push(Wi(n,l,s))),n=n.return}0!==a.length&&e.push({event:t,listeners:a})}var Xi=/\\r\\n?/g,Ki=/\\u0000|\\uFFFD/g;function qi(e){return("string"==typeof e?e:""+e).replace(Xi,"\\n").replace(Ki,"")}function Ji(e,t,i){if(t=qi(t),qi(e)!==t&&i)throw Error(n(425))}function Zi(){}var $i=null,Qi=null;function eo(e,t){return"textarea"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"===_typeof(t.dangerouslySetInnerHTML)&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var to="function"==typeof setTimeout?setTimeout:void 0,no="function"==typeof clearTimeout?clearTimeout:void 0,io="function"==typeof Promise?Promise:void 0,oo="function"==typeof queueMicrotask?queueMicrotask:void 0!==io?function(e){return io.resolve(null).then(e).catch(ro)}:to;function ro(e){setTimeout((function(){throw e}))}function ao(e,t){var n=t,i=0;do{var o=n.nextSibling;if(e.removeChild(n),o&&8===o.nodeType)if("/$"===(n=o.data)){if(0===i)return e.removeChild(o),void Ft(t);i--}else"$"!==n&&"$?"!==n&&"$!"!==n||i++;n=o}while(n);Ft(t)}function so(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break;if(8===t){if("$"===(t=e.data)||"$!"===t||"$?"===t)break;if("/$"===t)return null}}return e}function lo(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var co=Math.random().toString(36).slice(2),uo="__reactFiber$"+co,ho="__reactProps$"+co,fo="__reactContainer$"+co,po="__reactEvents$"+co,go="__reactListeners$"+co,mo="__reactHandles$"+co;function vo(e){var t=e[uo];if(t)return t;for(var n=e.parentNode;n;){if(t=n[fo]||n[uo]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=lo(e);null!==e;){if(n=e[uo])return n;e=lo(e)}return t}n=(e=n).parentNode}return null}function yo(e){return!(e=e[uo]||e[fo])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function bo(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(n(33))}function _o(e){return e[ho]||null}var ko=[],wo=-1;function So(e){return{current:e}}function Co(e){0>wo||(e.current=ko[wo],ko[wo]=null,wo--)}function Eo(e,t){wo++,ko[wo]=e.current,e.current=t}var To={},Oo=So(To),jo=So(!1),xo=To;function Ro(e,t){var n=e.type.contextTypes;if(!n)return To;var i=e.stateNode;if(i&&i.__reactInternalMemoizedUnmaskedChildContext===t)return i.__reactInternalMemoizedMaskedChildContext;var o,r={};for(o in n)r[o]=t[o];return i&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=r),r}function Io(e){return null!=(e=e.childContextTypes)}function Ao(){Co(jo),Co(Oo)}function Do(e,t,i){if(Oo.current!==To)throw Error(n(168));Eo(Oo,t),Eo(jo,i)}function No(e,t,i){var o=e.stateNode;if(t=t.childContextTypes,"function"!=typeof o.getChildContext)return i;for(var r in o=o.getChildContext())if(!(r in t))throw Error(n(108,U(e)||"Unknown",r));return P({},i,o)}function Po(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||To,xo=Oo.current,Eo(Oo,e),Eo(jo,jo.current),!0}function Lo(e,t,i){var o=e.stateNode;if(!o)throw Error(n(169));i?(e=No(e,t,xo),o.__reactInternalMemoizedMergedChildContext=e,Co(jo),Co(Oo),Eo(Oo,e)):Co(jo),Eo(jo,i)}var Mo=null,zo=!1,Fo=!1;function Bo(e){null===Mo?Mo=[e]:Mo.push(e)}function Uo(){if(!Fo&&null!==Mo){Fo=!0;var e=0,t=mt;try{var n=Mo;for(mt=1;e<n.length;e++){var i=n[e];do{i=i(!0)}while(null!==i)}Mo=null,zo=!1}catch(t){throw null!==Mo&&(Mo=Mo.slice(e+1)),Ge(Je,Uo),t}finally{mt=t,Fo=!1}}return null}var Vo=[],Wo=0,Go=null,Ho=0,Yo=[],Xo=0,Ko=null,qo=1,Jo="";function Zo(e,t){Vo[Wo++]=Ho,Vo[Wo++]=Go,Go=e,Ho=t}function $o(e,t,n){Yo[Xo++]=qo,Yo[Xo++]=Jo,Yo[Xo++]=Ko,Ko=e;var i=qo;e=Jo;var o=32-it(i)-1;i&=~(1<<o),n+=1;var r=32-it(t)+o;if(30<r){var a=o-o%5;r=(i&(1<<a)-1).toString(32),i>>=a,o-=a,qo=1<<32-it(t)+o|n<<o|i,Jo=r+e}else qo=1<<r|n<<o|i,Jo=e}function Qo(e){null!==e.return&&(Zo(e,1),$o(e,1,0))}function tr(e){for(;e===Go;)Go=Vo[--Wo],Vo[Wo]=null,Ho=Vo[--Wo],Vo[Wo]=null;for(;e===Ko;)Ko=Yo[--Xo],Yo[Xo]=null,Jo=Yo[--Xo],Yo[Xo]=null,qo=Yo[--Xo],Yo[Xo]=null}var nr=null,or=null,rr=!1,ar=null;function lr(e,t){var n=Dc(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,null===(t=e.deletions)?(e.deletions=[n],e.flags|=16):t.push(n)}function cr(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,nr=e,or=so(t.firstChild),!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,nr=e,or=null,!0);case 13:return null!==(t=8!==t.nodeType?null:t)&&(n=null!==Ko?{id:qo,overflow:Jo}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},(n=Dc(18,null,null,0)).stateNode=t,n.return=e,e.child=n,nr=e,or=null,!0);default:return!1}}function ur(e){return 0!=(1&e.mode)&&0==(128&e.flags)}function hr(e){if(rr){var t=or;if(t){var i=t;if(!cr(e,t)){if(ur(e))throw Error(n(418));t=so(i.nextSibling);var o=nr;t&&cr(e,t)?lr(o,i):(e.flags=-4097&e.flags|2,rr=!1,nr=e)}}else{if(ur(e))throw Error(n(418));e.flags=-4097&e.flags|2,rr=!1,nr=e}}}function dr(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;nr=e}function fr(e){if(e!==nr)return!1;if(!rr)return dr(e),rr=!0,!1;var t;if((t=3!==e.tag)&&!(t=5!==e.tag)&&(t="head"!==(t=e.type)&&"body"!==t&&!eo(e.type,e.memoizedProps)),t&&(t=or)){if(ur(e))throw pr(),Error(n(418));for(;t;)lr(e,t),t=so(t.nextSibling)}if(dr(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(n(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var i=e.data;if("/$"===i){if(0===t){or=so(e.nextSibling);break e}t--}else"$"!==i&&"$!"!==i&&"$?"!==i||t++}e=e.nextSibling}or=null}}else or=nr?so(e.stateNode.nextSibling):null;return!0}function pr(){for(var e=or;e;)e=so(e.nextSibling)}function gr(){or=nr=null,rr=!1}function mr(e){null===ar?ar=[e]:ar.push(e)}var vr=y.ReactCurrentBatchConfig;function yr(e,t){if(e&&e.defaultProps){for(var n in t=P({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}var br=So(null),_r=null,kr=null,wr=null;function Sr(){wr=kr=_r=null}function Cr(e){var t=br.current;Co(br),e._currentValue=t}function Er(e,t,n){for(;null!==e;){var i=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,null!==i&&(i.childLanes|=t)):null!==i&&(i.childLanes&t)!==t&&(i.childLanes|=t),e===n)break;e=e.return}}function Tr(e,t){_r=e,wr=kr=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(0!=(e.lanes&t)&&(ks=!0),e.firstContext=null)}function Or(e){var t=e._currentValue;if(wr!==e)if(e={context:e,memoizedValue:t,next:null},null===kr){if(null===_r)throw Error(n(308));kr=e,_r.dependencies={lanes:0,firstContext:e}}else kr=kr.next=e;return t}var jr=null;function xr(e){null===jr?jr=[e]:jr.push(e)}function Rr(e,t,n,i){var o=t.interleaved;return null===o?(n.next=n,xr(t)):(n.next=o.next,o.next=n),t.interleaved=n,Ir(e,i)}function Ir(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}var Ar=!1;function Dr(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Nr(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Pr(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Lr(e,t,n){var i=e.updateQueue;if(null===i)return null;if(i=i.shared,0!=(2&Rl)){var o=i.pending;return null===o?t.next=t:(t.next=o.next,o.next=t),i.pending=t,Ir(e,n)}return null===(o=i.interleaved)?(t.next=t,xr(i)):(t.next=o.next,o.next=t),i.interleaved=t,Ir(e,n)}function Mr(e,t,n){if(null!==(t=t.updateQueue)&&(t=t.shared,0!=(4194240&n))){var i=t.lanes;n|=i&=e.pendingLanes,t.lanes=n,gt(e,n)}}function zr(e,t){var n=e.updateQueue,i=e.alternate;if(null!==i&&n===(i=i.updateQueue)){var o=null,r=null;if(null!==(n=n.firstBaseUpdate)){do{var a={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===r?o=r=a:r=r.next=a,n=n.next}while(null!==n);null===r?o=r=t:r=r.next=t}else o=r=t;return n={baseState:i.baseState,firstBaseUpdate:o,lastBaseUpdate:r,shared:i.shared,effects:i.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Fr(e,t,n,i){var o=e.updateQueue;Ar=!1;var r=o.firstBaseUpdate,a=o.lastBaseUpdate,s=o.shared.pending;if(null!==s){o.shared.pending=null;var l=s,c=l.next;l.next=null,null===a?r=c:a.next=c,a=l;var u=e.alternate;null!==u&&((s=(u=u.updateQueue).lastBaseUpdate)!==a&&(null===s?u.firstBaseUpdate=c:s.next=c,u.lastBaseUpdate=l))}if(null!==r){var h=o.baseState;for(a=0,u=c=l=null,s=r;;){var d=s.lane,f=s.eventTime;if((i&d)===d){null!==u&&(u=u.next={eventTime:f,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var p=e,g=s;switch(d=t,f=n,g.tag){case 1:if("function"==typeof(p=g.payload)){h=p.call(f,h,d);break e}h=p;break e;case 3:p.flags=-65537&p.flags|128;case 0:if(null==(d="function"==typeof(p=g.payload)?p.call(f,h,d):p))break e;h=P({},h,d);break e;case 2:Ar=!0}}null!==s.callback&&0!==s.lane&&(e.flags|=64,null===(d=o.effects)?o.effects=[s]:d.push(s))}else f={eventTime:f,lane:d,tag:s.tag,payload:s.payload,callback:s.callback,next:null},null===u?(c=u=f,l=h):u=u.next=f,a|=d;if(null===(s=s.next)){if(null===(s=o.shared.pending))break;s=(d=s).next,d.next=null,o.lastBaseUpdate=d,o.shared.pending=null}}if(null===u&&(l=h),o.baseState=l,o.firstBaseUpdate=c,o.lastBaseUpdate=u,null!==(t=o.shared.interleaved)){o=t;do{a|=o.lane,o=o.next}while(o!==t)}else null===r&&(o.shared.lanes=0);zl|=a,e.lanes=a,e.memoizedState=h}}function Br(e,t,i){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var o=e[t],r=o.callback;if(null!==r){if(o.callback=null,o=i,"function"!=typeof r)throw Error(n(191,r));r.call(o)}}}var Ur=(new e.Component).refs;function Vr(e,t,n,i){n=null==(n=n(i,t=e.memoizedState))?t:P({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var Wr={isMounted:function(e){return!!(e=e._reactInternals)&&Fe(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var i=nc(),o=ic(e),r=Pr(i,o);r.payload=t,null!=n&&(r.callback=n),null!==(t=Lr(e,r,o))&&(oc(t,e,o,i),Mr(t,e,o))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var i=nc(),o=ic(e),r=Pr(i,o);r.tag=1,r.payload=t,null!=n&&(r.callback=n),null!==(t=Lr(e,r,o))&&(oc(t,e,o,i),Mr(t,e,o))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=nc(),i=ic(e),o=Pr(n,i);o.tag=2,null!=t&&(o.callback=t),null!==(t=Lr(e,o,i))&&(oc(t,e,i,n),Mr(t,e,i))}};function Gr(e,t,n,i,o,r,a){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(i,r,a):!t.prototype||!t.prototype.isPureReactComponent||(!ri(n,i)||!ri(o,r))}function Hr(e,t,n){var i=!1,o=To,r=t.contextType;return"object"===_typeof(r)&&null!==r?r=Or(r):(o=Io(t)?xo:Oo.current,r=(i=null!=(i=t.contextTypes))?Ro(e,o):To),t=new t(n,r),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=Wr,e.stateNode=t,t._reactInternals=e,i&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=r),t}function Yr(e,t,n,i){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,i),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,i),t.state!==e&&Wr.enqueueReplaceState(t,t.state,null)}function Xr(e,t,n,i){var o=e.stateNode;o.props=n,o.state=e.memoizedState,o.refs=Ur,Dr(e);var r=t.contextType;"object"===_typeof(r)&&null!==r?o.context=Or(r):(r=Io(t)?xo:Oo.current,o.context=Ro(e,r)),o.state=e.memoizedState,"function"==typeof(r=t.getDerivedStateFromProps)&&(Vr(e,t,r,n),o.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof o.getSnapshotBeforeUpdate||"function"!=typeof o.UNSAFE_componentWillMount&&"function"!=typeof o.componentWillMount||(t=o.state,"function"==typeof o.componentWillMount&&o.componentWillMount(),"function"==typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount(),t!==o.state&&Wr.enqueueReplaceState(o,o.state,null),Fr(e,n,o,i),o.state=e.memoizedState),"function"==typeof o.componentDidMount&&(e.flags|=4194308)}function Kr(e,t,i){if(null!==(e=i.ref)&&"function"!=typeof e&&"object"!==_typeof(e)){if(i._owner){if(i=i._owner){if(1!==i.tag)throw Error(n(309));var o=i.stateNode}if(!o)throw Error(n(147,e));var r=o,a=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===a?t.ref:(t=function(e){var t=r.refs;t===Ur&&(t=r.refs={}),null===e?delete t[a]:t[a]=e},t._stringRef=a,t)}if("string"!=typeof e)throw Error(n(284));if(!i._owner)throw Error(n(290,e))}return e}function qr(e,t){throw e=Object.prototype.toString.call(t),Error(n(31,"[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function Jr(e){return(0,e._init)(e._payload)}function Zr(e){function t(t,n){if(e){var i=t.deletions;null===i?(t.deletions=[n],t.flags|=16):i.push(n)}}function i(n,i){if(!e)return null;for(;null!==i;)t(n,i),i=i.sibling;return null}function o(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function r(e,t){return(e=Pc(e,t)).index=0,e.sibling=null,e}function a(t,n,i){return t.index=i,e?null!==(i=t.alternate)?(i=i.index)<n?(t.flags|=2,n):i:(t.flags|=2,n):(t.flags|=1048576,n)}function s(t){return e&&null===t.alternate&&(t.flags|=2),t}function l(e,t,n,i){return null===t||6!==t.tag?((t=Fc(n,e.mode,i)).return=e,t):((t=r(t,n)).return=e,t)}function c(e,t,n,i){var o=n.type;return o===k?h(e,t,n.props.children,i,n.key):null!==t&&(t.elementType===o||"object"===_typeof(o)&&null!==o&&o.$$typeof===R&&Jr(o)===t.type)?((i=r(t,n.props)).ref=Kr(e,t,n),i.return=e,i):((i=Lc(n.type,n.key,n.props,null,e.mode,i)).ref=Kr(e,t,n),i.return=e,i)}function u(e,t,n,i){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Bc(n,e.mode,i)).return=e,t):((t=r(t,n.children||[])).return=e,t)}function h(e,t,n,i,o){return null===t||7!==t.tag?((t=Mc(n,e.mode,i,o)).return=e,t):((t=r(t,n)).return=e,t)}function d(e,t,n){if("string"==typeof t&&""!==t||"number"==typeof t)return(t=Fc(""+t,e.mode,n)).return=e,t;if("object"===_typeof(t)&&null!==t){switch(t.$$typeof){case b:return(n=Lc(t.type,t.key,t.props,null,e.mode,n)).ref=Kr(e,null,t),n.return=e,n;case _:return(t=Bc(t,e.mode,n)).return=e,t;case R:return d(e,(0,t._init)(t._payload),n)}if(Q(t)||D(t))return(t=Mc(t,e.mode,n,null)).return=e,t;qr(e,t)}return null}function f(e,t,n,i){var o=null!==t?t.key:null;if("string"==typeof n&&""!==n||"number"==typeof n)return null!==o?null:l(e,t,""+n,i);if("object"===_typeof(n)&&null!==n){switch(n.$$typeof){case b:return n.key===o?c(e,t,n,i):null;case _:return n.key===o?u(e,t,n,i):null;case R:return f(e,t,(o=n._init)(n._payload),i)}if(Q(n)||D(n))return null!==o?null:h(e,t,n,i,null);qr(e,n)}return null}function p(e,t,n,i,o){if("string"==typeof i&&""!==i||"number"==typeof i)return l(t,e=e.get(n)||null,""+i,o);if("object"===_typeof(i)&&null!==i){switch(i.$$typeof){case b:return c(t,e=e.get(null===i.key?n:i.key)||null,i,o);case _:return u(t,e=e.get(null===i.key?n:i.key)||null,i,o);case R:return p(e,t,n,(0,i._init)(i._payload),o)}if(Q(i)||D(i))return h(t,e=e.get(n)||null,i,o,null);qr(t,i)}return null}function g(n,r,s,l){for(var c=null,u=null,h=r,g=r=0,m=null;null!==h&&g<s.length;g++){h.index>g?(m=h,h=null):m=h.sibling;var v=f(n,h,s[g],l);if(null===v){null===h&&(h=m);break}e&&h&&null===v.alternate&&t(n,h),r=a(v,r,g),null===u?c=v:u.sibling=v,u=v,h=m}if(g===s.length)return i(n,h),rr&&Zo(n,g),c;if(null===h){for(;g<s.length;g++)null!==(h=d(n,s[g],l))&&(r=a(h,r,g),null===u?c=h:u.sibling=h,u=h);return rr&&Zo(n,g),c}for(h=o(n,h);g<s.length;g++)null!==(m=p(h,n,g,s[g],l))&&(e&&null!==m.alternate&&h.delete(null===m.key?g:m.key),r=a(m,r,g),null===u?c=m:u.sibling=m,u=m);return e&&h.forEach((function(e){return t(n,e)})),rr&&Zo(n,g),c}function m(r,s,l,c){var u=D(l);if("function"!=typeof u)throw Error(n(150));if(null==(l=u.call(l)))throw Error(n(151));for(var h=u=null,g=s,m=s=0,v=null,y=l.next();null!==g&&!y.done;m++,y=l.next()){g.index>m?(v=g,g=null):v=g.sibling;var b=f(r,g,y.value,c);if(null===b){null===g&&(g=v);break}e&&g&&null===b.alternate&&t(r,g),s=a(b,s,m),null===h?u=b:h.sibling=b,h=b,g=v}if(y.done)return i(r,g),rr&&Zo(r,m),u;if(null===g){for(;!y.done;m++,y=l.next())null!==(y=d(r,y.value,c))&&(s=a(y,s,m),null===h?u=y:h.sibling=y,h=y);return rr&&Zo(r,m),u}for(g=o(r,g);!y.done;m++,y=l.next())null!==(y=p(g,r,m,y.value,c))&&(e&&null!==y.alternate&&g.delete(null===y.key?m:y.key),s=a(y,s,m),null===h?u=y:h.sibling=y,h=y);return e&&g.forEach((function(e){return t(r,e)})),rr&&Zo(r,m),u}return function e(n,o,a,l){if("object"===_typeof(a)&&null!==a&&a.type===k&&null===a.key&&(a=a.props.children),"object"===_typeof(a)&&null!==a){switch(a.$$typeof){case b:e:{for(var c=a.key,u=o;null!==u;){if(u.key===c){if((c=a.type)===k){if(7===u.tag){i(n,u.sibling),(o=r(u,a.props.children)).return=n,n=o;break e}}else if(u.elementType===c||"object"===_typeof(c)&&null!==c&&c.$$typeof===R&&Jr(c)===u.type){i(n,u.sibling),(o=r(u,a.props)).ref=Kr(n,u,a),o.return=n,n=o;break e}i(n,u);break}t(n,u),u=u.sibling}a.type===k?((o=Mc(a.props.children,n.mode,l,a.key)).return=n,n=o):((l=Lc(a.type,a.key,a.props,null,n.mode,l)).ref=Kr(n,o,a),l.return=n,n=l)}return s(n);case _:e:{for(u=a.key;null!==o;){if(o.key===u){if(4===o.tag&&o.stateNode.containerInfo===a.containerInfo&&o.stateNode.implementation===a.implementation){i(n,o.sibling),(o=r(o,a.children||[])).return=n,n=o;break e}i(n,o);break}t(n,o),o=o.sibling}(o=Bc(a,n.mode,l)).return=n,n=o}return s(n);case R:return e(n,o,(u=a._init)(a._payload),l)}if(Q(a))return g(n,o,a,l);if(D(a))return m(n,o,a,l);qr(n,a)}return"string"==typeof a&&""!==a||"number"==typeof a?(a=""+a,null!==o&&6===o.tag?(i(n,o.sibling),(o=r(o,a)).return=n,n=o):(i(n,o),(o=Fc(a,n.mode,l)).return=n,n=o),s(n)):i(n,o)}}var $r=Zr(!0),Qr=Zr(!1),ea={},ta=So(ea),na=So(ea),ia=So(ea);function oa(e){if(e===ea)throw Error(n(174));return e}function ra(e,t){switch(Eo(ia,t),Eo(na,e),Eo(ta,ea),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:ae(null,"");break;default:t=ae(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Co(ta),Eo(ta,t)}function aa(){Co(ta),Co(na),Co(ia)}function sa(e){oa(ia.current);var t=oa(ta.current),n=ae(t,e.type);t!==n&&(Eo(na,e),Eo(ta,n))}function la(e){na.current===e&&(Co(ta),Co(na))}var ca=So(0);function ua(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!=(128&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ha=[];function da(){for(var e=0;e<ha.length;e++)ha[e]._workInProgressVersionPrimary=null;ha.length=0}var fa=y.ReactCurrentDispatcher,pa=y.ReactCurrentBatchConfig,ga=0,ma=null,va=null,ya=null,ba=!1,_a=!1,ka=0,wa=0;function Sa(){throw Error(n(321))}function Ca(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!oi(e[n],t[n]))return!1;return!0}function Ea(e,t,i,o,r,a){if(ga=a,ma=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,fa.current=null===e||null===e.memoizedState?ls:cs,e=i(o,r),_a){a=0;do{if(_a=!1,ka=0,25<=a)throw Error(n(301));a+=1,ya=va=null,t.updateQueue=null,fa.current=us,e=i(o,r)}while(_a)}if(fa.current=ss,t=null!==va&&null!==va.next,ga=0,ya=va=ma=null,ba=!1,t)throw Error(n(300));return e}function Ta(){var e=0!==ka;return ka=0,e}function Oa(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===ya?ma.memoizedState=ya=e:ya=ya.next=e,ya}function ja(){if(null===va){var e=ma.alternate;e=null!==e?e.memoizedState:null}else e=va.next;var t=null===ya?ma.memoizedState:ya.next;if(null!==t)ya=t,va=e;else{if(null===e)throw Error(n(310));e={memoizedState:(va=e).memoizedState,baseState:va.baseState,baseQueue:va.baseQueue,queue:va.queue,next:null},null===ya?ma.memoizedState=ya=e:ya=ya.next=e}return ya}function xa(e,t){return"function"==typeof t?t(e):t}function Ra(e){var t=ja(),i=t.queue;if(null===i)throw Error(n(311));i.lastRenderedReducer=e;var o=va,r=o.baseQueue,a=i.pending;if(null!==a){if(null!==r){var s=r.next;r.next=a.next,a.next=s}o.baseQueue=r=a,i.pending=null}if(null!==r){a=r.next,o=o.baseState;var l=s=null,c=null,u=a;do{var h=u.lane;if((ga&h)===h)null!==c&&(c=c.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),o=u.hasEagerState?u.eagerState:e(o,u.action);else{var d={lane:h,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};null===c?(l=c=d,s=o):c=c.next=d,ma.lanes|=h,zl|=h}u=u.next}while(null!==u&&u!==a);null===c?s=o:c.next=l,oi(o,t.memoizedState)||(ks=!0),t.memoizedState=o,t.baseState=s,t.baseQueue=c,i.lastRenderedState=o}if(null!==(e=i.interleaved)){r=e;do{a=r.lane,ma.lanes|=a,zl|=a,r=r.next}while(r!==e)}else null===r&&(i.lanes=0);return[t.memoizedState,i.dispatch]}function Ia(e){var t=ja(),i=t.queue;if(null===i)throw Error(n(311));i.lastRenderedReducer=e;var o=i.dispatch,r=i.pending,a=t.memoizedState;if(null!==r){i.pending=null;var s=r=r.next;do{a=e(a,s.action),s=s.next}while(s!==r);oi(a,t.memoizedState)||(ks=!0),t.memoizedState=a,null===t.baseQueue&&(t.baseState=a),i.lastRenderedState=a}return[a,o]}function Aa(){}function Da(e,t){var i=ma,o=ja(),r=t(),a=!oi(o.memoizedState,r);if(a&&(o.memoizedState=r,ks=!0),o=o.queue,Ha(La.bind(null,i,o,e),[e]),o.getSnapshot!==t||a||null!==ya&&1&ya.memoizedState.tag){if(i.flags|=2048,Ba(9,Pa.bind(null,i,o,r,t),void 0,null),null===Il)throw Error(n(349));0!=(30&ga)||Na(i,t,r)}return r}function Na(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},null===(t=ma.updateQueue)?(t={lastEffect:null,stores:null},ma.updateQueue=t,t.stores=[e]):null===(n=t.stores)?t.stores=[e]:n.push(e)}function Pa(e,t,n,i){t.value=n,t.getSnapshot=i,Ma(t)&&za(e)}function La(e,t,n){return n((function(){Ma(t)&&za(e)}))}function Ma(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!oi(e,n)}catch(e){return!0}}function za(e){var t=Ir(e,1);null!==t&&oc(t,e,1,-1)}function Fa(e){var t=Oa();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:xa,lastRenderedState:e},t.queue=e,e=e.dispatch=is.bind(null,ma,e),[t.memoizedState,e]}function Ba(e,t,n,i){return e={tag:e,create:t,destroy:n,deps:i,next:null},null===(t=ma.updateQueue)?(t={lastEffect:null,stores:null},ma.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(i=n.next,n.next=e,e.next=i,t.lastEffect=e),e}function Ua(){return ja().memoizedState}function Va(e,t,n,i){var o=Oa();ma.flags|=e,o.memoizedState=Ba(1|t,n,void 0,void 0===i?null:i)}function Wa(e,t,n,i){var o=ja();i=void 0===i?null:i;var r=void 0;if(null!==va){var a=va.memoizedState;if(r=a.destroy,null!==i&&Ca(i,a.deps))return void(o.memoizedState=Ba(t,n,r,i))}ma.flags|=e,o.memoizedState=Ba(1|t,n,r,i)}function Ga(e,t){return Va(8390656,8,e,t)}function Ha(e,t){return Wa(2048,8,e,t)}function Ya(e,t){return Wa(4,2,e,t)}function Xa(e,t){return Wa(4,4,e,t)}function Ka(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function qa(e,t,n){return n=null!=n?n.concat([e]):null,Wa(4,4,Ka.bind(null,t,e),n)}function Ja(){}function Za(e,t){var n=ja();t=void 0===t?null:t;var i=n.memoizedState;return null!==i&&null!==t&&Ca(t,i[1])?i[0]:(n.memoizedState=[e,t],e)}function $a(e,t){var n=ja();t=void 0===t?null:t;var i=n.memoizedState;return null!==i&&null!==t&&Ca(t,i[1])?i[0]:(e=e(),n.memoizedState=[e,t],e)}function Qa(e,t,n){return 0==(21&ga)?(e.baseState&&(e.baseState=!1,ks=!0),e.memoizedState=n):(oi(n,t)||(n=dt(),ma.lanes|=n,zl|=n,e.baseState=!0),t)}function es(e,t){var n=mt;mt=0!==n&&4>n?n:4,e(!0);var i=pa.transition;pa.transition={};try{e(!1),t()}finally{mt=n,pa.transition=i}}function ts(){return ja().memoizedState}function ns(e,t,n){var i=ic(e);if(n={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null},os(e))rs(t,n);else if(null!==(n=Rr(e,t,n,i))){oc(n,e,i,nc()),as(n,t,i)}}function is(e,t,n){var i=ic(e),o={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null};if(os(e))rs(t,o);else{var r=e.alternate;if(0===e.lanes&&(null===r||0===r.lanes)&&null!==(r=t.lastRenderedReducer))try{var a=t.lastRenderedState,s=r(a,n);if(o.hasEagerState=!0,o.eagerState=s,oi(s,a)){var l=t.interleaved;return null===l?(o.next=o,xr(t)):(o.next=l.next,l.next=o),void(t.interleaved=o)}}catch(e){}null!==(n=Rr(e,t,o,i))&&(oc(n,e,i,o=nc()),as(n,t,i))}}function os(e){var t=e.alternate;return e===ma||null!==t&&t===ma}function rs(e,t){_a=ba=!0;var n=e.pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function as(e,t,n){if(0!=(4194240&n)){var i=t.lanes;n|=i&=e.pendingLanes,t.lanes=n,gt(e,n)}}var ss={readContext:Or,useCallback:Sa,useContext:Sa,useEffect:Sa,useImperativeHandle:Sa,useInsertionEffect:Sa,useLayoutEffect:Sa,useMemo:Sa,useReducer:Sa,useRef:Sa,useState:Sa,useDebugValue:Sa,useDeferredValue:Sa,useTransition:Sa,useMutableSource:Sa,useSyncExternalStore:Sa,useId:Sa,unstable_isNewReconciler:!1},ls={readContext:Or,useCallback:function(e,t){return Oa().memoizedState=[e,void 0===t?null:t],e},useContext:Or,useEffect:Ga,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,Va(4194308,4,Ka.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Va(4194308,4,e,t)},useInsertionEffect:function(e,t){return Va(4,2,e,t)},useMemo:function(e,t){var n=Oa();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var i=Oa();return t=void 0!==n?n(t):t,i.memoizedState=i.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},i.queue=e,e=e.dispatch=ns.bind(null,ma,e),[i.memoizedState,e]},useRef:function(e){return e={current:e},Oa().memoizedState=e},useState:Fa,useDebugValue:Ja,useDeferredValue:function(e){return Oa().memoizedState=e},useTransition:function(){var e=Fa(!1),t=e[0];return e=es.bind(null,e[1]),Oa().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,i){var o=ma,r=Oa();if(rr){if(void 0===i)throw Error(n(407));i=i()}else{if(i=t(),null===Il)throw Error(n(349));0!=(30&ga)||Na(o,t,i)}r.memoizedState=i;var a={value:i,getSnapshot:t};return r.queue=a,Ga(La.bind(null,o,a,e),[e]),o.flags|=2048,Ba(9,Pa.bind(null,o,a,i,t),void 0,null),i},useId:function(){var e=Oa(),t=Il.identifierPrefix;if(rr){var n=Jo;t=":"+t+"R"+(n=(qo&~(1<<32-it(qo)-1)).toString(32)+n),0<(n=ka++)&&(t+="H"+n.toString(32)),t+=":"}else t=":"+t+"r"+(n=wa++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},cs={readContext:Or,useCallback:Za,useContext:Or,useEffect:Ha,useImperativeHandle:qa,useInsertionEffect:Ya,useLayoutEffect:Xa,useMemo:$a,useReducer:Ra,useRef:Ua,useState:function(){return Ra(xa)},useDebugValue:Ja,useDeferredValue:function(e){return Qa(ja(),va.memoizedState,e)},useTransition:function(){return[Ra(xa)[0],ja().memoizedState]},useMutableSource:Aa,useSyncExternalStore:Da,useId:ts,unstable_isNewReconciler:!1},us={readContext:Or,useCallback:Za,useContext:Or,useEffect:Ha,useImperativeHandle:qa,useInsertionEffect:Ya,useLayoutEffect:Xa,useMemo:$a,useReducer:Ia,useRef:Ua,useState:function(){return Ia(xa)},useDebugValue:Ja,useDeferredValue:function(e){var t=ja();return null===va?t.memoizedState=e:Qa(t,va.memoizedState,e)},useTransition:function(){return[Ia(xa)[0],ja().memoizedState]},useMutableSource:Aa,useSyncExternalStore:Da,useId:ts,unstable_isNewReconciler:!1};function hs(e,t){try{var n="",i=t;do{n+=F(i),i=i.return}while(i);var o=n}catch(e){o="\\nError generating stack: "+e.message+"\\n"+e.stack}return{value:e,source:t,stack:o,digest:null}}function ds(e,t,n){return{value:e,source:null,stack:null!=n?n:null,digest:null!=t?t:null}}function fs(e,t){try{console.error(t.value)}catch(e){setTimeout((function(){throw e}))}}var ps="function"==typeof WeakMap?WeakMap:Map;function gs(e,t,n){(n=Pr(-1,n)).tag=3,n.payload={element:null};var i=t.value;return n.callback=function(){Yl||(Yl=!0,Xl=i),fs(0,t)},n}function ms(e,t,n){(n=Pr(-1,n)).tag=3;var i=e.type.getDerivedStateFromError;if("function"==typeof i){var o=t.value;n.payload=function(){return i(o)},n.callback=function(){fs(0,t)}}var r=e.stateNode;return null!==r&&"function"==typeof r.componentDidCatch&&(n.callback=function(){fs(0,t),"function"!=typeof i&&(null===Kl?Kl=new Set([this]):Kl.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}function vs(e,t,n){var i=e.pingCache;if(null===i){i=e.pingCache=new ps;var o=new Set;i.set(t,o)}else void 0===(o=i.get(t))&&(o=new Set,i.set(t,o));o.has(n)||(o.add(n),e=Oc.bind(null,e,t,n),t.then(e,e))}function ys(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function bs(e,t,n,i,o){return 0==(1&e.mode)?(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,1===n.tag&&(null===n.alternate?n.tag=17:((t=Pr(-1,1)).tag=2,Lr(n,t,1))),n.lanes|=1),e):(e.flags|=65536,e.lanes=o,e)}var _s=y.ReactCurrentOwner,ks=!1;function ws(e,t,n,i){t.child=null===e?Qr(t,null,n,i):$r(t,e.child,n,i)}function Ss(e,t,n,i,o){n=n.render;var r=t.ref;return Tr(t,o),i=Ea(e,t,n,i,r,o),n=Ta(),null===e||ks?(rr&&n&&Qo(t),t.flags|=1,ws(e,t,i,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Ys(e,t,o))}function Cs(e,t,n,i,o){if(null===e){var r=n.type;return"function"!=typeof r||Nc(r)||void 0!==r.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Lc(n.type,null,i,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=r,Es(e,t,r,i,o))}if(r=e.child,0==(e.lanes&o)){var a=r.memoizedProps;if((n=null!==(n=n.compare)?n:ri)(a,i)&&e.ref===t.ref)return Ys(e,t,o)}return t.flags|=1,(e=Pc(r,i)).ref=t.ref,e.return=t,t.child=e}function Es(e,t,n,i,o){if(null!==e){var r=e.memoizedProps;if(ri(r,i)&&e.ref===t.ref){if(ks=!1,t.pendingProps=i=r,0==(e.lanes&o))return t.lanes=e.lanes,Ys(e,t,o);0!=(131072&e.flags)&&(ks=!0)}}return js(e,t,n,i,o)}function Ts(e,t,n){var i=t.pendingProps,o=i.children,r=null!==e?e.memoizedState:null;if("hidden"===i.mode)if(0==(1&t.mode))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Eo(Pl,Nl),Nl|=n;else{if(0==(1073741824&n))return e=null!==r?r.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Eo(Pl,Nl),Nl|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},i=null!==r?r.baseLanes:n,Eo(Pl,Nl),Nl|=i}else null!==r?(i=r.baseLanes|n,t.memoizedState=null):i=n,Eo(Pl,Nl),Nl|=i;return ws(e,t,o,n),t.child}function Os(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function js(e,t,n,i,o){var r=Io(n)?xo:Oo.current;return r=Ro(t,r),Tr(t,o),n=Ea(e,t,n,i,r,o),i=Ta(),null===e||ks?(rr&&i&&Qo(t),t.flags|=1,ws(e,t,n,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Ys(e,t,o))}function xs(e,t,n,i,o){if(Io(n)){var r=!0;Po(t)}else r=!1;if(Tr(t,o),null===t.stateNode)Hs(e,t),Hr(t,n,i),Xr(t,n,i,o),i=!0;else if(null===e){var a=t.stateNode,s=t.memoizedProps;a.props=s;var l=a.context,c=n.contextType;"object"===_typeof(c)&&null!==c?c=Or(c):c=Ro(t,c=Io(n)?xo:Oo.current);var u=n.getDerivedStateFromProps,h="function"==typeof u||"function"==typeof a.getSnapshotBeforeUpdate;h||"function"!=typeof a.UNSAFE_componentWillReceiveProps&&"function"!=typeof a.componentWillReceiveProps||(s!==i||l!==c)&&Yr(t,a,i,c),Ar=!1;var d=t.memoizedState;a.state=d,Fr(t,i,a,o),l=t.memoizedState,s!==i||d!==l||jo.current||Ar?("function"==typeof u&&(Vr(t,n,u,i),l=t.memoizedState),(s=Ar||Gr(t,n,s,i,d,l,c))?(h||"function"!=typeof a.UNSAFE_componentWillMount&&"function"!=typeof a.componentWillMount||("function"==typeof a.componentWillMount&&a.componentWillMount(),"function"==typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount()),"function"==typeof a.componentDidMount&&(t.flags|=4194308)):("function"==typeof a.componentDidMount&&(t.flags|=4194308),t.memoizedProps=i,t.memoizedState=l),a.props=i,a.state=l,a.context=c,i=s):("function"==typeof a.componentDidMount&&(t.flags|=4194308),i=!1)}else{a=t.stateNode,Nr(e,t),s=t.memoizedProps,c=t.type===t.elementType?s:yr(t.type,s),a.props=c,h=t.pendingProps,d=a.context,"object"===_typeof(l=n.contextType)&&null!==l?l=Or(l):l=Ro(t,l=Io(n)?xo:Oo.current);var f=n.getDerivedStateFromProps;(u="function"==typeof f||"function"==typeof a.getSnapshotBeforeUpdate)||"function"!=typeof a.UNSAFE_componentWillReceiveProps&&"function"!=typeof a.componentWillReceiveProps||(s!==h||d!==l)&&Yr(t,a,i,l),Ar=!1,d=t.memoizedState,a.state=d,Fr(t,i,a,o);var p=t.memoizedState;s!==h||d!==p||jo.current||Ar?("function"==typeof f&&(Vr(t,n,f,i),p=t.memoizedState),(c=Ar||Gr(t,n,c,i,d,p,l)||!1)?(u||"function"!=typeof a.UNSAFE_componentWillUpdate&&"function"!=typeof a.componentWillUpdate||("function"==typeof a.componentWillUpdate&&a.componentWillUpdate(i,p,l),"function"==typeof a.UNSAFE_componentWillUpdate&&a.UNSAFE_componentWillUpdate(i,p,l)),"function"==typeof a.componentDidUpdate&&(t.flags|=4),"function"==typeof a.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!=typeof a.componentDidUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),"function"!=typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=1024),t.memoizedProps=i,t.memoizedState=p),a.props=i,a.state=p,a.context=l,i=c):("function"!=typeof a.componentDidUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),"function"!=typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&d===e.memoizedState||(t.flags|=1024),i=!1)}return Rs(e,t,n,i,r,o)}function Rs(e,t,n,i,o,r){Os(e,t);var a=0!=(128&t.flags);if(!i&&!a)return o&&Lo(t,n,!1),Ys(e,t,r);i=t.stateNode,_s.current=t;var s=a&&"function"!=typeof n.getDerivedStateFromError?null:i.render();return t.flags|=1,null!==e&&a?(t.child=$r(t,e.child,null,r),t.child=$r(t,null,s,r)):ws(e,t,s,r),t.memoizedState=i.state,o&&Lo(t,n,!0),t.child}function Is(e){var t=e.stateNode;t.pendingContext?Do(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Do(0,t.context,!1),ra(e,t.containerInfo)}function As(e,t,n,i,o){return gr(),mr(o),t.flags|=256,ws(e,t,n,i),t.child}var Ds,Ns,Ps,Ls,Ms={dehydrated:null,treeContext:null,retryLane:0};function zs(e){return{baseLanes:e,cachePool:null,transitions:null}}function Fs(e,t,i){var o,r=t.pendingProps,a=ca.current,s=!1,l=0!=(128&t.flags);if((o=l)||(o=(null===e||null!==e.memoizedState)&&0!=(2&a)),o?(s=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(a|=1),Eo(ca,1&a),null===e)return hr(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(0==(1&t.mode)?t.lanes=1:"$!"===e.data?t.lanes=8:t.lanes=1073741824,null):(l=r.children,e=r.fallback,s?(r=t.mode,s=t.child,l={mode:"hidden",children:l},0==(1&r)&&null!==s?(s.childLanes=0,s.pendingProps=l):s=zc(l,r,0,null),e=Mc(e,r,i,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=zs(i),t.memoizedState=Ms,e):Bs(t,l));if(null!==(a=e.memoizedState)&&null!==(o=a.dehydrated))return function(e,t,i,o,r,a,s){if(i)return 256&t.flags?(t.flags&=-257,Us(e,t,s,o=ds(Error(n(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(a=o.fallback,r=t.mode,o=zc({mode:"visible",children:o.children},r,0,null),(a=Mc(a,r,s,null)).flags|=2,o.return=t,a.return=t,o.sibling=a,t.child=o,0!=(1&t.mode)&&$r(t,e.child,null,s),t.child.memoizedState=zs(s),t.memoizedState=Ms,a);if(0==(1&t.mode))return Us(e,t,s,null);if("$!"===r.data){if(o=r.nextSibling&&r.nextSibling.dataset)var l=o.dgst;return o=l,Us(e,t,s,o=ds(a=Error(n(419)),o,void 0))}if(l=0!=(s&e.childLanes),ks||l){if(null!==(o=Il)){switch(s&-s){case 4:r=2;break;case 16:r=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:r=32;break;case 536870912:r=268435456;break;default:r=0}0!==(r=0!=(r&(o.suspendedLanes|s))?0:r)&&r!==a.retryLane&&(a.retryLane=r,Ir(e,r),oc(o,e,r,-1))}return vc(),Us(e,t,s,o=ds(Error(n(421))))}return"$?"===r.data?(t.flags|=128,t.child=e.child,t=xc.bind(null,e),r._reactRetry=t,null):(e=a.treeContext,or=so(r.nextSibling),nr=t,rr=!0,ar=null,null!==e&&(Yo[Xo++]=qo,Yo[Xo++]=Jo,Yo[Xo++]=Ko,qo=e.id,Jo=e.overflow,Ko=t),t=Bs(t,o.children),t.flags|=4096,t)}(e,t,l,r,o,a,i);if(s){s=r.fallback,l=t.mode,o=(a=e.child).sibling;var c={mode:"hidden",children:r.children};return 0==(1&l)&&t.child!==a?((r=t.child).childLanes=0,r.pendingProps=c,t.deletions=null):(r=Pc(a,c)).subtreeFlags=14680064&a.subtreeFlags,null!==o?s=Pc(o,s):(s=Mc(s,l,i,null)).flags|=2,s.return=t,r.return=t,r.sibling=s,t.child=r,r=s,s=t.child,l=null===(l=e.child.memoizedState)?zs(i):{baseLanes:l.baseLanes|i,cachePool:null,transitions:l.transitions},s.memoizedState=l,s.childLanes=e.childLanes&~i,t.memoizedState=Ms,r}return e=(s=e.child).sibling,r=Pc(s,{mode:"visible",children:r.children}),0==(1&t.mode)&&(r.lanes=i),r.return=t,r.sibling=null,null!==e&&(null===(i=t.deletions)?(t.deletions=[e],t.flags|=16):i.push(e)),t.child=r,t.memoizedState=null,r}function Bs(e,t){return(t=zc({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function Us(e,t,n,i){return null!==i&&mr(i),$r(t,e.child,null,n),(e=Bs(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Vs(e,t,n){e.lanes|=t;var i=e.alternate;null!==i&&(i.lanes|=t),Er(e.return,t,n)}function Ws(e,t,n,i,o){var r=e.memoizedState;null===r?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:i,tail:n,tailMode:o}:(r.isBackwards=t,r.rendering=null,r.renderingStartTime=0,r.last=i,r.tail=n,r.tailMode=o)}function Gs(e,t,n){var i=t.pendingProps,o=i.revealOrder,r=i.tail;if(ws(e,t,i.children,n),0!=(2&(i=ca.current)))i=1&i|2,t.flags|=128;else{if(null!==e&&0!=(128&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Vs(e,n,t);else if(19===e.tag)Vs(e,n,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}i&=1}if(Eo(ca,i),0==(1&t.mode))t.memoizedState=null;else switch(o){case"forwards":for(n=t.child,o=null;null!==n;)null!==(e=n.alternate)&&null===ua(e)&&(o=n),n=n.sibling;null===(n=o)?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),Ws(t,!1,o,n,r);break;case"backwards":for(n=null,o=t.child,t.child=null;null!==o;){if(null!==(e=o.alternate)&&null===ua(e)){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}Ws(t,!0,n,null,r);break;case"together":Ws(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Hs(e,t){0==(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Ys(e,t,i){if(null!==e&&(t.dependencies=e.dependencies),zl|=t.lanes,0==(i&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(n(153));if(null!==t.child){for(i=Pc(e=t.child,e.pendingProps),t.child=i,i.return=t;null!==e.sibling;)e=e.sibling,(i=i.sibling=Pc(e,e.pendingProps)).return=t;i.sibling=null}return t.child}function Xs(e,t){if(!rr)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var i=null;null!==n;)null!==n.alternate&&(i=n),n=n.sibling;null===i?t||null===e.tail?e.tail=null:e.tail.sibling=null:i.sibling=null}}function Ks(e){var t=null!==e.alternate&&e.alternate.child===e.child,n=0,i=0;if(t)for(var o=e.child;null!==o;)n|=o.lanes|o.childLanes,i|=14680064&o.subtreeFlags,i|=14680064&o.flags,o.return=e,o=o.sibling;else for(o=e.child;null!==o;)n|=o.lanes|o.childLanes,i|=o.subtreeFlags,i|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=i,e.childLanes=n,t}function qs(e,t,i){var r=t.pendingProps;switch(tr(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ks(t),null;case 1:case 17:return Io(t.type)&&Ao(),Ks(t),null;case 3:return r=t.stateNode,aa(),Co(jo),Co(Oo),da(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(fr(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&0==(256&t.flags)||(t.flags|=1024,null!==ar&&(lc(ar),ar=null))),Ns(e,t),Ks(t),null;case 5:la(t);var a=oa(ia.current);if(i=t.type,null!==e&&null!=t.stateNode)Ps(e,t,i,r,a),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(null===t.stateNode)throw Error(n(166));return Ks(t),null}if(e=oa(ta.current),fr(t)){r=t.stateNode,i=t.type;var s=t.memoizedProps;switch(r[uo]=t,r[ho]=s,e=0!=(1&t.mode),i){case"dialog":Mi("cancel",r),Mi("close",r);break;case"iframe":case"object":case"embed":Mi("load",r);break;case"video":case"audio":for(a=0;a<Di.length;a++)Mi(Di[a],r);break;case"source":Mi("error",r);break;case"img":case"image":case"link":Mi("error",r),Mi("load",r);break;case"details":Mi("toggle",r);break;case"input":K(r,s),Mi("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!s.multiple},Mi("invalid",r);break;case"textarea":ne(r,s),Mi("invalid",r)}for(var l in ge(i,s),a=null,s)if(s.hasOwnProperty(l)){var c=s[l];"children"===l?"string"==typeof c?r.textContent!==c&&(!0!==s.suppressHydrationWarning&&Ji(r.textContent,c,e),a=["children",c]):"number"==typeof c&&r.textContent!==""+c&&(!0!==s.suppressHydrationWarning&&Ji(r.textContent,c,e),a=["children",""+c]):o.hasOwnProperty(l)&&null!=c&&"onScroll"===l&&Mi("scroll",r)}switch(i){case"input":G(r),Z(r,s,!0);break;case"textarea":G(r),oe(r);break;case"select":case"option":break;default:"function"==typeof s.onClick&&(r.onclick=Zi)}r=a,t.updateQueue=r,null!==r&&(t.flags|=4)}else{l=9===a.nodeType?a:a.ownerDocument,"http://www.w3.org/1999/xhtml"===e&&(e=re(i)),"http://www.w3.org/1999/xhtml"===e?"script"===i?((e=l.createElement("div")).innerHTML="<script><\\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=l.createElement(i,{is:r.is}):(e=l.createElement(i),"select"===i&&(l=e,r.multiple?l.multiple=!0:r.size&&(l.size=r.size))):e=l.createElementNS(e,i),e[uo]=t,e[ho]=r,Ds(e,t,!1,!1),t.stateNode=e;e:{switch(l=me(i,r),i){case"dialog":Mi("cancel",e),Mi("close",e),a=r;break;case"iframe":case"object":case"embed":Mi("load",e),a=r;break;case"video":case"audio":for(a=0;a<Di.length;a++)Mi(Di[a],e);a=r;break;case"source":Mi("error",e),a=r;break;case"img":case"image":case"link":Mi("error",e),Mi("load",e),a=r;break;case"details":Mi("toggle",e),a=r;break;case"input":K(e,r),a=X(e,r),Mi("invalid",e);break;case"option":default:a=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},a=P({},r,{value:void 0}),Mi("invalid",e);break;case"textarea":ne(e,r),a=te(e,r),Mi("invalid",e)}for(s in ge(i,a),c=a)if(c.hasOwnProperty(s)){var u=c[s];"style"===s?fe(e,u):"dangerouslySetInnerHTML"===s?null!=(u=u?u.__html:void 0)&&le(e,u):"children"===s?"string"==typeof u?("textarea"!==i||""!==u)&&ce(e,u):"number"==typeof u&&ce(e,""+u):"suppressContentEditableWarning"!==s&&"suppressHydrationWarning"!==s&&"autoFocus"!==s&&(o.hasOwnProperty(s)?null!=u&&"onScroll"===s&&Mi("scroll",e):null!=u&&v(e,s,u,l))}switch(i){case"input":G(e),Z(e,r,!1);break;case"textarea":G(e),oe(e);break;case"option":null!=r.value&&e.setAttribute("value",""+V(r.value));break;case"select":e.multiple=!!r.multiple,null!=(s=r.value)?ee(e,!!r.multiple,s,!1):null!=r.defaultValue&&ee(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof a.onClick&&(e.onclick=Zi)}switch(i){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}null!==t.ref&&(t.flags|=512,t.flags|=2097152)}return Ks(t),null;case 6:if(e&&null!=t.stateNode)Ls(e,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(n(166));if(i=oa(ia.current),oa(ta.current),fr(t)){if(r=t.stateNode,i=t.memoizedProps,r[uo]=t,(s=r.nodeValue!==i)&&null!==(e=nr))switch(e.tag){case 3:Ji(r.nodeValue,i,0!=(1&e.mode));break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&Ji(r.nodeValue,i,0!=(1&e.mode))}s&&(t.flags|=4)}else(r=(9===i.nodeType?i:i.ownerDocument).createTextNode(r))[uo]=t,t.stateNode=r}return Ks(t),null;case 13:if(Co(ca),r=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(rr&&null!==or&&0!=(1&t.mode)&&0==(128&t.flags))pr(),gr(),t.flags|=98560,s=!1;else if(s=fr(t),null!==r&&null!==r.dehydrated){if(null===e){if(!s)throw Error(n(318));if(!(s=null!==(s=t.memoizedState)?s.dehydrated:null))throw Error(n(317));s[uo]=t}else gr(),0==(128&t.flags)&&(t.memoizedState=null),t.flags|=4;Ks(t),s=!1}else null!==ar&&(lc(ar),ar=null),s=!0;if(!s)return 65536&t.flags?t:null}return 0!=(128&t.flags)?(t.lanes=i,t):((r=null!==r)!==(null!==e&&null!==e.memoizedState)&&r&&(t.child.flags|=8192,0!=(1&t.mode)&&(null===e||0!=(1&ca.current)?0===Ll&&(Ll=3):vc())),null!==t.updateQueue&&(t.flags|=4),Ks(t),null);case 4:return aa(),Ns(e,t),null===e&&Bi(t.stateNode.containerInfo),Ks(t),null;case 10:return Cr(t.type._context),Ks(t),null;case 19:if(Co(ca),null===(s=t.memoizedState))return Ks(t),null;if(r=0!=(128&t.flags),null===(l=s.rendering))if(r)Xs(s,!1);else{if(0!==Ll||null!==e&&0!=(128&e.flags))for(e=t.child;null!==e;){if(null!==(l=ua(e))){for(t.flags|=128,Xs(s,!1),null!==(r=l.updateQueue)&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=i,i=t.child;null!==i;)e=r,(s=i).flags&=14680066,null===(l=s.alternate)?(s.childLanes=0,s.lanes=e,s.child=null,s.subtreeFlags=0,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=l.childLanes,s.lanes=l.lanes,s.child=l.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=l.memoizedProps,s.memoizedState=l.memoizedState,s.updateQueue=l.updateQueue,s.type=l.type,e=l.dependencies,s.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),i=i.sibling;return Eo(ca,1&ca.current|2),t.child}e=e.sibling}null!==s.tail&&Ke()>Gl&&(t.flags|=128,r=!0,Xs(s,!1),t.lanes=4194304)}else{if(!r)if(null!==(e=ua(l))){if(t.flags|=128,r=!0,null!==(i=e.updateQueue)&&(t.updateQueue=i,t.flags|=4),Xs(s,!0),null===s.tail&&"hidden"===s.tailMode&&!l.alternate&&!rr)return Ks(t),null}else 2*Ke()-s.renderingStartTime>Gl&&1073741824!==i&&(t.flags|=128,r=!0,Xs(s,!1),t.lanes=4194304);s.isBackwards?(l.sibling=t.child,t.child=l):(null!==(i=s.last)?i.sibling=l:t.child=l,s.last=l)}return null!==s.tail?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=Ke(),t.sibling=null,i=ca.current,Eo(ca,r?1&i|2:1&i),t):(Ks(t),null);case 22:case 23:return fc(),r=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==r&&(t.flags|=8192),r&&0!=(1&t.mode)?0!=(1073741824&Nl)&&(Ks(t),6&t.subtreeFlags&&(t.flags|=8192)):Ks(t),null;case 24:case 25:return null}throw Error(n(156,t.tag))}function Js(e,t){switch(tr(t),t.tag){case 1:return Io(t.type)&&Ao(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return aa(),Co(jo),Co(Oo),da(),0!=(65536&(e=t.flags))&&0==(128&e)?(t.flags=-65537&e|128,t):null;case 5:return la(t),null;case 13:if(Co(ca),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(n(340));gr()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Co(ca),null;case 4:return aa(),null;case 10:return Cr(t.type._context),null;case 22:case 23:return fc(),null;default:return null}}Ds=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Ns=function(){},Ps=function(e,t,n,i){var r=e.memoizedProps;if(r!==i){e=t.stateNode,oa(ta.current);var a,s=null;switch(n){case"input":r=X(e,r),i=X(e,i),s=[];break;case"select":r=P({},r,{value:void 0}),i=P({},i,{value:void 0}),s=[];break;case"textarea":r=te(e,r),i=te(e,i),s=[];break;default:"function"!=typeof r.onClick&&"function"==typeof i.onClick&&(e.onclick=Zi)}for(u in ge(n,i),n=null,r)if(!i.hasOwnProperty(u)&&r.hasOwnProperty(u)&&null!=r[u])if("style"===u){var l=r[u];for(a in l)l.hasOwnProperty(a)&&(n||(n={}),n[a]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(o.hasOwnProperty(u)?s||(s=[]):(s=s||[]).push(u,null));for(u in i){var c=i[u];if(l=null!=r?r[u]:void 0,i.hasOwnProperty(u)&&c!==l&&(null!=c||null!=l))if("style"===u)if(l){for(a in l)!l.hasOwnProperty(a)||c&&c.hasOwnProperty(a)||(n||(n={}),n[a]="");for(a in c)c.hasOwnProperty(a)&&l[a]!==c[a]&&(n||(n={}),n[a]=c[a])}else n||(s||(s=[]),s.push(u,n)),n=c;else"dangerouslySetInnerHTML"===u?(c=c?c.__html:void 0,l=l?l.__html:void 0,null!=c&&l!==c&&(s=s||[]).push(u,c)):"children"===u?"string"!=typeof c&&"number"!=typeof c||(s=s||[]).push(u,""+c):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(o.hasOwnProperty(u)?(null!=c&&"onScroll"===u&&Mi("scroll",e),s||l===c||(s=[])):(s=s||[]).push(u,c))}n&&(s=s||[]).push("style",n);var u=s;(t.updateQueue=u)&&(t.flags|=4)}},Ls=function(e,t,n,i){n!==i&&(t.flags|=4)};var Zs=!1,$s=!1,Qs="function"==typeof WeakSet?WeakSet:Set,el=null;function tl(e,t){var n=e.ref;if(null!==n)if("function"==typeof n)try{n(null)}catch(n){Tc(e,t,n)}else n.current=null}function nl(e,t,n){try{n()}catch(n){Tc(e,t,n)}}var il=!1;function ol(e,t,n){var i=t.updateQueue;if(null!==(i=null!==i?i.lastEffect:null)){var o=i=i.next;do{if((o.tag&e)===e){var r=o.destroy;o.destroy=void 0,void 0!==r&&nl(t,n,r)}o=o.next}while(o!==i)}}function rl(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var n=t=t.next;do{if((n.tag&e)===e){var i=n.create;n.destroy=i()}n=n.next}while(n!==t)}}function al(e){var t=e.ref;if(null!==t){var n=e.stateNode;e.tag,e=n,"function"==typeof t?t(e):t.current=e}}function sl(e){var t=e.alternate;null!==t&&(e.alternate=null,sl(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[uo],delete t[ho],delete t[po],delete t[go],delete t[mo])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function ll(e){return 5===e.tag||3===e.tag||4===e.tag}function cl(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||ll(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function ul(e,t,n){var i=e.tag;if(5===i||6===i)e=e.stateNode,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!=(n=n._reactRootContainer)||null!==t.onclick||(t.onclick=Zi));else if(4!==i&&null!==(e=e.child))for(ul(e,t,n),e=e.sibling;null!==e;)ul(e,t,n),e=e.sibling}function hl(e,t,n){var i=e.tag;if(5===i||6===i)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==i&&null!==(e=e.child))for(hl(e,t,n),e=e.sibling;null!==e;)hl(e,t,n),e=e.sibling}var dl=null,fl=!1;function pl(e,t,n){for(n=n.child;null!==n;)gl(e,t,n),n=n.sibling}function gl(e,t,n){if(nt&&"function"==typeof nt.onCommitFiberUnmount)try{nt.onCommitFiberUnmount(tt,n)}catch(e){}switch(n.tag){case 5:$s||tl(n,t);case 6:var i=dl,o=fl;dl=null,pl(e,t,n),fl=o,null!==(dl=i)&&(fl?(e=dl,n=n.stateNode,8===e.nodeType?e.parentNode.removeChild(n):e.removeChild(n)):dl.removeChild(n.stateNode));break;case 18:null!==dl&&(fl?(e=dl,n=n.stateNode,8===e.nodeType?ao(e.parentNode,n):1===e.nodeType&&ao(e,n),Ft(e)):ao(dl,n.stateNode));break;case 4:i=dl,o=fl,dl=n.stateNode.containerInfo,fl=!0,pl(e,t,n),dl=i,fl=o;break;case 0:case 11:case 14:case 15:if(!$s&&(null!==(i=n.updateQueue)&&null!==(i=i.lastEffect))){o=i=i.next;do{var r=o,a=r.destroy;r=r.tag,void 0!==a&&(0!=(2&r)||0!=(4&r))&&nl(n,t,a),o=o.next}while(o!==i)}pl(e,t,n);break;case 1:if(!$s&&(tl(n,t),"function"==typeof(i=n.stateNode).componentWillUnmount))try{i.props=n.memoizedProps,i.state=n.memoizedState,i.componentWillUnmount()}catch(e){Tc(n,t,e)}pl(e,t,n);break;case 21:pl(e,t,n);break;case 22:1&n.mode?($s=(i=$s)||null!==n.memoizedState,pl(e,t,n),$s=i):pl(e,t,n);break;default:pl(e,t,n)}}function ml(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new Qs),t.forEach((function(t){var i=Rc.bind(null,e,t);n.has(t)||(n.add(t),t.then(i,i))}))}}function vl(e,t){var i=t.deletions;if(null!==i)for(var o=0;o<i.length;o++){var r=i[o];try{var a=e,s=t,l=s;e:for(;null!==l;){switch(l.tag){case 5:dl=l.stateNode,fl=!1;break e;case 3:case 4:dl=l.stateNode.containerInfo,fl=!0;break e}l=l.return}if(null===dl)throw Error(n(160));gl(a,s,r),dl=null,fl=!1;var c=r.alternate;null!==c&&(c.return=null),r.return=null}catch(e){Tc(r,t,e)}}if(12854&t.subtreeFlags)for(t=t.child;null!==t;)yl(t,e),t=t.sibling}function yl(e,t){var i=e.alternate,o=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(vl(t,e),bl(e),4&o){try{ol(3,e,e.return),rl(3,e)}catch(t){Tc(e,e.return,t)}try{ol(5,e,e.return)}catch(t){Tc(e,e.return,t)}}break;case 1:vl(t,e),bl(e),512&o&&null!==i&&tl(i,i.return);break;case 5:if(vl(t,e),bl(e),512&o&&null!==i&&tl(i,i.return),32&e.flags){var r=e.stateNode;try{ce(r,"")}catch(t){Tc(e,e.return,t)}}if(4&o&&null!=(r=e.stateNode)){var a=e.memoizedProps,s=null!==i?i.memoizedProps:a,l=e.type,c=e.updateQueue;if(e.updateQueue=null,null!==c)try{"input"===l&&"radio"===a.type&&null!=a.name&&q(r,a),me(l,s);var u=me(l,a);for(s=0;s<c.length;s+=2){var h=c[s],d=c[s+1];"style"===h?fe(r,d):"dangerouslySetInnerHTML"===h?le(r,d):"children"===h?ce(r,d):v(r,h,d,u)}switch(l){case"input":J(r,a);break;case"textarea":ie(r,a);break;case"select":var f=r._wrapperState.wasMultiple;r._wrapperState.wasMultiple=!!a.multiple;var p=a.value;null!=p?ee(r,!!a.multiple,p,!1):f!==!!a.multiple&&(null!=a.defaultValue?ee(r,!!a.multiple,a.defaultValue,!0):ee(r,!!a.multiple,a.multiple?[]:"",!1))}r[ho]=a}catch(t){Tc(e,e.return,t)}}break;case 6:if(vl(t,e),bl(e),4&o){if(null===e.stateNode)throw Error(n(162));r=e.stateNode,a=e.memoizedProps;try{r.nodeValue=a}catch(t){Tc(e,e.return,t)}}break;case 3:if(vl(t,e),bl(e),4&o&&null!==i&&i.memoizedState.isDehydrated)try{Ft(t.containerInfo)}catch(t){Tc(e,e.return,t)}break;case 4:default:vl(t,e),bl(e);break;case 13:vl(t,e),bl(e),8192&(r=e.child).flags&&(a=null!==r.memoizedState,r.stateNode.isHidden=a,!a||null!==r.alternate&&null!==r.alternate.memoizedState||(Wl=Ke())),4&o&&ml(e);break;case 22:if(h=null!==i&&null!==i.memoizedState,1&e.mode?($s=(u=$s)||h,vl(t,e),$s=u):vl(t,e),bl(e),8192&o){if(u=null!==e.memoizedState,(e.stateNode.isHidden=u)&&!h&&0!=(1&e.mode))for(el=e,h=e.child;null!==h;){for(d=el=h;null!==el;){switch(p=(f=el).child,f.tag){case 0:case 11:case 14:case 15:ol(4,f,f.return);break;case 1:tl(f,f.return);var g=f.stateNode;if("function"==typeof g.componentWillUnmount){o=f,i=f.return;try{t=o,g.props=t.memoizedProps,g.state=t.memoizedState,g.componentWillUnmount()}catch(e){Tc(o,i,e)}}break;case 5:tl(f,f.return);break;case 22:if(null!==f.memoizedState){Sl(d);continue}}null!==p?(p.return=f,el=p):Sl(d)}h=h.sibling}e:for(h=null,d=e;;){if(5===d.tag){if(null===h){h=d;try{r=d.stateNode,u?"function"==typeof(a=r.style).setProperty?a.setProperty("display","none","important"):a.display="none":(l=d.stateNode,s=null!=(c=d.memoizedProps.style)&&c.hasOwnProperty("display")?c.display:null,l.style.display=de("display",s))}catch(t){Tc(e,e.return,t)}}}else if(6===d.tag){if(null===h)try{d.stateNode.nodeValue=u?"":d.memoizedProps}catch(t){Tc(e,e.return,t)}}else if((22!==d.tag&&23!==d.tag||null===d.memoizedState||d===e)&&null!==d.child){d.child.return=d,d=d.child;continue}if(d===e)break e;for(;null===d.sibling;){if(null===d.return||d.return===e)break e;h===d&&(h=null),d=d.return}h===d&&(h=null),d.sibling.return=d.return,d=d.sibling}}break;case 19:vl(t,e),bl(e),4&o&&ml(e);case 21:}}function bl(e){var t=e.flags;if(2&t){try{e:{for(var i=e.return;null!==i;){if(ll(i)){var o=i;break e}i=i.return}throw Error(n(160))}switch(o.tag){case 5:var r=o.stateNode;32&o.flags&&(ce(r,""),o.flags&=-33),hl(e,cl(e),r);break;case 3:case 4:var a=o.stateNode.containerInfo;ul(e,cl(e),a);break;default:throw Error(n(161))}}catch(t){Tc(e,e.return,t)}e.flags&=-3}4096&t&&(e.flags&=-4097)}function _l(e,t,n){el=e,kl(e)}function kl(e,t,n){for(var i=0!=(1&e.mode);null!==el;){var o=el,r=o.child;if(22===o.tag&&i){var a=null!==o.memoizedState||Zs;if(!a){var s=o.alternate,l=null!==s&&null!==s.memoizedState||$s;s=Zs;var c=$s;if(Zs=a,($s=l)&&!c)for(el=o;null!==el;)l=(a=el).child,22===a.tag&&null!==a.memoizedState?Cl(o):null!==l?(l.return=a,el=l):Cl(o);for(;null!==r;)el=r,kl(r),r=r.sibling;el=o,Zs=s,$s=c}wl(e)}else 0!=(8772&o.subtreeFlags)&&null!==r?(r.return=o,el=r):wl(e)}}function wl(e){for(;null!==el;){var t=el;if(0!=(8772&t.flags)){var i=t.alternate;try{if(0!=(8772&t.flags))switch(t.tag){case 0:case 11:case 15:$s||rl(5,t);break;case 1:var o=t.stateNode;if(4&t.flags&&!$s)if(null===i)o.componentDidMount();else{var r=t.elementType===t.type?i.memoizedProps:yr(t.type,i.memoizedProps);o.componentDidUpdate(r,i.memoizedState,o.__reactInternalSnapshotBeforeUpdate)}var a=t.updateQueue;null!==a&&Br(t,a,o);break;case 3:var s=t.updateQueue;if(null!==s){if(i=null,null!==t.child)switch(t.child.tag){case 5:case 1:i=t.child.stateNode}Br(t,s,i)}break;case 5:var l=t.stateNode;if(null===i&&4&t.flags){i=l;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&i.focus();break;case"img":c.src&&(i.src=c.src)}}break;case 6:case 4:case 12:case 19:case 17:case 21:case 22:case 23:case 25:break;case 13:if(null===t.memoizedState){var u=t.alternate;if(null!==u){var h=u.memoizedState;if(null!==h){var d=h.dehydrated;null!==d&&Ft(d)}}}break;default:throw Error(n(163))}$s||512&t.flags&&al(t)}catch(e){Tc(t,t.return,e)}}if(t===e){el=null;break}if(null!==(i=t.sibling)){i.return=t.return,el=i;break}el=t.return}}function Sl(e){for(;null!==el;){var t=el;if(t===e){el=null;break}var n=t.sibling;if(null!==n){n.return=t.return,el=n;break}el=t.return}}function Cl(e){for(;null!==el;){var t=el;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{rl(4,t)}catch(e){Tc(t,n,e)}break;case 1:var i=t.stateNode;if("function"==typeof i.componentDidMount){var o=t.return;try{i.componentDidMount()}catch(e){Tc(t,o,e)}}var r=t.return;try{al(t)}catch(e){Tc(t,r,e)}break;case 5:var a=t.return;try{al(t)}catch(e){Tc(t,a,e)}}}catch(e){Tc(t,t.return,e)}if(t===e){el=null;break}var s=t.sibling;if(null!==s){s.return=t.return,el=s;break}el=t.return}}var El,Tl=Math.ceil,Ol=y.ReactCurrentDispatcher,jl=y.ReactCurrentOwner,xl=y.ReactCurrentBatchConfig,Rl=0,Il=null,Al=null,Dl=0,Nl=0,Pl=So(0),Ll=0,Ml=null,zl=0,Fl=0,Bl=0,Ul=null,Vl=null,Wl=0,Gl=1/0,Hl=null,Yl=!1,Xl=null,Kl=null,ql=!1,Jl=null,Zl=0,$l=0,Ql=null,ec=-1,tc=0;function nc(){return 0!=(6&Rl)?Ke():-1!==ec?ec:ec=Ke()}function ic(e){return 0==(1&e.mode)?1:0!=(2&Rl)&&0!==Dl?Dl&-Dl:null!==vr.transition?(0===tc&&(tc=dt()),tc):0!==(e=mt)?e:e=void 0===(e=window.event)?16:Xt(e.type)}function oc(e,t,i,o){if(50<$l)throw $l=0,Ql=null,Error(n(185));pt(e,i,o),0!=(2&Rl)&&e===Il||(e===Il&&(0==(2&Rl)&&(Fl|=i),4===Ll&&cc(e,Dl)),rc(e,o),1===i&&0===Rl&&0==(1&t.mode)&&(Gl=Ke()+500,zo&&Uo()))}function rc(e,t){var n=e.callbackNode;!function(e,t){for(var n=e.suspendedLanes,i=e.pingedLanes,o=e.expirationTimes,r=e.pendingLanes;0<r;){var a=31-it(r),s=1<<a,l=o[a];-1===l?0!=(s&n)&&0==(s&i)||(o[a]=ut(s,t)):l<=t&&(e.expiredLanes|=s),r&=~s}}(e,t);var i=ct(e,e===Il?Dl:0);if(0===i)null!==n&&He(n),e.callbackNode=null,e.callbackPriority=0;else if(t=i&-i,e.callbackPriority!==t){if(null!=n&&He(n),1===t)0===e.tag?function(e){zo=!0,Bo(e)}(uc.bind(null,e)):Bo(uc.bind(null,e)),oo((function(){0==(6&Rl)&&Uo()})),n=null;else{switch(vt(i)){case 1:n=Je;break;case 4:n=Ze;break;case 16:default:n=$e;break;case 536870912:n=et}n=Ic(n,ac.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function ac(e,t){if(ec=-1,tc=0,0!=(6&Rl))throw Error(n(327));var i=e.callbackNode;if(Cc()&&e.callbackNode!==i)return null;var o=ct(e,e===Il?Dl:0);if(0===o)return null;if(0!=(30&o)||0!=(o&e.expiredLanes)||t)t=yc(e,o);else{t=o;var r=Rl;Rl|=2;var a=mc();for(Il===e&&Dl===t||(Hl=null,Gl=Ke()+500,pc(e,t));;)try{_c();break}catch(t){gc(e,t)}Sr(),Ol.current=a,Rl=r,null!==Al?t=0:(Il=null,Dl=0,t=Ll)}if(0!==t){if(2===t&&(0!==(r=ht(e))&&(o=r,t=sc(e,r))),1===t)throw i=Ml,pc(e,0),cc(e,o),rc(e,Ke()),i;if(6===t)cc(e,o);else{if(r=e.current.alternate,0==(30&o)&&!function(e){for(var t=e;;){if(16384&t.flags){var n=t.updateQueue;if(null!==n&&null!==(n=n.stores))for(var i=0;i<n.length;i++){var o=n[i],r=o.getSnapshot;o=o.value;try{if(!oi(r(),o))return!1}catch(e){return!1}}}if(n=t.child,16384&t.subtreeFlags&&null!==n)n.return=t,t=n;else{if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}(r)&&(2===(t=yc(e,o))&&(0!==(a=ht(e))&&(o=a,t=sc(e,a))),1===t))throw i=Ml,pc(e,0),cc(e,o),rc(e,Ke()),i;switch(e.finishedWork=r,e.finishedLanes=o,t){case 0:case 1:throw Error(n(345));case 2:case 5:Sc(e,Vl,Hl);break;case 3:if(cc(e,o),(130023424&o)===o&&10<(t=Wl+500-Ke())){if(0!==ct(e,0))break;if(((r=e.suspendedLanes)&o)!==o){nc(),e.pingedLanes|=e.suspendedLanes&r;break}e.timeoutHandle=to(Sc.bind(null,e,Vl,Hl),t);break}Sc(e,Vl,Hl);break;case 4:if(cc(e,o),(4194240&o)===o)break;for(t=e.eventTimes,r=-1;0<o;){var s=31-it(o);a=1<<s,(s=t[s])>r&&(r=s),o&=~a}if(o=r,10<(o=(120>(o=Ke()-o)?120:480>o?480:1080>o?1080:1920>o?1920:3e3>o?3e3:4320>o?4320:1960*Tl(o/1960))-o)){e.timeoutHandle=to(Sc.bind(null,e,Vl,Hl),o);break}Sc(e,Vl,Hl);break;default:throw Error(n(329))}}}return rc(e,Ke()),e.callbackNode===i?ac.bind(null,e):null}function sc(e,t){var n=Ul;return e.current.memoizedState.isDehydrated&&(pc(e,t).flags|=256),2!==(e=yc(e,t))&&(t=Vl,Vl=n,null!==t&&lc(t)),e}function lc(e){null===Vl?Vl=e:Vl.push.apply(Vl,e)}function cc(e,t){for(t&=~Bl,t&=~Fl,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-it(t),i=1<<n;e[n]=-1,t&=~i}}function uc(e){if(0!=(6&Rl))throw Error(n(327));Cc();var t=ct(e,0);if(0==(1&t))return rc(e,Ke()),null;var i=yc(e,t);if(0!==e.tag&&2===i){var o=ht(e);0!==o&&(t=o,i=sc(e,o))}if(1===i)throw i=Ml,pc(e,0),cc(e,t),rc(e,Ke()),i;if(6===i)throw Error(n(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Sc(e,Vl,Hl),rc(e,Ke()),null}function hc(e,t){var n=Rl;Rl|=1;try{return e(t)}finally{0===(Rl=n)&&(Gl=Ke()+500,zo&&Uo())}}function dc(e){null!==Jl&&0===Jl.tag&&0==(6&Rl)&&Cc();var t=Rl;Rl|=1;var n=xl.transition,i=mt;try{if(xl.transition=null,mt=1,e)return e()}finally{mt=i,xl.transition=n,0==(6&(Rl=t))&&Uo()}}function fc(){Nl=Pl.current,Co(Pl)}function pc(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,no(n)),null!==Al)for(n=Al.return;null!==n;){var i=n;switch(tr(i),i.tag){case 1:null!=(i=i.type.childContextTypes)&&Ao();break;case 3:aa(),Co(jo),Co(Oo),da();break;case 5:la(i);break;case 4:aa();break;case 13:case 19:Co(ca);break;case 10:Cr(i.type._context);break;case 22:case 23:fc()}n=n.return}if(Il=e,Al=e=Pc(e.current,null),Dl=Nl=t,Ll=0,Ml=null,Bl=Fl=zl=0,Vl=Ul=null,null!==jr){for(t=0;t<jr.length;t++)if(null!==(i=(n=jr[t]).interleaved)){n.interleaved=null;var o=i.next,r=n.pending;if(null!==r){var a=r.next;r.next=o,i.next=a}n.pending=i}jr=null}return e}function gc(e,t){for(;;){var i=Al;try{if(Sr(),fa.current=ss,ba){for(var o=ma.memoizedState;null!==o;){var r=o.queue;null!==r&&(r.pending=null),o=o.next}ba=!1}if(ga=0,ya=va=ma=null,_a=!1,ka=0,jl.current=null,null===i||null===i.return){Ll=1,Ml=t,Al=null;break}e:{var a=e,s=i.return,l=i,c=t;if(t=Dl,l.flags|=32768,null!==c&&"object"===_typeof(c)&&"function"==typeof c.then){var u=c,h=l,d=h.tag;if(0==(1&h.mode)&&(0===d||11===d||15===d)){var f=h.alternate;f?(h.updateQueue=f.updateQueue,h.memoizedState=f.memoizedState,h.lanes=f.lanes):(h.updateQueue=null,h.memoizedState=null)}var p=ys(s);if(null!==p){p.flags&=-257,bs(p,s,l,0,t),1&p.mode&&vs(a,u,t),c=u;var g=(t=p).updateQueue;if(null===g){var m=new Set;m.add(c),t.updateQueue=m}else g.add(c);break e}if(0==(1&t)){vs(a,u,t),vc();break e}c=Error(n(426))}else if(rr&&1&l.mode){var v=ys(s);if(null!==v){0==(65536&v.flags)&&(v.flags|=256),bs(v,s,l,0,t),mr(hs(c,l));break e}}a=c=hs(c,l),4!==Ll&&(Ll=2),null===Ul?Ul=[a]:Ul.push(a),a=s;do{switch(a.tag){case 3:a.flags|=65536,t&=-t,a.lanes|=t,zr(a,gs(0,c,t));break e;case 1:l=c;var y=a.type,b=a.stateNode;if(0==(128&a.flags)&&("function"==typeof y.getDerivedStateFromError||null!==b&&"function"==typeof b.componentDidCatch&&(null===Kl||!Kl.has(b)))){a.flags|=65536,t&=-t,a.lanes|=t,zr(a,ms(a,l,t));break e}}a=a.return}while(null!==a)}wc(i)}catch(e){t=e,Al===i&&null!==i&&(Al=i=i.return);continue}break}}function mc(){var e=Ol.current;return Ol.current=ss,null===e?ss:e}function vc(){0!==Ll&&3!==Ll&&2!==Ll||(Ll=4),null===Il||0==(268435455&zl)&&0==(268435455&Fl)||cc(Il,Dl)}function yc(e,t){var i=Rl;Rl|=2;var o=mc();for(Il===e&&Dl===t||(Hl=null,pc(e,t));;)try{bc();break}catch(t){gc(e,t)}if(Sr(),Rl=i,Ol.current=o,null!==Al)throw Error(n(261));return Il=null,Dl=0,Ll}function bc(){for(;null!==Al;)kc(Al)}function _c(){for(;null!==Al&&!Ye();)kc(Al)}function kc(e){var t=El(e.alternate,e,Nl);e.memoizedProps=e.pendingProps,null===t?wc(e):Al=t,jl.current=null}function wc(e){var t=e;do{var n=t.alternate;if(e=t.return,0==(32768&t.flags)){if(null!==(n=qs(n,t,Nl)))return void(Al=n)}else{if(null!==(n=Js(n,t)))return n.flags&=32767,void(Al=n);if(null===e)return Ll=6,void(Al=null);e.flags|=32768,e.subtreeFlags=0,e.deletions=null}if(null!==(t=t.sibling))return void(Al=t);Al=t=e}while(null!==t);0===Ll&&(Ll=5)}function Sc(e,t,i){var o=mt,r=xl.transition;try{xl.transition=null,mt=1,function(e,t,i,o){do{Cc()}while(null!==Jl);if(0!=(6&Rl))throw Error(n(327));i=e.finishedWork;var r=e.finishedLanes;if(null===i)return null;if(e.finishedWork=null,e.finishedLanes=0,i===e.current)throw Error(n(177));e.callbackNode=null,e.callbackPriority=0;var a=i.lanes|i.childLanes;if(function(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var i=e.eventTimes;for(e=e.expirationTimes;0<n;){var o=31-it(n),r=1<<o;t[o]=0,i[o]=-1,e[o]=-1,n&=~r}}(e,a),e===Il&&(Al=Il=null,Dl=0),0==(2064&i.subtreeFlags)&&0==(2064&i.flags)||ql||(ql=!0,Ic($e,(function(){return Cc(),null}))),a=0!=(15990&i.flags),0!=(15990&i.subtreeFlags)||a){a=xl.transition,xl.transition=null;var s=mt;mt=1;var l=Rl;Rl|=4,jl.current=null,function(e,t){if($i=Ut,hi(e=ui())){if("selectionStart"in e)var i={start:e.selectionStart,end:e.selectionEnd};else e:{var o=(i=(i=e.ownerDocument)&&i.defaultView||window).getSelection&&i.getSelection();if(o&&0!==o.rangeCount){i=o.anchorNode;var r=o.anchorOffset,a=o.focusNode;o=o.focusOffset;try{i.nodeType,a.nodeType}catch(e){i=null;break e}var s=0,l=-1,c=-1,u=0,h=0,d=e,f=null;t:for(;;){for(var p;d!==i||0!==r&&3!==d.nodeType||(l=s+r),d!==a||0!==o&&3!==d.nodeType||(c=s+o),3===d.nodeType&&(s+=d.nodeValue.length),null!==(p=d.firstChild);)f=d,d=p;for(;;){if(d===e)break t;if(f===i&&++u===r&&(l=s),f===a&&++h===o&&(c=s),null!==(p=d.nextSibling))break;f=(d=f).parentNode}d=p}i=-1===l||-1===c?null:{start:l,end:c}}else i=null}i=i||{start:0,end:0}}else i=null;for(Qi={focusedElem:e,selectionRange:i},Ut=!1,el=t;null!==el;)if(e=(t=el).child,0!=(1028&t.subtreeFlags)&&null!==e)e.return=t,el=e;else for(;null!==el;){t=el;try{var g=t.alternate;if(0!=(1024&t.flags))switch(t.tag){case 0:case 11:case 15:case 5:case 6:case 4:case 17:break;case 1:if(null!==g){var m=g.memoizedProps,v=g.memoizedState,y=t.stateNode,b=y.getSnapshotBeforeUpdate(t.elementType===t.type?m:yr(t.type,m),v);y.__reactInternalSnapshotBeforeUpdate=b}break;case 3:var _=t.stateNode.containerInfo;1===_.nodeType?_.textContent="":9===_.nodeType&&_.documentElement&&_.removeChild(_.documentElement);break;default:throw Error(n(163))}}catch(e){Tc(t,t.return,e)}if(null!==(e=t.sibling)){e.return=t.return,el=e;break}el=t.return}g=il,il=!1}(e,i),yl(i,e),di(Qi),Ut=!!$i,Qi=$i=null,e.current=i,_l(i),Xe(),Rl=l,mt=s,xl.transition=a}else e.current=i;if(ql&&(ql=!1,Jl=e,Zl=r),a=e.pendingLanes,0===a&&(Kl=null),function(e){if(nt&&"function"==typeof nt.onCommitFiberRoot)try{nt.onCommitFiberRoot(tt,e,void 0,128==(128&e.current.flags))}catch(e){}}(i.stateNode),rc(e,Ke()),null!==t)for(o=e.onRecoverableError,i=0;i<t.length;i++)r=t[i],o(r.value,{componentStack:r.stack,digest:r.digest});if(Yl)throw Yl=!1,e=Xl,Xl=null,e;0!=(1&Zl)&&0!==e.tag&&Cc(),a=e.pendingLanes,0!=(1&a)?e===Ql?$l++:($l=0,Ql=e):$l=0,Uo()}(e,t,i,o)}finally{xl.transition=r,mt=o}return null}function Cc(){if(null!==Jl){var e=vt(Zl),t=xl.transition,i=mt;try{if(xl.transition=null,mt=16>e?16:e,null===Jl)var o=!1;else{if(e=Jl,Jl=null,Zl=0,0!=(6&Rl))throw Error(n(331));var r=Rl;for(Rl|=4,el=e.current;null!==el;){var a=el,s=a.child;if(0!=(16&el.flags)){var l=a.deletions;if(null!==l){for(var c=0;c<l.length;c++){var u=l[c];for(el=u;null!==el;){var h=el;switch(h.tag){case 0:case 11:case 15:ol(8,h,a)}var d=h.child;if(null!==d)d.return=h,el=d;else for(;null!==el;){var f=(h=el).sibling,p=h.return;if(sl(h),h===u){el=null;break}if(null!==f){f.return=p,el=f;break}el=p}}}var g=a.alternate;if(null!==g){var m=g.child;if(null!==m){g.child=null;do{var v=m.sibling;m.sibling=null,m=v}while(null!==m)}}el=a}}if(0!=(2064&a.subtreeFlags)&&null!==s)s.return=a,el=s;else e:for(;null!==el;){if(0!=(2048&(a=el).flags))switch(a.tag){case 0:case 11:case 15:ol(9,a,a.return)}var y=a.sibling;if(null!==y){y.return=a.return,el=y;break e}el=a.return}}var b=e.current;for(el=b;null!==el;){var _=(s=el).child;if(0!=(2064&s.subtreeFlags)&&null!==_)_.return=s,el=_;else e:for(s=b;null!==el;){if(0!=(2048&(l=el).flags))try{switch(l.tag){case 0:case 11:case 15:rl(9,l)}}catch(e){Tc(l,l.return,e)}if(l===s){el=null;break e}var k=l.sibling;if(null!==k){k.return=l.return,el=k;break e}el=l.return}}if(Rl=r,Uo(),nt&&"function"==typeof nt.onPostCommitFiberRoot)try{nt.onPostCommitFiberRoot(tt,e)}catch(e){}o=!0}return o}finally{mt=i,xl.transition=t}}return!1}function Ec(e,t,n){e=Lr(e,t=gs(0,t=hs(n,t),1),1),t=nc(),null!==e&&(pt(e,1,t),rc(e,t))}function Tc(e,t,n){if(3===e.tag)Ec(e,e,n);else for(;null!==t;){if(3===t.tag){Ec(t,e,n);break}if(1===t.tag){var i=t.stateNode;if("function"==typeof t.type.getDerivedStateFromError||"function"==typeof i.componentDidCatch&&(null===Kl||!Kl.has(i))){t=Lr(t,e=ms(t,e=hs(n,e),1),1),e=nc(),null!==t&&(pt(t,1,e),rc(t,e));break}}t=t.return}}function Oc(e,t,n){var i=e.pingCache;null!==i&&i.delete(t),t=nc(),e.pingedLanes|=e.suspendedLanes&n,Il===e&&(Dl&n)===n&&(4===Ll||3===Ll&&(130023424&Dl)===Dl&&500>Ke()-Wl?pc(e,0):Bl|=n),rc(e,t)}function jc(e,t){0===t&&(0==(1&e.mode)?t=1:(t=st,0==(130023424&(st<<=1))&&(st=4194304)));var n=nc();null!==(e=Ir(e,t))&&(pt(e,t,n),rc(e,n))}function xc(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),jc(e,n)}function Rc(e,t){var i=0;switch(e.tag){case 13:var o=e.stateNode,r=e.memoizedState;null!==r&&(i=r.retryLane);break;case 19:o=e.stateNode;break;default:throw Error(n(314))}null!==o&&o.delete(t),jc(e,i)}function Ic(e,t){return Ge(e,t)}function Ac(e,t,n,i){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=i,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Dc(e,t,n,i){return new Ac(e,t,n,i)}function Nc(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Pc(e,t){var n=e.alternate;return null===n?((n=Dc(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=14680064&e.flags,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Lc(e,t,i,o,r,a){var s=2;if(o=e,"function"==typeof e)Nc(e)&&(s=1);else if("string"==typeof e)s=5;else e:switch(e){case k:return Mc(i.children,r,a,t);case w:s=8,r|=8;break;case S:return(e=Dc(12,i,t,2|r)).elementType=S,e.lanes=a,e;case O:return(e=Dc(13,i,t,r)).elementType=O,e.lanes=a,e;case j:return(e=Dc(19,i,t,r)).elementType=j,e.lanes=a,e;case I:return zc(i,r,a,t);default:if("object"===_typeof(e)&&null!==e)switch(e.$$typeof){case C:s=10;break e;case E:s=9;break e;case T:s=11;break e;case x:s=14;break e;case R:s=16,o=null;break e}throw Error(n(130,null==e?e:_typeof(e),""))}return(t=Dc(s,i,t,r)).elementType=e,t.type=o,t.lanes=a,t}function Mc(e,t,n,i){return(e=Dc(7,e,i,t)).lanes=n,e}function zc(e,t,n,i){return(e=Dc(22,e,i,t)).elementType=I,e.lanes=n,e.stateNode={isHidden:!1},e}function Fc(e,t,n){return(e=Dc(6,e,null,t)).lanes=n,e}function Bc(e,t,n){return(t=Dc(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Uc(e,t,n,i,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=ft(0),this.expirationTimes=ft(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ft(0),this.identifierPrefix=i,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function Vc(e,t,n,i,o,r,a,s,l){return e=new Uc(e,t,n,s,l),1===t?(t=1,!0===r&&(t|=8)):t=0,r=Dc(3,null,null,t),e.current=r,r.stateNode=e,r.memoizedState={element:i,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Dr(r),e}function Wc(e){if(!e)return To;e:{if(Fe(e=e._reactInternals)!==e||1!==e.tag)throw Error(n(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Io(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(n(171))}if(1===e.tag){var i=e.type;if(Io(i))return No(e,i,t)}return t}function Gc(e,t,n,i,o,r,a,s,l){return(e=Vc(n,i,!0,e,0,r,0,s,l)).context=Wc(null),n=e.current,(r=Pr(i=nc(),o=ic(n))).callback=null!=t?t:null,Lr(n,r,o),e.current.lanes=o,pt(e,o,i),rc(e,i),e}function Hc(e,t,n,i){var o=t.current,r=nc(),a=ic(o);return n=Wc(n),null===t.context?t.context=n:t.pendingContext=n,(t=Pr(r,a)).payload={element:e},null!==(i=void 0===i?null:i)&&(t.callback=i),null!==(e=Lr(o,t,a))&&(oc(e,o,a,r),Mr(e,o,a)),a}function Yc(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Xc(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function Kc(e,t){Xc(e,t),(e=e.alternate)&&Xc(e,t)}El=function(e,t,i){if(null!==e)if(e.memoizedProps!==t.pendingProps||jo.current)ks=!0;else{if(0==(e.lanes&i)&&0==(128&t.flags))return ks=!1,function(e,t,n){switch(t.tag){case 3:Is(t),gr();break;case 5:sa(t);break;case 1:Io(t.type)&&Po(t);break;case 4:ra(t,t.stateNode.containerInfo);break;case 10:var i=t.type._context,o=t.memoizedProps.value;Eo(br,i._currentValue),i._currentValue=o;break;case 13:if(null!==(i=t.memoizedState))return null!==i.dehydrated?(Eo(ca,1&ca.current),t.flags|=128,null):0!=(n&t.child.childLanes)?Fs(e,t,n):(Eo(ca,1&ca.current),null!==(e=Ys(e,t,n))?e.sibling:null);Eo(ca,1&ca.current);break;case 19:if(i=0!=(n&t.childLanes),0!=(128&e.flags)){if(i)return Gs(e,t,n);t.flags|=128}if(null!==(o=t.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),Eo(ca,ca.current),i)break;return null;case 22:case 23:return t.lanes=0,Ts(e,t,n)}return Ys(e,t,n)}(e,t,i);ks=0!=(131072&e.flags)}else ks=!1,rr&&0!=(1048576&t.flags)&&$o(t,Ho,t.index);switch(t.lanes=0,t.tag){case 2:var o=t.type;Hs(e,t),e=t.pendingProps;var r=Ro(t,Oo.current);Tr(t,i),r=Ea(null,t,o,e,r,i);var a=Ta();return t.flags|=1,"object"===_typeof(r)&&null!==r&&"function"==typeof r.render&&void 0===r.$$typeof?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Io(o)?(a=!0,Po(t)):a=!1,t.memoizedState=null!==r.state&&void 0!==r.state?r.state:null,Dr(t),r.updater=Wr,t.stateNode=r,r._reactInternals=t,Xr(t,o,e,i),t=Rs(null,t,o,!0,a,i)):(t.tag=0,rr&&a&&Qo(t),ws(null,t,r,i),t=t.child),t;case 16:o=t.elementType;e:{switch(Hs(e,t),e=t.pendingProps,o=(r=o._init)(o._payload),t.type=o,r=t.tag=function(e){if("function"==typeof e)return Nc(e)?1:0;if(null!=e){if((e=e.$$typeof)===T)return 11;if(e===x)return 14}return 2}(o),e=yr(o,e),r){case 0:t=js(null,t,o,e,i);break e;case 1:t=xs(null,t,o,e,i);break e;case 11:t=Ss(null,t,o,e,i);break e;case 14:t=Cs(null,t,o,yr(o.type,e),i);break e}throw Error(n(306,o,""))}return t;case 0:return o=t.type,r=t.pendingProps,js(e,t,o,r=t.elementType===o?r:yr(o,r),i);case 1:return o=t.type,r=t.pendingProps,xs(e,t,o,r=t.elementType===o?r:yr(o,r),i);case 3:e:{if(Is(t),null===e)throw Error(n(387));o=t.pendingProps,r=(a=t.memoizedState).element,Nr(e,t),Fr(t,o,null,i);var s=t.memoizedState;if(o=s.element,a.isDehydrated){if(a={element:o,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=a,t.memoizedState=a,256&t.flags){t=As(e,t,o,i,r=hs(Error(n(423)),t));break e}if(o!==r){t=As(e,t,o,i,r=hs(Error(n(424)),t));break e}for(or=so(t.stateNode.containerInfo.firstChild),nr=t,rr=!0,ar=null,i=Qr(t,null,o,i),t.child=i;i;)i.flags=-3&i.flags|4096,i=i.sibling}else{if(gr(),o===r){t=Ys(e,t,i);break e}ws(e,t,o,i)}t=t.child}return t;case 5:return sa(t),null===e&&hr(t),o=t.type,r=t.pendingProps,a=null!==e?e.memoizedProps:null,s=r.children,eo(o,r)?s=null:null!==a&&eo(o,a)&&(t.flags|=32),Os(e,t),ws(e,t,s,i),t.child;case 6:return null===e&&hr(t),null;case 13:return Fs(e,t,i);case 4:return ra(t,t.stateNode.containerInfo),o=t.pendingProps,null===e?t.child=$r(t,null,o,i):ws(e,t,o,i),t.child;case 11:return o=t.type,r=t.pendingProps,Ss(e,t,o,r=t.elementType===o?r:yr(o,r),i);case 7:return ws(e,t,t.pendingProps,i),t.child;case 8:case 12:return ws(e,t,t.pendingProps.children,i),t.child;case 10:e:{if(o=t.type._context,r=t.pendingProps,a=t.memoizedProps,s=r.value,Eo(br,o._currentValue),o._currentValue=s,null!==a)if(oi(a.value,s)){if(a.children===r.children&&!jo.current){t=Ys(e,t,i);break e}}else for(null!==(a=t.child)&&(a.return=t);null!==a;){var l=a.dependencies;if(null!==l){s=a.child;for(var c=l.firstContext;null!==c;){if(c.context===o){if(1===a.tag){(c=Pr(-1,i&-i)).tag=2;var u=a.updateQueue;if(null!==u){var h=(u=u.shared).pending;null===h?c.next=c:(c.next=h.next,h.next=c),u.pending=c}}a.lanes|=i,null!==(c=a.alternate)&&(c.lanes|=i),Er(a.return,i,t),l.lanes|=i;break}c=c.next}}else if(10===a.tag)s=a.type===t.type?null:a.child;else if(18===a.tag){if(null===(s=a.return))throw Error(n(341));s.lanes|=i,null!==(l=s.alternate)&&(l.lanes|=i),Er(s,i,t),s=a.sibling}else s=a.child;if(null!==s)s.return=a;else for(s=a;null!==s;){if(s===t){s=null;break}if(null!==(a=s.sibling)){a.return=s.return,s=a;break}s=s.return}a=s}ws(e,t,r.children,i),t=t.child}return t;case 9:return r=t.type,o=t.pendingProps.children,Tr(t,i),o=o(r=Or(r)),t.flags|=1,ws(e,t,o,i),t.child;case 14:return r=yr(o=t.type,t.pendingProps),Cs(e,t,o,r=yr(o.type,r),i);case 15:return Es(e,t,t.type,t.pendingProps,i);case 17:return o=t.type,r=t.pendingProps,r=t.elementType===o?r:yr(o,r),Hs(e,t),t.tag=1,Io(o)?(e=!0,Po(t)):e=!1,Tr(t,i),Hr(t,o,r),Xr(t,o,r,i),Rs(null,t,o,!0,e,i);case 19:return Gs(e,t,i);case 22:return Ts(e,t,i)}throw Error(n(156,t.tag))};var qc="function"==typeof reportError?reportError:function(e){console.error(e)};function Jc(e){this._internalRoot=e}function Zc(e){this._internalRoot=e}function $c(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType)}function Qc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function eu(){}function tu(e,t,n,i,o){var r=n._reactRootContainer;if(r){var a=r;if("function"==typeof o){var s=o;o=function(){var e=Yc(a);s.call(e)}}Hc(t,a,e,o)}else a=function(e,t,n,i,o){if(o){if("function"==typeof i){var r=i;i=function(){var e=Yc(a);r.call(e)}}var a=Gc(t,i,e,0,null,!1,0,"",eu);return e._reactRootContainer=a,e[fo]=a.current,Bi(8===e.nodeType?e.parentNode:e),dc(),a}for(;o=e.lastChild;)e.removeChild(o);if("function"==typeof i){var s=i;i=function(){var e=Yc(l);s.call(e)}}var l=Vc(e,0,!1,null,0,!1,0,"",eu);return e._reactRootContainer=l,e[fo]=l.current,Bi(8===e.nodeType?e.parentNode:e),dc((function(){Hc(t,l,n,i)})),l}(n,t,e,o,i);return Yc(a)}Zc.prototype.render=Jc.prototype.render=function(e){var t=this._internalRoot;if(null===t)throw Error(n(409));Hc(e,t,null,null)},Zc.prototype.unmount=Jc.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var t=e.containerInfo;dc((function(){Hc(null,e,null,null)})),t[fo]=null}},Zc.prototype.unstable_scheduleHydration=function(e){if(e){var t=kt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Rt.length&&0!==t&&t<Rt[n].priority;n++);Rt.splice(n,0,e),0===n&&Nt(e)}},yt=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=lt(t.pendingLanes);0!==n&&(gt(t,1|n),rc(t,Ke()),0==(6&Rl)&&(Gl=Ke()+500,Uo()))}break;case 13:dc((function(){var t=Ir(e,1);if(null!==t){var n=nc();oc(t,e,1,n)}})),Kc(e,1)}},bt=function(e){if(13===e.tag){var t=Ir(e,134217728);if(null!==t)oc(t,e,134217728,nc());Kc(e,134217728)}},_t=function(e){if(13===e.tag){var t=ic(e),n=Ir(e,t);if(null!==n)oc(n,e,t,nc());Kc(e,t)}},kt=function(){return mt},wt=function(e,t){var n=mt;try{return mt=e,t()}finally{mt=n}},be=function(e,t,i){switch(t){case"input":if(J(e,i),t=i.name,"radio"===i.type&&null!=t){for(i=e;i.parentNode;)i=i.parentNode;for(i=i.querySelectorAll("input[name="+JSON.stringify(""+t)+\'][type="radio"]\'),t=0;t<i.length;t++){var o=i[t];if(o!==e&&o.form===e.form){var r=_o(o);if(!r)throw Error(n(90));H(o),J(o,r)}}}break;case"textarea":ie(e,i);break;case"select":null!=(t=i.value)&&ee(e,!!i.multiple,t,!1)}},Ee=hc,Te=dc;var nu={usingClientEntryPoint:!1,Events:[yo,bo,_o,Se,Ce,hc]},iu={findFiberByHostInstance:vo,bundleType:0,version:"18.2.0",rendererPackageName:"react-dom"},ou={bundleType:iu.bundleType,version:iu.version,rendererPackageName:iu.rendererPackageName,rendererConfig:iu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:y.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Ve(e))?null:e.stateNode},findFiberByHostInstance:iu.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0-next-9e3b772b8-20220608"};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var ru=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!ru.isDisabled&&ru.supportsFiber)try{tt=ru.inject(ou),nt=ru}catch(e){}}return ir.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=nu,ir.createPortal=function(e,t){var i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!$c(t))throw Error(n(200));return function(e,t,n){var i=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:_,key:null==i?null:""+i,children:e,containerInfo:t,implementation:n}}(e,t,null,i)},ir.createRoot=function(e,t){if(!$c(e))throw Error(n(299));var i=!1,o="",r=qc;return null!=t&&(!0===t.unstable_strictMode&&(i=!0),void 0!==t.identifierPrefix&&(o=t.identifierPrefix),void 0!==t.onRecoverableError&&(r=t.onRecoverableError)),t=Vc(e,1,!1,null,0,i,0,o,r),e[fo]=t.current,Bi(8===e.nodeType?e.parentNode:e),new Jc(t)},ir.findDOMNode=function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternals;if(void 0===t){if("function"==typeof e.render)throw Error(n(188));throw e=Object.keys(e).join(","),Error(n(268,e))}return e=null===(e=Ve(t))?null:e.stateNode},ir.flushSync=function(e){return dc(e)},ir.hydrate=function(e,t,i){if(!Qc(t))throw Error(n(200));return tu(null,e,t,!0,i)},ir.hydrateRoot=function(e,t,i){if(!$c(e))throw Error(n(405));var o=null!=i&&i.hydratedSources||null,r=!1,a="",s=qc;if(null!=i&&(!0===i.unstable_strictMode&&(r=!0),void 0!==i.identifierPrefix&&(a=i.identifierPrefix),void 0!==i.onRecoverableError&&(s=i.onRecoverableError)),t=Gc(t,null,e,1,null!=i?i:null,r,0,a,s),e[fo]=t.current,Bi(e),o)for(e=0;e<o.length;e++)r=(r=(i=o[e])._getVersion)(i._source),null==t.mutableSourceEagerHydrationData?t.mutableSourceEagerHydrationData=[i,r]:t.mutableSourceEagerHydrationData.push(i,r);return new Zc(t)},ir.render=function(e,t,i){if(!Qc(t))throw Error(n(200));return tu(null,e,t,!1,i)},ir.unmountComponentAtNode=function(e){if(!Qc(e))throw Error(n(40));return!!e._reactRootContainer&&(dc((function(){tu(null,null,e,!1,(function(){e._reactRootContainer=null,e[fo]=null}))})),!0)},ir.unstable_batchedUpdates=hc,ir.unstable_renderSubtreeIntoContainer=function(e,t,i,o){if(!Qc(i))throw Error(n(200));if(null==e||void 0===e._reactInternals)throw Error(n(38));return tu(e,t,i,!1,o)},ir.version="18.2.0-next-9e3b772b8-20220608",ir}!function(e){!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),e.exports=lr()}({get exports(){return nr},set exports(e){nr=e}});var cr=nr;tr=cr.createRoot,cr.hydrateRoot;var ur={type:"logger",log:function(e){this.output("log",e)},warn:function(e){this.output("warn",e)},error:function(e){this.output("error",e)},output:function(e,t){console&&console[e]&&console[e].apply(console,t)}},hr=function(){function e(t){_classCallCheck(this,e);var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.init(t,n)}return _createClass(e,[{key:"init",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=e||ur,this.options=t,this.debug=t.debug}},{key:"log",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"log","",!0)}},{key:"warn",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","",!0)}},{key:"error",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"error","")}},{key:"deprecate",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}},{key:"forward",value:function(e,t,n,i){return i&&!this.debug?null:("string"==typeof e[0]&&(e[0]="".concat(n).concat(this.prefix," ").concat(e[0])),this.logger[t](e))}},{key:"create",value:function(t){return new e(this.logger,_objectSpread(_objectSpread({},{prefix:"".concat(this.prefix,":").concat(t,":")}),this.options))}},{key:"clone",value:function(t){return(t=t||this.options).prefix=t.prefix||this.prefix,new e(this.logger,t)}}]),e}(),dr=new hr,fr=function(){function e(){_classCallCheck(this,e),this.observers={}}return _createClass(e,[{key:"on",value:function(e,t){var n=this;return e.split(" ").forEach((function(e){n.observers[e]||(n.observers[e]=new Map);var i=n.observers[e].get(t)||0;n.observers[e].set(t,i+1)})),this}},{key:"off",value:function(e,t){this.observers[e]&&(t?this.observers[e].delete(t):delete this.observers[e])}},{key:"emit",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];this.observers[e]&&Array.from(this.observers[e].entries()).forEach((function(e){for(var t=_slicedToArray(e,2),i=t[0],o=t[1],r=0;r<o;r++)i.apply(void 0,n)}));this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach((function(t){for(var i=_slicedToArray(t,2),o=i[0],r=i[1],a=0;a<r;a++)o.apply(o,[e].concat(n))}))}}]),e}(),pr=function(){var e,t,n=new Promise((function(n,i){e=n,t=i}));return n.resolve=e,n.reject=t,n},gr=function(e){return null==e?"":""+e},mr=/###/g,vr=function(e){return e&&e.indexOf("###")>-1?e.replace(mr,"."):e},yr=function(e){return!e||"string"==typeof e},br=function(e,t,n){for(var i="string"!=typeof t?t:t.split("."),o=0;o<i.length-1;){if(yr(e))return{};var r=vr(i[o]);!e[r]&&n&&(e[r]=new n),e=Object.prototype.hasOwnProperty.call(e,r)?e[r]:{},++o}return yr(e)?{}:{obj:e,k:vr(i[o])}},_r=function(e,t,n){var i=br(e,t,Object),o=i.obj,r=i.k;if(void 0===o&&1!==t.length){for(var a=t[t.length-1],s=t.slice(0,t.length-1),l=br(e,s,Object);void 0===l.obj&&s.length;)a="".concat(s[s.length-1],".").concat(a),s=s.slice(0,s.length-1),(l=br(e,s,Object))&&l.obj&&void 0!==l.obj["".concat(l.k,".").concat(a)]&&(l.obj=void 0);l.obj["".concat(l.k,".").concat(a)]=n}else o[r]=n},kr=function(e,t){var n=br(e,t),i=n.obj,o=n.k;if(i)return i[o]},wr=function e(t,n,i){for(var o in n)"__proto__"!==o&&"constructor"!==o&&(o in t?"string"==typeof t[o]||t[o]instanceof String||"string"==typeof n[o]||n[o]instanceof String?i&&(t[o]=n[o]):e(t[o],n[o],i):t[o]=n[o]);return t},Sr=function(e){return e.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g,"\\\\$&")},Cr={"&":"&amp;","<":"&lt;",">":"&gt;",\'"\':"&quot;","\'":"&#39;","/":"&#x2F;"},Er=function(e){return"string"==typeof e?e.replace(/[&<>"\'\\/]/g,(function(e){return Cr[e]})):e},Tr=[" ",",","?","!",";"],Or=new(function(){function e(t){_classCallCheck(this,e),this.capacity=t,this.regExpMap=new Map,this.regExpQueue=[]}return _createClass(e,[{key:"getRegExp",value:function(e){var t=this.regExpMap.get(e);if(void 0!==t)return t;var n=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,n),this.regExpQueue.push(e),n}}]),e}())(20),jr=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:".";if(e){if(e[t])return e[t];for(var i=t.split(n),o=e,r=0;r<i.length;){if(!o||"object"!==_typeof(o))return;for(var a=void 0,s="",l=r;l<i.length;++l)if(l!==r&&(s+=n),void 0!==(a=o[s+=i[l]])){if(["string","number","boolean"].indexOf(_typeof(a))>-1&&l<i.length-1)continue;r+=l-r+1;break}o=a}return o}},xr=function(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e},Rr=function(e){_inherits(n,e);var t=_createSuper(n);function n(e){var i;_classCallCheck(this,n);var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ns:["translation"],defaultNS:"translation"};return(i=t.call(this)).data=e||{},i.options=o,void 0===i.options.keySeparator&&(i.options.keySeparator="."),void 0===i.options.ignoreJSONStructure&&(i.options.ignoreJSONStructure=!0),i}return _createClass(n,[{key:"addNamespaces",value:function(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}},{key:"removeNamespaces",value:function(e){var t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}},{key:"getResource",value:function(e,t,n){var i,o,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator,s=void 0!==r.ignoreJSONStructure?r.ignoreJSONStructure:this.options.ignoreJSONStructure;if(e.indexOf(".")>-1)i=e.split(".");else if(i=[e,t],n)if(Array.isArray(n))(o=i).push.apply(o,_toConsumableArray(n));else if("string"==typeof n&&a){var l;(l=i).push.apply(l,_toConsumableArray(n.split(a)))}else i.push(n);var c=kr(this.data,i);return!c&&!t&&!n&&e.indexOf(".")>-1&&(e=i[0],t=i[1],n=i.slice(2).join(".")),c||!s||"string"!=typeof n?c:jr(this.data&&this.data[e]&&this.data[e][t],n,a)}},{key:"addResource",value:function(e,t,n,i){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{silent:!1},r=void 0!==o.keySeparator?o.keySeparator:this.options.keySeparator,a=[e,t];n&&(a=a.concat(r?n.split(r):n)),e.indexOf(".")>-1&&(i=t,t=(a=e.split("."))[1]),this.addNamespaces(t),_r(this.data,a,i),o.silent||this.emit("added",e,t,n,i)}},{key:"addResources",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{silent:!1};for(var o in n)("string"==typeof n[o]||Array.isArray(n[o]))&&this.addResource(e,t,o,n[o],{silent:!0});i.silent||this.emit("added",e,t,n)}},{key:"addResourceBundle",value:function(e,t,n,i,o){var r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{silent:!1,skipCopy:!1},a=[e,t];e.indexOf(".")>-1&&(i=n,n=t,t=(a=e.split("."))[1]),this.addNamespaces(t);var s=kr(this.data,a)||{};r.skipCopy||(n=JSON.parse(JSON.stringify(n))),i?wr(s,n,o):s=_objectSpread(_objectSpread({},s),n),_r(this.data,a,s),r.silent||this.emit("added",e,t,n)}},{key:"removeResourceBundle",value:function(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}},{key:"hasResourceBundle",value:function(e,t){return void 0!==this.getResource(e,t)}},{key:"getResourceBundle",value:function(e,t){return t||(t=this.options.defaultNS),"v1"===this.options.compatibilityAPI?_objectSpread(_objectSpread({},{}),this.getResource(e,t)):this.getResource(e,t)}},{key:"getDataByLanguage",value:function(e){return this.data[e]}},{key:"hasLanguageSomeTranslations",value:function(e){var t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find((function(e){return t[e]&&Object.keys(t[e]).length>0}))}},{key:"toJSON",value:function(){return this.data}}]),n}(fr),Ir={processors:{},addPostProcessor:function(e){this.processors[e.name]=e},handle:function(e,t,n,i,o){var r=this;return e.forEach((function(e){r.processors[e]&&(t=r.processors[e].process(t,n,i,o))})),t}},Ar={},Dr=function(e){_inherits(n,e);var t=_createSuper(n);function n(e){var i;_classCallCheck(this,n);var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function(e,t,n){e.forEach((function(e){t[e]&&(n[e]=t[e])}))}(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,_assertThisInitialized2(i=t.call(this))),i.options=o,void 0===i.options.keySeparator&&(i.options.keySeparator="."),i.logger=dr.create("translator"),i}return _createClass(n,[{key:"changeLanguage",value:function(e){e&&(this.language=e)}},{key:"exists",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};if(null==e)return!1;var n=this.resolve(e,t);return n&&void 0!==n.res}},{key:"extractFromKey",value:function(e,t){var n=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===n&&(n=":");var i=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,o=t.ns||this.options.defaultNS||[],r=n&&e.indexOf(n)>-1,a=!(this.options.userDefinedKeySeparator||t.keySeparator||this.options.userDefinedNsSeparator||t.nsSeparator||function(e,t,n){t=t||"",n=n||"";var i=Tr.filter((function(e){return t.indexOf(e)<0&&n.indexOf(e)<0}));if(0===i.length)return!0;var o=Or.getRegExp("(".concat(i.map((function(e){return"?"===e?"\\\\?":e})).join("|"),")")),r=!o.test(e);if(!r){var a=e.indexOf(n);a>0&&!o.test(e.substring(0,a))&&(r=!0)}return r}(e,n,i));if(r&&!a){var s=e.match(this.interpolator.nestingRegexp);if(s&&s.length>0)return{key:e,namespaces:o};var l=e.split(n);(n!==i||n===i&&this.options.ns.indexOf(l[0])>-1)&&(o=l.shift()),e=l.join(i)}return"string"==typeof o&&(o=[o]),{key:e,namespaces:o}}},{key:"translate",value:function(e,t,i){var o=this;if("object"!==_typeof(t)&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),"object"===_typeof(t)&&(t=_objectSpread({},t)),t||(t={}),null==e)return"";Array.isArray(e)||(e=[String(e)]);var r=void 0!==t.returnDetails?t.returnDetails:this.options.returnDetails,a=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,s=this.extractFromKey(e[e.length-1],t),l=s.key,c=s.namespaces,u=c[c.length-1],h=t.lng||this.language,d=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(h&&"cimode"===h.toLowerCase()){if(d){var f=t.nsSeparator||this.options.nsSeparator;return r?{res:"".concat(u).concat(f).concat(l),usedKey:l,exactUsedKey:l,usedLng:h,usedNS:u,usedParams:this.getUsedParamsDetails(t)}:"".concat(u).concat(f).concat(l)}return r?{res:l,usedKey:l,exactUsedKey:l,usedLng:h,usedNS:u,usedParams:this.getUsedParamsDetails(t)}:l}var p=this.resolve(e,t),g=p&&p.res,m=p&&p.usedKey||l,v=p&&p.exactUsedKey||l,y=Object.prototype.toString.apply(g),b=void 0!==t.joinArrays?t.joinArrays:this.options.joinArrays,_=!this.i18nFormat||this.i18nFormat.handleAsObject;if(_&&g&&("string"!=typeof g&&"boolean"!=typeof g&&"number"!=typeof g)&&["[object Number]","[object Function]","[object RegExp]"].indexOf(y)<0&&("string"!=typeof b||!Array.isArray(g))){if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");var k=this.options.returnedObjectHandler?this.options.returnedObjectHandler(m,g,_objectSpread(_objectSpread({},t),{},{ns:c})):"key \'".concat(l," (").concat(this.language,")\' returned an object instead of string.");return r?(p.res=k,p.usedParams=this.getUsedParamsDetails(t),p):k}if(a){var w=Array.isArray(g),S=w?[]:{},C=w?v:m;for(var E in g)if(Object.prototype.hasOwnProperty.call(g,E)){var T="".concat(C).concat(a).concat(E);S[E]=this.translate(T,_objectSpread(_objectSpread({},t),{joinArrays:!1,ns:c})),S[E]===T&&(S[E]=g[E])}g=S}}else if(_&&"string"==typeof b&&Array.isArray(g))(g=g.join(b))&&(g=this.extendTranslation(g,e,t,i));else{var O=!1,j=!1,x=void 0!==t.count&&"string"!=typeof t.count,R=n.hasDefaultValue(t),I=x?this.pluralResolver.getSuffix(h,t.count,t):"",A=t.ordinal&&x?this.pluralResolver.getSuffix(h,t.count,{ordinal:!1}):"",D=x&&!t.ordinal&&0===t.count&&this.pluralResolver.shouldUseIntlApi(),N=D&&t["defaultValue".concat(this.options.pluralSeparator,"zero")]||t["defaultValue".concat(I)]||t["defaultValue".concat(A)]||t.defaultValue;!this.isValidLookup(g)&&R&&(O=!0,g=N),this.isValidLookup(g)||(j=!0,g=l);var P=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&j?void 0:g,L=R&&N!==g&&this.options.updateMissing;if(j||O||L){if(this.logger.log(L?"updateKey":"missingKey",h,u,l,L?N:g),a){var M=this.resolve(l,_objectSpread(_objectSpread({},t),{},{keySeparator:!1}));M&&M.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}var z=[],F=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if("fallback"===this.options.saveMissingTo&&F&&F[0])for(var B=0;B<F.length;B++)z.push(F[B]);else"all"===this.options.saveMissingTo?z=this.languageUtils.toResolveHierarchy(t.lng||this.language):z.push(t.lng||this.language);var U=function(e,n,i){var r=R&&i!==g?i:P;o.options.missingKeyHandler?o.options.missingKeyHandler(e,u,n,r,L,t):o.backendConnector&&o.backendConnector.saveMissing&&o.backendConnector.saveMissing(e,u,n,r,L,t),o.emit("missingKey",e,u,n,g)};this.options.saveMissing&&(this.options.saveMissingPlurals&&x?z.forEach((function(e){var n=o.pluralResolver.getSuffixes(e,t);D&&t["defaultValue".concat(o.options.pluralSeparator,"zero")]&&n.indexOf("".concat(o.options.pluralSeparator,"zero"))<0&&n.push("".concat(o.options.pluralSeparator,"zero")),n.forEach((function(n){U([e],l+n,t["defaultValue".concat(n)]||N)}))})):U(z,l,N))}g=this.extendTranslation(g,e,t,p,i),j&&g===l&&this.options.appendNamespaceToMissingKey&&(g="".concat(u,":").concat(l)),(j||O)&&this.options.parseMissingKeyHandler&&(g="v1"!==this.options.compatibilityAPI?this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?"".concat(u,":").concat(l):l,O?g:void 0):this.options.parseMissingKeyHandler(g))}return r?(p.res=g,p.usedParams=this.getUsedParamsDetails(t),p):g}},{key:"extendTranslation",value:function(e,t,n,i,o){var r=this;if(this.i18nFormat&&this.i18nFormat.parse)e=this.i18nFormat.parse(e,_objectSpread(_objectSpread({},this.options.interpolation.defaultVariables),n),n.lng||this.language||i.usedLng,i.usedNS,i.usedKey,{resolved:i});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init(_objectSpread(_objectSpread({},n),{interpolation:_objectSpread(_objectSpread({},this.options.interpolation),n.interpolation)}));var a,s="string"==typeof e&&(n&&n.interpolation&&void 0!==n.interpolation.skipOnVariables?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);if(s){var l=e.match(this.interpolator.nestingRegexp);a=l&&l.length}var c=n.replace&&"string"!=typeof n.replace?n.replace:n;if(this.options.interpolation.defaultVariables&&(c=_objectSpread(_objectSpread({},this.options.interpolation.defaultVariables),c)),e=this.interpolator.interpolate(e,c,n.lng||this.language||i.usedLng,n),s){var u=e.match(this.interpolator.nestingRegexp);a<(u&&u.length)&&(n.nest=!1)}!n.lng&&"v1"!==this.options.compatibilityAPI&&i&&i.res&&(n.lng=this.language||i.usedLng),!1!==n.nest&&(e=this.interpolator.nest(e,(function(){for(var e=arguments.length,i=new Array(e),a=0;a<e;a++)i[a]=arguments[a];return o&&o[0]===i[0]&&!n.context?(r.logger.warn("It seems you are nesting recursively key: ".concat(i[0]," in key: ").concat(t[0])),null):r.translate.apply(r,i.concat([t]))}),n)),n.interpolation&&this.interpolator.reset()}var h=n.postProcess||this.options.postProcess,d="string"==typeof h?[h]:h;return null!=e&&d&&d.length&&!1!==n.applyPostProcessor&&(e=Ir.handle(d,e,t,this.options&&this.options.postProcessPassResolved?_objectSpread({i18nResolved:_objectSpread(_objectSpread({},i),{},{usedParams:this.getUsedParamsDetails(n)})},n):n,this)),e}},{key:"resolve",value:function(e){var t,n,i,o,r,a=this,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return"string"==typeof e&&(e=[e]),e.forEach((function(e){if(!a.isValidLookup(t)){var l=a.extractFromKey(e,s),c=l.key;n=c;var u=l.namespaces;a.options.fallbackNS&&(u=u.concat(a.options.fallbackNS));var h=void 0!==s.count&&"string"!=typeof s.count,d=h&&!s.ordinal&&0===s.count&&a.pluralResolver.shouldUseIntlApi(),f=void 0!==s.context&&("string"==typeof s.context||"number"==typeof s.context)&&""!==s.context,p=s.lngs?s.lngs:a.languageUtils.toResolveHierarchy(s.lng||a.language,s.fallbackLng);u.forEach((function(e){a.isValidLookup(t)||(r=e,!Ar["".concat(p[0],"-").concat(e)]&&a.utils&&a.utils.hasLoadedNamespace&&!a.utils.hasLoadedNamespace(r)&&(Ar["".concat(p[0],"-").concat(e)]=!0,a.logger.warn(\'key "\'.concat(n,\'" for languages "\').concat(p.join(", "),\'" won\\\'t get resolved as namespace "\').concat(r,\'" was not yet loaded\'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),p.forEach((function(n){if(!a.isValidLookup(t)){o=n;var r,l=[c];if(a.i18nFormat&&a.i18nFormat.addLookupKeys)a.i18nFormat.addLookupKeys(l,c,n,e,s);else{var u;h&&(u=a.pluralResolver.getSuffix(n,s.count,s));var p="".concat(a.options.pluralSeparator,"zero"),g="".concat(a.options.pluralSeparator,"ordinal").concat(a.options.pluralSeparator);if(h&&(l.push(c+u),s.ordinal&&0===u.indexOf(g)&&l.push(c+u.replace(g,a.options.pluralSeparator)),d&&l.push(c+p)),f){var m="".concat(c).concat(a.options.contextSeparator).concat(s.context);l.push(m),h&&(l.push(m+u),s.ordinal&&0===u.indexOf(g)&&l.push(m+u.replace(g,a.options.pluralSeparator)),d&&l.push(m+p))}}for(;r=l.pop();)a.isValidLookup(t)||(i=r,t=a.getResource(n,e,r,s))}})))}))}})),{res:t,usedKey:n,exactUsedKey:i,usedLng:o,usedNS:r}}},{key:"isValidLookup",value:function(e){return!(void 0===e||!this.options.returnNull&&null===e||!this.options.returnEmptyString&&""===e)}},{key:"getResource",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(e,t,n,i):this.resourceStore.getResource(e,t,n,i)}},{key:"getUsedParamsDetails",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.replace&&"string"!=typeof e.replace,n=t?e.replace:e;if(t&&void 0!==e.count&&(n.count=e.count),this.options.interpolation.defaultVariables&&(n=_objectSpread(_objectSpread({},this.options.interpolation.defaultVariables),n)),!t){n=_objectSpread({},n);var i,o=_createForOfIteratorHelper(["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"]);try{for(o.s();!(i=o.n()).done;){delete n[i.value]}}catch(e){o.e(e)}finally{o.f()}}return n}}],[{key:"hasDefaultValue",value:function(e){var t="defaultValue";for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t===n.substring(0,12)&&void 0!==e[n])return!0;return!1}}]),n}(fr),Nr=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},Pr=function(){function e(t){_classCallCheck(this,e),this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=dr.create("languageUtils")}return _createClass(e,[{key:"getScriptPartFromCode",value:function(e){if(!(e=xr(e))||e.indexOf("-")<0)return null;var t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}},{key:"getLanguagePartFromCode",value:function(e){if(!(e=xr(e))||e.indexOf("-")<0)return e;var t=e.split("-");return this.formatLanguageCode(t[0])}},{key:"formatLanguageCode",value:function(e){if("string"==typeof e&&e.indexOf("-")>-1){var t=["hans","hant","latn","cyrl","cans","mong","arab"],n=e.split("-");return this.options.lowerCaseLng?n=n.map((function(e){return e.toLowerCase()})):2===n.length?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=Nr(n[1].toLowerCase()))):3===n.length&&(n[0]=n[0].toLowerCase(),2===n[1].length&&(n[1]=n[1].toUpperCase()),"sgn"!==n[0]&&2===n[2].length&&(n[2]=n[2].toUpperCase()),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=Nr(n[1].toLowerCase())),t.indexOf(n[2].toLowerCase())>-1&&(n[2]=Nr(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}},{key:"isSupportedCode",value:function(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}},{key:"getBestMatchFromCodes",value:function(e){var t,n=this;return e?(e.forEach((function(e){if(!t){var i=n.formatLanguageCode(e);n.options.supportedLngs&&!n.isSupportedCode(i)||(t=i)}})),!t&&this.options.supportedLngs&&e.forEach((function(e){if(!t){var i=n.getLanguagePartFromCode(e);if(n.isSupportedCode(i))return t=i;t=n.options.supportedLngs.find((function(e){return e===i?e:e.indexOf("-")<0&&i.indexOf("-")<0?void 0:e.indexOf("-")>0&&i.indexOf("-")<0&&e.substring(0,e.indexOf("-"))===i||0===e.indexOf(i)&&i.length>1?e:void 0}))}})),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t):null}},{key:"getFallbackCodes",value:function(e,t){if(!e)return[];if("function"==typeof e&&(e=e(t)),"string"==typeof e&&(e=[e]),Array.isArray(e))return e;if(!t)return e.default||[];var n=e[t];return n||(n=e[this.getScriptPartFromCode(t)]),n||(n=e[this.formatLanguageCode(t)]),n||(n=e[this.getLanguagePartFromCode(t)]),n||(n=e.default),n||[]}},{key:"toResolveHierarchy",value:function(e,t){var n=this,i=this.getFallbackCodes(t||this.options.fallbackLng||[],e),o=[],r=function(e){e&&(n.isSupportedCode(e)?o.push(e):n.logger.warn("rejecting language code not found in supportedLngs: ".concat(e)))};return"string"==typeof e&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?("languageOnly"!==this.options.load&&r(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&r(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&r(this.getLanguagePartFromCode(e))):"string"==typeof e&&r(this.formatLanguageCode(e)),i.forEach((function(e){o.indexOf(e)<0&&r(n.formatLanguageCode(e))})),o}}]),e}(),Lr=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],Mr={1:function(e){return Number(e>1)},2:function(e){return Number(1!=e)},3:function(e){return 0},4:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},5:function(e){return Number(0==e?0:1==e?1:2==e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5)},6:function(e){return Number(1==e?0:e>=2&&e<=4?1:2)},7:function(e){return Number(1==e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},8:function(e){return Number(1==e?0:2==e?1:8!=e&&11!=e?2:3)},9:function(e){return Number(e>=2)},10:function(e){return Number(1==e?0:2==e?1:e<7?2:e<11?3:4)},11:function(e){return Number(1==e||11==e?0:2==e||12==e?1:e>2&&e<20?2:3)},12:function(e){return Number(e%10!=1||e%100==11)},13:function(e){return Number(0!==e)},14:function(e){return Number(1==e?0:2==e?1:3==e?2:3)},15:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2)},16:function(e){return Number(e%10==1&&e%100!=11?0:0!==e?1:2)},17:function(e){return Number(1==e||e%10==1&&e%100!=11?0:1)},18:function(e){return Number(0==e?0:1==e?1:2)},19:function(e){return Number(1==e?0:0==e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3)},20:function(e){return Number(1==e?0:0==e||e%100>0&&e%100<20?1:2)},21:function(e){return Number(e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0)},22:function(e){return Number(1==e?0:2==e?1:(e<0||e>10)&&e%10==0?2:3)}},zr=["v1","v2","v3"],Fr=["v4"],Br={zero:0,one:1,two:2,few:3,many:4,other:5},Ur=function(){function e(t){_classCallCheck(this,e);var n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.languageUtils=t,this.options=i,this.logger=dr.create("pluralResolver"),this.options.compatibilityJSON&&!Fr.includes(this.options.compatibilityJSON)||"undefined"!=typeof Intl&&Intl.PluralRules||(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=(n={},Lr.forEach((function(e){e.lngs.forEach((function(t){n[t]={numbers:e.nr,plurals:Mr[e.fc]}}))})),n),this.pluralRulesCache={}}return _createClass(e,[{key:"addRule",value:function(e,t){this.rules[e]=t}},{key:"clearCache",value:function(){this.pluralRulesCache={}}},{key:"getRule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.shouldUseIntlApi())try{var n=xr("dev"===e?"en":e),i=t.ordinal?"ordinal":"cardinal",o=JSON.stringify({cleanedCode:n,type:i});if(o in this.pluralRulesCache)return this.pluralRulesCache[o];var r=new Intl.PluralRules(n,{type:i});return this.pluralRulesCache[o]=r,r}catch(e){return}return this.rules[e]||this.rules[this.languageUtils.getLanguagePartFromCode(e)]}},{key:"needsPlural",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.getRule(e,t);return this.shouldUseIntlApi()?n&&n.resolvedOptions().pluralCategories.length>1:n&&n.numbers.length>1}},{key:"getPluralFormsOfKey",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.getSuffixes(e,n).map((function(e){return"".concat(t).concat(e)}))}},{key:"getSuffixes",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=this.getRule(e,n);return i?this.shouldUseIntlApi()?i.resolvedOptions().pluralCategories.sort((function(e,t){return Br[e]-Br[t]})).map((function(e){return"".concat(t.options.prepend).concat(n.ordinal?"ordinal".concat(t.options.prepend):"").concat(e)})):i.numbers.map((function(i){return t.getSuffix(e,i,n)})):[]}},{key:"getSuffix",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=this.getRule(e,n);return i?this.shouldUseIntlApi()?"".concat(this.options.prepend).concat(n.ordinal?"ordinal".concat(this.options.prepend):"").concat(i.select(t)):this.getSuffixRetroCompatible(i,t):(this.logger.warn("no plural rule found for: ".concat(e)),"")}},{key:"getSuffixRetroCompatible",value:function(e,t){var n=this,i=e.noAbs?e.plurals(t):e.plurals(Math.abs(t)),o=e.numbers[i];this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]&&(2===o?o="plural":1===o&&(o=""));var r=function(){return n.options.prepend&&o.toString()?n.options.prepend+o.toString():o.toString()};return"v1"===this.options.compatibilityJSON?1===o?"":"number"==typeof o?"_plural_".concat(o.toString()):r():"v2"===this.options.compatibilityJSON||this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]?r():this.options.prepend&&i.toString()?this.options.prepend+i.toString():i.toString()}},{key:"shouldUseIntlApi",value:function(){return!zr.includes(this.options.compatibilityJSON)}}]),e}(),Vr=function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:".",o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],r=function(e,t,n){var i=kr(e,n);return void 0!==i?i:kr(t,n)}(e,t,n);return!r&&o&&"string"==typeof n&&void 0===(r=jr(e,n,i))&&(r=jr(t,n,i)),r},Wr=function(e){return e.replace(/\\$/g,"$$$$")},Gr=function(){function e(){_classCallCheck(this,e);var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=dr.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||function(e){return e},this.init(t)}return _createClass(e,[{key:"init",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.interpolation||(e.interpolation={escapeValue:!0});var t=e.interpolation,n=t.escape,i=t.escapeValue,o=t.useRawValueToEscape,r=t.prefix,a=t.prefixEscaped,s=t.suffix,l=t.suffixEscaped,c=t.formatSeparator,u=t.unescapeSuffix,h=t.unescapePrefix,d=t.nestingPrefix,f=t.nestingPrefixEscaped,p=t.nestingSuffix,g=t.nestingSuffixEscaped,m=t.nestingOptionsSeparator,v=t.maxReplaces,y=t.alwaysFormat;this.escape=void 0!==n?n:Er,this.escapeValue=void 0===i||i,this.useRawValueToEscape=void 0!==o&&o,this.prefix=r?Sr(r):a||"{{",this.suffix=s?Sr(s):l||"}}",this.formatSeparator=c||",",this.unescapePrefix=u?"":h||"-",this.unescapeSuffix=this.unescapePrefix?"":u||"",this.nestingPrefix=d?Sr(d):f||Sr("$t("),this.nestingSuffix=p?Sr(p):g||Sr(")"),this.nestingOptionsSeparator=m||",",this.maxReplaces=v||1e3,this.alwaysFormat=void 0!==y&&y,this.resetRegExp()}},{key:"reset",value:function(){this.options&&this.init(this.options)}},{key:"resetRegExp",value:function(){var e=function(e,t){return e&&e.source===t?(e.lastIndex=0,e):new RegExp(t,"g")};this.regexp=e(this.regexp,"".concat(this.prefix,"(.+?)").concat(this.suffix)),this.regexpUnescape=e(this.regexpUnescape,"".concat(this.prefix).concat(this.unescapePrefix,"(.+?)").concat(this.unescapeSuffix).concat(this.suffix)),this.nestingRegexp=e(this.nestingRegexp,"".concat(this.nestingPrefix,"(.+?)").concat(this.nestingSuffix))}},{key:"interpolate",value:function(e,t,n,i){var o,r,a,s=this,l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},c=function(e){if(e.indexOf(s.formatSeparator)<0){var o=Vr(t,l,e,s.options.keySeparator,s.options.ignoreJSONStructure);return s.alwaysFormat?s.format(o,void 0,n,_objectSpread(_objectSpread(_objectSpread({},i),t),{},{interpolationkey:e})):o}var r=e.split(s.formatSeparator),a=r.shift().trim(),c=r.join(s.formatSeparator).trim();return s.format(Vr(t,l,a,s.options.keySeparator,s.options.ignoreJSONStructure),c,n,_objectSpread(_objectSpread(_objectSpread({},i),t),{},{interpolationkey:a}))};this.resetRegExp();var u=i&&i.missingInterpolationHandler||this.options.missingInterpolationHandler,h=i&&i.interpolation&&void 0!==i.interpolation.skipOnVariables?i.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:function(e){return Wr(e)}},{regex:this.regexp,safeValue:function(e){return s.escapeValue?Wr(s.escape(e)):Wr(e)}}].forEach((function(t){for(a=0;o=t.regex.exec(e);){var n=o[1].trim();if(void 0===(r=c(n)))if("function"==typeof u){var l=u(e,o,i);r="string"==typeof l?l:""}else if(i&&Object.prototype.hasOwnProperty.call(i,n))r="";else{if(h){r=o[0];continue}s.logger.warn("missed to pass in variable ".concat(n," for interpolating ").concat(e)),r=""}else"string"==typeof r||s.useRawValueToEscape||(r=gr(r));var d=t.safeValue(r);if(e=e.replace(o[0],d),h?(t.regex.lastIndex+=r.length,t.regex.lastIndex-=o[0].length):t.regex.lastIndex=0,++a>=s.maxReplaces)break}})),e}},{key:"nest",value:function(e,t){for(var n,i,o,r=this,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=function(e,t){var n=r.nestingOptionsSeparator;if(e.indexOf(n)<0)return e;var i=e.split(new RegExp("".concat(n,"[ ]*{"))),a="{".concat(i[1]);e=i[0];var s=(a=r.interpolate(a,o)).match(/\'/g),l=a.match(/"/g);(s&&s.length%2==0&&!l||l.length%2!=0)&&(a=a.replace(/\'/g,\'"\'));try{o=JSON.parse(a),t&&(o=_objectSpread(_objectSpread({},t),o))}catch(t){return r.logger.warn("failed parsing options string in nesting for key ".concat(e),t),"".concat(e).concat(n).concat(a)}return o.defaultValue&&o.defaultValue.indexOf(r.prefix)>-1&&delete o.defaultValue,e};n=this.nestingRegexp.exec(e);){var l=[];(o=(o=_objectSpread({},a)).replace&&"string"!=typeof o.replace?o.replace:o).applyPostProcessor=!1,delete o.defaultValue;var c=!1;if(-1!==n[0].indexOf(this.formatSeparator)&&!/{.*}/.test(n[1])){var u=n[1].split(this.formatSeparator).map((function(e){return e.trim()}));n[1]=u.shift(),l=u,c=!0}if((i=t(s.call(this,n[1].trim(),o),o))&&n[0]===e&&"string"!=typeof i)return i;"string"!=typeof i&&(i=gr(i)),i||(this.logger.warn("missed to resolve ".concat(n[1]," for nesting ").concat(e)),i=""),c&&(i=l.reduce((function(e,t){return r.format(e,t,a.lng,_objectSpread(_objectSpread({},a),{},{interpolationkey:n[1].trim()}))}),i.trim())),e=e.replace(n[0],i),this.regexp.lastIndex=0}return e}}]),e}(),Hr=function(e){var t={};return function(n,i,o){var r=o;o&&o.interpolationkey&&o.formatParams&&o.formatParams[o.interpolationkey]&&o[o.interpolationkey]&&(r=_objectSpread(_objectSpread({},r),{},_defineProperty2({},o.interpolationkey,void 0)));var a=i+JSON.stringify(r),s=t[a];return s||(s=e(xr(i),o),t[a]=s),s(n)}},Yr=function(){function e(){_classCallCheck(this,e);var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=dr.create("formatter"),this.options=t,this.formats={number:Hr((function(e,t){var n=new Intl.NumberFormat(e,_objectSpread({},t));return function(e){return n.format(e)}})),currency:Hr((function(e,t){var n=new Intl.NumberFormat(e,_objectSpread(_objectSpread({},t),{},{style:"currency"}));return function(e){return n.format(e)}})),datetime:Hr((function(e,t){var n=new Intl.DateTimeFormat(e,_objectSpread({},t));return function(e){return n.format(e)}})),relativetime:Hr((function(e,t){var n=new Intl.RelativeTimeFormat(e,_objectSpread({},t));return function(e){return n.format(e,t.range||"day")}})),list:Hr((function(e,t){var n=new Intl.ListFormat(e,_objectSpread({},t));return function(e){return n.format(e)}}))},this.init(t)}return _createClass(e,[{key:"init",value:function(e){var t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||","}},{key:"add",value:function(e,t){this.formats[e.toLowerCase().trim()]=t}},{key:"addCached",value:function(e,t){this.formats[e.toLowerCase().trim()]=Hr(t)}},{key:"format",value:function(e,t,n){var i=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=t.split(this.formatSeparator);if(r.length>1&&r[0].indexOf("(")>1&&r[0].indexOf(")")<0&&r.find((function(e){return e.indexOf(")")>-1}))){var a=r.findIndex((function(e){return e.indexOf(")")>-1}));r[0]=[r[0]].concat(_toConsumableArray(r.splice(1,a))).join(this.formatSeparator)}return r.reduce((function(e,t){var r=function(e){var t=e.toLowerCase().trim(),n={};if(e.indexOf("(")>-1){var i=e.split("(");t=i[0].toLowerCase().trim();var o=i[1].substring(0,i[1].length-1);"currency"===t&&o.indexOf(":")<0?n.currency||(n.currency=o.trim()):"relativetime"===t&&o.indexOf(":")<0?n.range||(n.range=o.trim()):o.split(";").forEach((function(e){if(e){var t=_toArray(e.split(":")),i=t[0],o=t.slice(1).join(":").trim().replace(/^\'+|\'+$/g,""),r=i.trim();n[r]||(n[r]=o),"false"===o&&(n[r]=!1),"true"===o&&(n[r]=!0),isNaN(o)||(n[r]=parseInt(o,10))}}))}return{formatName:t,formatOptions:n}}(t),a=r.formatName,s=r.formatOptions;if(i.formats[a]){var l=e;try{var c=o&&o.formatParams&&o.formatParams[o.interpolationkey]||{},u=c.locale||c.lng||o.locale||o.lng||n;l=i.formats[a](e,u,_objectSpread(_objectSpread(_objectSpread({},s),o),c))}catch(e){i.logger.warn(e)}return l}return i.logger.warn("there was no format function for ".concat(a)),e}),e)}}]),e}(),Xr=function(e){_inherits(n,e);var t=_createSuper(n);function n(e,i,o){var r;_classCallCheck(this,n);var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return(r=t.call(this)).backend=e,r.store=i,r.services=o,r.languageUtils=o.languageUtils,r.options=a,r.logger=dr.create("backendConnector"),r.waitingReads=[],r.maxParallelReads=a.maxParallelReads||10,r.readingCalls=0,r.maxRetries=a.maxRetries>=0?a.maxRetries:5,r.retryTimeout=a.retryTimeout>=1?a.retryTimeout:350,r.state={},r.queue=[],r.backend&&r.backend.init&&r.backend.init(o,a.backend,a),r}return _createClass(n,[{key:"queueLoad",value:function(e,t,n,i){var o=this,r={},a={},s={},l={};return e.forEach((function(e){var i=!0;t.forEach((function(t){var s="".concat(e,"|").concat(t);!n.reload&&o.store.hasResourceBundle(e,t)?o.state[s]=2:o.state[s]<0||(1===o.state[s]?void 0===a[s]&&(a[s]=!0):(o.state[s]=1,i=!1,void 0===a[s]&&(a[s]=!0),void 0===r[s]&&(r[s]=!0),void 0===l[t]&&(l[t]=!0)))})),i||(s[e]=!0)})),(Object.keys(r).length||Object.keys(a).length)&&this.queue.push({pending:a,pendingCount:Object.keys(a).length,loaded:{},errors:[],callback:i}),{toLoad:Object.keys(r),pending:Object.keys(a),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}},{key:"loaded",value:function(e,t,n){var i=e.split("|"),o=i[0],r=i[1];t&&this.emit("failedLoading",o,r,t),!t&&n&&this.store.addResourceBundle(o,r,n,void 0,void 0,{skipCopy:!0}),this.state[e]=t?-1:2,t&&n&&(this.state[e]=0);var a={};this.queue.forEach((function(n){var i,s,l,c,u;i=n.loaded,s=r,l=br(i,[o],Object),c=l.obj,u=l.k,c[u]=c[u]||[],c[u].push(s),function(e,t){void 0!==e.pending[t]&&(delete e.pending[t],e.pendingCount--)}(n,e),t&&n.errors.push(t),0!==n.pendingCount||n.done||(Object.keys(n.loaded).forEach((function(e){a[e]||(a[e]={});var t=n.loaded[e];t.length&&t.forEach((function(t){void 0===a[e][t]&&(a[e][t]=!0)}))})),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())})),this.emit("loaded",a),this.queue=this.queue.filter((function(e){return!e.done}))}},{key:"read",value:function(e,t,n){var i=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.retryTimeout,a=arguments.length>5?arguments[5]:void 0;if(!e.length)return a(null,{});if(this.readingCalls>=this.maxParallelReads)this.waitingReads.push({lng:e,ns:t,fcName:n,tried:o,wait:r,callback:a});else{this.readingCalls++;var s=function(s,l){if(i.readingCalls--,i.waitingReads.length>0){var c=i.waitingReads.shift();i.read(c.lng,c.ns,c.fcName,c.tried,c.wait,c.callback)}s&&l&&o<i.maxRetries?setTimeout((function(){i.read.call(i,e,t,n,o+1,2*r,a)}),r):a(s,l)},l=this.backend[n].bind(this.backend);if(2!==l.length)return l(e,t,s);try{var c=l(e,t);c&&"function"==typeof c.then?c.then((function(e){return s(null,e)})).catch(s):s(null,c)}catch(e){s(e)}}}},{key:"prepareLoading",value:function(e,t){var n=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),o&&o();"string"==typeof e&&(e=this.languageUtils.toResolveHierarchy(e)),"string"==typeof t&&(t=[t]);var r=this.queueLoad(e,t,i,o);if(!r.toLoad.length)return r.pending.length||o(),null;r.toLoad.forEach((function(e){n.loadOne(e)}))}},{key:"load",value:function(e,t,n){this.prepareLoading(e,t,{},n)}},{key:"reload",value:function(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}},{key:"loadOne",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",i=e.split("|"),o=i[0],r=i[1];this.read(o,r,"read",void 0,void 0,(function(i,a){i&&t.logger.warn("".concat(n,"loading namespace ").concat(r," for language ").concat(o," failed"),i),!i&&a&&t.logger.log("".concat(n,"loaded namespace ").concat(r," for language ").concat(o),a),t.loaded(e,i,a)}))}},{key:"saveMissing",value:function(e,t,n,i,o){var r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:function(){};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t))this.logger.warn(\'did not save key "\'.concat(n,\'" as the namespace "\').concat(t,\'" was not yet loaded\'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");else if(null!=n&&""!==n){if(this.backend&&this.backend.create){var s=_objectSpread(_objectSpread({},r),{},{isUpdate:o}),l=this.backend.create.bind(this.backend);if(l.length<6)try{var c;(c=5===l.length?l(e,t,n,i,s):l(e,t,n,i))&&"function"==typeof c.then?c.then((function(e){return a(null,e)})).catch(a):a(null,c)}catch(e){a(e)}else l(e,t,n,i,a,s)}e&&e[0]&&this.store.addResource(e[0],t,n,i)}}}]),n}(fr),Kr=function(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(e){var t={};if("object"===_typeof(e[1])&&(t=e[1]),"string"==typeof e[1]&&(t.defaultValue=e[1]),"string"==typeof e[2]&&(t.tDescription=e[2]),"object"===_typeof(e[2])||"object"===_typeof(e[3])){var n=e[3]||e[2];Object.keys(n).forEach((function(e){t[e]=n[e]}))}return t},interpolation:{escapeValue:!0,format:function(e){return e},prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}},qr=function(e){return"string"==typeof e.ns&&(e.ns=[e.ns]),"string"==typeof e.fallbackLng&&(e.fallbackLng=[e.fallbackLng]),"string"==typeof e.fallbackNS&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e},Jr=function(){},Zr=function(e){_inherits(n,e);var t=_createSuper(n);function n(){var e;_classCallCheck(this,n);var i,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;if((e=t.call(this)).options=qr(o),e.services={},e.logger=dr,e.modules={external:[]},i=_assertThisInitialized2(e),Object.getOwnPropertyNames(Object.getPrototypeOf(i)).forEach((function(e){"function"==typeof i[e]&&(i[e]=i[e].bind(i))})),r&&!e.isInitialized&&!o.isClone){if(!e.options.initImmediate)return e.init(o,r),_possibleConstructorReturn(e,_assertThisInitialized2(e));setTimeout((function(){e.init(o,r)}),0)}return e}return _createClass(n,[{key:"init",value:function(){var e=this,t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=arguments.length>1?arguments[1]:void 0;this.isInitializing=!0,"function"==typeof n&&(i=n,n={}),!n.defaultNS&&!1!==n.defaultNS&&n.ns&&("string"==typeof n.ns?n.defaultNS=n.ns:n.ns.indexOf("translation")<0&&(n.defaultNS=n.ns[0]));var o=Kr();this.options=_objectSpread(_objectSpread(_objectSpread({},o),this.options),qr(n)),"v1"!==this.options.compatibilityAPI&&(this.options.interpolation=_objectSpread(_objectSpread({},o.interpolation),this.options.interpolation)),void 0!==n.keySeparator&&(this.options.userDefinedKeySeparator=n.keySeparator),void 0!==n.nsSeparator&&(this.options.userDefinedNsSeparator=n.nsSeparator);var r=function(e){return e?"function"==typeof e?new e:e:null};if(!this.options.isClone){var a;this.modules.logger?dr.init(r(this.modules.logger),this.options):dr.init(null,this.options),this.modules.formatter?a=this.modules.formatter:"undefined"!=typeof Intl&&(a=Yr);var s=new Pr(this.options);this.store=new Rr(this.options.resources,this.options);var l=this.services;l.logger=dr,l.resourceStore=this.store,l.languageUtils=s,l.pluralResolver=new Ur(s,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),!a||this.options.interpolation.format&&this.options.interpolation.format!==o.interpolation.format||(l.formatter=r(a),l.formatter.init(l,this.options),this.options.interpolation.format=l.formatter.format.bind(l.formatter)),l.interpolator=new Gr(this.options),l.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},l.backendConnector=new Xr(r(this.modules.backend),l.resourceStore,l,this.options),l.backendConnector.on("*",(function(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];t.emit.apply(t,[e].concat(i))})),this.modules.languageDetector&&(l.languageDetector=r(this.modules.languageDetector),l.languageDetector.init&&l.languageDetector.init(l,this.options.detection,this.options)),this.modules.i18nFormat&&(l.i18nFormat=r(this.modules.i18nFormat),l.i18nFormat.init&&l.i18nFormat.init(this)),this.translator=new Dr(this.services,this.options),this.translator.on("*",(function(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),o=1;o<n;o++)i[o-1]=arguments[o];t.emit.apply(t,[e].concat(i))})),this.modules.external.forEach((function(t){t.init&&t.init(e)}))}if(this.format=this.options.interpolation.format,i||(i=Jr),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){var c=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);c.length>0&&"dev"!==c[0]&&(this.options.lng=c[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined");["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach((function(n){e[n]=function(){var e;return(e=t.store)[n].apply(e,arguments)}}));["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach((function(n){e[n]=function(){var e;return(e=t.store)[n].apply(e,arguments),t}}));var u=pr(),h=function(){var t=function(t,n){e.isInitializing=!1,e.isInitialized&&!e.initializedStoreOnce&&e.logger.warn("init: i18next is already initialized. You should call init just once!"),e.isInitialized=!0,e.options.isClone||e.logger.log("initialized",e.options),e.emit("initialized",e.options),u.resolve(n),i(t,n)};if(e.languages&&"v1"!==e.options.compatibilityAPI&&!e.isInitialized)return t(null,e.t.bind(e));e.changeLanguage(e.options.lng,t)};return this.options.resources||!this.options.initImmediate?h():setTimeout(h,0),u}},{key:"loadResources",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Jr,i="string"==typeof e?e:this.language;if("function"==typeof e&&(n=e),!this.options.resources||this.options.partialBundledLanguages){if(i&&"cimode"===i.toLowerCase()&&(!this.options.preload||0===this.options.preload.length))return n();var o=[],r=function(e){e&&("cimode"!==e&&t.services.languageUtils.toResolveHierarchy(e).forEach((function(e){"cimode"!==e&&o.indexOf(e)<0&&o.push(e)})))};if(i)r(i);else this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach((function(e){return r(e)}));this.options.preload&&this.options.preload.forEach((function(e){return r(e)})),this.services.backendConnector.load(o,this.options.ns,(function(e){e||t.resolvedLanguage||!t.language||t.setResolvedLanguage(t.language),n(e)}))}else n(null)}},{key:"reloadResources",value:function(e,t,n){var i=pr();return"function"==typeof e&&(n=e,e=void 0),"function"==typeof t&&(n=t,t=void 0),e||(e=this.languages),t||(t=this.options.ns),n||(n=Jr),this.services.backendConnector.reload(e,t,(function(e){i.resolve(),n(e)})),i}},{key:"use",value:function(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&Ir.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}},{key:"setResolvedLanguage",value:function(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1))for(var t=0;t<this.languages.length;t++){var n=this.languages[t];if(!(["cimode","dev"].indexOf(n)>-1)&&this.store.hasLanguageSomeTranslations(n)){this.resolvedLanguage=n;break}}}},{key:"changeLanguage",value:function(e,t){var n=this,i=this;this.isLanguageChangingTo=e;var o=pr();this.emit("languageChanging",e);var r=function(e){n.language=e,n.languages=n.services.languageUtils.toResolveHierarchy(e),n.resolvedLanguage=void 0,n.setResolvedLanguage(e)},a=function(a){e||a||!n.services.languageDetector||(a=[]);var s="string"==typeof a?a:n.services.languageUtils.getBestMatchFromCodes(a);s&&(n.language||r(s),n.translator.language||n.translator.changeLanguage(s),n.services.languageDetector&&n.services.languageDetector.cacheUserLanguage&&n.services.languageDetector.cacheUserLanguage(s)),n.loadResources(s,(function(e){!function(e,a){a?(r(a),n.translator.changeLanguage(a),n.isLanguageChangingTo=void 0,n.emit("languageChanged",a),n.logger.log("languageChanged",a)):n.isLanguageChangingTo=void 0,o.resolve((function(){return i.t.apply(i,arguments)})),t&&t(e,(function(){return i.t.apply(i,arguments)}))}(e,s)}))};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(a):this.services.languageDetector.detect(a):a(e):a(this.services.languageDetector.detect()),o}},{key:"getFixedT",value:function(e,t,n){var i=this,o=function e(t,o){var r;if("object"!==_typeof(o)){for(var a=arguments.length,s=new Array(a>2?a-2:0),l=2;l<a;l++)s[l-2]=arguments[l];r=i.options.overloadTranslationOptionHandler([t,o].concat(s))}else r=_objectSpread({},o);r.lng=r.lng||e.lng,r.lngs=r.lngs||e.lngs,r.ns=r.ns||e.ns,""!==r.keyPrefix&&(r.keyPrefix=r.keyPrefix||n||e.keyPrefix);var c,u=i.options.keySeparator||".";return c=r.keyPrefix&&Array.isArray(t)?t.map((function(e){return"".concat(r.keyPrefix).concat(u).concat(e)})):r.keyPrefix?"".concat(r.keyPrefix).concat(u).concat(t):t,i.t(c,r)};return"string"==typeof e?o.lng=e:o.lngs=e,o.ns=t,o.keyPrefix=n,o}},{key:"t",value:function(){var e;return this.translator&&(e=this.translator).translate.apply(e,arguments)}},{key:"exists",value:function(){var e;return this.translator&&(e=this.translator).exists.apply(e,arguments)}},{key:"setDefaultNamespace",value:function(e){this.options.defaultNS=e}},{key:"hasLoadedNamespace",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;var i=n.lng||this.resolvedLanguage||this.languages[0],o=!!this.options&&this.options.fallbackLng,r=this.languages[this.languages.length-1];if("cimode"===i.toLowerCase())return!0;var a=function(e,n){var i=t.services.backendConnector.state["".concat(e,"|").concat(n)];return-1===i||0===i||2===i};if(n.precheck){var s=n.precheck(this,a);if(void 0!==s)return s}return!!this.hasResourceBundle(i,e)||(!(this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages))||!(!a(i,e)||o&&!a(r,e)))}},{key:"loadNamespaces",value:function(e,t){var n=this,i=pr();return this.options.ns?("string"==typeof e&&(e=[e]),e.forEach((function(e){n.options.ns.indexOf(e)<0&&n.options.ns.push(e)})),this.loadResources((function(e){i.resolve(),t&&t(e)})),i):(t&&t(),Promise.resolve())}},{key:"loadLanguages",value:function(e,t){var n=this,i=pr();"string"==typeof e&&(e=[e]);var o=this.options.preload||[],r=e.filter((function(e){return o.indexOf(e)<0&&n.services.languageUtils.isSupportedCode(e)}));return r.length?(this.options.preload=o.concat(r),this.loadResources((function(e){i.resolve(),t&&t(e)})),i):(t&&t(),Promise.resolve())}},{key:"dir",value:function(e){if(e||(e=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!e)return"rtl";var t=this.services&&this.services.languageUtils||new Pr(Kr());return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(t.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}},{key:"cloneInstance",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Jr,o=t.forkResourceStore;o&&delete t.forkResourceStore;var r=_objectSpread(_objectSpread(_objectSpread({},this.options),t),{isClone:!0}),a=new n(r);void 0===t.debug&&void 0===t.prefix||(a.logger=a.logger.clone(t));return["store","services","language"].forEach((function(t){a[t]=e[t]})),a.services=_objectSpread({},this.services),a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},o&&(a.store=new Rr(this.store.data,r),a.services.resourceStore=a.store),a.translator=new Dr(a.services,r),a.translator.on("*",(function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];a.emit.apply(a,[e].concat(n))})),a.init(r,i),a.translator.options=r,a.translator.backendConnector.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a}},{key:"toJSON",value:function(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}],[{key:"createInstance",value:function(){return new n(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},arguments.length>1?arguments[1]:void 0)}}]),n}(fr),$r=Zr.createInstance();$r.createInstance=Zr.createInstance,$r.createInstance,$r.dir,$r.init,$r.loadResources,$r.reloadResources,$r.use,$r.changeLanguage,$r.getFixedT,$r.t,$r.exists,$r.setDefaultNamespace,$r.hasLoadedNamespace,$r.loadNamespaces,$r.loadLanguages;var Qr,ea=function(){var e;if(null!==(e=console)&&void 0!==e&&e.warn){for(var t,n=arguments.length,i=new Array(n),o=0;o<n;o++)i[o]=arguments[o];aa(i[0])&&(i[0]="react-i18next:: ".concat(i[0])),(t=console).warn.apply(t,i)}},ta={},na=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];aa(t[0])&&ta[t[0]]||(aa(t[0])&&(ta[t[0]]=new Date),ea.apply(void 0,t))},ia=function(e,t){return function(){if(e.isInitialized)t();else{e.on("initialized",(function n(){setTimeout((function(){e.off("initialized",n)}),0),t()}))}}},oa=function(e,t,n){e.loadNamespaces(t,ia(e,n))},ra=function(e,t,n,i){aa(n)&&(n=[n]),n.forEach((function(t){e.options.ns.indexOf(t)<0&&e.options.ns.push(t)})),e.loadLanguages(t,ia(e,i))},aa=function(e){return"string"==typeof e},sa=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,la={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"\'","&#39;":"\'","&quot;":\'"\',"&#34;":\'"\',"&nbsp;":" ","&#160;":" ","&copy;":"©","&#169;":"©","&reg;":"®","&#174;":"®","&hellip;":"…","&#8230;":"…","&#x2F;":"/","&#47;":"/"},ca=function(e){return la[e]},ua={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:function(e){return e.replace(sa,ca)}},ha={type:"3rdParty",init:function(e){!function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};ua=_objectSpread(_objectSpread({},ua),e)}(e.options.react),function(e){Qr=e}(e)}},da=ai.createContext(),fa=function(){function e(){_classCallCheck(this,e),this.usedNamespaces={}}return _createClass(e,[{key:"addUsedNamespaces",value:function(e){var t=this;e.forEach((function(e){var n,i;null!==(i=(n=t.usedNamespaces)[e])&&void 0!==i||(n[e]=!0)}))}},{key:"getUsedNamespaces",value:function(){return Object.keys(this.usedNamespaces)}}]),e}(),pa=function(e,t,n,i){return e.getFixedT(t,n,i)},ga=function(e){var t,n,i,o,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=r.i18n,s=ai.useContext(da)||{},l=s.i18n,c=s.defaultNS,u=a||l||Qr;if(u&&!u.reportNamespaces&&(u.reportNamespaces=new fa),!u){na("You will need to pass in an i18next instance by using initReactI18next");var h=function(e,t){return aa(t)?t:"object"===_typeof(n=t)&&null!==n&&aa(t.defaultValue)?t.defaultValue:Array.isArray(e)?e[e.length-1]:e;var n},d=[h,{},!1];return d.t=h,d.i18n={},d.ready=!1,d}null!==(t=u.options.react)&&void 0!==t&&t.wait&&na("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");var f=_objectSpread(_objectSpread(_objectSpread({},ua),u.options.react),r),p=f.useSuspense,g=f.keyPrefix,m=e||c||(null===(n=u.options)||void 0===n?void 0:n.defaultNS);m=aa(m)?[m]:m||["translation"],null===(i=(o=u.reportNamespaces).addUsedNamespaces)||void 0===i||i.call(o,m);var v=(u.isInitialized||u.initializedStoreOnce)&&m.every((function(e){return function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t.languages&&t.languages.length?t.hasLoadedNamespace(e,{lng:n.lng,precheck:function(t,i){var o;if((null===(o=n.bindI18n)||void 0===o?void 0:o.indexOf("languageChanging"))>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!i(t.isLanguageChangingTo,e))return!1}}):(na("i18n.languages were undefined or empty",t.languages),!0)}(e,u,f)})),y=function(e,t,n,i){return ai.useCallback(pa(e,t,n,i),[e,t,n,i])}(u,r.lng||null,"fallback"===f.nsMode?m:m[0],g),b=function(){return y},_=function(){return pa(u,r.lng||null,"fallback"===f.nsMode?m:m[0],g)},k=_slicedToArray(ai.useState(b),2),w=k[0],S=k[1],C=m.join();r.lng&&(C="".concat(r.lng).concat(C));var E,T,O,j=(E=C,O=ai.useRef(),ai.useEffect((function(){O.current=T?O.current:E}),[E,T]),O.current),x=ai.useRef(!0);ai.useEffect((function(){var e=f.bindI18n,t=f.bindI18nStore;x.current=!0,v||p||(r.lng?ra(u,r.lng,m,(function(){x.current&&S(_)})):oa(u,m,(function(){x.current&&S(_)}))),v&&j&&j!==C&&x.current&&S(_);var n=function(){x.current&&S(_)};return e&&(null==u||u.on(e,n)),t&&(null==u||u.store.on(t,n)),function(){x.current=!1,u&&(null==e||e.split(" ").forEach((function(e){return u.off(e,n)}))),t&&u&&t.split(" ").forEach((function(e){return u.store.off(e,n)}))}}),[u,C]),ai.useEffect((function(){x.current&&v&&S(b)}),[u,g,v]);var R=[w,u,v];if(R.t=w,R.i18n=u,R.ready=v,v)return R;if(!v&&!p)return R;throw new Promise((function(e){r.lng?ra(u,r.lng,m,(function(){return e()})):oa(u,m,(function(){return e()}))}))},ma={da:"da-DK",de:"de-DE",en:"en-US",es:"es-ES",fr:"fr-FR",id:"id-ID",it:"it-IT",ja:"ja-JP",ko:"ko-KR",nl:"nl-NL",pl:"pl-PL",pt:"pt-PT",ro:"ro-RO",ru:"ru-RU",sv:"sv-SE",tr:"tr-TR",vi:"vi-VN",zh:"zh-CN",ca:"ca-ES"},va=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2?arguments[2]:void 0;return pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function i(){var o,r,a,s;return _regeneratorRuntime().wrap((function(i){for(;;)switch(i.prev=i.next){case 0:if(2===(null===(o=window.ZMCoBrowsingConfig)||void 0===o?void 0:o.templateMode)){i.next=3;break}return null==n||n(),i.abrupt("return");case 3:if(i.prev=3,$r.hasResourceBundle(e,"translation")){i.next=14;break}return i.next=7,Yn("".concat(null===(r=window.ZMCoBrowsingConfig)||void 0===r?void 0:r.i18nUrlPrefix,"locales/").concat(ma[e]?ma[e]:e,"/translation.json"));case 7:if((a=i.sent).ok){i.next=10;break}throw new Error("Translations response was not ok");case 10:return i.next=12,a.json();case 12:s=i.sent,$r.addResourceBundle(e,"translation",s,!0,!0);case 14:i.next=19;break;case 16:i.prev=16,i.t0=i.catch(3),console.error(i.t0 instanceof Error?i.t0.message:"".concat(i.t0));case 19:t&&$r.changeLanguage(e,n);case 20:case"end":return i.stop()}}),i,null,[[3,16]])})))};$r.t;var ya=Vo((function(e,t){var n=e.styles,i=Po([n],void 0,ai.useContext(Wo)),o=ai.useRef();return zo((function(){var e=t.key+"-global",n=new t.sheet.constructor({key:e,nonce:t.sheet.nonce,container:t.sheet.container,speedy:t.sheet.isSpeedy}),r=!1,a=document.querySelector(\'style[data-emotion="\'+e+" "+i.name+\'"]\');return t.sheet.tags.length&&(n.before=t.sheet.tags[0]),null!==a&&(r=!0,a.setAttribute("data-emotion",e),n.hydrate([a])),o.current=[n,r],function(){n.flush()}}),[t]),zo((function(){var e=o.current,n=e[0];if(e[1])e[1]=!1;else{if(void 0!==i.next&&So(t,i.next,!0),n.tags.length){var r=n.tags[n.tags.length-1].nextElementSibling;n.before=r,n.flush()}t.insert("",i,n,!1)}}),[t,i.name]),null}));function ba(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return Po(t)}var _a=function(){var e=ba.apply(void 0,arguments),t="animation-"+e.name;return{name:t,styles:"@keyframes "+t+"{"+e.styles+"}",anim:1,toString:function(){return"_EMO_"+this.name+"_"+this.styles+"_EMO_"}}};function ka(){return Zo("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:"32",height:"16",viewBox:"0 0 32 16",fill:"none"},{children:[Jo("g",Object.assign({clipPath:"url(#clip0_3606_2318)"},{children:Jo("rect",{x:"24",y:"7",width:"1",height:"16",transform:"rotate(90 24 7)",fill:"#F7F9FA"})})),Jo("defs",{children:Jo("clipPath",Object.assign({id:"clip0_3606_2318"},{children:Jo("rect",{width:"16",height:"32",fill:"white",transform:"translate(32) rotate(90)"})}))})]}))}function wa(){return Jo("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true"},{children:Jo("path",{d:"M8 4.45211V19.385C8 19.5787 8.24782 19.6592 8.36175 19.5026L12.343 14.0284C12.3865 13.9685 12.4597 13.9376 12.533 13.9481L19.4932 14.9424C19.6883 14.9703 19.8019 14.729 19.656 14.5964L8.33453 4.30412C8.20606 4.18733 8 4.27848 8 4.45211Z",stroke:"#F7F9FA"})}))}function Sa(e){var t=e.width,n=void 0===t?"24":t,i=e.height,o=void 0===i?"24":i;return Jo("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:n,height:o,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true"},{children:Jo("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M17.7756 4.44172C17.3722 4.03825 16.8403 3.92715 16.3926 3.98636C15.9538 4.04438 15.5743 4.25966 15.2984 4.53554L6.26388 13.57C5.89623 13.9377 5.60715 14.3922 5.44521 14.8925L4.7108 17.1615C4.54965 17.6593 4.57925 18.3511 5.09344 18.8653C5.60763 19.3795 6.29938 19.4091 6.79725 19.2479L9.06623 18.5135C9.56652 18.3516 10.021 18.0625 10.3887 17.6948L19.4232 8.66033C19.6991 8.38445 19.9143 8.00489 19.9724 7.56614C20.0316 7.1184 19.9205 6.58654 19.517 6.18307L17.7756 4.44172ZM7.83436 17.5984L7.12249 17.8288L7.11234 17.8321L6.94749 17.8854L6.41231 18.0587C6.24348 18.1133 6.08025 18.0843 5.97732 17.9814C5.8744 17.8785 5.8454 17.7152 5.90005 17.5464L6.07327 17.0112L6.12663 16.8464L6.12992 16.8362L6.63447 15.2774C6.73127 14.9784 6.90987 14.6918 7.14776 14.4539L13.2461 8.35562L13.4913 8.60087L15.6031 10.7126L9.50478 16.8109C9.2669 17.0488 8.98036 17.2274 8.68129 17.3242L7.83436 17.5984ZM16.487 9.82876L18.5393 7.77644C18.6458 7.66992 18.7155 7.53532 18.7331 7.40227C18.7507 7.26922 18.7148 7.1486 18.6331 7.06696L16.8918 5.3256C16.8101 5.24396 16.6895 5.20798 16.5564 5.22557C16.4234 5.24317 16.2888 5.3129 16.1823 5.41942L14.3219 7.27977L14.13 7.47174L14.1737 7.5155L16.487 9.82876Z",fill:"#F7F9FA"})}))}var Ca="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTUgMTRMMSAxNS41TDAuNSAxNUwxLjUgMTEuNUwxMi41IDAuNUwxNS41IDNMNSAxNFoiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTMuNjk4NSAwLjQwNjI1OUMxMy4zNTIyIDAuMDU5OTUyNSAxMi44OTE5IC0wLjAzOTI5OTkgMTIuNDk1NCAwLjAxMzE0MDJDMTIuMTA2IDAuMDY0NjI4OCAxMS43NjM2IDAuMjU2OTU4IDExLjUxMjIgMC41MDgzNjJMMS42ODAyOCAxMC4zNDAyQzEuMzE3NTkgMTAuNzAyOSAxLjAzNDgzIDExLjE0OTEgMC44NzczODQgMTEuNjM1NkwwLjA3ODE0NDIgMTQuMTA0OEMtMC4wNjY1MjcxIDE0LjU1MTggLTAuMDM0NDg0NyAxNS4xNTIyIDAuNDA2NTM2IDE1LjU5MzJDMC44NDc1NTMgMTYuMDM0MyAxLjQ0ODAxIDE2LjA2NjMgMS44OTQ5NyAxNS45MjE2TDQuMzY0MjEgMTUuMTIyNEM0Ljg1MDY1IDE0Ljk2NDkgNS4yOTY4NSAxNC42ODIyIDUuNjU5NTQgMTQuMzE5NUwxNS40OTE0IDQuNDg3NjNDMTUuNzQyOCA0LjIzNjIyIDE1LjkzNTIgMy44OTM3NyAxNS45ODY2IDMuNTA0NDJDMTYuMDM5MSAzLjEwNzg3IDE1LjkzOTggMi42NDc2MiAxNS41OTM1IDIuMzAxMzFMMTMuNjk4NSAwLjQwNjI1OVpNMTIuNjI2NSAxLjAwNDUxQzEyLjc3MTMgMC45ODUzNjIgMTIuOTAyNSAxLjAyNDUyIDEyLjk5MTQgMS4xMTMzN0wxNC44ODY0IDMuMDA4NDFDMTQuOTc1MyAzLjA5NzI2IDE1LjAxNDQgMy4yMjg1MiAxNC45OTUzIDMuMzczMzJDMTQuOTc2MSAzLjUxODEyIDE0LjkwMDIgMy42NjQ1OSAxNC43ODQzIDMuNzgwNTJMMTIuMTM2MSA2LjQyODcxTDkuNTcxMDcgMy44NjM2NkwxMi4yMTkzIDEuMjE1NDdDMTIuMzM1MiAxLjA5OTU0IDEyLjQ4MTcgMS4wMjM2NiAxMi42MjY1IDEuMDA0NTFaTTguODYzOTcgNC41NzA3N0wyLjM4NzM4IDExLjA0NzNDMi4xMjg1IDExLjMwNjIgMS45MzQxMyAxMS42MTgxIDEuODI4NzkgMTEuOTQzNUwxLjAyOTU1IDE0LjQxMjhDMC45NzAwNzcgMTQuNTk2NSAxLjAwMTYzIDE0Ljc3NDEgMS4xMTM2NCAxNC44ODYxQzEuMjI1NjUgMTQuOTk4MSAxLjQwMzI5IDE1LjAyOTcgMS41ODcwMiAxNC45NzAyTDQuMDU2MjYgMTQuMTcxQzQuMzgxNzIgMTQuMDY1NiA0LjY5MzU1IDEzLjg3MTMgNC45NTI0MyAxMy42MTI0TDExLjQyOSA3LjEzNTgyTDguODYzOTcgNC41NzA3N1oiIGZpbGw9ImJsYWNrIi8+Cjwvc3ZnPgo=";function Ea(){return Jo("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true"},{children:Jo("path",{d:"M7.02703 10.2703L6.12964 11.1677C5.3842 11.9131 5.01147 12.2858 4.87183 12.7156C4.74899 13.0937 4.74899 13.5009 4.87183 13.879C5.01147 14.3088 5.3842 14.6815 6.12964 15.4269L8.57306 17.8704C9.31851 18.6158 9.69123 18.9885 10.121 19.1282C10.4991 19.251 10.9063 19.251 11.2844 19.1282C11.7142 18.9885 12.0869 18.6158 12.8323 17.8704L13.7297 16.973M7.02703 10.2703L11.1677 6.12964C11.9131 5.3842 12.2858 5.01147 12.7156 4.87183C13.0937 4.74899 13.5009 4.74899 13.879 4.87183C14.3088 5.01147 14.6815 5.3842 15.4269 6.12964L17.8704 8.57306C18.6158 9.31851 18.9885 9.69123 19.1282 10.121C19.251 10.4991 19.251 10.9063 19.1282 11.2844C18.9885 11.7142 18.6158 12.0869 17.8704 12.8323L13.7297 16.973M7.02703 10.2703L13.7297 16.973",stroke:"#F8F8FA",strokeWidth:"1.2"})}))}function Ta(e){var t=e.color,n=void 0===t?"#ed4d6a":t,i=e.className,o=void 0===i?"":i,r=ft(e,["color","className"]);return Jo("div",Object.assign({css:ba(_templateObject||(_templateObject=_taggedTemplateLiteral(["\\n cursor: pointer;\\n width: 16px;\\n height: 16px;\\n flex-shrink: 0;\\n border-radius: 200px;\\n background: ",";\\n "])),n),className:o},r))}function Oa(e){var t=e.color,n=void 0===t?"#F7F9FA":t;return Jo("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true"},{children:Jo("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.94194 2.44194C6.18602 2.19786 6.18602 1.80214 5.94194 1.55806C5.69786 1.31398 5.30214 1.31398 5.05806 1.55806L2.55806 4.05806C2.31398 4.30214 2.31398 4.69786 2.55806 4.94194L5.05806 7.44194C5.30214 7.68602 5.69786 7.68602 5.94194 7.44194C6.18602 7.19786 6.18602 6.80214 5.94194 6.55806L4.50888 5.125H9.00001C11.1401 5.125 12.875 6.8599 12.875 9C12.875 11.1401 11.1401 12.875 9.00001 12.875H4.00001C3.65483 12.875 3.37501 13.1548 3.37501 13.5C3.37501 13.8452 3.65483 14.125 4.00001 14.125H9.00001C11.8305 14.125 14.125 11.8305 14.125 9C14.125 6.16954 11.8305 3.875 9.00001 3.875H4.50888L5.94194 2.44194Z",fill:n})}))}function ja(e){var t=e.color,n=void 0===t?"#F7F9FA":t;return Jo("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true"},{children:Jo("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10.0581 2.44194C9.81398 2.19786 9.81398 1.80214 10.0581 1.55806C10.3021 1.31398 10.6979 1.31398 10.9419 1.55806L13.4419 4.05806C13.686 4.30214 13.686 4.69786 13.4419 4.94194L10.9419 7.44194C10.6979 7.68602 10.3021 7.68602 10.0581 7.44194C9.81398 7.19786 9.81398 6.80214 10.0581 6.55806L11.4911 5.125H6.99999C4.85989 5.125 3.12499 6.8599 3.12499 9C3.12499 11.1401 4.85989 12.875 6.99999 12.875H12C12.3452 12.875 12.625 13.1548 12.625 13.5C12.625 13.8452 12.3452 14.125 12 14.125H6.99999C4.16953 14.125 1.87499 11.8305 1.87499 9C1.87499 6.16954 4.16953 3.875 6.99999 3.875H11.4911L10.0581 2.44194Z",fill:n})}))}function xa(){return Zo("svg",Object.assign({width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},{children:[Zo("g",Object.assign({clipPath:"url(#clip0_5134_21882)"},{children:[Jo("rect",{width:"20",height:"20",rx:"4",fill:"#E8173D"}),Jo("path",{d:"M5 15L14.9059 5M15 15L5.09406 5",stroke:"#F7F9FA",strokeWidth:"1.5",strokeLinecap:"round"})]})),Jo("defs",{children:Jo("clipPath",Object.assign({id:"clip0_5134_21882"},{children:Jo("rect",{width:"20",height:"20",rx:"4",fill:"white"})}))})]}))}function Ra(e){var t=e.color,n=void 0===t?"#fff":t;return Zo("svg",Object.assign({width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},{children:[Jo("path",{d:"M1.5 4H14.5",stroke:n,strokeLinecap:"round"}),Jo("path",{d:"M3.87899 13.5866L3.04537 4H12.9546L12.121 13.5866C12.0761 14.1034 11.6435 14.5 11.1248 14.5H4.87523C4.35652 14.5 3.92392 14.1034 3.87899 13.5866Z",stroke:n}),Jo("path",{d:"M4.5 4L5.9087 1.9855C6.08942 1.6843 6.41493 1.5 6.76619 1.5H9.23381C9.58507 1.5 9.91058 1.6843 10.0913 1.9855L11.5 4",stroke:n}),Jo("rect",{x:"6",y:"6",width:"1",height:"6",rx:"0.5",fill:n}),Jo("rect",{x:"9",y:"6",width:"1",height:"6",rx:"0.5",fill:n})]}))}function Ia(){return Zo("svg",Object.assign({width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},{children:[Jo("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M22.0579 4.4821C22.6445 5.06712 22.6445 6.01562 22.0579 6.60065L8.11705 20.5052C7.83537 20.7861 7.45335 20.9439 7.055 20.9439L2.25098 20.9439C1.83622 20.9439 1.5 20.6086 1.5 20.1949V15.4034C1.5 15.0061 1.65824 14.6251 1.93991 14.3441L15.8808 0.43962C16.4673 -0.145401 17.4183 -0.145401 18.0049 0.43962L22.0579 4.4821ZM16.9428 1.4989L20.9959 5.54137L18.2546 8.27552L14.2068 4.22775L16.9428 1.4989ZM13.1448 5.28703L17.1925 9.33479L7.055 19.4459H3.00196L3.00196 15.4034L13.1448 5.28703Z",fill:"currentColor"}),Jo("path",{d:"M2.25033 22.5001C1.83612 22.5001 1.50033 22.8358 1.50033 23.2501C1.50033 23.6643 1.83612 24.0001 2.25033 24.0001H21.7503C22.1645 24.0001 22.5003 23.6643 22.5003 23.2501C22.5003 22.8358 22.1645 22.5001 21.7503 22.5001H2.25033Z",fill:"currentColor"})]}))}function Aa(e){var t=e.width,n=void 0===t?"3":t;return Jo("svg",Object.assign({width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},{children:Jo("path",{d:"M12.8571 6.5C12.8571 6.5 10 8.27419 10 10.0484C10 12.5273 14 10.0484 14 12.5323C14 14.6613 10 17.5 10 17.5",stroke:"#F2F8FF",strokeWidth:n,strokeLinecap:"round"})}))}function Da(e){var t,n,i=e.children,o=e.top,r=void 0===o?10:o,a=e.left,s=void 0===a?46:a,l=e.onClickOutside,c=ft(e,["children","top","left","onClickOutside"]),u=ai.useRef(null);return t=u,n=function(){"function"==typeof l&&l()},ai.useEffect((function(){function e(e){e.target&&function(e,t){if(!e||!t)return!1;for(var n=!1;e&&"BODY"!==(null==e?void 0:e.tagName);){if(e===t){n=!0;break}e=null==e?void 0:e.parentElement}return n}(e.target,t.current)||n(e)}return t.current&&document.addEventListener("click",e,!0),function(){document.removeEventListener("click",e,!0)}})),Jo("div",Object.assign({ref:u,css:ba(_templateObject2||(_templateObject2=_taggedTemplateLiteral(["\\n position: absolute;\\n top: ","px;\\n left: ","px;\\n border-radius: 12px;\\n background: #131619;\\n padding: 12px;\\n border: 1px solid #6e7680;\\n "])),r,s)},c,{children:i}))}var Na="#ed4d6a",Pa=["#fff",Na,"#f9df58","#90c38a","#4989f6","#ab7bf7","#e94cc1","#f09035","#73d346","#78d5e8","#404040","#73130B","#794517","#336f32","#274dbc"];var La="activeBtnChange",Ma="history:change",za="history:undo",Fa="history:redo",Ba="hideToolbar",Ua={drawWidth:6,drawColor:Na},Va={thin:"1.5",regular:"3",bulk:"4.5"},Wa=_defineProperty2(_defineProperty2(_defineProperty2({},Va.thin,Ua.drawWidth/2),Va.regular,Ua.drawWidth),Va.bulk,1.5*Ua.drawWidth),Ga=1,Ha=3,Ya=4;function Xa(e){var t=e.selectedColor,n=e.toggleColorSubMenu,i=e.setColor,o=e.onClickOutsideHandler;return Jo(Da,Object.assign({top:140,onClickOutside:o},{children:Jo("div",Object.assign({css:ba(_templateObject3||(_templateObject3=_taggedTemplateLiteral(["\\n width: 122px;\\n display: flex;\\n flex-wrap: wrap;\\n justify-content: space-between;\\n gap: 8px;\\n "])))},{children:Pa.map((function(e){return Jo(Ta,{css:t===e?ba(_templateObject4||(_templateObject4=_taggedTemplateLiteral(["\\n outline: 1px solid ",";\\n border: 1px solid #000;\\n "])),e):ba(_templateObject5||(_templateObject5=_taggedTemplateLiteral(["\\n border: 1px solid transparent;\\n "]))),color:e,onClick:function(){!function(e){qn.use(Xn.changeColor,e),i(e),n()}(e)}},e)}))}))}))}var Ka,qa,Ja,Za,$a={},Qa={get exports(){return $a},set exports(e){$a=e}},es={},ts={};function ns(e){var t,n,i="";if("string"==typeof e||"number"==typeof e)i+=e;else if("object"==_typeof(e))if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(n=ns(e[t]))&&(i&&(i+=" "),i+=n);else for(t in e)e[t]&&(i&&(i+=" "),i+=t);return i}function is(){for(var e,t,n=0,i="";n<arguments.length;)(e=arguments[n++])&&(t=ns(e))&&(i&&(i+=" "),i+=t);return i}({get exports(){return ts},set exports(e){ts=e}}).exports=function(){if(Za)return Ja;Za=1;var e=qa?Ka:(qa=1,Ka="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");function t(){}function n(){}return n.resetWarningCache=t,Ja=function(){function i(t,n,i,o,r,a){if(a!==e){var s=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 s.name="Invariant Violation",s}}function o(){return i}i.isRequired=i;var r={array:i,bigint:i,bool:i,func:i,number:i,object:i,string:i,symbol:i,any:i,arrayOf:o,element:i,elementType:i,instanceOf:o,node:i,objectOf:o,oneOf:o,oneOfType:o,shape:o,exact:o,checkPropTypes:n,resetWarningCache:t};return r.PropTypes=r,r},Ja}()();var os=ti(Object.freeze({__proto__:null,clsx:is,default:is})),rs={},as={};Object.defineProperty(as,"__esModule",{value:!0}),as.dontSetMe=function(e,t,n){if(e[t])return new Error("Invalid prop ".concat(t," passed to ").concat(n," - do not set this, set it on the child."))},as.findInArray=function(e,t){for(var n=0,i=e.length;n<i;n++)if(t.apply(t,[e[n],n,e]))return e[n]},as.int=function(e){return parseInt(e,10)},as.isFunction=function(e){return"function"==typeof e||"[object Function]"===Object.prototype.toString.call(e)},as.isNum=function(e){return"number"==typeof e&&!isNaN(e)};var ss={};Object.defineProperty(ss,"__esModule",{value:!0}),ss.browserPrefixToKey=us,ss.browserPrefixToStyle=function(e,t){return t?"-".concat(t.toLowerCase(),"-").concat(e):e},ss.default=void 0,ss.getPrefix=cs;var ls=["Moz","Webkit","O","ms"];function cs(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"transform";if("undefined"==typeof window)return"";var n=null===(e=window.document)||void 0===e||null===(e=e.documentElement)||void 0===e?void 0:e.style;if(!n)return"";if(t in n)return"";for(var i=0;i<ls.length;i++)if(us(t,ls[i])in n)return ls[i];return""}function us(e,t){return t?"".concat(t).concat(function(e){for(var t="",n=!0,i=0;i<e.length;i++)n?(t+=e[i].toUpperCase(),n=!1):"-"===e[i]?n=!0:t+=e[i];return t}(e)):e}ss.default=cs(),Object.defineProperty(rs,"__esModule",{value:!0}),rs.addClassName=vs,rs.addEvent=function(e,t,n,i){if(!e)return;var o=_objectSpread({capture:!0},i);e.addEventListener?e.addEventListener(t,n,o):e.attachEvent?e.attachEvent("on"+t,n):e["on"+t]=n},rs.addUserSelectStyles=function(e){if(!e)return;var t=e.getElementById("react-draggable-style-el");t||((t=e.createElement("style")).type="text/css",t.id="react-draggable-style-el",t.innerHTML=".react-draggable-transparent-selection *::-moz-selection {all: inherit;}\\n",t.innerHTML+=".react-draggable-transparent-selection *::selection {all: inherit;}\\n",e.getElementsByTagName("head")[0].appendChild(t));e.body&&vs(e.body,"react-draggable-transparent-selection")},rs.createCSSTransform=function(e,t){var n=ms(e,t,"px");return _defineProperty2({},(0,ds.browserPrefixToKey)("transform",ds.default),n)},rs.createSVGTransform=function(e,t){return ms(e,t,"")},rs.getTouch=function(e,t){return e.targetTouches&&(0,hs.findInArray)(e.targetTouches,(function(e){return t===e.identifier}))||e.changedTouches&&(0,hs.findInArray)(e.changedTouches,(function(e){return t===e.identifier}))},rs.getTouchIdentifier=function(e){if(e.targetTouches&&e.targetTouches[0])return e.targetTouches[0].identifier;if(e.changedTouches&&e.changedTouches[0])return e.changedTouches[0].identifier},rs.getTranslation=ms,rs.innerHeight=function(e){var t=e.clientHeight,n=e.ownerDocument.defaultView.getComputedStyle(e);return t-=(0,hs.int)(n.paddingTop),t-=(0,hs.int)(n.paddingBottom),t},rs.innerWidth=function(e){var t=e.clientWidth,n=e.ownerDocument.defaultView.getComputedStyle(e);return t-=(0,hs.int)(n.paddingLeft),t-=(0,hs.int)(n.paddingRight),t},rs.matchesSelector=gs,rs.matchesSelectorAndParentsTo=function(e,t,n){var i=e;do{if(gs(i,t))return!0;if(i===n)return!1;i=i.parentNode}while(i);return!1},rs.offsetXYFromParent=function(e,t,n){var i=t===t.ownerDocument.body?{left:0,top:0}:t.getBoundingClientRect(),o=(e.clientX+t.scrollLeft-i.left)/n,r=(e.clientY+t.scrollTop-i.top)/n;return{x:o,y:r}},rs.outerHeight=function(e){var t=e.clientHeight,n=e.ownerDocument.defaultView.getComputedStyle(e);return t+=(0,hs.int)(n.borderTopWidth),t+=(0,hs.int)(n.borderBottomWidth),t},rs.outerWidth=function(e){var t=e.clientWidth,n=e.ownerDocument.defaultView.getComputedStyle(e);return t+=(0,hs.int)(n.borderLeftWidth),t+=(0,hs.int)(n.borderRightWidth),t},rs.removeClassName=ys,rs.removeEvent=function(e,t,n,i){if(!e)return;var o=_objectSpread({capture:!0},i);e.removeEventListener?e.removeEventListener(t,n,o):e.detachEvent?e.detachEvent("on"+t,n):e["on"+t]=null},rs.removeUserSelectStyles=function(e){if(!e)return;try{if(e.body&&ys(e.body,"react-draggable-transparent-selection"),e.selection)e.selection.empty();else{var t=(e.defaultView||window).getSelection();t&&"Caret"!==t.type&&t.removeAllRanges()}}catch(e){}};var hs=as,ds=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==_typeof(e)&&"function"!=typeof e)return{default:e};var n=fs(t);if(n&&n.has(e))return n.get(e);var i={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var a=o?Object.getOwnPropertyDescriptor(e,r):null;a&&(a.get||a.set)?Object.defineProperty(i,r,a):i[r]=e[r]}i.default=e,n&&n.set(e,i);return i}(ss);function fs(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(fs=function(e){return e?n:t})(e)}var ps="";function gs(e,t){return ps||(ps=(0,hs.findInArray)(["matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector"],(function(t){return(0,hs.isFunction)(e[t])}))),!!(0,hs.isFunction)(e[ps])&&e[ps](t)}function ms(e,t,n){var i=e.x,o=e.y,r="translate(".concat(i).concat(n,",").concat(o).concat(n,")");if(t){var a="".concat("string"==typeof t.x?t.x:t.x+n),s="".concat("string"==typeof t.y?t.y:t.y+n);r="translate(".concat(a,", ").concat(s,")")+r}return r}function vs(e,t){e.classList?e.classList.add(t):e.className.match(new RegExp("(?:^|\\\\s)".concat(t,"(?!\\\\S)")))||(e.className+=" ".concat(t))}function ys(e,t){e.classList?e.classList.remove(t):e.className=e.className.replace(new RegExp("(?:^|\\\\s)".concat(t,"(?!\\\\S)"),"g"),"")}var bs={};Object.defineProperty(bs,"__esModule",{value:!0}),bs.canDragX=function(e){return"both"===e.props.axis||"x"===e.props.axis},bs.canDragY=function(e){return"both"===e.props.axis||"y"===e.props.axis},bs.createCoreData=function(e,t,n){var i=!(0,_s.isNum)(e.lastX),o=ws(e);return i?{node:o,deltaX:0,deltaY:0,lastX:t,lastY:n,x:t,y:n}:{node:o,deltaX:t-e.lastX,deltaY:n-e.lastY,lastX:e.lastX,lastY:e.lastY,x:t,y:n}},bs.createDraggableData=function(e,t){var n=e.props.scale;return{node:t.node,x:e.state.x+t.deltaX/n,y:e.state.y+t.deltaY/n,deltaX:t.deltaX/n,deltaY:t.deltaY/n,lastX:e.state.x,lastY:e.state.y}},bs.getBoundPosition=function(e,t,n){if(!e.props.bounds)return[t,n];var i=e.props.bounds;i="string"==typeof i?i:function(e){return{left:e.left,top:e.top,right:e.right,bottom:e.bottom}}(i);var o=ws(e);if("string"==typeof i){var r,a=o.ownerDocument,s=a.defaultView;if(!((r="parent"===i?o.parentNode:a.querySelector(i))instanceof s.HTMLElement))throw new Error(\'Bounds selector "\'+i+\'" could not find an element.\');var l=r,c=s.getComputedStyle(o),u=s.getComputedStyle(l);i={left:-o.offsetLeft+(0,_s.int)(u.paddingLeft)+(0,_s.int)(c.marginLeft),top:-o.offsetTop+(0,_s.int)(u.paddingTop)+(0,_s.int)(c.marginTop),right:(0,ks.innerWidth)(l)-(0,ks.outerWidth)(o)-o.offsetLeft+(0,_s.int)(u.paddingRight)-(0,_s.int)(c.marginRight),bottom:(0,ks.innerHeight)(l)-(0,ks.outerHeight)(o)-o.offsetTop+(0,_s.int)(u.paddingBottom)-(0,_s.int)(c.marginBottom)}}(0,_s.isNum)(i.right)&&(t=Math.min(t,i.right));(0,_s.isNum)(i.bottom)&&(n=Math.min(n,i.bottom));(0,_s.isNum)(i.left)&&(t=Math.max(t,i.left));(0,_s.isNum)(i.top)&&(n=Math.max(n,i.top));return[t,n]},bs.getControlPosition=function(e,t,n){var i="number"==typeof t?(0,ks.getTouch)(e,t):null;if("number"==typeof t&&!i)return null;var o=ws(n),r=n.props.offsetParent||o.offsetParent||o.ownerDocument.body;return(0,ks.offsetXYFromParent)(i||e,r,n.props.scale)},bs.snapToGrid=function(e,t,n){var i=Math.round(t/e[0])*e[0],o=Math.round(n/e[1])*e[1];return[i,o]};var _s=as,ks=rs;function ws(e){var t=e.findDOMNode();if(!t)throw new Error("<DraggableCore>: Unmounted during event!");return t}var Ss={},Cs={};Object.defineProperty(Cs,"__esModule",{value:!0}),Cs.default=function(){},Object.defineProperty(Ss,"__esModule",{value:!0}),Ss.default=void 0;var Es=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==_typeof(e)&&"function"!=typeof e)return{default:e};var n=Ds(t);if(n&&n.has(e))return n.get(e);var i={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var a=o?Object.getOwnPropertyDescriptor(e,r):null;a&&(a.get||a.set)?Object.defineProperty(i,r,a):i[r]=e[r]}i.default=e,n&&n.set(e,i);return i}(ai),Ts=As(ts),Os=As(nr),js=rs,xs=bs,Rs=as,Is=As(Cs);function As(e){return e&&e.__esModule?e:{default:e}}function Ds(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(Ds=function(e){return e?n:t})(e)}function Ns(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==_typeof(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!==_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===_typeof(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Ps={start:"touchstart",move:"touchmove",stop:"touchend"},Ls={start:"mousedown",move:"mousemove",stop:"mouseup"},Ms=Ls,zs=function(e){_inherits(n,e);var t=_createSuper(n);function n(){var e;return _classCallCheck(this,n),Ns(_assertThisInitialized2(e=t.apply(this,arguments)),"dragging",!1),Ns(_assertThisInitialized2(e),"lastX",NaN),Ns(_assertThisInitialized2(e),"lastY",NaN),Ns(_assertThisInitialized2(e),"touchIdentifier",null),Ns(_assertThisInitialized2(e),"mounted",!1),Ns(_assertThisInitialized2(e),"handleDragStart",(function(t){if(e.props.onMouseDown(t),!e.props.allowAnyClick&&"number"==typeof t.button&&0!==t.button)return!1;var n=e.findDOMNode();if(!n||!n.ownerDocument||!n.ownerDocument.body)throw new Error("<DraggableCore> not mounted on DragStart!");var i=n.ownerDocument;if(!(e.props.disabled||!(t.target instanceof i.defaultView.Node)||e.props.handle&&!(0,js.matchesSelectorAndParentsTo)(t.target,e.props.handle,n)||e.props.cancel&&(0,js.matchesSelectorAndParentsTo)(t.target,e.props.cancel,n))){"touchstart"===t.type&&t.preventDefault();var o=(0,js.getTouchIdentifier)(t);e.touchIdentifier=o;var r=(0,xs.getControlPosition)(t,o,_assertThisInitialized2(e));if(null!=r){var a=r.x,s=r.y,l=(0,xs.createCoreData)(_assertThisInitialized2(e),a,s);(0,Is.default)("DraggableCore: handleDragStart: %j",l),(0,Is.default)("calling",e.props.onStart),!1!==e.props.onStart(t,l)&&!1!==e.mounted&&(e.props.enableUserSelectHack&&(0,js.addUserSelectStyles)(i),e.dragging=!0,e.lastX=a,e.lastY=s,(0,js.addEvent)(i,Ms.move,e.handleDrag),(0,js.addEvent)(i,Ms.stop,e.handleDragStop))}}})),Ns(_assertThisInitialized2(e),"handleDrag",(function(t){var n=(0,xs.getControlPosition)(t,e.touchIdentifier,_assertThisInitialized2(e));if(null!=n){var i=n.x,o=n.y;if(Array.isArray(e.props.grid)){var r=i-e.lastX,a=o-e.lastY,s=_slicedToArray((0,xs.snapToGrid)(e.props.grid,r,a),2);if(r=s[0],a=s[1],!r&&!a)return;i=e.lastX+r,o=e.lastY+a}var l=(0,xs.createCoreData)(_assertThisInitialized2(e),i,o);if((0,Is.default)("DraggableCore: handleDrag: %j",l),!1!==e.props.onDrag(t,l)&&!1!==e.mounted)e.lastX=i,e.lastY=o;else try{e.handleDragStop(new MouseEvent("mouseup"))}catch(t){var c=document.createEvent("MouseEvents");c.initMouseEvent("mouseup",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),e.handleDragStop(c)}}})),Ns(_assertThisInitialized2(e),"handleDragStop",(function(t){if(e.dragging){var n=(0,xs.getControlPosition)(t,e.touchIdentifier,_assertThisInitialized2(e));if(null!=n){var i=n.x,o=n.y;if(Array.isArray(e.props.grid)){var r=i-e.lastX||0,a=o-e.lastY||0,s=_slicedToArray((0,xs.snapToGrid)(e.props.grid,r,a),2);r=s[0],a=s[1],i=e.lastX+r,o=e.lastY+a}var l=(0,xs.createCoreData)(_assertThisInitialized2(e),i,o);if(!1===e.props.onStop(t,l)||!1===e.mounted)return!1;var c=e.findDOMNode();c&&e.props.enableUserSelectHack&&(0,js.removeUserSelectStyles)(c.ownerDocument),(0,Is.default)("DraggableCore: handleDragStop: %j",l),e.dragging=!1,e.lastX=NaN,e.lastY=NaN,c&&((0,Is.default)("DraggableCore: Removing handlers"),(0,js.removeEvent)(c.ownerDocument,Ms.move,e.handleDrag),(0,js.removeEvent)(c.ownerDocument,Ms.stop,e.handleDragStop))}}})),Ns(_assertThisInitialized2(e),"onMouseDown",(function(t){return Ms=Ls,e.handleDragStart(t)})),Ns(_assertThisInitialized2(e),"onMouseUp",(function(t){return Ms=Ls,e.handleDragStop(t)})),Ns(_assertThisInitialized2(e),"onTouchStart",(function(t){return Ms=Ps,e.handleDragStart(t)})),Ns(_assertThisInitialized2(e),"onTouchEnd",(function(t){return Ms=Ps,e.handleDragStop(t)})),e}return _createClass(n,[{key:"componentDidMount",value:function(){this.mounted=!0;var e=this.findDOMNode();e&&(0,js.addEvent)(e,Ps.start,this.onTouchStart,{passive:!1})}},{key:"componentWillUnmount",value:function(){this.mounted=!1;var e=this.findDOMNode();if(e){var t=e.ownerDocument;(0,js.removeEvent)(t,Ls.move,this.handleDrag),(0,js.removeEvent)(t,Ps.move,this.handleDrag),(0,js.removeEvent)(t,Ls.stop,this.handleDragStop),(0,js.removeEvent)(t,Ps.stop,this.handleDragStop),(0,js.removeEvent)(e,Ps.start,this.onTouchStart,{passive:!1}),this.props.enableUserSelectHack&&(0,js.removeUserSelectStyles)(t)}}},{key:"findDOMNode",value:function(){var e,t;return null!==(e=this.props)&&void 0!==e&&e.nodeRef?null===(t=this.props)||void 0===t||null===(t=t.nodeRef)||void 0===t?void 0:t.current:Os.default.findDOMNode(this)}},{key:"render",value:function(){return Es.cloneElement(Es.Children.only(this.props.children),{onMouseDown:this.onMouseDown,onMouseUp:this.onMouseUp,onTouchEnd:this.onTouchEnd})}}]),n}(Es.Component);Ss.default=zs,Ns(zs,"displayName","DraggableCore"),Ns(zs,"propTypes",{allowAnyClick:Ts.default.bool,children:Ts.default.node.isRequired,disabled:Ts.default.bool,enableUserSelectHack:Ts.default.bool,offsetParent:function(e,t){if(e[t]&&1!==e[t].nodeType)throw new Error("Draggable\'s offsetParent must be a DOM Node.")},grid:Ts.default.arrayOf(Ts.default.number),handle:Ts.default.string,cancel:Ts.default.string,nodeRef:Ts.default.object,onStart:Ts.default.func,onDrag:Ts.default.func,onStop:Ts.default.func,onMouseDown:Ts.default.func,scale:Ts.default.number,className:Rs.dontSetMe,style:Rs.dontSetMe,transform:Rs.dontSetMe}),Ns(zs,"defaultProps",{allowAnyClick:!1,disabled:!1,enableUserSelectHack:!0,onStart:function(){},onDrag:function(){},onStop:function(){},onMouseDown:function(){},scale:1}),function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"DraggableCore",{enumerable:!0,get:function(){return l.default}}),e.default=void 0;var t=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==_typeof(e)&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var i={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var a=o?Object.getOwnPropertyDescriptor(e,r):null;a&&(a.get||a.set)?Object.defineProperty(i,r,a):i[r]=e[r]}i.default=e,n&&n.set(e,i);return i}(ai),n=u(ts),i=u(nr),o=u(os),r=rs,a=bs,s=as,l=u(Ss),c=u(Cs);function u(e){return e&&e.__esModule?e:{default:e}}function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},d.apply(this,arguments)}function f(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==_typeof(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!==_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===_typeof(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var p=function(e){_inherits(s,e);var n=_createSuper(s);function s(e){var t;return _classCallCheck(this,s),f(_assertThisInitialized2(t=n.call(this,e)),"onDragStart",(function(e,n){if((0,c.default)("Draggable: onDragStart: %j",n),!1===t.props.onStart(e,(0,a.createDraggableData)(_assertThisInitialized2(t),n)))return!1;t.setState({dragging:!0,dragged:!0})})),f(_assertThisInitialized2(t),"onDrag",(function(e,n){if(!t.state.dragging)return!1;(0,c.default)("Draggable: onDrag: %j",n);var i=(0,a.createDraggableData)(_assertThisInitialized2(t),n),o={x:i.x,y:i.y,slackX:0,slackY:0};if(t.props.bounds){var r=o.x,s=o.y;o.x+=t.state.slackX,o.y+=t.state.slackY;var l=_slicedToArray((0,a.getBoundPosition)(_assertThisInitialized2(t),o.x,o.y),2),u=l[0],h=l[1];o.x=u,o.y=h,o.slackX=t.state.slackX+(r-o.x),o.slackY=t.state.slackY+(s-o.y),i.x=o.x,i.y=o.y,i.deltaX=o.x-t.state.x,i.deltaY=o.y-t.state.y}if(!1===t.props.onDrag(e,i))return!1;t.setState(o)})),f(_assertThisInitialized2(t),"onDragStop",(function(e,n){if(!t.state.dragging)return!1;if(!1===t.props.onStop(e,(0,a.createDraggableData)(_assertThisInitialized2(t),n)))return!1;(0,c.default)("Draggable: onDragStop: %j",n);var i={dragging:!1,slackX:0,slackY:0};if(Boolean(t.props.position)){var o=t.props.position,r=o.x,s=o.y;i.x=r,i.y=s}t.setState(i)})),t.state={dragging:!1,dragged:!1,x:e.position?e.position.x:e.defaultPosition.x,y:e.position?e.position.y:e.defaultPosition.y,prevPropsPosition:_objectSpread({},e.position),slackX:0,slackY:0,isElementSVG:!1},!e.position||e.onDrag||e.onStop||console.warn("A `position` was applied to this <Draggable>, without drag handlers. This will make this component effectively undraggable. Please attach `onDrag` or `onStop` handlers so you can adjust the `position` of this element."),t}return _createClass(s,[{key:"componentDidMount",value:function(){void 0!==window.SVGElement&&this.findDOMNode()instanceof window.SVGElement&&this.setState({isElementSVG:!0})}},{key:"componentWillUnmount",value:function(){this.setState({dragging:!1})}},{key:"findDOMNode",value:function(){var e,t;return null!==(e=null===(t=this.props)||void 0===t||null===(t=t.nodeRef)||void 0===t?void 0:t.current)&&void 0!==e?e:i.default.findDOMNode(this)}},{key:"render",value:function(){var e=this.props,n=(e.axis,e.bounds,e.children),i=e.defaultPosition,s=e.defaultClassName,c=e.defaultClassNameDragging,u=e.defaultClassNameDragged,h=e.position,f=e.positionOffset,p=(e.scale,_objectWithoutProperties(e,_excluded4)),g={},m=null,v=!Boolean(h)||this.state.dragging,y=h||i,b={x:(0,a.canDragX)(this)&&v?this.state.x:y.x,y:(0,a.canDragY)(this)&&v?this.state.y:y.y};this.state.isElementSVG?m=(0,r.createSVGTransform)(b,f):g=(0,r.createCSSTransform)(b,f);var _=(0,o.default)(n.props.className||"",s,_defineProperty2(_defineProperty2({},c,this.state.dragging),u,this.state.dragged));return t.createElement(l.default,d({},p,{onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop}),t.cloneElement(t.Children.only(n),{className:_,style:_objectSpread(_objectSpread({},n.props.style),g),transform:m}))}}],[{key:"getDerivedStateFromProps",value:function(e,t){var n=e.position,i=t.prevPropsPosition;return!n||i&&n.x===i.x&&n.y===i.y?null:((0,c.default)("Draggable: getDerivedStateFromProps %j",{position:n,prevPropsPosition:i}),{x:n.x,y:n.y,prevPropsPosition:_objectSpread({},n)})}}]),s}(t.Component);e.default=p,f(p,"displayName","Draggable"),f(p,"propTypes",_objectSpread(_objectSpread({},l.default.propTypes),{},{axis:n.default.oneOf(["both","x","y","none"]),bounds:n.default.oneOfType([n.default.shape({left:n.default.number,right:n.default.number,top:n.default.number,bottom:n.default.number}),n.default.string,n.default.oneOf([!1])]),defaultClassName:n.default.string,defaultClassNameDragging:n.default.string,defaultClassNameDragged:n.default.string,defaultPosition:n.default.shape({x:n.default.number,y:n.default.number}),positionOffset:n.default.shape({x:n.default.oneOfType([n.default.number,n.default.string]),y:n.default.oneOfType([n.default.number,n.default.string])}),position:n.default.shape({x:n.default.number,y:n.default.number}),className:s.dontSetMe,style:s.dontSetMe,transform:s.dontSetMe})),f(p,"defaultProps",_objectSpread(_objectSpread({},l.default.defaultProps),{},{axis:"both",bounds:!1,defaultClassName:"react-draggable",defaultClassNameDragging:"react-draggable-dragging",defaultClassNameDragged:"react-draggable-dragged",defaultPosition:{x:0,y:0},scale:1}))}(es);var Fs=es.default,Bs=es.DraggableCore;function Us(e,t){if(null==e)return{};var n={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(-1!==t.indexOf(i))continue;n[i]=e[i]}return n}function Vs(e){var t,n,i="";if("string"==typeof e||"number"==typeof e)i+=e;else if("object"==_typeof(e))if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(n=Vs(e[t]))&&(i&&(i+=" "),i+=n)}else for(n in e)e[n]&&(i&&(i+=" "),i+=n);return i}function Ws(){for(var e,t,n=0,i="",o=arguments.length;n<o;n++)(e=arguments[n])&&(t=Vs(e))&&(i&&(i+=" "),i+=t);return i}function Gs(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,i={};return Object.keys(e).forEach((function(o){i[o]=e[o].reduce((function(e,i){if(i){var o=t(i);""!==o&&e.push(o),n&&n[i]&&e.push(n[i])}return e}),[]).join(" ")})),i}Qa.exports=Fs,$a.default=Fs,$a.DraggableCore=Bs;var Hs={},Ys={};function Xs(e){for(var t="https://mui.com/production-error/?code="+e,n=1;n<arguments.length;n+=1)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified MUI error #"+e+"; visit "+t+" for the full message."}!function(e){e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.__esModule=!0,e.exports.default=e.exports}({get exports(){return Ys},set exports(e){Ys=e}});var Ks=ti(Object.freeze({__proto__:null,default:Xs}));var qs=Object.freeze({__proto__:null,default:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MIN_SAFE_INTEGER,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.MAX_SAFE_INTEGER;return Math.max(t,Math.min(e,n))}}),Js=ti(qs),Zs=Ys;Object.defineProperty(Hs,"__esModule",{value:!0});var $s=Hs.alpha=hl;Hs.blend=function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1,o=function(e,t){return Math.round(Math.pow(Math.pow(e,1/i)*(1-n)+Math.pow(t,1/i)*n,i))},r=al(e),a=al(t),s=[o(r.values[0],a.values[0]),o(r.values[1],a.values[1]),o(r.values[2],a.values[2])];return ll({type:"rgb",values:s})},Hs.colorChannel=void 0;var Qs=Hs.darken=dl;Hs.decomposeColor=al,Hs.emphasize=pl;var el=Hs.getContrastRatio=function(e,t){var n=ul(e),i=ul(t);return(Math.max(n,i)+.05)/(Math.min(n,i)+.05)};Hs.getLuminance=ul,Hs.hexToRgb=rl,Hs.hslToRgb=cl;var tl=Hs.lighten=fl;Hs.private_safeAlpha=function(e,t,n){try{return hl(e,t)}catch(t){return e}},Hs.private_safeColorChannel=void 0,Hs.private_safeDarken=function(e,t,n){try{return dl(e,t)}catch(t){return e}},Hs.private_safeEmphasize=function(e,t,n){try{return pl(e,t)}catch(t){return e}},Hs.private_safeLighten=function(e,t,n){try{return fl(e,t)}catch(t){return e}},Hs.recomposeColor=ll,Hs.rgbToHex=function(e){if(0===e.indexOf("#"))return e;var t=al(e),n=t.values;return"#".concat(n.map((function(e,t){return function(e){var t=e.toString(16);return 1===t.length?"0".concat(t):t}(3===t?Math.round(255*e):e)})).join(""))};var nl=Zs(Ks),il=Zs(Js);function ol(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return(0,il.default)(e,t,n)}function rl(e){e=e.slice(1);var t=new RegExp(".{1,".concat(e.length>=6?2:1,"}"),"g"),n=e.match(t);return n&&1===n[0].length&&(n=n.map((function(e){return e+e}))),n?"rgb".concat(4===n.length?"a":"","(").concat(n.map((function(e,t){return t<3?parseInt(e,16):Math.round(parseInt(e,16)/255*1e3)/1e3})).join(", "),")"):""}function al(e){if(e.type)return e;if("#"===e.charAt(0))return al(rl(e));var t=e.indexOf("("),n=e.substring(0,t);if(-1===["rgb","rgba","hsl","hsla","color"].indexOf(n))throw new Error((0,nl.default)(9,e));var i,o=e.substring(t+1,e.length-1);if("color"===n){if(i=(o=o.split(" ")).shift(),4===o.length&&"/"===o[3].charAt(0)&&(o[3]=o[3].slice(1)),-1===["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].indexOf(i))throw new Error((0,nl.default)(10,i))}else o=o.split(",");return{type:n,values:o=o.map((function(e){return parseFloat(e)})),colorSpace:i}}var sl=function(e){var t=al(e);return t.values.slice(0,3).map((function(e,n){return-1!==t.type.indexOf("hsl")&&0!==n?"".concat(e,"%"):e})).join(" ")};Hs.colorChannel=sl;function ll(e){var t=e.type,n=e.colorSpace,i=e.values;return-1!==t.indexOf("rgb")?i=i.map((function(e,t){return t<3?parseInt(e,10):e})):-1!==t.indexOf("hsl")&&(i[1]="".concat(i[1],"%"),i[2]="".concat(i[2],"%")),i=-1!==t.indexOf("color")?"".concat(n," ").concat(i.join(" ")):"".concat(i.join(", ")),"".concat(t,"(").concat(i,")")}function cl(e){var t=(e=al(e)).values,n=t[0],i=t[1]/100,o=t[2]/100,r=i*Math.min(o,1-o),a=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(e+n/30)%12;return o-r*Math.max(Math.min(t-3,9-t,1),-1)},s="rgb",l=[Math.round(255*a(0)),Math.round(255*a(8)),Math.round(255*a(4))];return"hsla"===e.type&&(s+="a",l.push(t[3])),ll({type:s,values:l})}function ul(e){var t="hsl"===(e=al(e)).type||"hsla"===e.type?al(cl(e)).values:e.values;return t=t.map((function(t){return"color"!==e.type&&(t/=255),t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)})),Number((.2126*t[0]+.7152*t[1]+.0722*t[2]).toFixed(3))}function hl(e,t){return e=al(e),t=ol(t),"rgb"!==e.type&&"hsl"!==e.type||(e.type+="a"),"color"===e.type?e.values[3]="/".concat(t):e.values[3]=t,ll(e)}function dl(e,t){if(e=al(e),t=ol(t),-1!==e.type.indexOf("hsl"))e.values[2]*=1-t;else if(-1!==e.type.indexOf("rgb")||-1!==e.type.indexOf("color"))for(var n=0;n<3;n+=1)e.values[n]*=1-t;return ll(e)}function fl(e,t){if(e=al(e),t=ol(t),-1!==e.type.indexOf("hsl"))e.values[2]+=(100-e.values[2])*t;else if(-1!==e.type.indexOf("rgb"))for(var n=0;n<3;n+=1)e.values[n]+=(255-e.values[n])*t;else if(-1!==e.type.indexOf("color"))for(var i=0;i<3;i+=1)e.values[i]+=(1-e.values[i])*t;return ll(e)}function pl(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.15;return ul(e)>.5?dl(e,t):fl(e,t)}Hs.private_safeColorChannel=function(e,t){try{return sl(e)}catch(t){return e}};var gl,ml={},vl={},yl={get exports(){return vl},set exports(e){vl=e}};var bl,_l={},kl={get exports(){return _l},set exports(e){_l=e}};var wl,Sl=/^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|enterKeyHint|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,Cl=Eo((function(e){return Sl.test(e)||111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)<91})),El=function(e){return"theme"!==e},Tl=function(e){return"string"==typeof e&&e.charCodeAt(0)>96?Cl:El},Ol=function(e,t,n){var i;if(t){var o=t.shouldForwardProp;i=e.__emotion_forwardProp&&o?function(t){return e.__emotion_forwardProp(t)&&o(t)}:o}return"function"!=typeof i&&n&&(i=e.__emotion_forwardProp),i},jl=function(e){var t=e.cache,n=e.serialized,i=e.isStringTag;return wo(t,n,i),Mo((function(){return So(t,n,i)})),null},xl=function e(t,n){var i,o,r=t.__emotion_real===t,a=r&&t.__emotion_base||t;void 0!==n&&(i=n.label,o=n.target);var s=Ol(t,n,r),l=s||Tl(a),c=!l("as");return function(){var u=arguments,h=r&&void 0!==t.__emotion_styles?t.__emotion_styles.slice(0):[];if(void 0!==i&&h.push("label:"+i+";"),null==u[0]||void 0===u[0].raw)h.push.apply(h,u);else{h.push(u[0][0]);for(var d=u.length,f=1;f<d;f++)h.push(u[f],u[0][f])}var p=Vo((function(e,t,n){var i=c&&e.as||a,r="",u=[],d=e;if(null==e.theme){for(var f in d={},e)d[f]=e[f];d.theme=ai.useContext(Wo)}"string"==typeof e.className?r=ko(t.registered,u,e.className):null!=e.className&&(r=e.className+" ");var p=Po(h.concat(u),t.registered,d);r+=t.key+"-"+p.name,void 0!==o&&(r+=" "+o);var g=c&&void 0===s?Tl(i):l,m={};for(var v in e)c&&"as"===v||g(v)&&(m[v]=e[v]);return m.className=r,m.ref=n,ai.createElement(ai.Fragment,null,ai.createElement(jl,{cache:t,serialized:p,isStringTag:"string"==typeof i}),ai.createElement(i,m))}));return p.displayName=void 0!==i?i:"Styled("+("string"==typeof a?a:a.displayName||a.name||"Component")+")",p.defaultProps=t.defaultProps,p.__emotion_real=p,p.__emotion_base=a,p.__emotion_styles=h,p.__emotion_forwardProp=s,Object.defineProperty(p,"toString",{value:function(){return"."+o}}),p.withComponent=function(t,i){return e(t,go({},n,i,{shouldForwardProp:Ol(p,i,!0)})).apply(void 0,h)},p}}.bind();["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"].forEach((function(e){xl[e]=xl(e)})),"object"===("undefined"==typeof document?"undefined":_typeof(document))&&(wl=po({key:"css",prepend:!0}));var Rl=Object.freeze({__proto__:null,default:function(e,t){return xl(e,t)},internal_processStyles:function(e,t){Array.isArray(e.__emotion_styles)&&(e.__emotion_styles=t(e.__emotion_styles))},ThemeContext:Wo,keyframes:_a,css:ba,StyledEngineProvider:function(e){var t=e.injectFirst,n=e.children;return t&&wl?ii.jsx(Uo,{value:wl,children:n}):n},GlobalStyles:function(e){var t=e.styles,n=e.defaultTheme,i=void 0===n?{}:n,o="function"==typeof t?function(e){return t(null==(n=e)||0===Object.keys(n).length?i:e);var n}:t;return ii.jsx(ya,{styles:o})}}),Il=ti(Rl);function Al(e){if("object"!==_typeof(e)||null===e)return!1;var t=Object.getPrototypeOf(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)}function Dl(e){if(!Al(e))return e;var t={};return Object.keys(e).forEach((function(n){t[n]=Dl(e[n])})),t}function Nl(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{clone:!0},i=n.clone?go({},e):e;return Al(e)&&Al(t)&&Object.keys(t).forEach((function(o){Al(t[o])&&Object.prototype.hasOwnProperty.call(e,o)&&Al(e[o])?i[o]=Nl(e[o],t[o],n):n.clone?i[o]=Al(t[o])?Dl(t[o]):t[o]:i[o]=t[o]})),i}var Pl=ti(Object.freeze({__proto__:null,default:Nl,isPlainObject:Al}));function Ll(e){if("string"!=typeof e)throw new Error(Xs(7));return e.charAt(0).toUpperCase()+e.slice(1)}var Ml,zl=ti(Object.freeze({__proto__:null,default:Ll})),Fl={},Bl={};!function(e){e.exports=function(){if(Ml)return Bl;Ml=1;var e,t=Symbol.for("react.element"),n=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),a=Symbol.for("react.provider"),s=Symbol.for("react.context"),l=Symbol.for("react.server_context"),c=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),h=Symbol.for("react.suspense_list"),d=Symbol.for("react.memo"),f=Symbol.for("react.lazy"),p=Symbol.for("react.offscreen");function g(e){if("object"===_typeof(e)&&null!==e){var p=e.$$typeof;switch(p){case t:switch(e=e.type){case i:case r:case o:case u:case h:return e;default:switch(e=e&&e.$$typeof){case l:case s:case c:case f:case d:case a:return e;default:return p}}case n:return p}}}return e=Symbol.for("react.module.reference"),Bl.ContextConsumer=s,Bl.ContextProvider=a,Bl.Element=t,Bl.ForwardRef=c,Bl.Fragment=i,Bl.Lazy=f,Bl.Memo=d,Bl.Portal=n,Bl.Profiler=r,Bl.StrictMode=o,Bl.Suspense=u,Bl.SuspenseList=h,Bl.isAsyncMode=function(){return!1},Bl.isConcurrentMode=function(){return!1},Bl.isContextConsumer=function(e){return g(e)===s},Bl.isContextProvider=function(e){return g(e)===a},Bl.isElement=function(e){return"object"===_typeof(e)&&null!==e&&e.$$typeof===t},Bl.isForwardRef=function(e){return g(e)===c},Bl.isFragment=function(e){return g(e)===i},Bl.isLazy=function(e){return g(e)===f},Bl.isMemo=function(e){return g(e)===d},Bl.isPortal=function(e){return g(e)===n},Bl.isProfiler=function(e){return g(e)===r},Bl.isStrictMode=function(e){return g(e)===o},Bl.isSuspense=function(e){return g(e)===u},Bl.isSuspenseList=function(e){return g(e)===h},Bl.isValidElementType=function(t){return"string"==typeof t||"function"==typeof t||t===i||t===r||t===o||t===u||t===h||t===p||"object"===_typeof(t)&&null!==t&&(t.$$typeof===f||t.$$typeof===d||t.$$typeof===a||t.$$typeof===s||t.$$typeof===c||t.$$typeof===e||void 0!==t.getModuleId)},Bl.typeOf=g,Bl}()}({get exports(){return Fl},set exports(e){Fl=e}});var Ul=/^\\s*function(?:\\s|\\s*\\/\\*.*\\*\\/\\s*)+([^(\\s/]*)\\s*/;function Vl(e){var t="".concat(e).match(Ul);return t&&t[1]||""}function Wl(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return e.displayName||e.name||Vl(e)||t}function Gl(e,t,n){var i=Wl(t);return e.displayName||(""!==i?"".concat(n,"(").concat(i,")"):n)}var Hl=ti(Object.freeze({__proto__:null,default:function(e){if(null!=e){if("string"==typeof e)return e;if("function"==typeof e)return Wl(e,"Component");if("object"===_typeof(e))switch(e.$$typeof){case Fl.ForwardRef:return Gl(e,e.render,"ForwardRef");case Fl.Memo:return Gl(e,e.type,"memo");default:return}}},getFunctionName:Vl})),Yl=["values","unit","step"],Xl=function(e){var t=Object.keys(e).map((function(t){return{key:t,val:e[t]}}))||[];return t.sort((function(e,t){return e.val-t.val})),t.reduce((function(e,t){return go({},e,_defineProperty2({},t.key,t.val))}),{})};function Kl(e){var t=e.values,n=void 0===t?{xs:0,sm:600,md:900,lg:1200,xl:1536}:t,i=e.unit,o=void 0===i?"px":i,r=e.step,a=void 0===r?5:r,s=Us(e,Yl),l=Xl(n),c=Object.keys(l);function u(e){var t="number"==typeof n[e]?n[e]:e;return"@media (min-width:".concat(t).concat(o,")")}function h(e){var t="number"==typeof n[e]?n[e]:e;return"@media (max-width:".concat(t-a/100).concat(o,")")}function d(e,t){var i=c.indexOf(t);return"@media (min-width:".concat("number"==typeof n[e]?n[e]:e).concat(o,") and ")+"(max-width:".concat((-1!==i&&"number"==typeof n[c[i]]?n[c[i]]:t)-a/100).concat(o,")")}return go({keys:c,values:l,up:u,down:h,between:d,only:function(e){return c.indexOf(e)+1<c.length?d(e,c[c.indexOf(e)+1]):u(e)},not:function(e){var t=c.indexOf(e);return 0===t?u(c[1]):t===c.length-1?h(c[t]):d(e,c[c.indexOf(e)+1]).replace("@media","@media not all and")},unit:o},s)}var ql={borderRadius:4};function Jl(e,t){return t?Nl(e,t,{clone:!1}):e}var Zl={xs:0,sm:600,md:900,lg:1200,xl:1536},$l={keys:["xs","sm","md","lg","xl"],up:function(e){return"@media (min-width:".concat(Zl[e],"px)")}};function Ql(e,t,n){var i=e.theme||{};if(Array.isArray(t)){var o=i.breakpoints||$l;return t.reduce((function(e,i,r){return e[o.up(o.keys[r])]=n(t[r]),e}),{})}if("object"===_typeof(t)){var r=i.breakpoints||$l;return Object.keys(t).reduce((function(e,i){if(-1!==Object.keys(r.values||Zl).indexOf(i)){e[r.up(i)]=n(t[i],i)}else{var o=i;e[o]=t[o]}return e}),{})}return n(t)}function ec(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(!t||"string"!=typeof t)return null;if(e&&e.vars&&n){var i="vars.".concat(t).split(".").reduce((function(e,t){return e&&e[t]?e[t]:null}),e);if(null!=i)return i}return t.split(".").reduce((function(e,t){return e&&null!=e[t]?e[t]:null}),e)}function tc(e,t,n){var i,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:n;return i="function"==typeof e?e(n):Array.isArray(e)?e[n]||o:ec(e,n)||o,t&&(i=t(i,o,e)),i}function nc(e){var t=e.prop,n=e.cssProperty,i=void 0===n?e.prop:n,o=e.themeKey,r=e.transform,a=function(e){if(null==e[t])return null;var n=e[t],a=ec(e.theme,o)||{};return Ql(e,n,(function(e){var n=tc(a,r,e);return e===n&&"string"==typeof e&&(n=tc(a,r,"".concat(t).concat("default"===e?"":Ll(e)),e)),!1===i?n:_defineProperty2({},i,n)}))};return a.propTypes={},a.filterProps=[t],a}var ic={m:"margin",p:"padding"},oc={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},rc={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},ac=function(e){var t={};return function(n){return void 0===t[n]&&(t[n]=e(n)),t[n]}}((function(e){if(e.length>2){if(!rc[e])return[e];e=rc[e]}var t=_slicedToArray(e.split(""),2),n=t[0],i=t[1],o=ic[n],r=oc[i]||"";return Array.isArray(r)?r.map((function(e){return o+e})):[o+r]})),sc=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],lc=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"];function cc(e,t,n,i){var o,r=null!=(o=ec(e,t,!1))?o:n;return"number"==typeof r?function(e){return"string"==typeof e?e:r*e}:Array.isArray(r)?function(e){return"string"==typeof e?e:r[e]}:"function"==typeof r?r:function(){}}function uc(e){return cc(e,"spacing",8)}function hc(e,t){if("string"==typeof t||null==t)return t;var n=e(Math.abs(t));return t>=0?n:"number"==typeof n?-n:"-".concat(n)}function dc(e,t,n,i){if(-1===t.indexOf(n))return null;var o=function(e,t){return function(n){return e.reduce((function(e,i){return e[i]=hc(t,n),e}),{})}}(ac(n),i);return Ql(e,e[n],o)}function fc(e,t){var n=uc(e.theme);return Object.keys(e).map((function(i){return dc(e,t,i,n)})).reduce(Jl,{})}function pc(e){return fc(e,sc)}function gc(e){return fc(e,lc)}function mc(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var i=t.reduce((function(e,t){return t.filterProps.forEach((function(n){e[n]=t})),e}),{}),o=function(e){return Object.keys(e).reduce((function(t,n){return i[n]?Jl(t,i[n](e)):t}),{})};return o.propTypes={},o.filterProps=t.reduce((function(e,t){return e.concat(t.filterProps)}),[]),o}function vc(e){return"number"!=typeof e?e:"".concat(e,"px solid")}function yc(e,t){return nc({prop:e,themeKey:"borders",transform:t})}[].concat(sc,lc),pc.propTypes={},pc.filterProps=sc,gc.propTypes={},gc.filterProps=lc;var bc=yc("border",vc),_c=yc("borderTop",vc),kc=yc("borderRight",vc),wc=yc("borderBottom",vc),Sc=yc("borderLeft",vc),Cc=yc("borderColor"),Ec=yc("borderTopColor"),Tc=yc("borderRightColor"),Oc=yc("borderBottomColor"),jc=yc("borderLeftColor"),xc=yc("outline",vc),Rc=yc("outlineColor"),Ic=function(e){if(void 0!==e.borderRadius&&null!==e.borderRadius){var t=cc(e.theme,"shape.borderRadius",4);return Ql(e,e.borderRadius,(function(e){return{borderRadius:hc(t,e)}}))}return null};Ic.propTypes={},Ic.filterProps=["borderRadius"],mc(bc,_c,kc,wc,Sc,Cc,Ec,Tc,Oc,jc,Ic,xc,Rc);var Ac=function(e){if(void 0!==e.gap&&null!==e.gap){var t=cc(e.theme,"spacing",8);return Ql(e,e.gap,(function(e){return{gap:hc(t,e)}}))}return null};Ac.propTypes={},Ac.filterProps=["gap"];var Dc=function(e){if(void 0!==e.columnGap&&null!==e.columnGap){var t=cc(e.theme,"spacing",8);return Ql(e,e.columnGap,(function(e){return{columnGap:hc(t,e)}}))}return null};Dc.propTypes={},Dc.filterProps=["columnGap"];var Nc=function(e){if(void 0!==e.rowGap&&null!==e.rowGap){var t=cc(e.theme,"spacing",8);return Ql(e,e.rowGap,(function(e){return{rowGap:hc(t,e)}}))}return null};function Pc(e,t){return"grey"===t?t:e}function Lc(e){return e<=1&&0!==e?"".concat(100*e,"%"):e}Nc.propTypes={},Nc.filterProps=["rowGap"],mc(Ac,Dc,Nc,nc({prop:"gridColumn"}),nc({prop:"gridRow"}),nc({prop:"gridAutoFlow"}),nc({prop:"gridAutoColumns"}),nc({prop:"gridAutoRows"}),nc({prop:"gridTemplateColumns"}),nc({prop:"gridTemplateRows"}),nc({prop:"gridTemplateAreas"}),nc({prop:"gridArea"})),mc(nc({prop:"color",themeKey:"palette",transform:Pc}),nc({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:Pc}),nc({prop:"backgroundColor",themeKey:"palette",transform:Pc}));var Mc=nc({prop:"width",transform:Lc}),zc=function(e){if(void 0!==e.maxWidth&&null!==e.maxWidth){return Ql(e,e.maxWidth,(function(t){var n,i,o=(null==(n=e.theme)||null==(n=n.breakpoints)||null==(n=n.values)?void 0:n[t])||Zl[t];return o?"px"!==(null==(i=e.theme)||null==(i=i.breakpoints)?void 0:i.unit)?{maxWidth:"".concat(o).concat(e.theme.breakpoints.unit)}:{maxWidth:o}:{maxWidth:Lc(t)}}))}return null};zc.filterProps=["maxWidth"];var Fc=nc({prop:"minWidth",transform:Lc}),Bc=nc({prop:"height",transform:Lc}),Uc=nc({prop:"maxHeight",transform:Lc}),Vc=nc({prop:"minHeight",transform:Lc});nc({prop:"size",cssProperty:"width",transform:Lc}),nc({prop:"size",cssProperty:"height",transform:Lc}),mc(Mc,zc,Fc,Bc,Uc,Vc,nc({prop:"boxSizing"}));var Wc={border:{themeKey:"borders",transform:vc},borderTop:{themeKey:"borders",transform:vc},borderRight:{themeKey:"borders",transform:vc},borderBottom:{themeKey:"borders",transform:vc},borderLeft:{themeKey:"borders",transform:vc},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:vc},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:Ic},color:{themeKey:"palette",transform:Pc},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:Pc},backgroundColor:{themeKey:"palette",transform:Pc},p:{style:gc},pt:{style:gc},pr:{style:gc},pb:{style:gc},pl:{style:gc},px:{style:gc},py:{style:gc},padding:{style:gc},paddingTop:{style:gc},paddingRight:{style:gc},paddingBottom:{style:gc},paddingLeft:{style:gc},paddingX:{style:gc},paddingY:{style:gc},paddingInline:{style:gc},paddingInlineStart:{style:gc},paddingInlineEnd:{style:gc},paddingBlock:{style:gc},paddingBlockStart:{style:gc},paddingBlockEnd:{style:gc},m:{style:pc},mt:{style:pc},mr:{style:pc},mb:{style:pc},ml:{style:pc},mx:{style:pc},my:{style:pc},margin:{style:pc},marginTop:{style:pc},marginRight:{style:pc},marginBottom:{style:pc},marginLeft:{style:pc},marginX:{style:pc},marginY:{style:pc},marginInline:{style:pc},marginInlineStart:{style:pc},marginInlineEnd:{style:pc},marginBlock:{style:pc},marginBlockStart:{style:pc},marginBlockEnd:{style:pc},displayPrint:{cssProperty:!1,transform:function(e){return{"@media print":{display:e}}}},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:Ac},rowGap:{style:Nc},columnGap:{style:Dc},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:Lc},maxWidth:{style:zc},minWidth:{transform:Lc},height:{transform:Lc},maxHeight:{transform:Lc},minHeight:{transform:Lc},boxSizing:{},fontFamily:{themeKey:"typography"},fontSize:{themeKey:"typography"},fontStyle:{themeKey:"typography"},fontWeight:{themeKey:"typography"},letterSpacing:{},textTransform:{},lineHeight:{},textAlign:{},typography:{cssProperty:!1,themeKey:"typography"}};function Gc(){function e(e,t,n,i){var o=_defineProperty2(_defineProperty2({},e,t),"theme",n),r=i[e];if(!r)return _defineProperty2({},e,t);var a=r.cssProperty,s=void 0===a?e:a,l=r.themeKey,c=r.transform,u=r.style;if(null==t)return null;if("typography"===l&&"inherit"===t)return _defineProperty2({},e,t);var h=ec(n,l)||{};if(u)return u(o);return Ql(o,t,(function(t){var n=tc(h,c,t);return t===n&&"string"==typeof t&&(n=tc(h,c,"".concat(e).concat("default"===t?"":Ll(t)),t)),!1===s?n:_defineProperty2({},s,n)}))}return function t(n){var i,o=n||{},r=o.sx,a=o.theme,s=void 0===a?{}:a;if(!r)return null;var l=null!=(i=s.unstable_sxConfig)?i:Wc;function c(n){var i=n;if("function"==typeof n)i=n(s);else if("object"!==_typeof(n))return n;if(!i)return null;var o=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(null==(e=t.keys)?void 0:e.reduce((function(e,n){return e[t.up(n)]={},e}),{}))||{}}(s.breakpoints),r=Object.keys(o),a=o;return Object.keys(i).forEach((function(n){var o,r,c=(o=i[n],r=s,"function"==typeof o?o(r):o);if(null!=c)if("object"===_typeof(c))if(l[n])a=Jl(a,e(n,c,s,l));else{var u=Ql({theme:s},c,(function(e){return _defineProperty2({},n,e)}));!function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var i=t.reduce((function(e,t){return e.concat(Object.keys(t))}),[]),o=new Set(i);return t.every((function(e){return o.size===Object.keys(e).length}))}(u,c)?a=Jl(a,u):a[n]=t({sx:c,theme:s})}else a=Jl(a,e(n,c,s,l))})),function(e,t){return e.reduce((function(e,t){var n=e[t];return(!n||0===Object.keys(n).length)&&delete e[t],e}),t)}(r,a)}return Array.isArray(r)?r.map(c):c(r)}}var Hc=Gc();Hc.filterProps=["sx"];var Yc=Hc;function Xc(e,t){var n=this;return n.vars&&"function"==typeof n.getColorSchemeSelector?_defineProperty2({},n.getColorSchemeSelector(e).replace(/(\\[[^\\]]+\\])/,"*:where($1)"),t):n.palette.mode===e?t:{}}var Kc=["breakpoints","palette","spacing","shape"];function qc(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.breakpoints,n=void 0===t?{}:t,i=e.palette,o=void 0===i?{}:i,r=e.spacing,a=e.shape,s=void 0===a?{}:a,l=Us(e,Kc),c=Kl(n),u=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:8;if(e.mui)return e;var t=uc({spacing:e}),n=function(){for(var e=arguments.length,n=new Array(e),i=0;i<e;i++)n[i]=arguments[i];return(0===n.length?[1]:n).map((function(e){var n=t(e);return"number"==typeof n?"".concat(n,"px"):n})).join(" ")};return n.mui=!0,n}(r),h=Nl({breakpoints:c,direction:"ltr",components:{},palette:go({mode:"light"},o),spacing:u,shape:go({},ql,s)},l);h.applyStyles=Xc;for(var d=arguments.length,f=new Array(d>1?d-1:0),p=1;p<d;p++)f[p-1]=arguments[p];return(h=f.reduce((function(e,t){return Nl(e,t)}),h)).unstable_sxConfig=go({},Wc,null==l?void 0:l.unstable_sxConfig),h.unstable_sx=function(e){return Yc({sx:e,theme:this})},h}var Jc=ti(Object.freeze({__proto__:null,default:qc,private_createBreakpoints:Kl,unstable_applyStyles:Xc})),Zc=["sx"];var $c=Object.freeze({__proto__:null,default:Yc,unstable_createStyleFunctionSx:Gc,extendSxProp:function(e){var t,n=e.sx,i=function(e){var t,n,i={systemProps:{},otherProps:{}},o=null!=(t=null==e||null==(n=e.theme)?void 0:n.unstable_sxConfig)?t:Wc;return Object.keys(e).forEach((function(t){o[t]?i.systemProps[t]=e[t]:i.otherProps[t]=e[t]})),i}(Us(e,Zc)),o=i.systemProps,r=i.otherProps;return t=Array.isArray(n)?[o].concat(_toConsumableArray(n)):"function"==typeof n?function(){var e=n.apply(void 0,arguments);return Al(e)?go({},o,e):o}:go({},o,n),go({},r,{sx:t})},unstable_defaultSxConfig:Wc}),Qc=ti($c),eu=Ys;Object.defineProperty(ml,"__esModule",{value:!0});var tu=ml.default=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.themeId,n=e.defaultTheme,i=void 0===n?fu:n,o=e.rootShouldForwardProp,r=void 0===o?du:o,a=e.slotShouldForwardProp,s=void 0===a?du:a,l=function(e){return(0,su.default)((0,nu.default)({},e,{theme:gu((0,nu.default)({},e,{defaultTheme:i,themeId:t}))}))};return l.__mui_systemSx=!0,function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(0,ou.internal_processStyles)(e,(function(e){return e.filter((function(e){return!(null!=e&&e.__mui_systemSx)}))}));var o=n.name,a=n.slot,c=n.skipVariantsResolver,u=n.skipSx,h=n.overridesResolver,d=void 0===h?function(e){if(!e)return null;return function(t,n){return n[e]}}(pu(a)):h,f=(0,iu.default)(n,uu),p=void 0!==c?c:a&&"Root"!==a&&"root"!==a||!1,g=u||!1,m=du;"Root"===a||"root"===a?m=r:a?m=s:function(e){return"string"==typeof e&&e.charCodeAt(0)>96}(e)&&(m=void 0);var v=(0,ou.default)(e,(0,nu.default)({shouldForwardProp:m,label:undefined},f)),y=function(e){return"function"==typeof e&&e.__emotion_real!==e||(0,ru.isPlainObject)(e)?function(n){return mu(e,(0,nu.default)({},n,{theme:gu({theme:n.theme,defaultTheme:i,themeId:t})}))}:e},b=function(n){for(var r=y(n),a=arguments.length,s=new Array(a>1?a-1:0),c=1;c<a;c++)s[c-1]=arguments[c];var u=s?s.map(y):[];o&&d&&u.push((function(e){var n=gu((0,nu.default)({},e,{defaultTheme:i,themeId:t}));if(!n.components||!n.components[o]||!n.components[o].styleOverrides)return null;var r=n.components[o].styleOverrides,a={};return Object.entries(r).forEach((function(t){var i=_slicedToArray(t,2),o=i[0],r=i[1];a[o]=mu(r,(0,nu.default)({},e,{theme:n}))})),d(e,a)})),o&&!p&&u.push((function(e){var n,r=gu((0,nu.default)({},e,{defaultTheme:i,themeId:t}));return mu({variants:null==r||null==(n=r.components)||null==(n=n[o])?void 0:n.variants},(0,nu.default)({},e,{theme:r}))})),g||u.push(l);var h=u.length-s.length;if(Array.isArray(n)&&h>0){var f=new Array(h).fill("");(r=[].concat(_toConsumableArray(n),_toConsumableArray(f))).raw=[].concat(_toConsumableArray(n.raw),_toConsumableArray(f))}var m=v.apply(void 0,[r].concat(_toConsumableArray(u)));return e.muiName&&(m.muiName=e.muiName),m};return v.withConfig&&(b.withConfig=v.withConfig),b}};ml.shouldForwardProp=du,ml.systemDefaultTheme=void 0;var nu=eu((gl||(gl=1,function(e){function t(){return e.exports=t=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)({}).hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},e.exports.__esModule=!0,e.exports.default=e.exports,t.apply(null,arguments)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports}(yl)),vl)),iu=eu((bl||(bl=1,function(e){e.exports=function(e,t){if(null==e)return{};var n={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(-1!==t.indexOf(i))continue;n[i]=e[i]}return n},e.exports.__esModule=!0,e.exports.default=e.exports}(kl)),_l)),ou=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=_typeof(e)&&"function"!=typeof e)return{default:e};var n=hu(t);if(n&&n.has(e))return n.get(e);var i={__proto__:null},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var a=o?Object.getOwnPropertyDescriptor(e,r):null;a&&(a.get||a.set)?Object.defineProperty(i,r,a):i[r]=e[r]}return i.default=e,n&&n.set(e,i),i}(Il),ru=Pl;eu(zl),eu(Hl);var au=eu(Jc),su=eu(Qc),lu=["ownerState"],cu=["variants"],uu=["name","slot","skipVariantsResolver","skipSx","overridesResolver"];function hu(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(hu=function(e){return e?n:t})(e)}function du(e){return"ownerState"!==e&&"theme"!==e&&"sx"!==e&&"as"!==e}var fu=ml.systemDefaultTheme=(0,au.default)(),pu=function(e){return e?e.charAt(0).toLowerCase()+e.slice(1):e};function gu(e){var t,n=e.defaultTheme,i=e.theme,o=e.themeId;return t=i,0===Object.keys(t).length?n:i[o]||i}function mu(e,t){var n=t.ownerState,i=(0,iu.default)(t,lu),o="function"==typeof e?e((0,nu.default)({ownerState:n},i)):e;if(Array.isArray(o))return o.flatMap((function(e){return mu(e,(0,nu.default)({ownerState:n},i))}));if(o&&"object"===_typeof(o)&&Array.isArray(o.variants)){var r=o.variants,a=void 0===r?[]:r,s=(0,iu.default)(o,cu);return a.forEach((function(e){var t=!0;"function"==typeof e.props?t=e.props((0,nu.default)({ownerState:n},i,n)):Object.keys(e.props).forEach((function(o){(null==n?void 0:n[o])!==e.props[o]&&i[o]!==e.props[o]&&(t=!1)})),t&&(Array.isArray(s)||(s=[s]),s.push("function"==typeof e.style?e.style((0,nu.default)({ownerState:n},i,n)):e.style))})),s}return o}var vu,yu=function(e){return e},bu=(vu=yu,{configure:function(e){vu=e},generate:function(e){return vu(e)},reset:function(){vu=yu}}),_u={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};function ku(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Mui",i=_u[t];return i?"".concat(n,"-").concat(i):"".concat(bu.generate(e),"-").concat(t)}var wu={black:"#000",white:"#fff"},Su={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#f5f5f5",A200:"#eeeeee",A400:"#bdbdbd",A700:"#616161"},Cu={50:"#f3e5f5",100:"#e1bee7",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",600:"#8e24aa",700:"#7b1fa2",800:"#6a1b9a",900:"#4a148c",A100:"#ea80fc",A200:"#e040fb",A400:"#d500f9",A700:"#aa00ff"},Eu={50:"#ffebee",100:"#ffcdd2",200:"#ef9a9a",300:"#e57373",400:"#ef5350",500:"#f44336",600:"#e53935",700:"#d32f2f",800:"#c62828",900:"#b71c1c",A100:"#ff8a80",A200:"#ff5252",A400:"#ff1744",A700:"#d50000"},Tu={50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",A100:"#ffd180",A200:"#ffab40",A400:"#ff9100",A700:"#ff6d00"},Ou={50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",A100:"#82b1ff",A200:"#448aff",A400:"#2979ff",A700:"#2962ff"},ju={50:"#e1f5fe",100:"#b3e5fc",200:"#81d4fa",300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",600:"#039be5",700:"#0288d1",800:"#0277bd",900:"#01579b",A100:"#80d8ff",A200:"#40c4ff",A400:"#00b0ff",A700:"#0091ea"},xu={50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",A100:"#b9f6ca",A200:"#69f0ae",A400:"#00e676",A700:"#00c853"},Ru=["mode","contrastThreshold","tonalOffset"],Iu={text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.38)"},divider:"rgba(0, 0, 0, 0.12)",background:{paper:wu.white,default:wu.white},action:{active:"rgba(0, 0, 0, 0.54)",hover:"rgba(0, 0, 0, 0.04)",hoverOpacity:.04,selected:"rgba(0, 0, 0, 0.08)",selectedOpacity:.08,disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(0, 0, 0, 0.12)",disabledOpacity:.38,focus:"rgba(0, 0, 0, 0.12)",focusOpacity:.12,activatedOpacity:.12}},Au={text:{primary:wu.white,secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",icon:"rgba(255, 255, 255, 0.5)"},divider:"rgba(255, 255, 255, 0.12)",background:{paper:"#121212",default:"#121212"},action:{active:wu.white,hover:"rgba(255, 255, 255, 0.08)",hoverOpacity:.08,selected:"rgba(255, 255, 255, 0.16)",selectedOpacity:.16,disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)",disabledOpacity:.38,focus:"rgba(255, 255, 255, 0.12)",focusOpacity:.12,activatedOpacity:.24}};function Du(e,t,n,i){var o=i.light||i,r=i.dark||1.5*i;e[t]||(e.hasOwnProperty(n)?e[t]=e[n]:"light"===t?e.light=tl(e.main,o):"dark"===t&&(e.dark=Qs(e.main,r)))}function Nu(e){var t=e.mode,n=void 0===t?"light":t,i=e.contrastThreshold,o=void 0===i?3:i,r=e.tonalOffset,a=void 0===r?.2:r,s=Us(e,Ru),l=e.primary||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:Ou[200],light:Ou[50],dark:Ou[400]}:{main:Ou[700],light:Ou[400],dark:Ou[800]}}(n),c=e.secondary||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:Cu[200],light:Cu[50],dark:Cu[400]}:{main:Cu[500],light:Cu[300],dark:Cu[700]}}(n),u=e.error||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:Eu[500],light:Eu[300],dark:Eu[700]}:{main:Eu[700],light:Eu[400],dark:Eu[800]}}(n),h=e.info||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:ju[400],light:ju[300],dark:ju[700]}:{main:ju[700],light:ju[500],dark:ju[900]}}(n),d=e.success||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:xu[400],light:xu[300],dark:xu[700]}:{main:xu[800],light:xu[500],dark:xu[900]}}(n),f=e.warning||function(){return"dark"===(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"light")?{main:Tu[400],light:Tu[300],dark:Tu[700]}:{main:"#ed6c02",light:Tu[500],dark:Tu[900]}}(n);function p(e){return el(e,Au.text.primary)>=o?Au.text.primary:Iu.text.primary}var g=function(e){var t=e.color,n=e.name,i=e.mainShade,o=void 0===i?500:i,r=e.lightShade,s=void 0===r?300:r,l=e.darkShade,c=void 0===l?700:l;if(!(t=go({},t)).main&&t[o]&&(t.main=t[o]),!t.hasOwnProperty("main"))throw new Error(Xs(11,n?" (".concat(n,")"):"",o));if("string"!=typeof t.main)throw new Error(Xs(12,n?" (".concat(n,")"):"",JSON.stringify(t.main)));return Du(t,"light",s,a),Du(t,"dark",c,a),t.contrastText||(t.contrastText=p(t.main)),t},m={dark:Au,light:Iu};return Nl(go({common:go({},wu),mode:n,primary:g({color:l,name:"primary"}),secondary:g({color:c,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:g({color:u,name:"error"}),warning:g({color:f,name:"warning"}),info:g({color:h,name:"info"}),success:g({color:d,name:"success"}),grey:Su,contrastThreshold:o,getContrastText:p,augmentColor:g,tonalOffset:a},m[n]),s)}var Pu=["fontFamily","fontSize","fontWeightLight","fontWeightRegular","fontWeightMedium","fontWeightBold","htmlFontSize","allVariants","pxToRem"];var Lu={textTransform:"uppercase"},Mu=\'"Roboto", "Helvetica", "Arial", sans-serif\';function zu(e,t){var n="function"==typeof t?t(e):t,i=n.fontFamily,o=void 0===i?Mu:i,r=n.fontSize,a=void 0===r?14:r,s=n.fontWeightLight,l=void 0===s?300:s,c=n.fontWeightRegular,u=void 0===c?400:c,h=n.fontWeightMedium,d=void 0===h?500:h,f=n.fontWeightBold,p=void 0===f?700:f,g=n.htmlFontSize,m=void 0===g?16:g,v=n.allVariants,y=n.pxToRem,b=Us(n,Pu),_=a/14,k=y||function(e){return"".concat(e/m*_,"rem")},w=function(e,t,n,i,r){return go({fontFamily:o,fontWeight:e,fontSize:k(t),lineHeight:n},o===Mu?{letterSpacing:"".concat((a=i/t,Math.round(1e5*a)/1e5),"em")}:{},r,v);var a},S={h1:w(l,96,1.167,-1.5),h2:w(l,60,1.2,-.5),h3:w(u,48,1.167,0),h4:w(u,34,1.235,.25),h5:w(u,24,1.334,0),h6:w(d,20,1.6,.15),subtitle1:w(u,16,1.75,.15),subtitle2:w(d,14,1.57,.1),body1:w(u,16,1.5,.15),body2:w(u,14,1.43,.15),button:w(d,14,1.75,.4,Lu),caption:w(u,12,1.66,.4),overline:w(u,12,2.66,1,Lu),inherit:{fontFamily:"inherit",fontWeight:"inherit",fontSize:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}};return Nl(go({htmlFontSize:m,pxToRem:k,fontFamily:o,fontSize:a,fontWeightLight:l,fontWeightRegular:u,fontWeightMedium:d,fontWeightBold:p},S),b,{clone:!1})}function Fu(){return["".concat(arguments.length<=0?void 0:arguments[0],"px ").concat(arguments.length<=1?void 0:arguments[1],"px ").concat(arguments.length<=2?void 0:arguments[2],"px ").concat(arguments.length<=3?void 0:arguments[3],"px rgba(0,0,0,").concat(.2,")"),"".concat(arguments.length<=4?void 0:arguments[4],"px ").concat(arguments.length<=5?void 0:arguments[5],"px ").concat(arguments.length<=6?void 0:arguments[6],"px ").concat(arguments.length<=7?void 0:arguments[7],"px rgba(0,0,0,").concat(.14,")"),"".concat(arguments.length<=8?void 0:arguments[8],"px ").concat(arguments.length<=9?void 0:arguments[9],"px ").concat(arguments.length<=10?void 0:arguments[10],"px ").concat(arguments.length<=11?void 0:arguments[11],"px rgba(0,0,0,").concat(.12,")")].join(",")}var Bu=["none",Fu(0,2,1,-1,0,1,1,0,0,1,3,0),Fu(0,3,1,-2,0,2,2,0,0,1,5,0),Fu(0,3,3,-2,0,3,4,0,0,1,8,0),Fu(0,2,4,-1,0,4,5,0,0,1,10,0),Fu(0,3,5,-1,0,5,8,0,0,1,14,0),Fu(0,3,5,-1,0,6,10,0,0,1,18,0),Fu(0,4,5,-2,0,7,10,1,0,2,16,1),Fu(0,5,5,-3,0,8,10,1,0,3,14,2),Fu(0,5,6,-3,0,9,12,1,0,3,16,2),Fu(0,6,6,-3,0,10,14,1,0,4,18,3),Fu(0,6,7,-4,0,11,15,1,0,4,20,3),Fu(0,7,8,-4,0,12,17,2,0,5,22,4),Fu(0,7,8,-4,0,13,19,2,0,5,24,4),Fu(0,7,9,-4,0,14,21,2,0,5,26,4),Fu(0,8,9,-5,0,15,22,2,0,6,28,5),Fu(0,8,10,-5,0,16,24,2,0,6,30,5),Fu(0,8,11,-5,0,17,26,2,0,6,32,5),Fu(0,9,11,-5,0,18,28,2,0,7,34,6),Fu(0,9,12,-6,0,19,29,2,0,7,36,6),Fu(0,10,13,-6,0,20,31,3,0,8,38,7),Fu(0,10,13,-6,0,21,33,3,0,8,40,7),Fu(0,10,14,-6,0,22,35,3,0,8,42,7),Fu(0,11,14,-7,0,23,36,3,0,9,44,8),Fu(0,11,15,-7,0,24,38,3,0,9,46,8)],Uu=["duration","easing","delay"],Vu={easeInOut:"cubic-bezier(0.4, 0, 0.2, 1)",easeOut:"cubic-bezier(0.0, 0, 0.2, 1)",easeIn:"cubic-bezier(0.4, 0, 1, 1)",sharp:"cubic-bezier(0.4, 0, 0.6, 1)"},Wu={shortest:150,shorter:200,short:250,standard:300,complex:375,enteringScreen:225,leavingScreen:195};function Gu(e){return"".concat(Math.round(e),"ms")}function Hu(e){if(!e)return 0;var t=e/36;return Math.round(10*(4+15*Math.pow(t,.25)+t/5))}var Yu={mobileStepper:1e3,fab:1050,speedDial:1050,appBar:1100,drawer:1200,modal:1300,snackbar:1400,tooltip:1500},Xu=["breakpoints","mixins","spacing","palette","transitions","typography","shape"];var Ku=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.mixins,n=void 0===t?{}:t,i=e.palette,o=void 0===i?{}:i,r=e.transitions,a=void 0===r?{}:r,s=e.typography,l=void 0===s?{}:s,c=Us(e,Xu);if(e.vars)throw new Error(Xs(18));var u,h,d,f,p,g=Nu(o),m=qc(e),v=Nl(m,{mixins:(f=m.breakpoints,p=n,go({toolbar:_defineProperty2(_defineProperty2({minHeight:56},f.up("xs"),{"@media (orientation: landscape)":{minHeight:48}}),f.up("sm"),{minHeight:64})},p)),palette:g,shadows:Bu.slice(),typography:zu(g,l),transitions:(u=a,h=go({},Vu,u.easing),d=go({},Wu,u.duration),go({getAutoHeightDuration:Hu,create:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["all"],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.duration,i=void 0===n?d.standard:n,o=t.easing,r=void 0===o?h.easeInOut:o,a=t.delay,s=void 0===a?0:a;return Us(t,Uu),(Array.isArray(e)?e:[e]).map((function(e){return"".concat(e," ").concat("string"==typeof i?i:Gu(i)," ").concat(r," ").concat("string"==typeof s?s:Gu(s))})).join(",")}},u,{easing:h,duration:d})),zIndex:go({},Yu)});v=Nl(v,c);for(var y=arguments.length,b=new Array(y>1?y-1:0),_=1;_<y;_++)b[_-1]=arguments[_];return(v=b.reduce((function(e,t){return Nl(e,t)}),v)).unstable_sxConfig=go({},Wc,null==c?void 0:c.unstable_sxConfig),v.unstable_sx=function(e){return Yc({sx:e,theme:this})},v}(),qu=Ku,Ju="$$material";var Zu=tu({themeId:Ju,defaultTheme:qu,rootShouldForwardProp:function(e){return function(e){return"ownerState"!==e&&"theme"!==e&&"sx"!==e&&"as"!==e}(e)&&"classes"!==e}});function $u(e,t){var n=go({},t);return Object.keys(e).forEach((function(i){if(i.toString().match(/^(components|slots)$/))n[i]=go({},e[i],n[i]);else if(i.toString().match(/^(componentsProps|slotProps)$/)){var o=e[i]||{},r=t[i];n[i]={},r&&Object.keys(r)?o&&Object.keys(o)?(n[i]=go({},r),Object.keys(o).forEach((function(e){n[i][e]=$u(o[e],r[e])}))):n[i]=r:n[i]=o}else void 0===n[i]&&(n[i]=e[i])})),n}function Qu(e){var t=e.theme,n=e.name,i=e.props;return t&&t.components&&t.components[n]&&t.components[n].defaultProps?$u(t.components[n].defaultProps,i):i}function eh(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=ai.useContext(Wo);return n&&(e=n,0!==Object.keys(e).length)?n:t}var th=qc();function nh(e){var t=e.props,n=e.name,i=e.defaultTheme,o=e.themeId,r=function(){return eh(arguments.length>0&&void 0!==arguments[0]?arguments[0]:th)}(i);return o&&(r=r[o]||r),Qu({theme:r,name:n,props:t})}function ih(e){return nh({props:e.props,name:e.name,defaultTheme:qu,themeId:Ju})}function oh(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return ai.useMemo((function(){return t.every((function(e){return null==e}))?null:function(e){t.forEach((function(t){!function(e,t){"function"==typeof e?e(t):e&&(e.current=t)}(t,e)}))}}),t)}var rh="undefined"!=typeof window?ai.useLayoutEffect:ai.useEffect;function ah(e){var t=ai.useRef(e);return rh((function(){t.current=e})),ai.useRef((function(){return t.current.apply(void 0,arguments)})).current}var sh={};var lh=[];var ch=function(){function e(){var t=this;_classCallCheck(this,e),this.currentId=null,this.clear=function(){null!==t.currentId&&(clearTimeout(t.currentId),t.currentId=null)},this.disposeEffect=function(){return t.clear}}return _createClass(e,[{key:"start",value:function(e,t){var n=this;this.clear(),this.currentId=setTimeout((function(){n.currentId=null,t()}),e)}}],[{key:"create",value:function(){return new e}}]),e}();function uh(){var e,t=function(e,t){var n=ai.useRef(sh);return n.current===sh&&(n.current=e(t)),n}(ch.create).current;return e=t.disposeEffect,ai.useEffect(e,lh),t}var hh=!0,dh=!1,fh=new ch,ph={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function gh(e){e.metaKey||e.altKey||e.ctrlKey||(hh=!0)}function mh(){hh=!1}function vh(){"hidden"===this.visibilityState&&dh&&(hh=!0)}function yh(e){var t=e.target;try{return t.matches(":focus-visible")}catch(e){}return hh||function(e){var t=e.type,n=e.tagName;return!("INPUT"!==n||!ph[t]||e.readOnly)||"TEXTAREA"===n&&!e.readOnly||!!e.isContentEditable}(t)}function bh(){var e=ai.useCallback((function(e){var t;null!=e&&((t=e.ownerDocument).addEventListener("keydown",gh,!0),t.addEventListener("mousedown",mh,!0),t.addEventListener("pointerdown",mh,!0),t.addEventListener("touchstart",mh,!0),t.addEventListener("visibilitychange",vh,!0))}),[]),t=ai.useRef(!1);return{isFocusVisibleRef:t,onFocus:function(e){return!!yh(e)&&(t.current=!0,!0)},onBlur:function(){return!!t.current&&(dh=!0,fh.start(100,(function(){dh=!1})),t.current=!1,!0)},ref:e}}function _h(e,t){return _h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_h(e,t)}var kh=ui.createContext(null);function wh(e,t){var n=Object.create(null);return e&&ai.Children.map(e,(function(e){return e})).forEach((function(e){n[e.key]=function(e){return t&&ai.isValidElement(e)?t(e):e}(e)})),n}function Sh(e,t,n){return null!=n[t]?n[t]:e.props[t]}function Ch(e,t,n){var i=wh(e.children),o=function(e,t){function n(n){return n in t?t[n]:e[n]}e=e||{},t=t||{};var i,o=Object.create(null),r=[];for(var a in e)a in t?r.length&&(o[a]=r,r=[]):r.push(a);var s={};for(var l in t){if(o[l])for(i=0;i<o[l].length;i++){var c=o[l][i];s[o[l][i]]=n(c)}s[l]=n(l)}for(i=0;i<r.length;i++)s[r[i]]=n(r[i]);return s}(t,i);return Object.keys(o).forEach((function(r){var a=o[r];if(ai.isValidElement(a)){var s=r in t,l=r in i,c=t[r],u=ai.isValidElement(c)&&!c.props.in;!l||s&&!u?l||!s||u?l&&s&&ai.isValidElement(c)&&(o[r]=ai.cloneElement(a,{onExited:n.bind(null,a),in:c.props.in,exit:Sh(a,"exit",e),enter:Sh(a,"enter",e)})):o[r]=ai.cloneElement(a,{in:!1}):o[r]=ai.cloneElement(a,{onExited:n.bind(null,a),in:!0,exit:Sh(a,"exit",e),enter:Sh(a,"enter",e)})}})),o}var Eh=Object.values||function(e){return Object.keys(e).map((function(t){return e[t]}))},Th=function(e){var t,n;function i(t,n){var i,o=(i=e.call(this,t,n)||this).handleExited.bind(function(e){if(void 0===e)throw new ReferenceError("this hasn\'t been initialised - super() hasn\'t been called");return e}(i));return i.state={contextValue:{isMounting:!0},handleExited:o,firstRender:!0},i}n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,_h(t,n);var o=i.prototype;return o.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},o.componentWillUnmount=function(){this.mounted=!1},i.getDerivedStateFromProps=function(e,t){var n,i,o=t.children,r=t.handleExited;return{children:t.firstRender?(n=e,i=r,wh(n.children,(function(e){return ai.cloneElement(e,{onExited:i.bind(null,e),in:!0,appear:Sh(e,"appear",n),enter:Sh(e,"enter",n),exit:Sh(e,"exit",n)})}))):Ch(e,o,r),firstRender:!1}},o.handleExited=function(e,t){var n=wh(this.props.children);e.key in n||(e.props.onExited&&e.props.onExited(t),this.mounted&&this.setState((function(t){var n=go({},t.children);return delete n[e.key],{children:n}})))},o.render=function(){var e=this.props,t=e.component,n=e.childFactory,i=Us(e,["component","childFactory"]),o=this.state.contextValue,r=Eh(this.state.children).map(n);return delete i.appear,delete i.enter,delete i.exit,null===t?ui.createElement(kh.Provider,{value:o},r):ui.createElement(kh.Provider,{value:o},ui.createElement(t,i,r))},i}(ui.Component);Th.propTypes={},Th.defaultProps={component:"div",childFactory:function(e){return e}};var Oh=Th;function jh(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Mui",i={};return t.forEach((function(t){i[t]=ku(e,t,n)})),i}var xh,Rh,Ih,Ah,Dh=jh("MuiTouchRipple",["root","ripple","rippleVisible","ripplePulsate","child","childLeaving","childPulsate"]),Nh=["center","classes","className"],Ph=_a(xh||(xh=_templateObject6||(_templateObject6=_taggedTemplateLiteral(["\\n 0% {\\n transform: scale(0);\\n opacity: 0.1;\\n }\\n\\n 100% {\\n transform: scale(1);\\n opacity: 0.3;\\n }\\n"])))),Lh=_a(Rh||(Rh=_templateObject7||(_templateObject7=_taggedTemplateLiteral(["\\n 0% {\\n opacity: 1;\\n }\\n\\n 100% {\\n opacity: 0;\\n }\\n"])))),Mh=_a(Ih||(Ih=_templateObject8||(_templateObject8=_taggedTemplateLiteral(["\\n 0% {\\n transform: scale(1);\\n }\\n\\n 50% {\\n transform: scale(0.92);\\n }\\n\\n 100% {\\n transform: scale(1);\\n }\\n"])))),zh=Zu("span",{name:"MuiTouchRipple",slot:"Root"})({overflow:"hidden",pointerEvents:"none",position:"absolute",zIndex:0,top:0,right:0,bottom:0,left:0,borderRadius:"inherit"}),Fh=Zu((function(e){var t=e.className,n=e.classes,i=e.pulsate,o=void 0!==i&&i,r=e.rippleX,a=e.rippleY,s=e.rippleSize,l=e.in,c=e.onExited,u=e.timeout,h=_slicedToArray(ai.useState(!1),2),d=h[0],f=h[1],p=Ws(t,n.ripple,n.rippleVisible,o&&n.ripplePulsate),g={width:s,height:s,top:-s/2+a,left:-s/2+r},m=Ws(n.child,d&&n.childLeaving,o&&n.childPulsate);return l||d||f(!0),ai.useEffect((function(){if(!l&&null!=c){var e=setTimeout(c,u);return function(){clearTimeout(e)}}}),[c,l,u]),ii.jsx("span",{className:p,style:g,children:ii.jsx("span",{className:m})})}),{name:"MuiTouchRipple",slot:"Ripple"})(Ah||(Ah=_templateObject9||(_templateObject9=_taggedTemplateLiteral(["\\n opacity: 0;\\n position: absolute;\\n\\n &."," {\\n opacity: 0.3;\\n transform: scale(1);\\n animation-name: ",";\\n animation-duration: ","ms;\\n animation-timing-function: ",";\\n }\\n\\n &."," {\\n animation-duration: ","ms;\\n }\\n\\n & ."," {\\n opacity: 1;\\n display: block;\\n width: 100%;\\n height: 100%;\\n border-radius: 50%;\\n background-color: currentColor;\\n }\\n\\n & ."," {\\n opacity: 0;\\n animation-name: ",";\\n animation-duration: ","ms;\\n animation-timing-function: ",";\\n }\\n\\n & ."," {\\n position: absolute;\\n /* @noflip */\\n left: 0px;\\n top: 0;\\n animation-name: ",";\\n animation-duration: 2500ms;\\n animation-timing-function: ",";\\n animation-iteration-count: infinite;\\n animation-delay: 200ms;\\n }\\n"]))),Dh.rippleVisible,Ph,550,(function(e){return e.theme.transitions.easing.easeInOut}),Dh.ripplePulsate,(function(e){return e.theme.transitions.duration.shorter}),Dh.child,Dh.childLeaving,Lh,550,(function(e){return e.theme.transitions.easing.easeInOut}),Dh.childPulsate,Mh,(function(e){return e.theme.transitions.easing.easeInOut})),Bh=ai.forwardRef((function(e,t){var n=ih({props:e,name:"MuiTouchRipple"}),i=n.center,o=void 0!==i&&i,r=n.classes,a=void 0===r?{}:r,s=n.className,l=Us(n,Nh),c=_slicedToArray(ai.useState([]),2),u=c[0],h=c[1],d=ai.useRef(0),f=ai.useRef(null);ai.useEffect((function(){f.current&&(f.current(),f.current=null)}),[u]);var p=ai.useRef(!1),g=uh(),m=ai.useRef(null),v=ai.useRef(null),y=ai.useCallback((function(e){var t=e.pulsate,n=e.rippleX,i=e.rippleY,o=e.rippleSize,r=e.cb;h((function(e){return[].concat(_toConsumableArray(e),[ii.jsx(Fh,{classes:{ripple:Ws(a.ripple,Dh.ripple),rippleVisible:Ws(a.rippleVisible,Dh.rippleVisible),ripplePulsate:Ws(a.ripplePulsate,Dh.ripplePulsate),child:Ws(a.child,Dh.child),childLeaving:Ws(a.childLeaving,Dh.childLeaving),childPulsate:Ws(a.childPulsate,Dh.childPulsate)},timeout:550,pulsate:t,rippleX:n,rippleY:i,rippleSize:o},d.current)])})),d.current+=1,f.current=r}),[a]),b=ai.useCallback((function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},i=t.pulsate,r=void 0!==i&&i,a=t.center,s=void 0===a?o||t.pulsate:a,l=t.fakeElement,c=void 0!==l&&l;if("mousedown"===(null==e?void 0:e.type)&&p.current)p.current=!1;else{"touchstart"===(null==e?void 0:e.type)&&(p.current=!0);var u,h,d,f=c?null:v.current,b=f?f.getBoundingClientRect():{width:0,height:0,left:0,top:0};if(s||void 0===e||0===e.clientX&&0===e.clientY||!e.clientX&&!e.touches)u=Math.round(b.width/2),h=Math.round(b.height/2);else{var _=e.touches&&e.touches.length>0?e.touches[0]:e,k=_.clientX,w=_.clientY;u=Math.round(k-b.left),h=Math.round(w-b.top)}if(s)(d=Math.sqrt((2*Math.pow(b.width,2)+Math.pow(b.height,2))/3))%2==0&&(d+=1);else{var S=2*Math.max(Math.abs((f?f.clientWidth:0)-u),u)+2,C=2*Math.max(Math.abs((f?f.clientHeight:0)-h),h)+2;d=Math.sqrt(Math.pow(S,2)+Math.pow(C,2))}null!=e&&e.touches?null===m.current&&(m.current=function(){y({pulsate:r,rippleX:u,rippleY:h,rippleSize:d,cb:n})},g.start(80,(function(){m.current&&(m.current(),m.current=null)}))):y({pulsate:r,rippleX:u,rippleY:h,rippleSize:d,cb:n})}}),[o,y,g]),_=ai.useCallback((function(){b({},{pulsate:!0})}),[b]),k=ai.useCallback((function(e,t){if(g.clear(),"touchend"===(null==e?void 0:e.type)&&m.current)return m.current(),m.current=null,void g.start(0,(function(){k(e,t)}));m.current=null,h((function(e){return e.length>0?e.slice(1):e})),f.current=t}),[g]);return ai.useImperativeHandle(t,(function(){return{pulsate:_,start:b,stop:k}}),[_,b,k]),ii.jsx(zh,go({className:Ws(Dh.root,a.root,s),ref:v},l,{children:ii.jsx(Oh,{component:null,exit:!0,children:u})}))})),Uh=Bh;function Vh(e){return ku("MuiButtonBase",e)}var Wh=jh("MuiButtonBase",["root","disabled","focusVisible"]),Gh=["action","centerRipple","children","className","component","disabled","disableRipple","disableTouchRipple","focusRipple","focusVisibleClassName","LinkComponent","onBlur","onClick","onContextMenu","onDragLeave","onFocus","onFocusVisible","onKeyDown","onKeyUp","onMouseDown","onMouseLeave","onMouseUp","onTouchEnd","onTouchMove","onTouchStart","tabIndex","TouchRippleProps","touchRippleRef","type"],Hh=Zu("button",{name:"MuiButtonBase",slot:"Root",overridesResolver:function(e,t){return t.root}})(_defineProperty2(_defineProperty2({display:"inline-flex",alignItems:"center",justifyContent:"center",position:"relative",boxSizing:"border-box",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none",textDecoration:"none",color:"inherit","&::-moz-focus-inner":{borderStyle:"none"}},"&.".concat(Wh.disabled),{pointerEvents:"none",cursor:"default"}),"@media print",{colorAdjust:"exact"})),Yh=ai.forwardRef((function(e,t){var n=ih({props:e,name:"MuiButtonBase"}),i=n.action,o=n.centerRipple,r=void 0!==o&&o,a=n.children,s=n.className,l=n.component,c=void 0===l?"button":l,u=n.disabled,h=void 0!==u&&u,d=n.disableRipple,f=void 0!==d&&d,p=n.disableTouchRipple,g=void 0!==p&&p,m=n.focusRipple,v=void 0!==m&&m,y=n.LinkComponent,b=void 0===y?"a":y,_=n.onBlur,k=n.onClick,w=n.onContextMenu,S=n.onDragLeave,C=n.onFocus,E=n.onFocusVisible,T=n.onKeyDown,O=n.onKeyUp,j=n.onMouseDown,x=n.onMouseLeave,R=n.onMouseUp,I=n.onTouchEnd,A=n.onTouchMove,D=n.onTouchStart,N=n.tabIndex,P=void 0===N?0:N,L=n.TouchRippleProps,M=n.touchRippleRef,z=n.type,F=Us(n,Gh),B=ai.useRef(null),U=ai.useRef(null),V=oh(U,M),W=bh(),G=W.isFocusVisibleRef,H=W.onFocus,Y=W.onBlur,X=W.ref,K=_slicedToArray(ai.useState(!1),2),q=K[0],J=K[1];h&&q&&J(!1),ai.useImperativeHandle(i,(function(){return{focusVisible:function(){J(!0),B.current.focus()}}}),[]);var Z=_slicedToArray(ai.useState(!1),2),$=Z[0],Q=Z[1];ai.useEffect((function(){Q(!0)}),[]);var ee=$&&!f&&!h;function te(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:g;return ah((function(i){return t&&t(i),!n&&U.current&&U.current[e](i),!0}))}ai.useEffect((function(){q&&v&&!f&&$&&U.current.pulsate()}),[f,v,q,$]);var ne=te("start",j),ie=te("stop",w),oe=te("stop",S),re=te("stop",R),ae=te("stop",(function(e){q&&e.preventDefault(),x&&x(e)})),se=te("start",D),le=te("stop",I),ce=te("stop",A),ue=te("stop",(function(e){Y(e),!1===G.current&&J(!1),_&&_(e)}),!1),he=ah((function(e){B.current||(B.current=e.currentTarget),H(e),!0===G.current&&(J(!0),E&&E(e)),C&&C(e)})),de=function(){var e=B.current;return c&&"button"!==c&&!("A"===e.tagName&&e.href)},fe=ai.useRef(!1),pe=ah((function(e){v&&!fe.current&&q&&U.current&&" "===e.key&&(fe.current=!0,U.current.stop(e,(function(){U.current.start(e)}))),e.target===e.currentTarget&&de()&&" "===e.key&&e.preventDefault(),T&&T(e),e.target===e.currentTarget&&de()&&"Enter"===e.key&&!h&&(e.preventDefault(),k&&k(e))})),ge=ah((function(e){v&&" "===e.key&&U.current&&q&&!e.defaultPrevented&&(fe.current=!1,U.current.stop(e,(function(){U.current.pulsate(e)}))),O&&O(e),k&&e.target===e.currentTarget&&de()&&" "===e.key&&!e.defaultPrevented&&k(e)})),me=c;"button"===me&&(F.href||F.to)&&(me=b);var ve={};"button"===me?(ve.type=void 0===z?"button":z,ve.disabled=h):(F.href||F.to||(ve.role="button"),h&&(ve["aria-disabled"]=h));var ye=oh(t,X,B),be=go({},n,{centerRipple:r,component:c,disabled:h,disableRipple:f,disableTouchRipple:g,focusRipple:v,tabIndex:P,focusVisible:q}),_e=function(e){var t=e.disabled,n=e.focusVisible,i=e.focusVisibleClassName,o=Gs({root:["root",t&&"disabled",n&&"focusVisible"]},Vh,e.classes);return n&&i&&(o.root+=" ".concat(i)),o}(be);return ii.jsxs(Hh,go({as:me,className:Ws(_e.root,s),ownerState:be,onBlur:ue,onClick:k,onContextMenu:ie,onFocus:he,onKeyDown:pe,onKeyUp:ge,onMouseDown:ne,onMouseLeave:ae,onMouseUp:re,onDragLeave:oe,onTouchEnd:le,onTouchMove:ce,onTouchStart:se,ref:ye,tabIndex:h?-1:P,type:z},ve,F,{children:[a,ee?ii.jsx(Uh,go({ref:V,center:r},L)):null]}))})),Xh=Yh;function Kh(e){return ku("MuiIconButton",e)}var qh=jh("MuiIconButton",["root","disabled","colorInherit","colorPrimary","colorSecondary","colorError","colorInfo","colorSuccess","colorWarning","edgeStart","edgeEnd","sizeSmall","sizeMedium","sizeLarge"]),Jh=["edge","children","className","color","disabled","disableFocusRipple","size"],Zh=Zu(Xh,{name:"MuiIconButton",slot:"Root",overridesResolver:function(e,t){var n=e.ownerState;return[t.root,"default"!==n.color&&t["color".concat(Ll(n.color))],n.edge&&t["edge".concat(Ll(n.edge))],t["size".concat(Ll(n.size))]]}})((function(e){var t=e.theme,n=e.ownerState;return go({textAlign:"center",flex:"0 0 auto",fontSize:t.typography.pxToRem(24),padding:8,borderRadius:"50%",overflow:"visible",color:(t.vars||t).palette.action.active,transition:t.transitions.create("background-color",{duration:t.transitions.duration.shortest})},!n.disableRipple&&{"&:hover":{backgroundColor:t.vars?"rgba(".concat(t.vars.palette.action.activeChannel," / ").concat(t.vars.palette.action.hoverOpacity,")"):$s(t.palette.action.active,t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}}},"start"===n.edge&&{marginLeft:"small"===n.size?-3:-12},"end"===n.edge&&{marginRight:"small"===n.size?-3:-12})}),(function(e){var t,n=e.theme,i=e.ownerState,o=null==(t=(n.vars||n).palette)?void 0:t[i.color];return go({},"inherit"===i.color&&{color:"inherit"},"inherit"!==i.color&&"default"!==i.color&&go({color:null==o?void 0:o.main},!i.disableRipple&&{"&:hover":go({},o&&{backgroundColor:n.vars?"rgba(".concat(o.mainChannel," / ").concat(n.vars.palette.action.hoverOpacity,")"):$s(o.main,n.palette.action.hoverOpacity)},{"@media (hover: none)":{backgroundColor:"transparent"}})}),"small"===i.size&&{padding:5,fontSize:n.typography.pxToRem(18)},"large"===i.size&&{padding:12,fontSize:n.typography.pxToRem(28)},_defineProperty2({},"&.".concat(qh.disabled),{backgroundColor:"transparent",color:(n.vars||n).palette.action.disabled}))})),$h=ai.forwardRef((function(e,t){var n=ih({props:e,name:"MuiIconButton"}),i=n.edge,o=void 0!==i&&i,r=n.children,a=n.className,s=n.color,l=void 0===s?"default":s,c=n.disabled,u=void 0!==c&&c,h=n.disableFocusRipple,d=void 0!==h&&h,f=n.size,p=void 0===f?"medium":f,g=Us(n,Jh),m=go({},n,{edge:o,color:l,disabled:u,disableFocusRipple:d,size:p}),v=function(e){var t=e.classes,n=e.disabled,i=e.color,o=e.edge,r=e.size;return Gs({root:["root",n&&"disabled","default"!==i&&"color".concat(Ll(i)),o&&"edge".concat(Ll(o)),"size".concat(Ll(r))]},Kh,t)}(m);return ii.jsx(Zh,go({className:Ws(v.root,a),centerRipple:!0,focusRipple:!d,disabled:u,ref:t},g,{ownerState:m,children:r}))})),Qh=$h;function ed(e){var t=e.active,n=e.children,i=e.size,o=void 0===i?24:i,r=ft(e,["active","children","size"]);return Jo(Qh,Object.assign({css:Object.assign({boxSizing:"content-box",display:"flex",width:"".concat(o,"px"),height:"".concat(o,"px"),padding:"4px",justifyContent:"center",alignItems:"center",borderRadius:"8px","&:hover,&:focus":{backgroundColor:"#3F444B"}},t&&{backgroundColor:"#3371e4"})},r,{children:n}))}function td(e){var t=e.value,n=e.setValue,i=e.toggleFunc,o=e.onClickOutsideHandler;var r=ga().t;return Jo(Da,Object.assign({top:40,onClickOutside:o,css:ba(_templateObject10||(_templateObject10=_taggedTemplateLiteral(["\\n box-sizing: border-box;\\n width: 158px;\\n "])))},{children:Zo("div",Object.assign({css:{width:"134px","& h6":{color:"#f7f9fa",marginTop:"0",marginBottom:"4px"},"& > div":{marginBottom:"8px"},"& > div:last-child":{marginBottom:0}}},{children:[Zo("div",{children:[Jo("h6",{children:r("DRAW")}),Jo("div",Object.assign({css:ba(_templateObject11||(_templateObject11=_taggedTemplateLiteral(["\\n display: flex;\\n "])))},{children:Jo(ed,Object.assign({active:!0},{children:Jo(Sa,{})}))}))]}),Zo("div",{children:[Jo("h6",{children:r("Line_Width")}),Jo("div",Object.assign({css:ba(_templateObject12||(_templateObject12=_taggedTemplateLiteral(["\\n display: flex;\\n "])))},{children:Object.keys(Va).map((function(e){var o=Va[e];return Jo(ed,Object.assign({onClick:function(){!function(e){qn.use(Xn.changeDrawWidth,Wa[e]),n(e),i(!1)}(o)},active:t===o},{children:Jo(Aa,{width:o})}),e)}))}))]})]}))}))}var nd,id,od,rd=function(e){var t,n=new Set,i=function(e,i){var o="function"==typeof e?e(t):e;if(!Object.is(o,t)){var r=t;t=(null!=i?i:"object"!==_typeof(o)||null===o)?o:Object.assign({},t,o),n.forEach((function(e){return e(t,r)}))}},o=function(){return t},r={setState:i,getState:o,getInitialState:function(){return a},subscribe:function(e){return n.add(e),function(){return n.delete(e)}},destroy:function(){console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},a=t=e(i,o,r);return r},ad={},sd={},ld={},cd={get exports(){return ld},set exports(e){ld=e}},ud={};function hd(){return id||(id=1,function(e){e.exports=function(){if(nd)return ud;nd=1;var e=ai,t="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},n=e.useState,i=e.useEffect,o=e.useLayoutEffect,r=e.useDebugValue;function a(e){var n=e.getSnapshot;e=e.value;try{var i=n();return!t(e,i)}catch(e){return!0}}var s="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var s=t(),l=n({inst:{value:s,getSnapshot:t}}),c=l[0].inst,u=l[1];return o((function(){c.value=s,c.getSnapshot=t,a(c)&&u({inst:c})}),[e,s,t]),i((function(){return a(c)&&u({inst:c}),e((function(){a(c)&&u({inst:c})}))}),[e]),r(s),s};return ud.useSyncExternalStore=void 0!==e.useSyncExternalStore?e.useSyncExternalStore:s,ud}()}(cd)),ld}\n/**\n * @license React\n * use-sync-external-store-shim/with-selector.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 */!function(e){e.exports=function(){if(od)return sd;od=1;var e=ai,t=hd(),n="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},i=t.useSyncExternalStore,o=e.useRef,r=e.useEffect,a=e.useMemo,s=e.useDebugValue;return sd.useSyncExternalStoreWithSelector=function(e,t,l,c,u){var h=o(null);if(null===h.current){var d={hasValue:!1,value:null};h.current=d}else d=h.current;h=a((function(){function e(e){if(!r){if(r=!0,i=e,e=c(e),void 0!==u&&d.hasValue){var t=d.value;if(u(t,e))return o=t}return o=e}if(t=o,n(i,e))return t;var a=c(e);return void 0!==u&&u(t,a)?t:(i=e,o=a)}var i,o,r=!1,a=void 0===l?null:l;return[function(){return e(t())},null===a?void 0:function(){return e(a())}]}),[t,l,c,u]);var f=i(e,h[0],h[1]);return r((function(){d.hasValue=!0,d.value=f}),[f]),s(f),f},sd}()}({get exports(){return ad},set exports(e){ad=e}});var dd=ei(ad),fd=ui.useDebugValue,pd=dd.useSyncExternalStoreWithSelector,gd=!1,md=function(e){return e};var vd,yd=function(e){"function"!=typeof e&&console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from \'zustand\'`.");var t="function"==typeof e?function(e){return e?rd(e):rd}(e):e,n=function(e,n){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:md,n=arguments.length>2?arguments[2]:void 0;n&&!gd&&(console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from \'zustand/traditional\'. https://github.com/pmndrs/zustand/discussions/1937"),gd=!0);var i=pd(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return fd(i),i}(t,e,n)};return Object.assign(n,t),n},bd=(vd=function(e){return{activeBtnKey:Ha,setActiveBtnKey:function(t){return e({activeBtnKey:t})}}},vd?yd(vd):yd);function _d(){var e="body > .".concat(Jn.wrapper);return document.querySelector(e)?e:"body"}var kd="#6e6f71";function wd(){var e,t,n,i,o=ga().t,r=(e=function(e){return e},t=_slicedToArray(ai.useState(e(bd.getState())),2),n=t[0],i=t[1],ai.useEffect((function(){var t=bd.subscribe((function(t){var n=e(t);i(n)}));return function(){return t()}}),[e]),n),a=r.activeBtnKey,s=r.setActiveBtnKey,l=_slicedToArray(ai.useState("body"),2),c=l[0],u=l[1],h=_slicedToArray(ai.useState(!1),2),d=h[0],f=h[1],p=_slicedToArray(ai.useState(Na),2),g=p[0],m=p[1],v=_slicedToArray(ai.useState(0),2),y=v[0],b=v[1],_=_slicedToArray(ai.useState(!0),2),k=_[0],w=_[1],S=_slicedToArray(ai.useState(!0),2),C=S[0],E=S[1],T=ai.useRef(null),O=ai.useRef([]);ai.useEffect((function(){var e;function t(e){s(e)}function n(e){e||(s(Ha),qn.use(Xn.toggleDrawMode,!0),setTimeout((function(){var e,t,n;null===(t=null===(e=O.current)||void 0===e?void 0:e[1])||void 0===t||t.focus(),b((null===(n=O.current)||void 0===n?void 0:n[1])?1:0)})))}return qn.use(Xn.addEventHandler,La,t),O.current=(null===(e=T.current)||void 0===e?void 0:e.querySelectorAll("button"))||[],qn.use(Xn.addEventHandler,Ba,n),function(){qn.use(Xn.removeEventHandler,La,t),qn.use(Xn.removeEventHandler,Ba,n)}}),[]);var j=ai.useCallback((function(e,t){e?w(t):E(t)}),[]);ai.useEffect((function(){function e(e){var t=e.undoNum,n=e.redoNum;j(!0,t<=0),j(!1,n<=0)}return qn.use(Xn.addEventHandler,Ma,e),function(){qn.use(Xn.removeEventHandler,Ma,e)}}),[]);var x=ai.useCallback((function(){f((function(e){return!e}))}),[]),R=ai.useCallback((function(){f(!1)}),[]),I=_slicedToArray(ai.useState(!1),2),A=I[0],D=I[1],N=_slicedToArray(ai.useState(Va.regular),2),P=N[0],L=N[1],M=ai.useCallback((function(e){D(e)}),[]),z=ai.useCallback((function(){D(!1)}),[]);var F=ai.useCallback((function(e){var t=y,n=O.current.length;function i(){var e;b(t),null===(e=O.current[t])||void 0===e||e.focus()}if("ArrowDown"===e.key){for(var o=0;o<n&&(t=(t+1)%n,O.current[t].disabled);o++);i()}else if("ArrowUp"===e.key){for(var r=0;r<n&&(t=(t-1+n)%n,O.current[t].disabled);r++);i()}}),[y]);ai.useEffect((function(){u(_d())}),[]);var B=ai.useRef(!1),U=ai.useCallback((function(e){return function(){B.current||e()}}),[]),V=ai.useRef([0,0]),W=ai.useCallback((function(e){V.current=[e.x,e.y]}),[]),G=ai.useCallback((function(e,t){var n=t.x,i=t.y,o=_slicedToArray(V.current,2),r=o[0],a=o[1];(Math.abs(r-n)>=10||Math.abs(a-i)>=10)&&(B.current=!0)}),[]),H=ai.useCallback((function(e){window.setTimeout((function(){var t,n,i,o;B.current||"touchend"===e.type&&(null===(o=null===(i=null===(n=null===(t=e.target)||void 0===t?void 0:t.closest)||void 0===n?void 0:n.call(t,"button"))||void 0===i?void 0:i.click)||void 0===o||o.call(i)),B.current=!1}),0)}),[]);return Jo($a,Object.assign({bounds:c,defaultPosition:{x:10,y:window.innerHeight/2-173},onStart:function(e,t){W(t)},onDrag:function(e,t){(A||d)&&(qn.use(Xn.enableControlMode),s(Ga),f(!1),D(!1)),G(e,t)},onStop:H,cancel:".".concat(Jn.subMenuWrapper)},{children:Zo("div",Object.assign({className:Jn.toolbar,ref:T,onKeyDown:F,css:ba(_templateObject13||(_templateObject13=_taggedTemplateLiteral(["\\n display: none;\\n padding: 8px 4px;\\n flex-direction: column;\\n align-items: center;\\n\\n border-radius: 8px;\\n border: 1px solid #6e7680;\\n background: #131619;\\n\\n /* Shadow/Light mode/Medium */\\n box-shadow: 0px 6px 12px 0px rgba(19, 22, 25, 0.1),\\n 0px 12px 24px 0px rgba(19, 22, 25, 0.1);\\n backdrop-filter: blur(5px);\\n\\n pointer-events: all;\\n "])))},{children:[Zo("div",Object.assign({className:Jn.subMenuWrapper},{children:[A&&Jo(td,{value:P,setValue:L,toggleFunc:M,onClickOutsideHandler:z}),d&&Jo(Xa,{selectedColor:g,setColor:m,toggleColorSubMenu:x,onClickOutsideHandler:R})]})),Jo(ed,Object.assign({onClick:U((function(){a!==Ga&&(qn.use(Xn.enableControlMode),s(Ga))})),active:a===Ga,"aria-label":o("MOUSE"),tabIndex:0,onFocus:function(){return b(0)}},{children:Jo(wa,{})})),Jo(ed,Object.assign({onClick:U((function(){qn.use(Xn.toggleDrawMode,!0),s(Ha),D((function(e){return!e}))})),active:a===Ha,"aria-label":o("DRAW"),tabIndex:-1},{children:Jo(Sa,{})})),Jo(ed,Object.assign({onClick:U((function(){a!==Ya&&(qn.use(Xn.toggleEraser),s(Ya))})),active:a===Ya,"aria-label":o("ERASER"),tabIndex:-1},{children:Jo(Ea,{})})),Jo(ed,Object.assign({onClick:U(x),"aria-label":o("COLOR"),tabIndex:-1},{children:Jo(Ta,{color:g})})),Jo(ed,Object.assign({onClick:U((function(){qn.use(Xn.triggerClear)})),"aria-label":o("CLEAR"),tabIndex:-1},{children:Jo(Ra,{})})),Jo(ka,{}),Jo(ed,Object.assign({onClick:U((function(){k||qn.use(Xn.triggerUndo)})),disabled:k,"aria-label":o("UNDO"),tabIndex:-1},{children:Jo(Oa,{color:k?kd:void 0})})),Jo(ed,Object.assign({onClick:U((function(){C||qn.use(Xn.triggerRedo)})),disabled:C,"aria-label":o("REDO"),tabIndex:-1},{children:Jo(ja,{color:C?kd:void 0})})),Jo(ka,{}),Jo(ed,Object.assign({onClick:U((function(){qn.use(Xn.hideToolbar,!0),qn.use(Xn.hideOpenBtn,!1),s(Ha)})),"aria-label":o("CLOSE"),tabIndex:-1},{children:Jo(xa,{})}))]}))}))}var Sd;function Cd(e){var t=e.hideOpenBtn,n=ga().t,i=ai.useRef([0,0]),o=ai.useRef(!1),r=_slicedToArray(ai.useState("body"),2),a=r[0],s=r[1],l=ai.useCallback((function(){o.current||(qn.use(Xn.hideToolbar,!1),qn.use(Xn.hideOpenBtn,!0))}),[]),c=ai.useCallback((function(e){i.current=[e.x,e.y]}),[]),u=ai.useCallback((function(e,t){var n=t.x,r=t.y,a=_slicedToArray(i.current,2),s=a[0],l=a[1];(Math.abs(s-n)>=5||Math.abs(l-r)>=5)&&(o.current=!0)}),[]),h=ai.useCallback((function(e){setTimeout((function(){var t,n,i,r;o.current||"touchend"!==e.type||null===(r=null===(i=null===(n=null===(t=e.target)||void 0===t?void 0:t.closest)||void 0===n?void 0:n.call(t,"button"))||void 0===i?void 0:i.click)||void 0===r||r.call(i),o.current=!1}),0)}),[]);return ai.useEffect((function(){s(_d())}),[]),Jo($a,Object.assign({bounds:a,onStart:function(e,t){c(t)},onDrag:function(e,t){u(e,t)},onStop:function(e){h(e)}},{children:Jo("div",Object.assign({className:Jn.openBtn,css:{display:t?"none":"block",position:"fixed",bottom:"".concat(48,"px"),left:"8px",pointerEvents:"all"}},{children:Jo(Qh,Object.assign({css:{boxSizing:"content-box",display:"flex",width:"".concat(48,"px"),height:"".concat(48,"px"),padding:"4px",justifyContent:"center",alignItems:"center",borderRadius:"50%",backgroundColor:"#27282B",boxShadow:"0px 6px 12px 0px rgba(0, 0, 0, 0.08), 0px 4px 4px 0px rgba(0, 0, 0, 0.25)",color:"#00FF91","&:hover,&:active,&:focus":{backgroundColor:"#00FF91",color:"#27282B"}},onClick:l,tabIndex:0,"aria-label":n("Annotation")},{children:Jo(Ia,{})}))}))}))}var Ed={get cache(){if(Sd)return Sd;var e=document.createElement("div");return e.classList.add(T),document.body.appendChild(e),Sd=po({key:"zcb-emotion",container:e})}},Td=function(e){var t=e.hideOpenBtn;return Jo(qo,{children:Zo(Uo,Object.assign({value:Ed.cache},{children:[Jo(wd,{}),Jo(Cd,{hideOpenBtn:t})]}))})},Od=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=(e||document).querySelector("."+Jn.controller);if(i){var r=tr(i);t=function(){r.render(Jo(Td,{hideOpenBtn:n}))},pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function e(){var n,i,r,a,s,l,c,u,h;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(h=function(e){null==t||t(e),$r.off("languageChanged",h)},2===(null===(n=window.ZMCoBrowsingConfig)||void 0===n?void 0:n.templateMode)){e.next=4;break}return null==t||t(),e.abrupt("return");case 4:if(!Wt()){e.next=13;break}return s=zn("i18nextLng"),l=o.publicStore.getState(),c=l.ZCBTokenConsumer,e.next=9,null==c?void 0:c.getData(s);case 9:u=e.sent,a=u&&Fn(u)||E,e.next=14;break;case 13:a=(null===(r=null===(i=window.unifyConfig)||void 0===i?void 0:i.systemParam)||void 0===r?void 0:r.globalLang)||E;case 14:return $r.use(ha).init({fallbackLng:E,resources:{},interpolation:{escapeValue:!1}}),$r.on("languageChanged",h),e.next=18,va(E,!1);case 18:va(a);case 19:case"end":return e.stop()}}),e)})))}else console.error("[Anotation] renderToolbarUI ERROR: rootDom=".concat(i," is falsy."))},jd=[],xd=[],Rd="undefined"!=typeof Uint8Array?Uint8Array:Array,Id=!1;function Ad(){Id=!0;for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=0;t<64;++t)jd[t]=e[t],xd[e.charCodeAt(t)]=t;xd["-".charCodeAt(0)]=62,xd["_".charCodeAt(0)]=63}function Dd(e,t,n){for(var i,o,r=[],a=t;a<n;a+=3)i=(e[a]<<16)+(e[a+1]<<8)+e[a+2],r.push(jd[(o=i)>>18&63]+jd[o>>12&63]+jd[o>>6&63]+jd[63&o]);return r.join("")}function Nd(e){var t;Id||Ad();for(var n=e.length,i=n%3,o="",r=[],a=16383,s=0,l=n-i;s<l;s+=a)r.push(Dd(e,s,s+a>l?l:s+a));return 1===i?(t=e[n-1],o+=jd[t>>2],o+=jd[t<<4&63],o+="=="):2===i&&(t=(e[n-2]<<8)+e[n-1],o+=jd[t>>10],o+=jd[t>>4&63],o+=jd[t<<2&63],o+="="),r.push(o),r.join("")}function Pd(e,t,n,i,o){var r,a,s=8*o-i-1,l=(1<<s)-1,c=l>>1,u=-7,h=n?o-1:0,d=n?-1:1,f=e[t+h];for(h+=d,r=f&(1<<-u)-1,f>>=-u,u+=s;u>0;r=256*r+e[t+h],h+=d,u-=8);for(a=r&(1<<-u)-1,r>>=-u,u+=i;u>0;a=256*a+e[t+h],h+=d,u-=8);if(0===r)r=1-c;else{if(r===l)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,i),r-=c}return(f?-1:1)*a*Math.pow(2,r-i)}function Ld(e,t,n,i,o,r){var a,s,l,c=8*r-o-1,u=(1<<c)-1,h=u>>1,d=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,f=i?0:r-1,p=i?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=u):(a=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-a))<1&&(a--,l*=2),(t+=a+h>=1?d/l:d*Math.pow(2,1-h))*l>=2&&(a++,l/=2),a+h>=u?(s=0,a=u):a+h>=1?(s=(t*l-1)*Math.pow(2,o),a+=h):(s=t*Math.pow(2,h-1)*Math.pow(2,o),a=0));o>=8;e[n+f]=255&s,f+=p,s/=256,o-=8);for(a=a<<o|s,c+=o;c>0;e[n+f]=255&a,f+=p,a/=256,c-=8);e[n+f-p]|=128*g}var Md={}.toString,zd=Array.isArray||function(e){return"[object Array]"==Md.call(e)};function Fd(){return Ud.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function Bd(e,t){if(Fd()<t)throw new RangeError("Invalid typed array length");return Ud.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=Ud.prototype:(null===e&&(e=new Ud(t)),e.length=t),e}function Ud(e,t,n){if(!(Ud.TYPED_ARRAY_SUPPORT||this instanceof Ud))return new Ud(e,t,n);if("number"==typeof e){if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return Gd(this,e)}return Vd(this,e,t,n)}function Vd(e,t,n,i){if("number"==typeof t)throw new TypeError(\'"value" argument must not be a number\');return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,n,i){if(t.byteLength,n<0||t.byteLength<n)throw new RangeError("\'offset\' is out of bounds");if(t.byteLength<n+(i||0))throw new RangeError("\'length\' is out of bounds");t=void 0===n&&void 0===i?new Uint8Array(t):void 0===i?new Uint8Array(t,n):new Uint8Array(t,n,i);Ud.TYPED_ARRAY_SUPPORT?(e=t).__proto__=Ud.prototype:e=Hd(e,t);return e}(e,t,n,i):"string"==typeof t?function(e,t,n){"string"==typeof n&&""!==n||(n="utf8");if(!Ud.isEncoding(n))throw new TypeError(\'"encoding" must be a valid string encoding\');var i=0|Kd(t,n);e=Bd(e,i);var o=e.write(t,n);o!==i&&(e=e.slice(0,o));return e}(e,t,n):function(e,t){if(Xd(t)){var n=0|Yd(t.length);return 0===(e=Bd(e,n)).length||t.copy(e,0,0,n),e}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||(i=t.length)!=i?Bd(e,0):Hd(e,t);if("Buffer"===t.type&&zd(t.data))return Hd(e,t.data)}var i;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function Wd(e){if("number"!=typeof e)throw new TypeError(\'"size" argument must be a number\');if(e<0)throw new RangeError(\'"size" argument must not be negative\')}function Gd(e,t){if(Wd(t),e=Bd(e,t<0?0:0|Yd(t)),!Ud.TYPED_ARRAY_SUPPORT)for(var n=0;n<t;++n)e[n]=0;return e}function Hd(e,t){var n=t.length<0?0:0|Yd(t.length);e=Bd(e,n);for(var i=0;i<n;i+=1)e[i]=255&t[i];return e}function Yd(e){if(e>=Fd())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Fd().toString(16)+" bytes");return 0|e}function Xd(e){return!(null==e||!e._isBuffer)}function Kd(e,t){if(Xd(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return wf(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Sf(e).length;default:if(i)return wf(e).length;t=(""+t).toLowerCase(),i=!0}}function qd(e,t,n){var i=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return hf(this,t,n);case"utf8":case"utf-8":return sf(this,t,n);case"ascii":return cf(this,t,n);case"latin1":case"binary":return uf(this,t,n);case"base64":return af(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return df(this,t,n);default:if(i)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),i=!0}}function Jd(e,t,n){var i=e[t];e[t]=e[n],e[n]=i}function Zd(e,t,n,i,o){if(0===e.length)return-1;if("string"==typeof n?(i=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof t&&(t=Ud.from(t,i)),Xd(t))return 0===t.length?-1:$d(e,t,n,i,o);if("number"==typeof t)return t&=255,Ud.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):$d(e,[t],n,i,o);throw new TypeError("val must be string, number or Buffer")}function $d(e,t,n,i,o){var r,a=1,s=e.length,l=t.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(e.length<2||t.length<2)return-1;a=2,s/=2,l/=2,n/=2}function c(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(o){var u=-1;for(r=n;r<s;r++)if(c(e,r)===c(t,-1===u?0:r-u)){if(-1===u&&(u=r),r-u+1===l)return u*a}else-1!==u&&(r-=r-u),u=-1}else for(n+l>s&&(n=s-l),r=n;r>=0;r--){for(var h=!0,d=0;d<l;d++)if(c(e,r+d)!==c(t,d)){h=!1;break}if(h)return r}return-1}function Qd(e,t,n,i){n=Number(n)||0;var o=e.length-n;i?(i=Number(i))>o&&(i=o):i=o;var r=t.length;if(r%2!=0)throw new TypeError("Invalid hex string");i>r/2&&(i=r/2);for(var a=0;a<i;++a){var s=parseInt(t.substr(2*a,2),16);if(isNaN(s))return a;e[n+a]=s}return a}function ef(e,t,n,i){return Cf(wf(t,e.length-n),e,n,i)}function tf(e,t,n,i){return Cf(function(e){for(var t=[],n=0;n<e.length;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,i)}function nf(e,t,n,i){return tf(e,t,n,i)}function of(e,t,n,i){return Cf(Sf(t),e,n,i)}function rf(e,t,n,i){return Cf(function(e,t){for(var n,i,o,r=[],a=0;a<e.length&&!((t-=2)<0);++a)i=(n=e.charCodeAt(a))>>8,o=n%256,r.push(o),r.push(i);return r}(t,e.length-n),e,n,i)}function af(e,t,n){return 0===t&&n===e.length?Nd(e):Nd(e.slice(t,n))}function sf(e,t,n){n=Math.min(e.length,n);for(var i=[],o=t;o<n;){var r,a,s,l,c=e[o],u=null,h=c>239?4:c>223?3:c>191?2:1;if(o+h<=n)switch(h){case 1:c<128&&(u=c);break;case 2:128==(192&(r=e[o+1]))&&(l=(31&c)<<6|63&r)>127&&(u=l);break;case 3:r=e[o+1],a=e[o+2],128==(192&r)&&128==(192&a)&&(l=(15&c)<<12|(63&r)<<6|63&a)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:r=e[o+1],a=e[o+2],s=e[o+3],128==(192&r)&&128==(192&a)&&128==(192&s)&&(l=(15&c)<<18|(63&r)<<12|(63&a)<<6|63&s)>65535&&l<1114112&&(u=l)}null===u?(u=65533,h=1):u>65535&&(u-=65536,i.push(u>>>10&1023|55296),u=56320|1023&u),i.push(u),o+=h}return function(e){var t=e.length;if(t<=lf)return String.fromCharCode.apply(String,e);var n="",i=0;for(;i<t;)n+=String.fromCharCode.apply(String,e.slice(i,i+=lf));return n}(i)}Ud.TYPED_ARRAY_SUPPORT=void 0===$n.TYPED_ARRAY_SUPPORT||$n.TYPED_ARRAY_SUPPORT,Fd(),Ud.poolSize=8192,Ud._augment=function(e){return e.__proto__=Ud.prototype,e},Ud.from=function(e,t,n){return Vd(null,e,t,n)},Ud.TYPED_ARRAY_SUPPORT&&(Ud.prototype.__proto__=Uint8Array.prototype,Ud.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&Ud[Symbol.species]),Ud.alloc=function(e,t,n){return function(e,t,n,i){return Wd(t),t<=0?Bd(e,t):void 0!==n?"string"==typeof i?Bd(e,t).fill(n,i):Bd(e,t).fill(n):Bd(e,t)}(null,e,t,n)},Ud.allocUnsafe=function(e){return Gd(null,e)},Ud.allocUnsafeSlow=function(e){return Gd(null,e)},Ud.isBuffer=function(e){return null!=e&&(!!e._isBuffer||Ef(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&Ef(e.slice(0,0))}(e))},Ud.compare=function(e,t){if(!Xd(e)||!Xd(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var n=e.length,i=t.length,o=0,r=Math.min(n,i);o<r;++o)if(e[o]!==t[o]){n=e[o],i=t[o];break}return n<i?-1:i<n?1:0},Ud.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},Ud.concat=function(e,t){if(!zd(e))throw new TypeError(\'"list" argument must be an Array of Buffers\');if(0===e.length)return Ud.alloc(0);var n;if(void 0===t)for(t=0,n=0;n<e.length;++n)t+=e[n].length;var i=Ud.allocUnsafe(t),o=0;for(n=0;n<e.length;++n){var r=e[n];if(!Xd(r))throw new TypeError(\'"list" argument must be an Array of Buffers\');r.copy(i,o),o+=r.length}return i},Ud.byteLength=Kd,Ud.prototype._isBuffer=!0,Ud.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)Jd(this,t,t+1);return this},Ud.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)Jd(this,t,t+3),Jd(this,t+1,t+2);return this},Ud.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)Jd(this,t,t+7),Jd(this,t+1,t+6),Jd(this,t+2,t+5),Jd(this,t+3,t+4);return this},Ud.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?sf(this,0,e):qd.apply(this,arguments)},Ud.prototype.equals=function(e){if(!Xd(e))throw new TypeError("Argument must be a Buffer");return this===e||0===Ud.compare(this,e)},Ud.prototype.inspect=function(){var e="";return this.length>0&&(e=this.toString("hex",0,50).match(/.{2}/g).join(" "),this.length>50&&(e+=" ... ")),"<Buffer "+e+">"},Ud.prototype.compare=function(e,t,n,i,o){if(!Xd(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===i&&(i=0),void 0===o&&(o=this.length),t<0||n>e.length||i<0||o>this.length)throw new RangeError("out of range index");if(i>=o&&t>=n)return 0;if(i>=o)return-1;if(t>=n)return 1;if(this===e)return 0;for(var r=(o>>>=0)-(i>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(r,a),l=this.slice(i,o),c=e.slice(t,n),u=0;u<s;++u)if(l[u]!==c[u]){r=l[u],a=c[u];break}return r<a?-1:a<r?1:0},Ud.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},Ud.prototype.indexOf=function(e,t,n){return Zd(this,e,t,n,!0)},Ud.prototype.lastIndexOf=function(e,t,n){return Zd(this,e,t,n,!1)},Ud.prototype.write=function(e,t,n,i){if(void 0===t)i="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)i=t,n=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(n)?(n|=0,void 0===i&&(i="utf8")):(i=n,n=void 0)}var o=this.length-t;if((void 0===n||n>o)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var r=!1;;)switch(i){case"hex":return Qd(this,e,t,n);case"utf8":case"utf-8":return ef(this,e,t,n);case"ascii":return tf(this,e,t,n);case"latin1":case"binary":return nf(this,e,t,n);case"base64":return of(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return rf(this,e,t,n);default:if(r)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),r=!0}},Ud.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var lf=4096;function cf(e,t,n){var i="";n=Math.min(e.length,n);for(var o=t;o<n;++o)i+=String.fromCharCode(127&e[o]);return i}function uf(e,t,n){var i="";n=Math.min(e.length,n);for(var o=t;o<n;++o)i+=String.fromCharCode(e[o]);return i}function hf(e,t,n){var i=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>i)&&(n=i);for(var o="",r=t;r<n;++r)o+=kf(e[r]);return o}function df(e,t,n){for(var i=e.slice(t,n),o="",r=0;r<i.length;r+=2)o+=String.fromCharCode(i[r]+256*i[r+1]);return o}function ff(e,t,n){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>n)throw new RangeError("Trying to access beyond buffer length")}function pf(e,t,n,i,o,r){if(!Xd(e))throw new TypeError(\'"buffer" argument must be a Buffer instance\');if(t>o||t<r)throw new RangeError(\'"value" argument is out of bounds\');if(n+i>e.length)throw new RangeError("Index out of range")}function gf(e,t,n,i){t<0&&(t=65535+t+1);for(var o=0,r=Math.min(e.length-n,2);o<r;++o)e[n+o]=(t&255<<8*(i?o:1-o))>>>8*(i?o:1-o)}function mf(e,t,n,i){t<0&&(t=4294967295+t+1);for(var o=0,r=Math.min(e.length-n,4);o<r;++o)e[n+o]=t>>>8*(i?o:3-o)&255}function vf(e,t,n,i,o,r){if(n+i>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function yf(e,t,n,i,o){return o||vf(e,0,n,4),Ld(e,t,n,i,23,4),n+4}function bf(e,t,n,i,o){return o||vf(e,0,n,8),Ld(e,t,n,i,52,8),n+8}Ud.prototype.slice=function(e,t){var n,i=this.length;if((e=~~e)<0?(e+=i)<0&&(e=0):e>i&&(e=i),(t=void 0===t?i:~~t)<0?(t+=i)<0&&(t=0):t>i&&(t=i),t<e&&(t=e),Ud.TYPED_ARRAY_SUPPORT)(n=this.subarray(e,t)).__proto__=Ud.prototype;else{var o=t-e;n=new Ud(o,void 0);for(var r=0;r<o;++r)n[r]=this[r+e]}return n},Ud.prototype.readUIntLE=function(e,t,n){e|=0,t|=0,n||ff(e,t,this.length);for(var i=this[e],o=1,r=0;++r<t&&(o*=256);)i+=this[e+r]*o;return i},Ud.prototype.readUIntBE=function(e,t,n){e|=0,t|=0,n||ff(e,t,this.length);for(var i=this[e+--t],o=1;t>0&&(o*=256);)i+=this[e+--t]*o;return i},Ud.prototype.readUInt8=function(e,t){return t||ff(e,1,this.length),this[e]},Ud.prototype.readUInt16LE=function(e,t){return t||ff(e,2,this.length),this[e]|this[e+1]<<8},Ud.prototype.readUInt16BE=function(e,t){return t||ff(e,2,this.length),this[e]<<8|this[e+1]},Ud.prototype.readUInt32LE=function(e,t){return t||ff(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},Ud.prototype.readUInt32BE=function(e,t){return t||ff(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},Ud.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||ff(e,t,this.length);for(var i=this[e],o=1,r=0;++r<t&&(o*=256);)i+=this[e+r]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*t)),i},Ud.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||ff(e,t,this.length);for(var i=t,o=1,r=this[e+--i];i>0&&(o*=256);)r+=this[e+--i]*o;return r>=(o*=128)&&(r-=Math.pow(2,8*t)),r},Ud.prototype.readInt8=function(e,t){return t||ff(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},Ud.prototype.readInt16LE=function(e,t){t||ff(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},Ud.prototype.readInt16BE=function(e,t){t||ff(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},Ud.prototype.readInt32LE=function(e,t){return t||ff(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},Ud.prototype.readInt32BE=function(e,t){return t||ff(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},Ud.prototype.readFloatLE=function(e,t){return t||ff(e,4,this.length),Pd(this,e,!0,23,4)},Ud.prototype.readFloatBE=function(e,t){return t||ff(e,4,this.length),Pd(this,e,!1,23,4)},Ud.prototype.readDoubleLE=function(e,t){return t||ff(e,8,this.length),Pd(this,e,!0,52,8)},Ud.prototype.readDoubleBE=function(e,t){return t||ff(e,8,this.length),Pd(this,e,!1,52,8)},Ud.prototype.writeUIntLE=function(e,t,n,i){(e=+e,t|=0,n|=0,i)||pf(this,e,t,n,Math.pow(2,8*n)-1,0);var o=1,r=0;for(this[t]=255&e;++r<n&&(o*=256);)this[t+r]=e/o&255;return t+n},Ud.prototype.writeUIntBE=function(e,t,n,i){(e=+e,t|=0,n|=0,i)||pf(this,e,t,n,Math.pow(2,8*n)-1,0);var o=n-1,r=1;for(this[t+o]=255&e;--o>=0&&(r*=256);)this[t+o]=e/r&255;return t+n},Ud.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||pf(this,e,t,1,255,0),Ud.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},Ud.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||pf(this,e,t,2,65535,0),Ud.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):gf(this,e,t,!0),t+2},Ud.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||pf(this,e,t,2,65535,0),Ud.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):gf(this,e,t,!1),t+2},Ud.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||pf(this,e,t,4,4294967295,0),Ud.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):mf(this,e,t,!0),t+4},Ud.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||pf(this,e,t,4,4294967295,0),Ud.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):mf(this,e,t,!1),t+4},Ud.prototype.writeIntLE=function(e,t,n,i){if(e=+e,t|=0,!i){var o=Math.pow(2,8*n-1);pf(this,e,t,n,o-1,-o)}var r=0,a=1,s=0;for(this[t]=255&e;++r<n&&(a*=256);)e<0&&0===s&&0!==this[t+r-1]&&(s=1),this[t+r]=(e/a>>0)-s&255;return t+n},Ud.prototype.writeIntBE=function(e,t,n,i){if(e=+e,t|=0,!i){var o=Math.pow(2,8*n-1);pf(this,e,t,n,o-1,-o)}var r=n-1,a=1,s=0;for(this[t+r]=255&e;--r>=0&&(a*=256);)e<0&&0===s&&0!==this[t+r+1]&&(s=1),this[t+r]=(e/a>>0)-s&255;return t+n},Ud.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||pf(this,e,t,1,127,-128),Ud.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},Ud.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||pf(this,e,t,2,32767,-32768),Ud.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):gf(this,e,t,!0),t+2},Ud.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||pf(this,e,t,2,32767,-32768),Ud.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):gf(this,e,t,!1),t+2},Ud.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||pf(this,e,t,4,2147483647,-2147483648),Ud.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):mf(this,e,t,!0),t+4},Ud.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||pf(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),Ud.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):mf(this,e,t,!1),t+4},Ud.prototype.writeFloatLE=function(e,t,n){return yf(this,e,t,!0,n)},Ud.prototype.writeFloatBE=function(e,t,n){return yf(this,e,t,!1,n)},Ud.prototype.writeDoubleLE=function(e,t,n){return bf(this,e,t,!0,n)},Ud.prototype.writeDoubleBE=function(e,t,n){return bf(this,e,t,!1,n)},Ud.prototype.copy=function(e,t,n,i){if(n||(n=0),i||0===i||(i=this.length),t>=e.length&&(t=e.length),t||(t=0),i>0&&i<n&&(i=n),i===n)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-t<i-n&&(i=e.length-t+n);var o,r=i-n;if(this===e&&n<t&&t<i)for(o=r-1;o>=0;--o)e[o+t]=this[o+n];else if(r<1e3||!Ud.TYPED_ARRAY_SUPPORT)for(o=0;o<r;++o)e[o+t]=this[o+n];else Uint8Array.prototype.set.call(e,this.subarray(n,n+r),t);return r},Ud.prototype.fill=function(e,t,n,i){if("string"==typeof e){if("string"==typeof t?(i=t,t=0,n=this.length):"string"==typeof n&&(i=n,n=this.length),1===e.length){var o=e.charCodeAt(0);o<256&&(e=o)}if(void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!Ud.isEncoding(i))throw new TypeError("Unknown encoding: "+i)}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<n)throw new RangeError("Out of range index");if(n<=t)return this;var r;if(t>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(r=t;r<n;++r)this[r]=e;else{var a=Xd(e)?e:wf(new Ud(e,i).toString()),s=a.length;for(r=0;r<n-t;++r)this[r+t]=a[r%s]}return this};var _f=/[^+\\/0-9A-Za-z-_]/g;function kf(e){return e<16?"0"+e.toString(16):e.toString(16)}function wf(e,t){var n;t=t||1/0;for(var i=e.length,o=null,r=[],a=0;a<i;++a){if((n=e.charCodeAt(a))>55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&r.push(239,191,189);continue}if(a+1===i){(t-=3)>-1&&r.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&r.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&r.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;r.push(n)}else if(n<2048){if((t-=2)<0)break;r.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;r.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;r.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return r}function Sf(e){return function(e){var t,n,i,o,r,a;Id||Ad();var s=e.length;if(s%4>0)throw new Error("Invalid string. Length must be a multiple of 4");r="="===e[s-2]?2:"="===e[s-1]?1:0,a=new Rd(3*s/4-r),i=r>0?s-4:s;var l=0;for(t=0,n=0;t<i;t+=4,n+=3)o=xd[e.charCodeAt(t)]<<18|xd[e.charCodeAt(t+1)]<<12|xd[e.charCodeAt(t+2)]<<6|xd[e.charCodeAt(t+3)],a[l++]=o>>16&255,a[l++]=o>>8&255,a[l++]=255&o;return 2===r?(o=xd[e.charCodeAt(t)]<<2|xd[e.charCodeAt(t+1)]>>4,a[l++]=255&o):1===r&&(o=xd[e.charCodeAt(t)]<<10|xd[e.charCodeAt(t+1)]<<4|xd[e.charCodeAt(t+2)]>>2,a[l++]=o>>8&255,a[l++]=255&o),a}(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\\s+|\\s+$/g,"")}(e).replace(_f,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function Cf(e,t,n,i){for(var o=0;o<i&&!(o+n>=t.length||o>=e.length);++o)t[o+n]=e[o];return o}function Ef(e){return!!e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}var Tf,Of,jf,xf={},Rf=ti(Object.freeze({__proto__:null,default:{}}));!function(e){/*! Fabric.js Copyright 2008-2015, Printio (Juriy Zaytsev, Maxim Chernyak) */var t,n,i,o,r,a,s,l,c,u,h,d,f,p,g,m=m||{version:"5.3.0"};if(e.fabric=m,"undefined"!=typeof document&&"undefined"!=typeof window)document instanceof("undefined"!=typeof HTMLDocument?HTMLDocument:Document)?m.document=document:m.document=document.implementation.createHTMLDocument(""),m.window=window;else{var v=new Rf.JSDOM(decodeURIComponent("%3C!DOCTYPE%20html%3E%3Chtml%3E%3Chead%3E%3C%2Fhead%3E%3Cbody%3E%3C%2Fbody%3E%3C%2Fhtml%3E"),{features:{FetchExternalResources:["img"]},resources:"usable"}).window;m.document=v.document,m.jsdomImplForWrapper=Rf.implForWrapper,m.nodeCanvas=Rf.Canvas,m.window=v,DOMParser=m.window.DOMParser}function y(e,t){var n=e.canvas,i=t.targetCanvas,o=i.getContext("2d");o.translate(0,i.height),o.scale(1,-1);var r=n.height-i.height;o.drawImage(n,0,r,i.width,i.height,0,0,i.width,i.height)}function b(e,t){var n=t.targetCanvas.getContext("2d"),i=t.destinationWidth,o=t.destinationHeight,r=i*o*4,a=new Uint8Array(this.imageBuffer,0,r),s=new Uint8ClampedArray(this.imageBuffer,0,r);e.readPixels(0,0,i,o,e.RGBA,e.UNSIGNED_BYTE,a);var l=new ImageData(s,i,o);n.putImageData(l,0,0)}m.isTouchSupported="ontouchstart"in m.window||"ontouchstart"in m.document||m.window&&m.window.navigator&&m.window.navigator.maxTouchPoints>0,m.isLikelyNode=void 0!==Ud&&"undefined"==typeof window,m.SHARED_ATTRIBUTES=["display","transform","fill","fill-opacity","fill-rule","opacity","stroke","stroke-dasharray","stroke-linecap","stroke-dashoffset","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","id","paint-order","vector-effect","instantiated_by_use","clip-path"],m.DPI=96,m.reNum="(?:[-+]?(?:\\\\d+|\\\\d*\\\\.\\\\d+)(?:[eE][-+]?\\\\d+)?)",m.commaWsp="(?:\\\\s+,?\\\\s*|,\\\\s*)",m.rePathCommand=/([-+]?((\\d+\\.\\d+)|((\\d+)|(\\.\\d+)))(?:[eE][-+]?\\d+)?)/gi,m.reNonWord=/[ \\n\\.,;!\\?\\-]/,m.fontPaths={},m.iMatrix=[1,0,0,1,0,0],m.svgNS="http://www.w3.org/2000/svg",m.perfLimitSizeTotal=2097152,m.maxCacheSideLimit=4096,m.minCacheSideLimit=256,m.charWidthsCache={},m.textureSize=2048,m.disableStyleCopyPaste=!1,m.enableGLFiltering=!0,m.devicePixelRatio=m.window.devicePixelRatio||m.window.webkitDevicePixelRatio||m.window.mozDevicePixelRatio||1,m.browserShadowBlurConstant=1,m.arcToSegmentsCache={},m.boundsOfCurveCache={},m.cachesBoundsOfCurve=!0,m.forceGLPutImageData=!1,m.initFilterBackend=function(){return m.enableGLFiltering&&m.isWebglSupported&&m.isWebglSupported(m.textureSize)?(console.log("max texture size: "+m.maxTextureSize),new m.WebglFilterBackend({tileSize:m.textureSize})):m.Canvas2dFilterBackend?new m.Canvas2dFilterBackend:void 0},"undefined"!=typeof document&&"undefined"!=typeof window&&(window.fabric=m),function(){function e(e,t){if(this.__eventListeners[e]){var n=this.__eventListeners[e];t?n[n.indexOf(t)]=!1:m.util.array.fill(n,!1)}}function t(e,t){var n=function(){t.apply(this,arguments),this.off(e,n)}.bind(this);this.on(e,n)}m.Observable={fire:function(e,t){if(!this.__eventListeners)return this;var n=this.__eventListeners[e];if(!n)return this;for(var i=0,o=n.length;i<o;i++)n[i]&&n[i].call(this,t||{});return this.__eventListeners[e]=n.filter((function(e){return!1!==e})),this},on:function(e,t){if(this.__eventListeners||(this.__eventListeners={}),1===arguments.length)for(var n in e)this.on(n,e[n]);else this.__eventListeners[e]||(this.__eventListeners[e]=[]),this.__eventListeners[e].push(t);return this},once:function(e,n){if(1===arguments.length)for(var i in e)t.call(this,i,e[i]);else t.call(this,e,n);return this},off:function(t,n){if(!this.__eventListeners)return this;if(0===arguments.length)for(t in this.__eventListeners)e.call(this,t);else if(1===arguments.length&&"object"===_typeof(arguments[0]))for(var i in t)e.call(this,i,t[i]);else e.call(this,t,n);return this}}}(),m.Collection={_objects:[],add:function(){if(this._objects.push.apply(this._objects,arguments),this._onObjectAdded)for(var e=0,t=arguments.length;e<t;e++)this._onObjectAdded(arguments[e]);return this.renderOnAddRemove&&this.requestRenderAll(),this},insertAt:function(e,t,n){var i=this._objects;return n?i[t]=e:i.splice(t,0,e),this._onObjectAdded&&this._onObjectAdded(e),this.renderOnAddRemove&&this.requestRenderAll(),this},remove:function(){for(var e,t=this._objects,n=!1,i=0,o=arguments.length;i<o;i++)-1!==(e=t.indexOf(arguments[i]))&&(n=!0,t.splice(e,1),this._onObjectRemoved&&this._onObjectRemoved(arguments[i]));return this.renderOnAddRemove&&n&&this.requestRenderAll(),this},forEachObject:function(e,t){for(var n=this.getObjects(),i=0,o=n.length;i<o;i++)e.call(t,n[i],i,n);return this},getObjects:function(e){return void 0===e?this._objects.concat():this._objects.filter((function(t){return t.type===e}))},item:function(e){return this._objects[e]},isEmpty:function(){return 0===this._objects.length},size:function(){return this._objects.length},contains:function(e,t){return this._objects.indexOf(e)>-1||!!t&&this._objects.some((function(t){return"function"==typeof t.contains&&t.contains(e,!0)}))},complexity:function(){return this._objects.reduce((function(e,t){return e+=t.complexity?t.complexity():0}),0)}},m.CommonMethods={_setOptions:function(e){for(var t in e)this.set(t,e[t])},_initGradient:function(e,t){!e||!e.colorStops||e instanceof m.Gradient||this.set(t,new m.Gradient(e))},_initPattern:function(e,t,n){!e||!e.source||e instanceof m.Pattern?n&&n():this.set(t,new m.Pattern(e,n))},_setObject:function(e){for(var t in e)this._set(t,e[t])},set:function(e,t){return"object"===_typeof(e)?this._setObject(e):this._set(e,t),this},_set:function(e,t){this[e]=t},toggle:function(e){var t=this.get(e);return"boolean"==typeof t&&this.set(e,!t),this},get:function(e){return this[e]}},function(e){var t=Math.sqrt,n=Math.atan2,i=Math.pow,o=Math.PI/180,r=Math.PI/2;m.util={cos:function(e){if(0===e)return 1;switch(e<0&&(e=-e),e/r){case 1:case 3:return 0;case 2:return-1}return Math.cos(e)},sin:function(e){if(0===e)return 0;var t=1;switch(e<0&&(t=-1),e/r){case 1:return t;case 2:return 0;case 3:return-t}return Math.sin(e)},removeFromArray:function(e,t){var n=e.indexOf(t);return-1!==n&&e.splice(n,1),e},getRandomInt:function(e,t){return Math.floor(Math.random()*(t-e+1))+e},degreesToRadians:function(e){return e*o},radiansToDegrees:function(e){return e/o},rotatePoint:function(e,t,n){var i=new m.Point(e.x-t.x,e.y-t.y),o=m.util.rotateVector(i,n);return new m.Point(o.x,o.y).addEquals(t)},rotateVector:function(e,t){var n=m.util.sin(t),i=m.util.cos(t);return{x:e.x*i-e.y*n,y:e.x*n+e.y*i}},createVector:function(e,t){return new m.Point(t.x-e.x,t.y-e.y)},calcAngleBetweenVectors:function(e,t){return Math.acos((e.x*t.x+e.y*t.y)/(Math.hypot(e.x,e.y)*Math.hypot(t.x,t.y)))},getHatVector:function(e){return new m.Point(e.x,e.y).multiply(1/Math.hypot(e.x,e.y))},getBisector:function(e,t,n){var i=m.util.createVector(e,t),o=m.util.createVector(e,n),r=m.util.calcAngleBetweenVectors(i,o),a=r*(0===m.util.calcAngleBetweenVectors(m.util.rotateVector(i,r),o)?1:-1)/2;return{vector:m.util.getHatVector(m.util.rotateVector(i,a)),angle:r}},projectStrokeOnPoints:function(e,t,n){var i=[],o=t.strokeWidth/2,r=t.strokeUniform?new m.Point(1/t.scaleX,1/t.scaleY):new m.Point(1,1),a=function(e){var t=o/Math.hypot(e.x,e.y);return new m.Point(e.x*t*r.x,e.y*t*r.y)};return e.length<=1||e.forEach((function(s,l){var c,u,h=new m.Point(s.x,s.y);0===l?(u=e[l+1],c=n?a(m.util.createVector(u,h)).addEquals(h):e[e.length-1]):l===e.length-1?(c=e[l-1],u=n?a(m.util.createVector(c,h)).addEquals(h):e[0]):(c=e[l-1],u=e[l+1]);var d,f,p=m.util.getBisector(h,c,u),g=p.vector,v=p.angle;if("miter"===t.strokeLineJoin&&(d=-o/Math.sin(v/2),f=new m.Point(g.x*d*r.x,g.y*d*r.y),Math.hypot(f.x,f.y)/o<=t.strokeMiterLimit))return i.push(h.add(f)),void i.push(h.subtract(f));d=-o*Math.SQRT2,f=new m.Point(g.x*d*r.x,g.y*d*r.y),i.push(h.add(f)),i.push(h.subtract(f))})),i},transformPoint:function(e,t,n){return n?new m.Point(t[0]*e.x+t[2]*e.y,t[1]*e.x+t[3]*e.y):new m.Point(t[0]*e.x+t[2]*e.y+t[4],t[1]*e.x+t[3]*e.y+t[5])},makeBoundingBoxFromPoints:function(e,t){if(t)for(var n=0;n<e.length;n++)e[n]=m.util.transformPoint(e[n],t);var i=[e[0].x,e[1].x,e[2].x,e[3].x],o=m.util.array.min(i),r=m.util.array.max(i)-o,a=[e[0].y,e[1].y,e[2].y,e[3].y],s=m.util.array.min(a);return{left:o,top:s,width:r,height:m.util.array.max(a)-s}},invertTransform:function(e){var t=1/(e[0]*e[3]-e[1]*e[2]),n=[t*e[3],-t*e[1],-t*e[2],t*e[0]],i=m.util.transformPoint({x:e[4],y:e[5]},n,!0);return n[4]=-i.x,n[5]=-i.y,n},toFixed:function(e,t){return parseFloat(Number(e).toFixed(t))},parseUnit:function(e,t){var n=/\\D{0,2}$/.exec(e),i=parseFloat(e);switch(t||(t=m.Text.DEFAULT_SVG_FONT_SIZE),n[0]){case"mm":return i*m.DPI/25.4;case"cm":return i*m.DPI/2.54;case"in":return i*m.DPI;case"pt":return i*m.DPI/72;case"pc":return i*m.DPI/72*12;case"em":return i*t;default:return i}},falseFunction:function(){return!1},getKlass:function(e,t){return e=m.util.string.camelize(e.charAt(0).toUpperCase()+e.slice(1)),m.util.resolveNamespace(t)[e]},getSvgAttributes:function(e){var t=["instantiated_by_use","style","id","class"];switch(e){case"linearGradient":t=t.concat(["x1","y1","x2","y2","gradientUnits","gradientTransform"]);break;case"radialGradient":t=t.concat(["gradientUnits","gradientTransform","cx","cy","r","fx","fy","fr"]);break;case"stop":t=t.concat(["offset","stop-color","stop-opacity"])}return t},resolveNamespace:function(t){if(!t)return m;var n,i=t.split("."),o=i.length,r=e||m.window;for(n=0;n<o;++n)r=r[i[n]];return r},loadImage:function(e,t,n,i){if(e){var o=m.util.createImage(),r=function(){t&&t.call(n,o,!1),o=o.onload=o.onerror=null};o.onload=r,o.onerror=function(){m.log("Error loading "+o.src),t&&t.call(n,null,!0),o=o.onload=o.onerror=null},0!==e.indexOf("data")&&null!=i&&(o.crossOrigin=i),"data:image/svg"===e.substring(0,14)&&(o.onload=null,m.util.loadImageInDom(o,r)),o.src=e}else t&&t.call(n,e)},loadImageInDom:function(e,t){var n=m.document.createElement("div");n.style.width=n.style.height="1px",n.style.left=n.style.top="-100%",n.style.position="absolute",n.appendChild(e),m.document.querySelector("body").appendChild(n),e.onload=function(){t(),n.parentNode.removeChild(n),n=null}},enlivenObjects:function(e,t,n,i){var o=[],r=0,a=(e=e||[]).length;function s(){++r===a&&t&&t(o.filter((function(e){return e})))}a?e.forEach((function(e,t){e&&e.type?m.util.getKlass(e.type,n).fromObject(e,(function(n,r){r||(o[t]=n),i&&i(e,n,r),s()})):s()})):t&&t(o)},enlivenObjectEnlivables:function(e,t,n){var i=m.Object.ENLIVEN_PROPS.filter((function(t){return!!e[t]}));m.util.enlivenObjects(i.map((function(t){return e[t]})),(function(e){var o={};i.forEach((function(n,i){o[n]=e[i],t&&(t[n]=e[i])})),n&&n(o)}))},enlivenPatterns:function(e,t){function n(){++o===r&&t&&t(i)}var i=[],o=0,r=(e=e||[]).length;r?e.forEach((function(e,t){e&&e.source?new m.Pattern(e,(function(e){i[t]=e,n()})):(i[t]=e,n())})):t&&t(i)},groupSVGElements:function(e,t,n){var i;return e&&1===e.length?(void 0!==n&&(e[0].sourcePath=n),e[0]):(t&&(t.width&&t.height?t.centerPoint={x:t.width/2,y:t.height/2}:(delete t.width,delete t.height)),i=new m.Group(e,t),void 0!==n&&(i.sourcePath=n),i)},populateWithProperties:function(e,t,n){if(n&&Array.isArray(n))for(var i=0,o=n.length;i<o;i++)n[i]in e&&(t[n[i]]=e[n[i]])},createCanvasElement:function(){return m.document.createElement("canvas")},copyCanvasElement:function(e){var t=m.util.createCanvasElement();return t.width=e.width,t.height=e.height,t.getContext("2d").drawImage(e,0,0),t},toDataURL:function(e,t,n){return e.toDataURL("image/"+t,n)},createImage:function(){return m.document.createElement("img")},multiplyTransformMatrices:function(e,t,n){return[e[0]*t[0]+e[2]*t[1],e[1]*t[0]+e[3]*t[1],e[0]*t[2]+e[2]*t[3],e[1]*t[2]+e[3]*t[3],n?0:e[0]*t[4]+e[2]*t[5]+e[4],n?0:e[1]*t[4]+e[3]*t[5]+e[5]]},qrDecompose:function(e){var r=n(e[1],e[0]),a=i(e[0],2)+i(e[1],2),s=t(a),l=(e[0]*e[3]-e[2]*e[1])/s,c=n(e[0]*e[2]+e[1]*e[3],a);return{angle:r/o,scaleX:s,scaleY:l,skewX:c/o,skewY:0,translateX:e[4],translateY:e[5]}},calcRotateMatrix:function(e){if(!e.angle)return m.iMatrix.concat();var t=m.util.degreesToRadians(e.angle),n=m.util.cos(t),i=m.util.sin(t);return[n,i,-i,n,0,0]},calcDimensionsMatrix:function(e){var t=void 0===e.scaleX?1:e.scaleX,n=void 0===e.scaleY?1:e.scaleY,i=[e.flipX?-t:t,0,0,e.flipY?-n:n,0,0],o=m.util.multiplyTransformMatrices,r=m.util.degreesToRadians;return e.skewX&&(i=o(i,[1,0,Math.tan(r(e.skewX)),1],!0)),e.skewY&&(i=o(i,[1,Math.tan(r(e.skewY)),0,1],!0)),i},composeMatrix:function(e){var t=[1,0,0,1,e.translateX||0,e.translateY||0],n=m.util.multiplyTransformMatrices;return e.angle&&(t=n(t,m.util.calcRotateMatrix(e))),(1!==e.scaleX||1!==e.scaleY||e.skewX||e.skewY||e.flipX||e.flipY)&&(t=n(t,m.util.calcDimensionsMatrix(e))),t},resetObjectTransform:function(e){e.scaleX=1,e.scaleY=1,e.skewX=0,e.skewY=0,e.flipX=!1,e.flipY=!1,e.rotate(0)},saveObjectTransform:function(e){return{scaleX:e.scaleX,scaleY:e.scaleY,skewX:e.skewX,skewY:e.skewY,angle:e.angle,left:e.left,flipX:e.flipX,flipY:e.flipY,top:e.top}},isTransparent:function(e,t,n,i){i>0&&(t>i?t-=i:t=0,n>i?n-=i:n=0);var o,r=!0,a=e.getImageData(t,n,2*i||1,2*i||1),s=a.data.length;for(o=3;o<s&&!1!==(r=a.data[o]<=0);o+=4);return a=null,r},parsePreserveAspectRatioAttribute:function(e){var t,n="meet",i=e.split(" ");return i&&i.length&&("meet"!==(n=i.pop())&&"slice"!==n?(t=n,n="meet"):i.length&&(t=i.pop())),{meetOrSlice:n,alignX:"none"!==t?t.slice(1,4):"none",alignY:"none"!==t?t.slice(5,8):"none"}},clearFabricFontCache:function(e){(e=(e||"").toLowerCase())?m.charWidthsCache[e]&&delete m.charWidthsCache[e]:m.charWidthsCache={}},limitDimsByArea:function(e,t){var n=Math.sqrt(t*e),i=Math.floor(t/n);return{x:Math.floor(n),y:i}},capValue:function(e,t,n){return Math.max(e,Math.min(t,n))},findScaleToFit:function(e,t){return Math.min(t.width/e.width,t.height/e.height)},findScaleToCover:function(e,t){return Math.max(t.width/e.width,t.height/e.height)},matrixToSVG:function(e){return"matrix("+e.map((function(e){return m.util.toFixed(e,m.Object.NUM_FRACTION_DIGITS)})).join(" ")+")"},removeTransformFromObject:function(e,t){var n=m.util.invertTransform(t),i=m.util.multiplyTransformMatrices(n,e.calcOwnMatrix());m.util.applyTransformToObject(e,i)},addTransformToObject:function(e,t){m.util.applyTransformToObject(e,m.util.multiplyTransformMatrices(t,e.calcOwnMatrix()))},applyTransformToObject:function(e,t){var n=m.util.qrDecompose(t),i=new m.Point(n.translateX,n.translateY);e.flipX=!1,e.flipY=!1,e.set("scaleX",n.scaleX),e.set("scaleY",n.scaleY),e.skewX=n.skewX,e.skewY=n.skewY,e.angle=n.angle,e.setPositionByOrigin(i,"center","center")},sizeAfterTransform:function(e,t,n){var i=e/2,o=t/2,r=[{x:-i,y:-o},{x:i,y:-o},{x:-i,y:o},{x:i,y:o}],a=m.util.calcDimensionsMatrix(n),s=m.util.makeBoundingBoxFromPoints(r,a);return{x:s.width,y:s.height}},mergeClipPaths:function(e,t){var n=e,i=t;n.inverted&&!i.inverted&&(n=t,i=e),m.util.applyTransformToObject(i,m.util.multiplyTransformMatrices(m.util.invertTransform(n.calcTransformMatrix()),i.calcTransformMatrix()));var o=n.inverted&&i.inverted;return o&&(n.inverted=i.inverted=!1),new m.Group([n],{clipPath:i,inverted:o})},hasStyleChanged:function(e,t,n){return n=n||!1,e.fill!==t.fill||e.stroke!==t.stroke||e.strokeWidth!==t.strokeWidth||e.fontSize!==t.fontSize||e.fontFamily!==t.fontFamily||e.fontWeight!==t.fontWeight||e.fontStyle!==t.fontStyle||e.textBackgroundColor!==t.textBackgroundColor||e.deltaY!==t.deltaY||n&&(e.overline!==t.overline||e.underline!==t.underline||e.linethrough!==t.linethrough)},stylesToArray:function(e,t){e=m.util.object.clone(e,!0);for(var n=t.split("\\n"),i=-1,o={},r=[],a=0;a<n.length;a++)if(e[a])for(var s=0;s<n[a].length;s++){i++;var l=e[a][s];if(l&&Object.keys(l).length>0)m.util.hasStyleChanged(o,l,!0)?r.push({start:i,end:i+1,style:l}):r[r.length-1].end++;o=l||{}}else i+=n[a].length;return r},stylesFromArray:function(e,t){if(!Array.isArray(e))return e;for(var n=t.split("\\n"),i=-1,o=0,r={},a=0;a<n.length;a++)for(var s=0;s<n[a].length;s++)i++,e[o]&&e[o].start<=i&&i<e[o].end&&(r[a]=r[a]||{},r[a][s]=Object.assign({},e[o].style),i===e[o].end-1&&o++);return r}}}(e),function(){var e=Array.prototype.join,t={m:2,l:2,h:1,v:1,c:6,s:4,q:4,t:2,a:7},n={m:"l",M:"L"};function i(e,t,n,i,o,r,a,s,l,c,u){var h=m.util.cos(e),d=m.util.sin(e),f=m.util.cos(t),p=m.util.sin(t),g=n*o*f-i*r*p+a,v=i*o*f+n*r*p+s;return["C",c+l*(-n*o*d-i*r*h),u+l*(-i*o*d+n*r*h),g+l*(n*o*p+i*r*f),v+l*(i*o*p-n*r*f),g,v]}function o(e,t,n,i){var o=Math.atan2(t,e),r=Math.atan2(i,n);return r>=o?r-o:2*Math.PI-(o-r)}function r(e,t,n){for(var r=n[1],a=n[2],s=n[3],l=n[4],c=n[5],u=function(e,t,n,r,a,s,l){var c=Math.PI,u=l*c/180,h=m.util.sin(u),d=m.util.cos(u),f=0,p=0,g=-d*e*.5-h*t*.5,v=-d*t*.5+h*e*.5,y=(n=Math.abs(n))*n,b=(r=Math.abs(r))*r,_=v*v,k=g*g,w=y*b-y*_-b*k,S=0;if(w<0){var C=Math.sqrt(1-w/(y*b));n*=C,r*=C}else S=(a===s?-1:1)*Math.sqrt(w/(y*_+b*k));var E=S*n*v/r,T=-S*r*g/n,O=d*E-h*T+.5*e,j=h*E+d*T+.5*t,x=o(1,0,(g-E)/n,(v-T)/r),R=o((g-E)/n,(v-T)/r,(-g-E)/n,(-v-T)/r);0===s&&R>0?R-=2*c:1===s&&R<0&&(R+=2*c);for(var I=Math.ceil(Math.abs(R/c*2)),A=[],D=R/I,N=8/3*Math.sin(D/4)*Math.sin(D/4)/Math.sin(D/2),P=x+D,L=0;L<I;L++)A[L]=i(x,P,d,h,n,r,O,j,N,f,p),f=A[L][5],p=A[L][6],x=P,P+=D;return A}(n[6]-e,n[7]-t,r,a,l,c,s),h=0,d=u.length;h<d;h++)u[h][1]+=e,u[h][2]+=t,u[h][3]+=e,u[h][4]+=t,u[h][5]+=e,u[h][6]+=t;return u}function a(e,t,n,i){return Math.sqrt((n-e)*(n-e)+(i-t)*(i-t))}function s(e,t,n,i,o,r,a,s){return function(l){var c,u=(c=l)*c*c,h=function(e){return 3*e*e*(1-e)}(l),d=function(e){return 3*e*(1-e)*(1-e)}(l),f=function(e){return(1-e)*(1-e)*(1-e)}(l);return{x:a*u+o*h+n*d+e*f,y:s*u+r*h+i*d+t*f}}}function l(e,t,n,i,o,r,a,s){return function(l){var c=1-l,u=3*c*c*(n-e)+6*c*l*(o-n)+3*l*l*(a-o),h=3*c*c*(i-t)+6*c*l*(r-i)+3*l*l*(s-r);return Math.atan2(h,u)}}function c(e,t,n,i,o,r){return function(a){var s,l=(s=a)*s,c=function(e){return 2*e*(1-e)}(a),u=function(e){return(1-e)*(1-e)}(a);return{x:o*l+n*c+e*u,y:r*l+i*c+t*u}}}function u(e,t,n,i,o,r){return function(a){var s=1-a,l=2*s*(n-e)+2*a*(o-n),c=2*s*(i-t)+2*a*(r-i);return Math.atan2(c,l)}}function h(e,t,n){var i,o,r={x:t,y:n},s=0;for(o=1;o<=100;o+=1)i=e(o/100),s+=a(r.x,r.y,i.x,i.y),r=i;return s}function d(e,t){for(var n,i,o,r=0,s=0,l=e.iterator,c={x:e.x,y:e.y},u=.01,h=e.angleFinder;s<t&&u>1e-4;)n=l(r),o=r,(i=a(c.x,c.y,n.x,n.y))+s>t?(r-=u,u/=2):(c=n,r+=u,s+=i);return n.angle=h(o),n}function f(e){for(var t,n,i,o,r=0,d=e.length,f=0,p=0,g=0,m=0,v=[],y=0;y<d;y++){switch(i={x:f,y:p,command:(t=e[y])[0]},t[0]){case"M":i.length=0,g=f=t[1],m=p=t[2];break;case"L":i.length=a(f,p,t[1],t[2]),f=t[1],p=t[2];break;case"C":n=s(f,p,t[1],t[2],t[3],t[4],t[5],t[6]),o=l(f,p,t[1],t[2],t[3],t[4],t[5],t[6]),i.iterator=n,i.angleFinder=o,i.length=h(n,f,p),f=t[5],p=t[6];break;case"Q":n=c(f,p,t[1],t[2],t[3],t[4]),o=u(f,p,t[1],t[2],t[3],t[4]),i.iterator=n,i.angleFinder=o,i.length=h(n,f,p),f=t[3],p=t[4];break;case"Z":case"z":i.destX=g,i.destY=m,i.length=a(f,p,g,m),f=g,p=m}r+=i.length,v.push(i)}return v.push({length:r,x:f,y:p}),v}m.util.joinPath=function(e){return e.map((function(e){return e.join(" ")})).join(" ")},m.util.parsePath=function(e){var i,o,r,a,s,l=[],c=[],u=m.rePathCommand,h="[-+]?(?:\\\\d*\\\\.\\\\d+|\\\\d+\\\\.?)(?:[eE][-+]?\\\\d+)?\\\\s*",d="("+h+")"+m.commaWsp,f="([01])"+m.commaWsp+"?",p=new RegExp(d+"?"+d+"?"+d+f+f+d+"?("+h+")","g");if(!e||!e.match)return l;for(var g,v=0,y=(s=e.match(/[mzlhvcsqta][^mzlhvcsqta]*/gi)).length;v<y;v++){a=(i=s[v]).slice(1).trim(),c.length=0;var b=i.charAt(0);if(g=[b],"a"===b.toLowerCase())for(var _;_=p.exec(a);)for(var k=1;k<_.length;k++)c.push(_[k]);else for(;r=u.exec(a);)c.push(r[0]);k=0;for(var w=c.length;k<w;k++)o=parseFloat(c[k]),isNaN(o)||g.push(o);var S=t[b.toLowerCase()],C=n[b]||b;if(g.length-1>S)for(var E=1,T=g.length;E<T;E+=S)l.push([b].concat(g.slice(E,E+S))),b=C;else l.push(g)}return l},m.util.makePathSimpler=function(e){var t,n,i,o,a,s,l=0,c=0,u=e.length,h=0,d=0,f=[];for(n=0;n<u;++n){switch(i=!1,(t=e[n].slice(0))[0]){case"l":t[0]="L",t[1]+=l,t[2]+=c;case"L":l=t[1],c=t[2];break;case"h":t[1]+=l;case"H":t[0]="L",t[2]=c,l=t[1];break;case"v":t[1]+=c;case"V":t[0]="L",c=t[1],t[1]=l,t[2]=c;break;case"m":t[0]="M",t[1]+=l,t[2]+=c;case"M":l=t[1],c=t[2],h=t[1],d=t[2];break;case"c":t[0]="C",t[1]+=l,t[2]+=c,t[3]+=l,t[4]+=c,t[5]+=l,t[6]+=c;case"C":a=t[3],s=t[4],l=t[5],c=t[6];break;case"s":t[0]="S",t[1]+=l,t[2]+=c,t[3]+=l,t[4]+=c;case"S":"C"===o?(a=2*l-a,s=2*c-s):(a=l,s=c),l=t[3],c=t[4],t[0]="C",t[5]=t[3],t[6]=t[4],t[3]=t[1],t[4]=t[2],t[1]=a,t[2]=s,a=t[3],s=t[4];break;case"q":t[0]="Q",t[1]+=l,t[2]+=c,t[3]+=l,t[4]+=c;case"Q":a=t[1],s=t[2],l=t[3],c=t[4];break;case"t":t[0]="T",t[1]+=l,t[2]+=c;case"T":"Q"===o?(a=2*l-a,s=2*c-s):(a=l,s=c),t[0]="Q",l=t[1],c=t[2],t[1]=a,t[2]=s,t[3]=l,t[4]=c;break;case"a":t[0]="A",t[6]+=l,t[7]+=c;case"A":i=!0,f=f.concat(r(l,c,t)),l=t[6],c=t[7];break;case"z":case"Z":l=h,c=d}i||f.push(t),o=t[0]}return f},m.util.getSmoothPathFromPoints=function(e,t){var n,i=[],o=new m.Point(e[0].x,e[0].y),r=new m.Point(e[1].x,e[1].y),a=e.length,s=1,l=0,c=a>2;for(t=t||0,c&&(s=e[2].x<r.x?-1:e[2].x===r.x?0:1,l=e[2].y<r.y?-1:e[2].y===r.y?0:1),i.push(["M",o.x-s*t,o.y-l*t]),n=1;n<a;n++){if(!o.eq(r)){var u=o.midPointFrom(r);i.push(["Q",o.x,o.y,u.x,u.y])}o=e[n],n+1<e.length&&(r=e[n+1])}return c&&(s=o.x>e[n-2].x?1:o.x===e[n-2].x?0:-1,l=o.y>e[n-2].y?1:o.y===e[n-2].y?0:-1),i.push(["L",o.x+s*t,o.y+l*t]),i},m.util.getPathSegmentsInfo=f,m.util.getBoundsOfCurve=function(t,n,i,o,r,a,s,l){var c;if(m.cachesBoundsOfCurve&&(c=e.call(arguments),m.boundsOfCurveCache[c]))return m.boundsOfCurveCache[c];var u,h,d,f,p,g,v,y,b=Math.sqrt,_=Math.min,k=Math.max,w=Math.abs,S=[],C=[[],[]];h=6*t-12*i+6*r,u=-3*t+9*i-9*r+3*s,d=3*i-3*t;for(var E=0;E<2;++E)if(E>0&&(h=6*n-12*o+6*a,u=-3*n+9*o-9*a+3*l,d=3*o-3*n),w(u)<1e-12){if(w(h)<1e-12)continue;0<(f=-d/h)&&f<1&&S.push(f)}else(v=h*h-4*d*u)<0||(0<(p=(-h+(y=b(v)))/(2*u))&&p<1&&S.push(p),0<(g=(-h-y)/(2*u))&&g<1&&S.push(g));for(var T,O,j,x=S.length,R=x;x--;)T=(j=1-(f=S[x]))*j*j*t+3*j*j*f*i+3*j*f*f*r+f*f*f*s,C[0][x]=T,O=j*j*j*n+3*j*j*f*o+3*j*f*f*a+f*f*f*l,C[1][x]=O;C[0][R]=t,C[1][R]=n,C[0][R+1]=s,C[1][R+1]=l;var I=[{x:_.apply(null,C[0]),y:_.apply(null,C[1])},{x:k.apply(null,C[0]),y:k.apply(null,C[1])}];return m.cachesBoundsOfCurve&&(m.boundsOfCurveCache[c]=I),I},m.util.getPointOnPath=function(e,t,n){n||(n=f(e));for(var i=0;t-n[i].length>0&&i<n.length-2;)t-=n[i].length,i++;var o,r=n[i],a=t/r.length,s=r.command,l=e[i];switch(s){case"M":return{x:r.x,y:r.y,angle:0};case"Z":case"z":return(o=new m.Point(r.x,r.y).lerp(new m.Point(r.destX,r.destY),a)).angle=Math.atan2(r.destY-r.y,r.destX-r.x),o;case"L":return(o=new m.Point(r.x,r.y).lerp(new m.Point(l[1],l[2]),a)).angle=Math.atan2(l[2]-r.y,l[1]-r.x),o;case"C":case"Q":return d(r,t)}},m.util.transformPath=function(e,t,n){return n&&(t=m.util.multiplyTransformMatrices(t,[1,0,0,1,-n.x,-n.y])),e.map((function(e){for(var n=e.slice(0),i={},o=1;o<e.length-1;o+=2)i.x=e[o],i.y=e[o+1],i=m.util.transformPoint(i,t),n[o]=i.x,n[o+1]=i.y;return n}))}}(),function(){var e=Array.prototype.slice;function t(e,t,n){if(e&&0!==e.length){var i=e.length-1,o=t?e[i][t]:e[i];if(t)for(;i--;)n(e[i][t],o)&&(o=e[i][t]);else for(;i--;)n(e[i],o)&&(o=e[i]);return o}}m.util.array={fill:function(e,t){for(var n=e.length;n--;)e[n]=t;return e},invoke:function(t,n){for(var i=e.call(arguments,2),o=[],r=0,a=t.length;r<a;r++)o[r]=i.length?t[r][n].apply(t[r],i):t[r][n].call(t[r]);return o},min:function(e,n){return t(e,n,(function(e,t){return e<t}))},max:function(e,n){return t(e,n,(function(e,t){return e>=t}))}}}(),function(){function e(t,n,i){if(i)if(!m.isLikelyNode&&n instanceof Element)t=n;else if(n instanceof Array){t=[];for(var o=0,r=n.length;o<r;o++)t[o]=e({},n[o],i)}else if(n&&"object"===_typeof(n))for(var a in n)"canvas"===a||"group"===a?t[a]=null:n.hasOwnProperty(a)&&(t[a]=e({},n[a],i));else t=n;else for(var a in n)t[a]=n[a];return t}m.util.object={extend:e,clone:function(t,n){return e({},t,n)}},m.util.object.extend(m.util,m.Observable)}(),function(){function e(e,t){var n=e.charCodeAt(t);if(isNaN(n))return"";if(n<55296||n>57343)return e.charAt(t);if(55296<=n&&n<=56319){if(e.length<=t+1)throw"High surrogate without following low surrogate";var i=e.charCodeAt(t+1);if(56320>i||i>57343)throw"High surrogate without following low surrogate";return e.charAt(t)+e.charAt(t+1)}if(0===t)throw"Low surrogate without preceding high surrogate";var o=e.charCodeAt(t-1);if(55296>o||o>56319)throw"Low surrogate without preceding high surrogate";return!1}m.util.string={camelize:function(e){return e.replace(/-+(.)?/g,(function(e,t){return t?t.toUpperCase():""}))},capitalize:function(e,t){return e.charAt(0).toUpperCase()+(t?e.slice(1):e.slice(1).toLowerCase())},escapeXml:function(e){return e.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/\'/g,"&apos;").replace(/</g,"&lt;").replace(/>/g,"&gt;")},graphemeSplit:function(t){var n,i=0,o=[];for(i=0;i<t.length;i++)!1!==(n=e(t,i))&&o.push(n);return o}}}(),function(){var e=Array.prototype.slice,t=function(){},n=function(){for(var e in{toString:1})if("toString"===e)return!1;return!0}(),i=function(e,t,i){for(var o in t)o in e.prototype&&"function"==typeof e.prototype[o]&&(t[o]+"").indexOf("callSuper")>-1?e.prototype[o]=function(e){return function(){var n=this.constructor.superclass;this.constructor.superclass=i;var o=t[e].apply(this,arguments);if(this.constructor.superclass=n,"initialize"!==e)return o}}(o):e.prototype[o]=t[o],n&&(t.toString!==Object.prototype.toString&&(e.prototype.toString=t.toString),t.valueOf!==Object.prototype.valueOf&&(e.prototype.valueOf=t.valueOf))};function o(){}function r(t){for(var n=null,i=this;i.constructor.superclass;){var o=i.constructor.superclass.prototype[t];if(i[t]!==o){n=o;break}i=i.constructor.superclass.prototype}return n?arguments.length>1?n.apply(this,e.call(arguments,1)):n.call(this):console.log("tried to callSuper "+t+", method not found in prototype chain",this)}m.util.createClass=function(){var n=null,a=e.call(arguments,0);function s(){this.initialize.apply(this,arguments)}"function"==typeof a[0]&&(n=a.shift()),s.superclass=n,s.subclasses=[],n&&(o.prototype=n.prototype,s.prototype=new o,n.subclasses.push(s));for(var l=0,c=a.length;l<c;l++)i(s,a[l],n);return s.prototype.initialize||(s.prototype.initialize=t),s.prototype.constructor=s,s.prototype.callSuper=r,s}}(),t=!!m.document.createElement("div").attachEvent,n=["touchstart","touchmove","touchend"],m.util.addListener=function(e,n,i,o){e&&e.addEventListener(n,i,!t&&o)},m.util.removeListener=function(e,n,i,o){e&&e.removeEventListener(n,i,!t&&o)},m.util.getPointer=function(e){var t=e.target,n=m.util.getScrollLeftTop(t),i=function(e){var t=e.changedTouches;return t&&t[0]?t[0]:e}(e);return{x:i.clientX+n.left,y:i.clientY+n.top}},m.util.isTouchEvent=function(e){return n.indexOf(e.type)>-1||"touch"===e.pointerType},i=m.document.createElement("div"),o="string"==typeof i.style.opacity,r="string"==typeof i.style.filter,a=/alpha\\s*\\(\\s*opacity\\s*=\\s*([^\\)]+)\\)/,s=function(e){return e},o?s=function(e,t){return e.style.opacity=t,e}:r&&(s=function(e,t){var n=e.style;return e.currentStyle&&!e.currentStyle.hasLayout&&(n.zoom=1),a.test(n.filter)?(t=t>=.9999?"":"alpha(opacity="+100*t+")",n.filter=n.filter.replace(a,t)):n.filter+=" alpha(opacity="+100*t+")",e}),m.util.setStyle=function(e,t){var n=e.style;if(!n)return e;if("string"==typeof t)return e.style.cssText+=";"+t,t.indexOf("opacity")>-1?s(e,t.match(/opacity:\\s*(\\d?\\.?\\d*)/)[1]):e;for(var i in t)if("opacity"===i)s(e,t[i]);else{var o="float"===i||"cssFloat"===i?void 0===n.styleFloat?"cssFloat":"styleFloat":i;n.setProperty(o,t[i])}return e},function(){var e=Array.prototype.slice;var t,n,i=function(t){return e.call(t,0)};try{t=i(m.document.childNodes)instanceof Array}catch(e){}function o(e,t){var n=m.document.createElement(e);for(var i in t)"class"===i?n.className=t[i]:"for"===i?n.htmlFor=t[i]:n.setAttribute(i,t[i]);return n}function r(e){for(var t=0,n=0,i=m.document.documentElement,o=m.document.body||{scrollLeft:0,scrollTop:0};e&&(e.parentNode||e.host)&&((e=e.parentNode||e.host)===m.document?(t=o.scrollLeft||i.scrollLeft||0,n=o.scrollTop||i.scrollTop||0):(t+=e.scrollLeft||0,n+=e.scrollTop||0),1!==e.nodeType||"fixed"!==e.style.position););return{left:t,top:n}}t||(i=function(e){for(var t=new Array(e.length),n=e.length;n--;)t[n]=e[n];return t}),n=m.document.defaultView&&m.document.defaultView.getComputedStyle?function(e,t){var n=m.document.defaultView.getComputedStyle(e,null);return n?n[t]:void 0}:function(e,t){var n=e.style[t];return!n&&e.currentStyle&&(n=e.currentStyle[t]),n},function(){var e=m.document.documentElement.style,t="userSelect"in e?"userSelect":"MozUserSelect"in e?"MozUserSelect":"WebkitUserSelect"in e?"WebkitUserSelect":"KhtmlUserSelect"in e?"KhtmlUserSelect":"";m.util.makeElementUnselectable=function(e){return void 0!==e.onselectstart&&(e.onselectstart=m.util.falseFunction),t?e.style[t]="none":"string"==typeof e.unselectable&&(e.unselectable="on"),e},m.util.makeElementSelectable=function(e){return void 0!==e.onselectstart&&(e.onselectstart=null),t?e.style[t]="":"string"==typeof e.unselectable&&(e.unselectable=""),e}}(),m.util.setImageSmoothing=function(e,t){e.imageSmoothingEnabled=e.imageSmoothingEnabled||e.webkitImageSmoothingEnabled||e.mozImageSmoothingEnabled||e.msImageSmoothingEnabled||e.oImageSmoothingEnabled,e.imageSmoothingEnabled=t},m.util.getById=function(e){return"string"==typeof e?m.document.getElementById(e):e},m.util.toArray=i,m.util.addClass=function(e,t){e&&-1===(" "+e.className+" ").indexOf(" "+t+" ")&&(e.className+=(e.className?" ":"")+t)},m.util.makeElement=o,m.util.wrapElement=function(e,t,n){return"string"==typeof t&&(t=o(t,n)),e.parentNode&&e.parentNode.replaceChild(t,e),t.appendChild(e),t},m.util.getScrollLeftTop=r,m.util.getElementOffset=function(e){var t,i,o=e&&e.ownerDocument,a={left:0,top:0},s={left:0,top:0},l={borderLeftWidth:"left",borderTopWidth:"top",paddingLeft:"left",paddingTop:"top"};if(!o)return s;for(var c in l)s[l[c]]+=parseInt(n(e,c),10)||0;return t=o.documentElement,void 0!==e.getBoundingClientRect&&(a=e.getBoundingClientRect()),i=r(e),{left:a.left+i.left-(t.clientLeft||0)+s.left,top:a.top+i.top-(t.clientTop||0)+s.top}},m.util.getNodeCanvas=function(e){var t=m.jsdomImplForWrapper(e);return t._canvas||t._image},m.util.cleanUpJsdomNode=function(e){if(m.isLikelyNode){var t=m.jsdomImplForWrapper(e);t&&(t._image=null,t._canvas=null,t._currentSrc=null,t._attributes=null,t._classList=null)}}}(),function(){function e(){}m.util.request=function(t,n){n||(n={});var i=n.method?n.method.toUpperCase():"GET",o=n.onComplete||function(){},r=new m.window.XMLHttpRequest,a=n.body||n.parameters;return r.onreadystatechange=function(){4===r.readyState&&(o(r),r.onreadystatechange=e)},"GET"===i&&(a=null,"string"==typeof n.parameters&&(t=function(e,t){return e+(/\\?/.test(e)?"&":"?")+t}(t,n.parameters))),r.open(i,t,!0),"POST"!==i&&"PUT"!==i||r.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),r.send(a),r}}(),m.log=console.log,m.warn=console.warn,function(){var e=m.util.object.extend,t=m.util.object.clone,n=[];function i(){return!1}function o(e,t,n,i){return-n*Math.cos(e/i*(Math.PI/2))+n+t}m.util.object.extend(n,{cancelAll:function(){var e=this.splice(0);return e.forEach((function(e){e.cancel()})),e},cancelByCanvas:function(e){if(!e)return[];var t=this.filter((function(t){return"object"===_typeof(t.target)&&t.target.canvas===e}));return t.forEach((function(e){e.cancel()})),t},cancelByTarget:function(e){var t=this.findAnimationsByTarget(e);return t.forEach((function(e){e.cancel()})),t},findAnimationIndex:function(e){return this.indexOf(this.findAnimation(e))},findAnimation:function(e){return this.find((function(t){return t.cancel===e}))},findAnimationsByTarget:function(e){return e?this.filter((function(t){return t.target===e})):[]}});var r=m.window.requestAnimationFrame||m.window.webkitRequestAnimationFrame||m.window.mozRequestAnimationFrame||m.window.oRequestAnimationFrame||m.window.msRequestAnimationFrame||function(e){return m.window.setTimeout(e,1e3/60)},a=m.window.cancelAnimationFrame||m.window.clearTimeout;function s(){return r.apply(m.window,arguments)}m.util.animate=function(n){n||(n={});var r,a=!1,l=function(){var e=m.runningAnimations.indexOf(r);return e>-1&&m.runningAnimations.splice(e,1)[0]};return r=e(t(n),{cancel:function(){return a=!0,l()},currentValue:"startValue"in n?n.startValue:0,completionRate:0,durationRate:0}),m.runningAnimations.push(r),s((function(e){var t,c=e||+new Date,u=n.duration||500,h=c+u,d=n.onChange||i,f=n.abort||i,p=n.onComplete||i,g=n.easing||o,m="startValue"in n&&n.startValue.length>0,v="startValue"in n?n.startValue:0,y="endValue"in n?n.endValue:100,b=n.byValue||(m?v.map((function(e,t){return y[t]-v[t]})):y-v);n.onStart&&n.onStart(),function e(n){var i=(t=n||+new Date)>h?u:t-c,o=i/u,_=m?v.map((function(e,t){return g(i,v[t],b[t],u)})):g(i,v,b,u),k=m?Math.abs((_[0]-v[0])/b[0]):Math.abs((_-v)/b);if(r.currentValue=m?_.slice():_,r.completionRate=k,r.durationRate=o,!a){if(!f(_,k,o))return t>h?(r.currentValue=m?y.slice():y,r.completionRate=1,r.durationRate=1,d(m?y.slice():y,1,1),p(y,1,1),void l()):(d(_,k,o),void s(e));l()}}(c)})),r.cancel},m.util.requestAnimFrame=s,m.util.cancelAnimFrame=function(){return a.apply(m.window,arguments)},m.runningAnimations=n}(),function(){function e(e,t,n){var i="rgba("+parseInt(e[0]+n*(t[0]-e[0]),10)+","+parseInt(e[1]+n*(t[1]-e[1]),10)+","+parseInt(e[2]+n*(t[2]-e[2]),10);return i+=","+(e&&t?parseFloat(e[3]+n*(t[3]-e[3])):1),i+=")"}m.util.animateColor=function(t,n,i,o){var r=new m.Color(t).getSource(),a=new m.Color(n).getSource(),s=o.onComplete,l=o.onChange;return o=o||{},m.util.animate(m.util.object.extend(o,{duration:i||500,startValue:r,endValue:a,byValue:a,easing:function(t,n,i,r){return e(n,i,o.colorEasing?o.colorEasing(t,r):1-Math.cos(t/r*(Math.PI/2)))},onComplete:function(t,n,i){if(s)return s(e(a,a,0),n,i)},onChange:function(t,n,i){if(l){if(Array.isArray(t))return l(e(t,t,0),n,i);l(t,n,i)}}}))}}(),function(){function e(e,t,n,i){return e<Math.abs(t)?(e=t,i=n/4):i=0===t&&0===e?n/(2*Math.PI)*Math.asin(1):n/(2*Math.PI)*Math.asin(t/e),{a:e,c:t,p:n,s:i}}function t(e,t,n){return e.a*Math.pow(2,10*(t-=1))*Math.sin((t*n-e.s)*(2*Math.PI)/e.p)}function n(e,t,n,o){return n-i(o-e,0,n,o)+t}function i(e,t,n,i){return(e/=i)<1/2.75?n*(7.5625*e*e)+t:e<2/2.75?n*(7.5625*(e-=1.5/2.75)*e+.75)+t:e<2.5/2.75?n*(7.5625*(e-=2.25/2.75)*e+.9375)+t:n*(7.5625*(e-=2.625/2.75)*e+.984375)+t}m.util.ease={easeInQuad:function(e,t,n,i){return n*(e/=i)*e+t},easeOutQuad:function(e,t,n,i){return-n*(e/=i)*(e-2)+t},easeInOutQuad:function(e,t,n,i){return(e/=i/2)<1?n/2*e*e+t:-n/2*(--e*(e-2)-1)+t},easeInCubic:function(e,t,n,i){return n*(e/=i)*e*e+t},easeOutCubic:function(e,t,n,i){return n*((e=e/i-1)*e*e+1)+t},easeInOutCubic:function(e,t,n,i){return(e/=i/2)<1?n/2*e*e*e+t:n/2*((e-=2)*e*e+2)+t},easeInQuart:function(e,t,n,i){return n*(e/=i)*e*e*e+t},easeOutQuart:function(e,t,n,i){return-n*((e=e/i-1)*e*e*e-1)+t},easeInOutQuart:function(e,t,n,i){return(e/=i/2)<1?n/2*e*e*e*e+t:-n/2*((e-=2)*e*e*e-2)+t},easeInQuint:function(e,t,n,i){return n*(e/=i)*e*e*e*e+t},easeOutQuint:function(e,t,n,i){return n*((e=e/i-1)*e*e*e*e+1)+t},easeInOutQuint:function(e,t,n,i){return(e/=i/2)<1?n/2*e*e*e*e*e+t:n/2*((e-=2)*e*e*e*e+2)+t},easeInSine:function(e,t,n,i){return-n*Math.cos(e/i*(Math.PI/2))+n+t},easeOutSine:function(e,t,n,i){return n*Math.sin(e/i*(Math.PI/2))+t},easeInOutSine:function(e,t,n,i){return-n/2*(Math.cos(Math.PI*e/i)-1)+t},easeInExpo:function(e,t,n,i){return 0===e?t:n*Math.pow(2,10*(e/i-1))+t},easeOutExpo:function(e,t,n,i){return e===i?t+n:n*(1-Math.pow(2,-10*e/i))+t},easeInOutExpo:function(e,t,n,i){return 0===e?t:e===i?t+n:(e/=i/2)<1?n/2*Math.pow(2,10*(e-1))+t:n/2*(2-Math.pow(2,-10*--e))+t},easeInCirc:function(e,t,n,i){return-n*(Math.sqrt(1-(e/=i)*e)-1)+t},easeOutCirc:function(e,t,n,i){return n*Math.sqrt(1-(e=e/i-1)*e)+t},easeInOutCirc:function(e,t,n,i){return(e/=i/2)<1?-n/2*(Math.sqrt(1-e*e)-1)+t:n/2*(Math.sqrt(1-(e-=2)*e)+1)+t},easeInElastic:function(n,i,o,r){var a=0;return 0===n?i:1===(n/=r)?i+o:(a||(a=.3*r),-t(e(o,o,a,1.70158),n,r)+i)},easeOutElastic:function(t,n,i,o){var r=0;if(0===t)return n;if(1===(t/=o))return n+i;r||(r=.3*o);var a=e(i,i,r,1.70158);return a.a*Math.pow(2,-10*t)*Math.sin((t*o-a.s)*(2*Math.PI)/a.p)+a.c+n},easeInOutElastic:function(n,i,o,r){var a=0;if(0===n)return i;if(2===(n/=r/2))return i+o;a||(a=r*(.3*1.5));var s=e(o,o,a,1.70158);return n<1?-.5*t(s,n,r)+i:s.a*Math.pow(2,-10*(n-=1))*Math.sin((n*r-s.s)*(2*Math.PI)/s.p)*.5+s.c+i},easeInBack:function(e,t,n,i,o){return void 0===o&&(o=1.70158),n*(e/=i)*e*((o+1)*e-o)+t},easeOutBack:function(e,t,n,i,o){return void 0===o&&(o=1.70158),n*((e=e/i-1)*e*((o+1)*e+o)+1)+t},easeInOutBack:function(e,t,n,i,o){return void 0===o&&(o=1.70158),(e/=i/2)<1?n/2*(e*e*((1+(o*=1.525))*e-o))+t:n/2*((e-=2)*e*((1+(o*=1.525))*e+o)+2)+t},easeInBounce:n,easeOutBounce:i,easeInOutBounce:function(e,t,o,r){return e<r/2?.5*n(2*e,0,o,r)+t:.5*i(2*e-r,0,o,r)+.5*o+t}}}(),function(e){var t=e.fabric||(e.fabric={}),n=t.util.object.extend,i=t.util.object.clone,o=t.util.toFixed,r=t.util.parseUnit,a=t.util.multiplyTransformMatrices,s={cx:"left",x:"left",r:"radius",cy:"top",y:"top",display:"visible",visibility:"visible",transform:"transformMatrix","fill-opacity":"fillOpacity","fill-rule":"fillRule","font-family":"fontFamily","font-size":"fontSize","font-style":"fontStyle","font-weight":"fontWeight","letter-spacing":"charSpacing","paint-order":"paintFirst","stroke-dasharray":"strokeDashArray","stroke-dashoffset":"strokeDashOffset","stroke-linecap":"strokeLineCap","stroke-linejoin":"strokeLineJoin","stroke-miterlimit":"strokeMiterLimit","stroke-opacity":"strokeOpacity","stroke-width":"strokeWidth","text-decoration":"textDecoration","text-anchor":"textAnchor",opacity:"opacity","clip-path":"clipPath","clip-rule":"clipRule","vector-effect":"strokeUniform","image-rendering":"imageSmoothing"},l={stroke:"strokeOpacity",fill:"fillOpacity"},c="font-size",u="clip-path";function h(e){return e in s?s[e]:e}function d(e,n,i,o){var s,l=Array.isArray(n);if("fill"!==e&&"stroke"!==e||"none"!==n){if("strokeUniform"===e)return"non-scaling-stroke"===n;if("strokeDashArray"===e)n="none"===n?null:n.replace(/,/g," ").split(/\\s+/).map(parseFloat);else if("transformMatrix"===e)n=i&&i.transformMatrix?a(i.transformMatrix,t.parseTransformAttribute(n)):t.parseTransformAttribute(n);else if("visible"===e)n="none"!==n&&"hidden"!==n,i&&!1===i.visible&&(n=!1);else if("opacity"===e)n=parseFloat(n),i&&void 0!==i.opacity&&(n*=i.opacity);else if("textAnchor"===e)n="start"===n?"left":"end"===n?"right":"center";else if("charSpacing"===e)s=r(n,o)/o*1e3;else if("paintFirst"===e){var c=n.indexOf("fill"),u=n.indexOf("stroke");n="fill";(c>-1&&u>-1&&u<c||-1===c&&u>-1)&&(n="stroke")}else{if("href"===e||"xlink:href"===e||"font"===e)return n;if("imageSmoothing"===e)return"optimizeQuality"===n;s=l?n.map(r):r(n,o)}}else n="";return!l&&isNaN(s)?n:s}function f(e){return new RegExp("^("+e.join("|")+")\\\\b","i")}function p(e,t){var n,i,o,r,a=[];for(o=0,r=t.length;o<r;o++)n=t[o],i=e.getElementsByTagName(n),a=a.concat(Array.prototype.slice.call(i));return a}function g(e,t){var n,i=!0;return(n=m(e,t.pop()))&&t.length&&(i=function(e,t){var n,i=!0;for(;e.parentNode&&1===e.parentNode.nodeType&&t.length;)i&&(n=t.pop()),i=m(e=e.parentNode,n);return 0===t.length}(e,t)),n&&i&&0===t.length}function m(e,t){var n,i,o=e.nodeName,r=e.getAttribute("class"),a=e.getAttribute("id");if(n=new RegExp("^"+o,"i"),t=t.replace(n,""),a&&t.length&&(n=new RegExp("#"+a+"(?![a-zA-Z\\\\-]+)","i"),t=t.replace(n,"")),r&&t.length)for(i=(r=r.split(" ")).length;i--;)n=new RegExp("\\\\."+r[i]+"(?![a-zA-Z\\\\-]+)","i"),t=t.replace(n,"");return 0===t.length}function v(e,t){var n;if(e.getElementById&&(n=e.getElementById(t)),n)return n;var i,o,r,a=e.getElementsByTagName("*");for(o=0,r=a.length;o<r;o++)if(t===(i=a[o]).getAttribute("id"))return i}t.svgValidTagNamesRegEx=f(["path","circle","polygon","polyline","ellipse","rect","line","image","text"]),t.svgViewBoxElementsRegEx=f(["symbol","image","marker","pattern","view","svg"]),t.svgInvalidAncestorsRegEx=f(["pattern","defs","symbol","metadata","clipPath","mask","desc"]),t.svgValidParentsRegEx=f(["symbol","g","a","svg","clipPath","defs"]),t.cssRules={},t.gradientDefs={},t.clipPaths={},t.parseTransformAttribute=function(){function e(e,n,i){e[i]=Math.tan(t.util.degreesToRadians(n[0]))}var n=t.iMatrix,i=t.reNum,o=t.commaWsp,r="(?:"+("(?:(matrix)\\\\s*\\\\(\\\\s*("+i+")"+o+"("+i+")"+o+"("+i+")"+o+"("+i+")"+o+"("+i+")"+o+"("+i+")\\\\s*\\\\))")+"|"+("(?:(translate)\\\\s*\\\\(\\\\s*("+i+")(?:"+o+"("+i+"))?\\\\s*\\\\))")+"|"+("(?:(scale)\\\\s*\\\\(\\\\s*("+i+")(?:"+o+"("+i+"))?\\\\s*\\\\))")+"|"+("(?:(rotate)\\\\s*\\\\(\\\\s*("+i+")(?:"+o+"("+i+")"+o+"("+i+"))?\\\\s*\\\\))")+"|"+("(?:(skewX)\\\\s*\\\\(\\\\s*("+i+")\\\\s*\\\\))")+"|"+("(?:(skewY)\\\\s*\\\\(\\\\s*("+i+")\\\\s*\\\\))")+")",a=new RegExp("^\\\\s*(?:"+("(?:"+r+"(?:"+o+"*"+r+")*)")+"?)\\\\s*$"),s=new RegExp(r,"g");return function(i){var o=n.concat(),l=[];if(!i||i&&!a.test(i))return o;i.replace(s,(function(i){var a=new RegExp(r).exec(i).filter((function(e){return!!e})),s=a[1],c=a.slice(2).map(parseFloat);switch(s){case"translate":!function(e,t){e[4]=t[0],2===t.length&&(e[5]=t[1])}(o,c);break;case"rotate":c[0]=t.util.degreesToRadians(c[0]),function(e,n){var i=t.util.cos(n[0]),o=t.util.sin(n[0]),r=0,a=0;3===n.length&&(r=n[1],a=n[2]),e[0]=i,e[1]=o,e[2]=-o,e[3]=i,e[4]=r-(i*r-o*a),e[5]=a-(o*r+i*a)}(o,c);break;case"scale":!function(e,t){var n=t[0],i=2===t.length?t[1]:t[0];e[0]=n,e[3]=i}(o,c);break;case"skewX":e(o,c,2);break;case"skewY":e(o,c,1);break;case"matrix":o=c}l.push(o.concat()),o=n.concat()}));for(var c=l[0];l.length>1;)l.shift(),c=t.util.multiplyTransformMatrices(c,l[0]);return c}}();var y=new RegExp("^\\\\s*("+t.reNum+"+)\\\\s*,?\\\\s*("+t.reNum+"+)\\\\s*,?\\\\s*("+t.reNum+"+)\\\\s*,?\\\\s*("+t.reNum+"+)\\\\s*$");function b(e){if(!t.svgViewBoxElementsRegEx.test(e.nodeName))return{};var n,i,o,a,s,l,c=e.getAttribute("viewBox"),u=1,h=1,d=e.getAttribute("width"),f=e.getAttribute("height"),p=e.getAttribute("x")||0,g=e.getAttribute("y")||0,m=e.getAttribute("preserveAspectRatio")||"",v=!c||!(c=c.match(y)),b=!d||!f||"100%"===d||"100%"===f,_=v&&b,k={},w="",S=0,C=0;if(k.width=0,k.height=0,k.toBeParsed=_,v&&(p||g)&&e.parentNode&&"#document"!==e.parentNode.nodeName&&(w=" translate("+r(p)+" "+r(g)+") ",s=(e.getAttribute("transform")||"")+w,e.setAttribute("transform",s),e.removeAttribute("x"),e.removeAttribute("y")),_)return k;if(v)return k.width=r(d),k.height=r(f),k;if(n=-parseFloat(c[1]),i=-parseFloat(c[2]),o=parseFloat(c[3]),a=parseFloat(c[4]),k.minX=n,k.minY=i,k.viewBoxWidth=o,k.viewBoxHeight=a,b?(k.width=o,k.height=a):(k.width=r(d),k.height=r(f),u=k.width/o,h=k.height/a),"none"!==(m=t.util.parsePreserveAspectRatioAttribute(m)).alignX&&("meet"===m.meetOrSlice&&(h=u=u>h?h:u),"slice"===m.meetOrSlice&&(h=u=u>h?u:h),S=k.width-o*u,C=k.height-a*u,"Mid"===m.alignX&&(S/=2),"Mid"===m.alignY&&(C/=2),"Min"===m.alignX&&(S=0),"Min"===m.alignY&&(C=0)),1===u&&1===h&&0===n&&0===i&&0===p&&0===g)return k;if((p||g)&&"#document"!==e.parentNode.nodeName&&(w=" translate("+r(p)+" "+r(g)+") "),s=w+" matrix("+u+" 0 0 "+h+" "+(n*u+S)+" "+(i*h+C)+") ","svg"===e.nodeName){for(l=e.ownerDocument.createElementNS(t.svgNS,"g");e.firstChild;)l.appendChild(e.firstChild);e.appendChild(l)}else(l=e).removeAttribute("x"),l.removeAttribute("y"),s=l.getAttribute("transform")+s;return l.setAttribute("transform",s),k}function _(e,t){var n="xlink:href",i=v(e,t.getAttribute(n).slice(1));if(i&&i.getAttribute(n)&&_(e,i),["gradientTransform","x1","x2","y1","y2","gradientUnits","cx","cy","r","fx","fy"].forEach((function(e){i&&!t.hasAttribute(e)&&i.hasAttribute(e)&&t.setAttribute(e,i.getAttribute(e))})),!t.children.length)for(var o=i.cloneNode(!0);o.firstChild;)t.appendChild(o.firstChild);t.removeAttribute(n)}t.parseSVGDocument=function(e,n,o,r){if(e){!function(e){for(var n=p(e,["use","svg:use"]),i=0;n.length&&i<n.length;){var o=n[i],r=o.getAttribute("xlink:href")||o.getAttribute("href");if(null===r)return;var a,s,l,c,u=r.slice(1),h=o.getAttribute("x")||0,d=o.getAttribute("y")||0,f=v(e,u).cloneNode(!0),g=(f.getAttribute("transform")||"")+" translate("+h+", "+d+")",m=n.length,y=t.svgNS;if(b(f),/^svg$/i.test(f.nodeName)){var _=f.ownerDocument.createElementNS(y,"g");for(s=0,c=(l=f.attributes).length;s<c;s++)a=l.item(s),_.setAttributeNS(y,a.nodeName,a.nodeValue);for(;f.firstChild;)_.appendChild(f.firstChild);f=_}for(s=0,c=(l=o.attributes).length;s<c;s++)"x"!==(a=l.item(s)).nodeName&&"y"!==a.nodeName&&"xlink:href"!==a.nodeName&&"href"!==a.nodeName&&("transform"===a.nodeName?g=a.nodeValue+" "+g:f.setAttribute(a.nodeName,a.nodeValue));f.setAttribute("transform",g),f.setAttribute("instantiated_by_use","1"),f.removeAttribute("id"),o.parentNode.replaceChild(f,o),n.length===m&&i++}}(e);var a,s,l=t.Object.__uid++,c=b(e),u=t.util.toArray(e.getElementsByTagName("*"));if(c.crossOrigin=r&&r.crossOrigin,c.svgUid=l,0===u.length&&t.isLikelyNode){var h=[];for(a=0,s=(u=e.selectNodes(\'//*[name(.)!="svg"]\')).length;a<s;a++)h[a]=u[a];u=h}var d=u.filter((function(e){return b(e),t.svgValidTagNamesRegEx.test(e.nodeName.replace("svg:",""))&&!function(e,t){for(;e&&(e=e.parentNode);)if(e.nodeName&&t.test(e.nodeName.replace("svg:",""))&&!e.getAttribute("instantiated_by_use"))return!0;return!1}(e,t.svgInvalidAncestorsRegEx)}));if(!d||d&&!d.length)n&&n([],{});else{var f={};u.filter((function(e){return"clipPath"===e.nodeName.replace("svg:","")})).forEach((function(e){var n=e.getAttribute("id");f[n]=t.util.toArray(e.getElementsByTagName("*")).filter((function(e){return t.svgValidTagNamesRegEx.test(e.nodeName.replace("svg:",""))}))})),t.gradientDefs[l]=t.getGradientDefs(e),t.cssRules[l]=t.getCSSRules(e),t.clipPaths[l]=f,t.parseElements(d,(function(e,i){n&&(n(e,c,i,u),delete t.gradientDefs[l],delete t.cssRules[l],delete t.clipPaths[l])}),i(c),o,r)}}};var k=new RegExp("(normal|italic)?\\\\s*(normal|small-caps)?\\\\s*(normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900)?\\\\s*("+t.reNum+"(?:px|cm|mm|em|pt|pc|in)*)(?:\\\\/(normal|"+t.reNum+"))?\\\\s+(.*)");n(t,{parseFontDeclaration:function(e,t){var n=e.match(k);if(n){var i=n[1],o=n[3],a=n[4],s=n[5],l=n[6];i&&(t.fontStyle=i),o&&(t.fontWeight=isNaN(parseFloat(o))?o:parseFloat(o)),a&&(t.fontSize=r(a)),l&&(t.fontFamily=l),s&&(t.lineHeight="normal"===s?1:s)}},getGradientDefs:function(e){var t,n=p(e,["linearGradient","radialGradient","svg:linearGradient","svg:radialGradient"]),i=0,o={};for(i=n.length;i--;)(t=n[i]).getAttribute("xlink:href")&&_(e,t),o[t.getAttribute("id")]=t;return o},parseAttributes:function(e,i,a){if(e){var s,f,p,m={};void 0===a&&(a=e.getAttribute("svgUid")),e.parentNode&&t.svgValidParentsRegEx.test(e.parentNode.nodeName)&&(m=t.parseAttributes(e.parentNode,i,a));var v=i.reduce((function(t,n){return(s=e.getAttribute(n))&&(t[n]=s),t}),{}),y=n(function(e,n){var i={};for(var o in t.cssRules[n])if(g(e,o.split(" ")))for(var r in t.cssRules[n][o])i[r]=t.cssRules[n][o][r];return i}(e,a),t.parseStyleAttribute(e));v=n(v,y),y[u]&&e.setAttribute(u,y[u]),f=p=m.fontSize||t.Text.DEFAULT_SVG_FONT_SIZE,v[c]&&(v[c]=f=r(v[c],p));var b,_,k={};for(var w in v)_=d(b=h(w),v[w],m,f),k[b]=_;k&&k.font&&t.parseFontDeclaration(k.font,k);var S=n(m,k);return t.svgValidParentsRegEx.test(e.nodeName)?S:function(e){for(var n in l)if(void 0!==e[l[n]]&&""!==e[n]){if(void 0===e[n]){if(!t.Object.prototype[n])continue;e[n]=t.Object.prototype[n]}if(0!==e[n].indexOf("url(")){var i=new t.Color(e[n]);e[n]=i.setAlpha(o(i.getAlpha()*e[l[n]],2)).toRgba()}}return e}(S)}},parseElements:function(e,n,i,o,r){new t.ElementsParser(e,n,i,o,r).parse()},parseStyleAttribute:function(e){var t={},n=e.getAttribute("style");return n?("string"==typeof n?function(e,t){var n,i;e.replace(/;\\s*$/,"").split(";").forEach((function(e){var o=e.split(":");n=o[0].trim().toLowerCase(),i=o[1].trim(),t[n]=i}))}(n,t):function(e,t){var n,i;for(var o in e)void 0!==e[o]&&(n=o.toLowerCase(),i=e[o],t[n]=i)}(n,t),t):t},parsePointsAttribute:function(e){if(!e)return null;var t,n,i=[];for(t=0,n=(e=(e=e.replace(/,/g," ").trim()).split(/\\s+/)).length;t<n;t+=2)i.push({x:parseFloat(e[t]),y:parseFloat(e[t+1])});return i},getCSSRules:function(e){var n,i,o=e.getElementsByTagName("style"),r={};for(n=0,i=o.length;n<i;n++){var a=o[n].textContent;""!==(a=a.replace(/\\/\\*[\\s\\S]*?\\*\\//g,"")).trim()&&a.split("}").filter((function(e){return e.trim()})).forEach((function(e){var o=e.split("{"),a={},s=o[1].trim().split(";").filter((function(e){return e.trim()}));for(n=0,i=s.length;n<i;n++){var l=s[n].split(":"),c=l[0].trim(),u=l[1].trim();a[c]=u}(e=o[0].trim()).split(",").forEach((function(e){""!==(e=e.replace(/^svg/i,"").trim())&&(r[e]?t.util.object.extend(r[e],a):r[e]=t.util.object.clone(a))}))}))}return r},loadSVGFromURL:function(e,n,i,o){e=e.replace(/^\\n\\s*/,"").trim(),new t.util.request(e,{method:"get",onComplete:function(e){var r=e.responseXML;if(!r||!r.documentElement)return n&&n(null),!1;t.parseSVGDocument(r.documentElement,(function(e,t,i,o){n&&n(e,t,i,o)}),i,o)}})},loadSVGFromString:function(e,n,i,o){var r=(new t.window.DOMParser).parseFromString(e.trim(),"text/xml");t.parseSVGDocument(r.documentElement,(function(e,t,i,o){n(e,t,i,o)}),i,o)}})}(e),m.ElementsParser=function(e,t,n,i,o,r){this.elements=e,this.callback=t,this.options=n,this.reviver=i,this.svgUid=n&&n.svgUid||0,this.parsingOptions=o,this.regexUrl=/^url\\([\'"]?#([^\'"]+)[\'"]?\\)/g,this.doc=r},(l=m.ElementsParser.prototype).parse=function(){this.instances=new Array(this.elements.length),this.numElements=this.elements.length,this.createObjects()},l.createObjects=function(){var e=this;this.elements.forEach((function(t,n){t.setAttribute("svgUid",e.svgUid),e.createObject(t,n)}))},l.findTag=function(e){return m[m.util.string.capitalize(e.tagName.replace("svg:",""))]},l.createObject=function(e,t){var n=this.findTag(e);if(n&&n.fromElement)try{n.fromElement(e,this.createCallback(t,e),this.options)}catch(e){m.log(e)}else this.checkIfDone()},l.createCallback=function(e,t){var n=this;return function(i){var o;n.resolveGradient(i,t,"fill"),n.resolveGradient(i,t,"stroke"),i instanceof m.Image&&i._originalElement&&(o=i.parsePreserveAspectRatioAttribute(t)),i._removeTransformMatrix(o),n.resolveClipPath(i,t),n.reviver&&n.reviver(t,i),n.instances[e]=i,n.checkIfDone()}},l.extractPropertyDefinition=function(e,t,n){var i=e[t],o=this.regexUrl;if(o.test(i)){o.lastIndex=0;var r=o.exec(i)[1];return o.lastIndex=0,m[n][this.svgUid][r]}},l.resolveGradient=function(e,t,n){var i=this.extractPropertyDefinition(e,n,"gradientDefs");if(i){var o=t.getAttribute(n+"-opacity"),r=m.Gradient.fromElement(i,e,o,this.options);e.set(n,r)}},l.createClipPathCallback=function(e,t){return function(e){e._removeTransformMatrix(),e.fillRule=e.clipRule,t.push(e)}},l.resolveClipPath=function(e,t){var n,i,o,r,a=this.extractPropertyDefinition(e,"clipPath","clipPaths");if(a){o=[],i=m.util.invertTransform(e.calcTransformMatrix());for(var s=a[0].parentNode,l=t;l.parentNode&&l.getAttribute("clip-path")!==e.clipPath;)l=l.parentNode;l.parentNode.appendChild(s);for(var c=0;c<a.length;c++)n=a[c],this.findTag(n).fromElement(n,this.createClipPathCallback(e,o),this.options);a=1===o.length?o[0]:new m.Group(o),r=m.util.multiplyTransformMatrices(i,a.calcTransformMatrix()),a.clipPath&&this.resolveClipPath(a,l);var u=m.util.qrDecompose(r);a.flipX=!1,a.flipY=!1,a.set("scaleX",u.scaleX),a.set("scaleY",u.scaleY),a.angle=u.angle,a.skewX=u.skewX,a.skewY=0,a.setPositionByOrigin({x:u.translateX,y:u.translateY},"center","center"),e.clipPath=a}else delete e.clipPath},l.checkIfDone=function(){0==--this.numElements&&(this.instances=this.instances.filter((function(e){return null!=e})),this.callback(this.instances,this.elements))},function(e){var t=e.fabric||(e.fabric={});function n(e,t){this.x=e,this.y=t}t.Point?t.warn("fabric.Point is already defined"):(t.Point=n,n.prototype={type:"point",constructor:n,add:function(e){return new n(this.x+e.x,this.y+e.y)},addEquals:function(e){return this.x+=e.x,this.y+=e.y,this},scalarAdd:function(e){return new n(this.x+e,this.y+e)},scalarAddEquals:function(e){return this.x+=e,this.y+=e,this},subtract:function(e){return new n(this.x-e.x,this.y-e.y)},subtractEquals:function(e){return this.x-=e.x,this.y-=e.y,this},scalarSubtract:function(e){return new n(this.x-e,this.y-e)},scalarSubtractEquals:function(e){return this.x-=e,this.y-=e,this},multiply:function(e){return new n(this.x*e,this.y*e)},multiplyEquals:function(e){return this.x*=e,this.y*=e,this},divide:function(e){return new n(this.x/e,this.y/e)},divideEquals:function(e){return this.x/=e,this.y/=e,this},eq:function(e){return this.x===e.x&&this.y===e.y},lt:function(e){return this.x<e.x&&this.y<e.y},lte:function(e){return this.x<=e.x&&this.y<=e.y},gt:function(e){return this.x>e.x&&this.y>e.y},gte:function(e){return this.x>=e.x&&this.y>=e.y},lerp:function(e,t){return void 0===t&&(t=.5),t=Math.max(Math.min(1,t),0),new n(this.x+(e.x-this.x)*t,this.y+(e.y-this.y)*t)},distanceFrom:function(e){var t=this.x-e.x,n=this.y-e.y;return Math.sqrt(t*t+n*n)},midPointFrom:function(e){return this.lerp(e)},min:function(e){return new n(Math.min(this.x,e.x),Math.min(this.y,e.y))},max:function(e){return new n(Math.max(this.x,e.x),Math.max(this.y,e.y))},toString:function(){return this.x+","+this.y},setXY:function(e,t){return this.x=e,this.y=t,this},setX:function(e){return this.x=e,this},setY:function(e){return this.y=e,this},setFromPoint:function(e){return this.x=e.x,this.y=e.y,this},swap:function(e){var t=this.x,n=this.y;this.x=e.x,this.y=e.y,e.x=t,e.y=n},clone:function(){return new n(this.x,this.y)}})}(e),function(e){var t=e.fabric||(e.fabric={});function n(e){this.status=e,this.points=[]}t.Intersection?t.warn("fabric.Intersection is already defined"):(t.Intersection=n,t.Intersection.prototype={constructor:n,appendPoint:function(e){return this.points.push(e),this},appendPoints:function(e){return this.points=this.points.concat(e),this}},t.Intersection.intersectLineLine=function(e,i,o,r){var a,s=(r.x-o.x)*(e.y-o.y)-(r.y-o.y)*(e.x-o.x),l=(i.x-e.x)*(e.y-o.y)-(i.y-e.y)*(e.x-o.x),c=(r.y-o.y)*(i.x-e.x)-(r.x-o.x)*(i.y-e.y);if(0!==c){var u=s/c,h=l/c;0<=u&&u<=1&&0<=h&&h<=1?(a=new n("Intersection")).appendPoint(new t.Point(e.x+u*(i.x-e.x),e.y+u*(i.y-e.y))):a=new n}else a=new n(0===s||0===l?"Coincident":"Parallel");return a},t.Intersection.intersectLinePolygon=function(e,t,i){var o,r,a,s,l=new n,c=i.length;for(s=0;s<c;s++)o=i[s],r=i[(s+1)%c],a=n.intersectLineLine(e,t,o,r),l.appendPoints(a.points);return l.points.length>0&&(l.status="Intersection"),l},t.Intersection.intersectPolygonPolygon=function(e,t){var i,o=new n,r=e.length;for(i=0;i<r;i++){var a=e[i],s=e[(i+1)%r],l=n.intersectLinePolygon(a,s,t);o.appendPoints(l.points)}return o.points.length>0&&(o.status="Intersection"),o},t.Intersection.intersectPolygonRectangle=function(e,i,o){var r=i.min(o),a=i.max(o),s=new t.Point(a.x,r.y),l=new t.Point(r.x,a.y),c=n.intersectLinePolygon(r,s,e),u=n.intersectLinePolygon(s,a,e),h=n.intersectLinePolygon(a,l,e),d=n.intersectLinePolygon(l,r,e),f=new n;return f.appendPoints(c.points),f.appendPoints(u.points),f.appendPoints(h.points),f.appendPoints(d.points),f.points.length>0&&(f.status="Intersection"),f})}(e),function(e){var t=e.fabric||(e.fabric={});function n(e){e?this._tryParsingColor(e):this.setSource([0,0,0,1])}function i(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}t.Color?t.warn("fabric.Color is already defined."):(t.Color=n,t.Color.prototype={_tryParsingColor:function(e){var t;e in n.colorNameMap&&(e=n.colorNameMap[e]),"transparent"===e&&(t=[255,255,255,0]),t||(t=n.sourceFromHex(e)),t||(t=n.sourceFromRgb(e)),t||(t=n.sourceFromHsl(e)),t||(t=[0,0,0,1]),t&&this.setSource(t)},_rgbToHsl:function(e,n,i){e/=255,n/=255,i/=255;var o,r,a,s=t.util.array.max([e,n,i]),l=t.util.array.min([e,n,i]);if(a=(s+l)/2,s===l)o=r=0;else{var c=s-l;switch(r=a>.5?c/(2-s-l):c/(s+l),s){case e:o=(n-i)/c+(n<i?6:0);break;case n:o=(i-e)/c+2;break;case i:o=(e-n)/c+4}o/=6}return[Math.round(360*o),Math.round(100*r),Math.round(100*a)]},getSource:function(){return this._source},setSource:function(e){this._source=e},toRgb:function(){var e=this.getSource();return"rgb("+e[0]+","+e[1]+","+e[2]+")"},toRgba:function(){var e=this.getSource();return"rgba("+e[0]+","+e[1]+","+e[2]+","+e[3]+")"},toHsl:function(){var e=this.getSource(),t=this._rgbToHsl(e[0],e[1],e[2]);return"hsl("+t[0]+","+t[1]+"%,"+t[2]+"%)"},toHsla:function(){var e=this.getSource(),t=this._rgbToHsl(e[0],e[1],e[2]);return"hsla("+t[0]+","+t[1]+"%,"+t[2]+"%,"+e[3]+")"},toHex:function(){var e,t,n,i=this.getSource();return e=1===(e=i[0].toString(16)).length?"0"+e:e,t=1===(t=i[1].toString(16)).length?"0"+t:t,n=1===(n=i[2].toString(16)).length?"0"+n:n,e.toUpperCase()+t.toUpperCase()+n.toUpperCase()},toHexa:function(){var e,t=this.getSource();return e=1===(e=(e=Math.round(255*t[3])).toString(16)).length?"0"+e:e,this.toHex()+e.toUpperCase()},getAlpha:function(){return this.getSource()[3]},setAlpha:function(e){var t=this.getSource();return t[3]=e,this.setSource(t),this},toGrayscale:function(){var e=this.getSource(),t=parseInt((.3*e[0]+.59*e[1]+.11*e[2]).toFixed(0),10),n=e[3];return this.setSource([t,t,t,n]),this},toBlackWhite:function(e){var t=this.getSource(),n=(.3*t[0]+.59*t[1]+.11*t[2]).toFixed(0),i=t[3];return e=e||127,n=Number(n)<Number(e)?0:255,this.setSource([n,n,n,i]),this},overlayWith:function(e){e instanceof n||(e=new n(e));var t,i=[],o=this.getAlpha(),r=this.getSource(),a=e.getSource();for(t=0;t<3;t++)i.push(Math.round(.5*r[t]+.5*a[t]));return i[3]=o,this.setSource(i),this}},t.Color.reRGBa=/^rgba?\\(\\s*(\\d{1,3}(?:\\.\\d+)?\\%?)\\s*,\\s*(\\d{1,3}(?:\\.\\d+)?\\%?)\\s*,\\s*(\\d{1,3}(?:\\.\\d+)?\\%?)\\s*(?:\\s*,\\s*((?:\\d*\\.?\\d+)?)\\s*)?\\)$/i,t.Color.reHSLa=/^hsla?\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3}\\%)\\s*,\\s*(\\d{1,3}\\%)\\s*(?:\\s*,\\s*(\\d+(?:\\.\\d+)?)\\s*)?\\)$/i,t.Color.reHex=/^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i,t.Color.colorNameMap={aliceblue:"#F0F8FF",antiquewhite:"#FAEBD7",aqua:"#00FFFF",aquamarine:"#7FFFD4",azure:"#F0FFFF",beige:"#F5F5DC",bisque:"#FFE4C4",black:"#000000",blanchedalmond:"#FFEBCD",blue:"#0000FF",blueviolet:"#8A2BE2",brown:"#A52A2A",burlywood:"#DEB887",cadetblue:"#5F9EA0",chartreuse:"#7FFF00",chocolate:"#D2691E",coral:"#FF7F50",cornflowerblue:"#6495ED",cornsilk:"#FFF8DC",crimson:"#DC143C",cyan:"#00FFFF",darkblue:"#00008B",darkcyan:"#008B8B",darkgoldenrod:"#B8860B",darkgray:"#A9A9A9",darkgrey:"#A9A9A9",darkgreen:"#006400",darkkhaki:"#BDB76B",darkmagenta:"#8B008B",darkolivegreen:"#556B2F",darkorange:"#FF8C00",darkorchid:"#9932CC",darkred:"#8B0000",darksalmon:"#E9967A",darkseagreen:"#8FBC8F",darkslateblue:"#483D8B",darkslategray:"#2F4F4F",darkslategrey:"#2F4F4F",darkturquoise:"#00CED1",darkviolet:"#9400D3",deeppink:"#FF1493",deepskyblue:"#00BFFF",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1E90FF",firebrick:"#B22222",floralwhite:"#FFFAF0",forestgreen:"#228B22",fuchsia:"#FF00FF",gainsboro:"#DCDCDC",ghostwhite:"#F8F8FF",gold:"#FFD700",goldenrod:"#DAA520",gray:"#808080",grey:"#808080",green:"#008000",greenyellow:"#ADFF2F",honeydew:"#F0FFF0",hotpink:"#FF69B4",indianred:"#CD5C5C",indigo:"#4B0082",ivory:"#FFFFF0",khaki:"#F0E68C",lavender:"#E6E6FA",lavenderblush:"#FFF0F5",lawngreen:"#7CFC00",lemonchiffon:"#FFFACD",lightblue:"#ADD8E6",lightcoral:"#F08080",lightcyan:"#E0FFFF",lightgoldenrodyellow:"#FAFAD2",lightgray:"#D3D3D3",lightgrey:"#D3D3D3",lightgreen:"#90EE90",lightpink:"#FFB6C1",lightsalmon:"#FFA07A",lightseagreen:"#20B2AA",lightskyblue:"#87CEFA",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#B0C4DE",lightyellow:"#FFFFE0",lime:"#00FF00",limegreen:"#32CD32",linen:"#FAF0E6",magenta:"#FF00FF",maroon:"#800000",mediumaquamarine:"#66CDAA",mediumblue:"#0000CD",mediumorchid:"#BA55D3",mediumpurple:"#9370DB",mediumseagreen:"#3CB371",mediumslateblue:"#7B68EE",mediumspringgreen:"#00FA9A",mediumturquoise:"#48D1CC",mediumvioletred:"#C71585",midnightblue:"#191970",mintcream:"#F5FFFA",mistyrose:"#FFE4E1",moccasin:"#FFE4B5",navajowhite:"#FFDEAD",navy:"#000080",oldlace:"#FDF5E6",olive:"#808000",olivedrab:"#6B8E23",orange:"#FFA500",orangered:"#FF4500",orchid:"#DA70D6",palegoldenrod:"#EEE8AA",palegreen:"#98FB98",paleturquoise:"#AFEEEE",palevioletred:"#DB7093",papayawhip:"#FFEFD5",peachpuff:"#FFDAB9",peru:"#CD853F",pink:"#FFC0CB",plum:"#DDA0DD",powderblue:"#B0E0E6",purple:"#800080",rebeccapurple:"#663399",red:"#FF0000",rosybrown:"#BC8F8F",royalblue:"#4169E1",saddlebrown:"#8B4513",salmon:"#FA8072",sandybrown:"#F4A460",seagreen:"#2E8B57",seashell:"#FFF5EE",sienna:"#A0522D",silver:"#C0C0C0",skyblue:"#87CEEB",slateblue:"#6A5ACD",slategray:"#708090",slategrey:"#708090",snow:"#FFFAFA",springgreen:"#00FF7F",steelblue:"#4682B4",tan:"#D2B48C",teal:"#008080",thistle:"#D8BFD8",tomato:"#FF6347",turquoise:"#40E0D0",violet:"#EE82EE",wheat:"#F5DEB3",white:"#FFFFFF",whitesmoke:"#F5F5F5",yellow:"#FFFF00",yellowgreen:"#9ACD32"},t.Color.fromRgb=function(e){return n.fromSource(n.sourceFromRgb(e))},t.Color.sourceFromRgb=function(e){var t=e.match(n.reRGBa);if(t){var i=parseInt(t[1],10)/(/%$/.test(t[1])?100:1)*(/%$/.test(t[1])?255:1),o=parseInt(t[2],10)/(/%$/.test(t[2])?100:1)*(/%$/.test(t[2])?255:1),r=parseInt(t[3],10)/(/%$/.test(t[3])?100:1)*(/%$/.test(t[3])?255:1);return[parseInt(i,10),parseInt(o,10),parseInt(r,10),t[4]?parseFloat(t[4]):1]}},t.Color.fromRgba=n.fromRgb,t.Color.fromHsl=function(e){return n.fromSource(n.sourceFromHsl(e))},t.Color.sourceFromHsl=function(e){var t=e.match(n.reHSLa);if(t){var o,r,a,s=(parseFloat(t[1])%360+360)%360/360,l=parseFloat(t[2])/(/%$/.test(t[2])?100:1),c=parseFloat(t[3])/(/%$/.test(t[3])?100:1);if(0===l)o=r=a=c;else{var u=c<=.5?c*(l+1):c+l-c*l,h=2*c-u;o=i(h,u,s+1/3),r=i(h,u,s),a=i(h,u,s-1/3)}return[Math.round(255*o),Math.round(255*r),Math.round(255*a),t[4]?parseFloat(t[4]):1]}},t.Color.fromHsla=n.fromHsl,t.Color.fromHex=function(e){return n.fromSource(n.sourceFromHex(e))},t.Color.sourceFromHex=function(e){if(e.match(n.reHex)){var t=e.slice(e.indexOf("#")+1),i=3===t.length||4===t.length,o=8===t.length||4===t.length,r=i?t.charAt(0)+t.charAt(0):t.substring(0,2),a=i?t.charAt(1)+t.charAt(1):t.substring(2,4),s=i?t.charAt(2)+t.charAt(2):t.substring(4,6),l=o?i?t.charAt(3)+t.charAt(3):t.substring(6,8):"FF";return[parseInt(r,16),parseInt(a,16),parseInt(s,16),parseFloat((parseInt(l,16)/255).toFixed(2))]}},t.Color.fromSource=function(e){var t=new n;return t.setSource(e),t})}(e),function(e){var t=e.fabric||(e.fabric={}),n=["e","se","s","sw","w","nw","n","ne","e"],i=["ns","nesw","ew","nwse"],o={},r="left",a="top",s="right",l="bottom",c="center",u={top:l,bottom:a,left:s,right:r,center:c},h=t.util.radiansToDegrees,d=Math.sign||function(e){return(e>0)-(e<0)||+e};function f(e,t){var n=e.angle+h(Math.atan2(t.y,t.x))+360;return Math.round(n%360/45)}function p(e,n){var i=n.transform.target,o=i.canvas,r=t.util.object.clone(n);r.target=i,o&&o.fire("object:"+e,r),i.fire(e,n)}function g(e,t){var n=t.canvas,i=e[n.uniScaleKey];return n.uniformScaling&&!i||!n.uniformScaling&&i}function m(e){return e.originX===c&&e.originY===c}function v(e,t,n){var i=e.lockScalingX,o=e.lockScalingY;return!(!i||!o)||(!(t||!i&&!o||!n)||(!(!i||"x"!==t)||!(!o||"y"!==t)))}function y(e,t,n,i){return{e:e,transform:t,pointer:{x:n,y:i}}}function b(e){return function(t,n,i,o){var r=n.target,a=r.getCenterPoint(),s=r.translateToOriginPoint(a,n.originX,n.originY),l=e(t,n,i,o);return r.setPositionByOrigin(s,n.originX,n.originY),l}}function _(e,t){return function(n,i,o,r){var a=t(n,i,o,r);return a&&p(e,y(n,i,o,r)),a}}function k(e,n,i,o,r){var a=e.target,s=a.controls[e.corner],l=a.canvas.getZoom(),c=a.padding/l,u=a.toLocalPoint(new t.Point(o,r),n,i);return u.x>=c&&(u.x-=c),u.x<=-c&&(u.x+=c),u.y>=c&&(u.y-=c),u.y<=c&&(u.y+=c),u.x-=s.offsetX,u.y-=s.offsetY,u}function w(e){return e.flipX!==e.flipY}function S(e,t,n,i,o){if(0!==e[t]){var r=o/e._getTransformedDimensions()[i]*e[n];e.set(n,r)}}function C(e,t,n,i){var o,c=t.target,u=c._getTransformedDimensions(0,c.skewY),d=k(t,t.originX,t.originY,n,i),f=Math.abs(2*d.x)-u.x,p=c.skewX;f<2?o=0:(o=h(Math.atan2(f/c.scaleX,u.y/c.scaleY)),t.originX===r&&t.originY===l&&(o=-o),t.originX===s&&t.originY===a&&(o=-o),w(c)&&(o=-o));var g=p!==o;if(g){var m=c._getTransformedDimensions().y;c.set("skewX",o),S(c,"skewY","scaleY","y",m)}return g}function E(e,t,n,i){var o,c=t.target,u=c._getTransformedDimensions(c.skewX,0),d=k(t,t.originX,t.originY,n,i),f=Math.abs(2*d.y)-u.y,p=c.skewY;f<2?o=0:(o=h(Math.atan2(f/c.scaleY,u.x/c.scaleX)),t.originX===r&&t.originY===l&&(o=-o),t.originX===s&&t.originY===a&&(o=-o),w(c)&&(o=-o));var g=p!==o;if(g){var m=c._getTransformedDimensions().x;c.set("skewY",o),S(c,"skewX","scaleX","x",m)}return g}function T(e,t,n,i,o){o=o||{};var r,a,s,l,c,h,f=t.target,p=f.lockScalingX,y=f.lockScalingY,b=o.by,_=g(e,f),w=v(f,b,_),S=t.gestureScale;if(w)return!1;if(S)a=t.scaleX*S,s=t.scaleY*S;else{if(r=k(t,t.originX,t.originY,n,i),c="y"!==b?d(r.x):1,h="x"!==b?d(r.y):1,t.signX||(t.signX=c),t.signY||(t.signY=h),f.lockScalingFlip&&(t.signX!==c||t.signY!==h))return!1;if(l=f._getTransformedDimensions(),_&&!b){var C=Math.abs(r.x)+Math.abs(r.y),E=t.original,T=C/(Math.abs(l.x*E.scaleX/f.scaleX)+Math.abs(l.y*E.scaleY/f.scaleY));a=E.scaleX*T,s=E.scaleY*T}else a=Math.abs(r.x*f.scaleX/l.x),s=Math.abs(r.y*f.scaleY/l.y);m(t)&&(a*=2,s*=2),t.signX!==c&&"y"!==b&&(t.originX=u[t.originX],a*=-1,t.signX=c),t.signY!==h&&"x"!==b&&(t.originY=u[t.originY],s*=-1,t.signY=h)}var O=f.scaleX,j=f.scaleY;return b?("x"===b&&f.set("scaleX",a),"y"===b&&f.set("scaleY",s)):(!p&&f.set("scaleX",a),!y&&f.set("scaleY",s)),O!==f.scaleX||j!==f.scaleY}o.scaleCursorStyleHandler=function(e,t,i){var o=g(e,i),r="";if(0!==t.x&&0===t.y?r="x":0===t.x&&0!==t.y&&(r="y"),v(i,r,o))return"not-allowed";var a=f(i,t);return n[a]+"-resize"},o.skewCursorStyleHandler=function(e,t,n){var o="not-allowed";if(0!==t.x&&n.lockSkewingY)return o;if(0!==t.y&&n.lockSkewingX)return o;var r=f(n,t)%4;return i[r]+"-resize"},o.scaleSkewCursorStyleHandler=function(e,t,n){return e[n.canvas.altActionKey]?o.skewCursorStyleHandler(e,t,n):o.scaleCursorStyleHandler(e,t,n)},o.rotationWithSnapping=_("rotating",b((function(e,t,n,i){var o=t,r=o.target,a=r.translateToOriginPoint(r.getCenterPoint(),o.originX,o.originY);if(r.lockRotation)return!1;var s,l=Math.atan2(o.ey-a.y,o.ex-a.x),c=Math.atan2(i-a.y,n-a.x),u=h(c-l+o.theta);if(r.snapAngle>0){var d=r.snapAngle,f=r.snapThreshold||d,p=Math.ceil(u/d)*d,g=Math.floor(u/d)*d;Math.abs(u-g)<f?u=g:Math.abs(u-p)<f&&(u=p)}return u<0&&(u=360+u),u%=360,s=r.angle!==u,r.angle=u,s}))),o.scalingEqually=_("scaling",b((function(e,t,n,i){return T(e,t,n,i)}))),o.scalingX=_("scaling",b((function(e,t,n,i){return T(e,t,n,i,{by:"x"})}))),o.scalingY=_("scaling",b((function(e,t,n,i){return T(e,t,n,i,{by:"y"})}))),o.scalingYOrSkewingX=function(e,t,n,i){return e[t.target.canvas.altActionKey]?o.skewHandlerX(e,t,n,i):o.scalingY(e,t,n,i)},o.scalingXOrSkewingY=function(e,t,n,i){return e[t.target.canvas.altActionKey]?o.skewHandlerY(e,t,n,i):o.scalingX(e,t,n,i)},o.changeWidth=_("resizing",b((function(e,t,n,i){var o=t.target,r=k(t,t.originX,t.originY,n,i),a=o.strokeWidth/(o.strokeUniform?o.scaleX:1),s=m(t)?2:1,l=o.width,c=Math.abs(r.x*s/o.scaleX)-a;return o.set("width",Math.max(c,0)),l!==c}))),o.skewHandlerX=function(e,t,n,i){var o,l=t.target,u=l.skewX,h=t.originY;return!l.lockSkewingX&&(0===u?o=k(t,c,c,n,i).x>0?r:s:(u>0&&(o=h===a?r:s),u<0&&(o=h===a?s:r),w(l)&&(o=o===r?s:r)),t.originX=o,_("skewing",b(C))(e,t,n,i))},o.skewHandlerY=function(e,t,n,i){var o,s=t.target,u=s.skewY,h=t.originX;return!s.lockSkewingY&&(0===u?o=k(t,c,c,n,i).y>0?a:l:(u>0&&(o=h===r?a:l),u<0&&(o=h===r?l:a),w(s)&&(o=o===a?l:a)),t.originY=o,_("skewing",b(E))(e,t,n,i))},o.dragHandler=function(e,t,n,i){var o=t.target,r=n-t.offsetX,a=i-t.offsetY,s=!o.get("lockMovementX")&&o.left!==r,l=!o.get("lockMovementY")&&o.top!==a;return s&&o.set("left",r),l&&o.set("top",a),(s||l)&&p("moving",y(e,t,n,i)),s||l},o.scaleOrSkewActionName=function(e,t,n){var i=e[n.canvas.altActionKey];return 0===t.x?i?"skewX":"scaleY":0===t.y?i?"skewY":"scaleX":void 0},o.rotationStyleHandler=function(e,t,n){return n.lockRotation?"not-allowed":t.cursorStyle},o.fireEvent=p,o.wrapWithFixedAnchor=b,o.wrapWithFireEvent=_,o.getLocalPoint=k,t.controlsUtils=o}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.util.degreesToRadians,i=t.controlsUtils;i.renderCircleControl=function(e,t,n,i,o){i=i||{};var r,a=this.sizeX||i.cornerSize||o.cornerSize,s=this.sizeY||i.cornerSize||o.cornerSize,l=void 0!==i.transparentCorners?i.transparentCorners:o.transparentCorners,c=l?"stroke":"fill",u=!l&&(i.cornerStrokeColor||o.cornerStrokeColor),h=t,d=n;e.save(),e.fillStyle=i.cornerColor||o.cornerColor,e.strokeStyle=i.cornerStrokeColor||o.cornerStrokeColor,a>s?(r=a,e.scale(1,s/a),d=n*a/s):s>a?(r=s,e.scale(a/s,1),h=t*s/a):r=a,e.lineWidth=1,e.beginPath(),e.arc(h,d,r/2,0,2*Math.PI,!1),e[c](),u&&e.stroke(),e.restore()},i.renderSquareControl=function(e,t,i,o,r){o=o||{};var a=this.sizeX||o.cornerSize||r.cornerSize,s=this.sizeY||o.cornerSize||r.cornerSize,l=void 0!==o.transparentCorners?o.transparentCorners:r.transparentCorners,c=l?"stroke":"fill",u=!l&&(o.cornerStrokeColor||r.cornerStrokeColor),h=a/2,d=s/2;e.save(),e.fillStyle=o.cornerColor||r.cornerColor,e.strokeStyle=o.cornerStrokeColor||r.cornerStrokeColor,e.lineWidth=1,e.translate(t,i),e.rotate(n(r.angle)),e[c+"Rect"](-h,-d,a,s),u&&e.strokeRect(-h,-d,a,s),e.restore()}}(e),function(e){var t=e.fabric||(e.fabric={});t.Control=function(e){for(var t in e)this[t]=e[t]},t.Control.prototype={visible:!0,actionName:"scale",angle:0,x:0,y:0,offsetX:0,offsetY:0,sizeX:null,sizeY:null,touchSizeX:null,touchSizeY:null,cursorStyle:"crosshair",withConnection:!1,actionHandler:function(){},mouseDownHandler:function(){},mouseUpHandler:function(){},getActionHandler:function(){return this.actionHandler},getMouseDownHandler:function(){return this.mouseDownHandler},getMouseUpHandler:function(){return this.mouseUpHandler},cursorStyleHandler:function(e,t){return t.cursorStyle},getActionName:function(e,t){return t.actionName},getVisibility:function(e,t){var n=e._controlsVisibility;return n&&void 0!==n[t]?n[t]:this.visible},setVisibility:function(e){this.visible=e},positionHandler:function(e,n){return t.util.transformPoint({x:this.x*e.x+this.offsetX,y:this.y*e.y+this.offsetY},n)},calcCornerCoords:function(e,n,i,o,r){var a,s,l,c,u=r?this.touchSizeX:this.sizeX,h=r?this.touchSizeY:this.sizeY;if(u&&h&&u!==h){var d=Math.atan2(h,u),f=Math.sqrt(u*u+h*h)/2,p=d-t.util.degreesToRadians(e),g=Math.PI/2-d-t.util.degreesToRadians(e);a=f*t.util.cos(p),s=f*t.util.sin(p),l=f*t.util.cos(g),c=f*t.util.sin(g)}else{f=.7071067812*(u&&h?u:n);p=t.util.degreesToRadians(45-e);a=l=f*t.util.cos(p),s=c=f*t.util.sin(p)}return{tl:{x:i-c,y:o-l},tr:{x:i+a,y:o-s},bl:{x:i-a,y:o+s},br:{x:i+c,y:o+l}}},render:function(e,n,i,o,r){if("circle"===((o=o||{}).cornerStyle||r.cornerStyle))t.controlsUtils.renderCircleControl.call(this,e,n,i,o,r);else t.controlsUtils.renderSquareControl.call(this,e,n,i,o,r)}}}(e),function(){function e(e,t){var n,i,o,r,a=e.getAttribute("style"),s=e.getAttribute("offset")||0;if(s=(s=parseFloat(s)/(/%$/.test(s)?100:1))<0?0:s>1?1:s,a){var l=a.split(/\\s*;\\s*/);for(""===l[l.length-1]&&l.pop(),r=l.length;r--;){var c=l[r].split(/\\s*:\\s*/),u=c[0].trim(),h=c[1].trim();"stop-color"===u?n=h:"stop-opacity"===u&&(o=h)}}return n||(n=e.getAttribute("stop-color")||"rgb(0,0,0)"),o||(o=e.getAttribute("stop-opacity")),i=(n=new m.Color(n)).getAlpha(),o=isNaN(parseFloat(o))?1:parseFloat(o),o*=i*t,{offset:s,color:n.toRgb(),opacity:o}}var t=m.util.object.clone;m.Gradient=m.util.createClass({offsetX:0,offsetY:0,gradientTransform:null,gradientUnits:"pixels",type:"linear",initialize:function(e){e||(e={}),e.coords||(e.coords={});var t,n=this;Object.keys(e).forEach((function(t){n[t]=e[t]})),this.id?this.id+="_"+m.Object.__uid++:this.id=m.Object.__uid++,t={x1:e.coords.x1||0,y1:e.coords.y1||0,x2:e.coords.x2||0,y2:e.coords.y2||0},"radial"===this.type&&(t.r1=e.coords.r1||0,t.r2=e.coords.r2||0),this.coords=t,this.colorStops=e.colorStops.slice()},addColorStop:function(e){for(var t in e){var n=new m.Color(e[t]);this.colorStops.push({offset:parseFloat(t),color:n.toRgb(),opacity:n.getAlpha()})}return this},toObject:function(e){var t={type:this.type,coords:this.coords,colorStops:this.colorStops,offsetX:this.offsetX,offsetY:this.offsetY,gradientUnits:this.gradientUnits,gradientTransform:this.gradientTransform?this.gradientTransform.concat():this.gradientTransform};return m.util.populateWithProperties(this,t,e),t},toSVG:function(e,n){var i,o,r,a,s=t(this.coords,!0),l=(n=n||{},t(this.colorStops,!0)),c=s.r1>s.r2,u=this.gradientTransform?this.gradientTransform.concat():m.iMatrix.concat(),h=-this.offsetX,d=-this.offsetY,f=!!n.additionalTransform,p="pixels"===this.gradientUnits?"userSpaceOnUse":"objectBoundingBox";if(l.sort((function(e,t){return e.offset-t.offset})),"objectBoundingBox"===p?(h/=e.width,d/=e.height):(h+=e.width/2,d+=e.height/2),"path"===e.type&&"percentage"!==this.gradientUnits&&(h-=e.pathOffset.x,d-=e.pathOffset.y),u[4]-=h,u[5]-=d,a=\'id="SVGID_\'+this.id+\'" gradientUnits="\'+p+\'"\',a+=\' gradientTransform="\'+(f?n.additionalTransform+" ":"")+m.util.matrixToSVG(u)+\'" \',"linear"===this.type?r=["<linearGradient ",a,\' x1="\',s.x1,\'" y1="\',s.y1,\'" x2="\',s.x2,\'" y2="\',s.y2,\'">\\n\']:"radial"===this.type&&(r=["<radialGradient ",a,\' cx="\',c?s.x1:s.x2,\'" cy="\',c?s.y1:s.y2,\'" r="\',c?s.r1:s.r2,\'" fx="\',c?s.x2:s.x1,\'" fy="\',c?s.y2:s.y1,\'">\\n\']),"radial"===this.type){if(c)for((l=l.concat()).reverse(),i=0,o=l.length;i<o;i++)l[i].offset=1-l[i].offset;var g=Math.min(s.r1,s.r2);if(g>0){var v=g/Math.max(s.r1,s.r2);for(i=0,o=l.length;i<o;i++)l[i].offset+=v*(1-l[i].offset)}}for(i=0,o=l.length;i<o;i++){var y=l[i];r.push("<stop ",\'offset="\',100*y.offset+"%",\'" style="stop-color:\',y.color,void 0!==y.opacity?";stop-opacity: "+y.opacity:";",\'"/>\\n\')}return r.push("linear"===this.type?"</linearGradient>\\n":"</radialGradient>\\n"),r.join("")},toLive:function(e){var t,n,i,o=m.util.object.clone(this.coords);if(this.type){for("linear"===this.type?t=e.createLinearGradient(o.x1,o.y1,o.x2,o.y2):"radial"===this.type&&(t=e.createRadialGradient(o.x1,o.y1,o.r1,o.x2,o.y2,o.r2)),n=0,i=this.colorStops.length;n<i;n++){var r=this.colorStops[n].color,a=this.colorStops[n].opacity,s=this.colorStops[n].offset;void 0!==a&&(r=new m.Color(r).setAlpha(a).toRgba()),t.addColorStop(s,r)}return t}}}),m.util.object.extend(m.Gradient,{fromElement:function(t,n,i,o){var r=parseFloat(i)/(/%$/.test(i)?100:1);r=r<0?0:r>1?1:r,isNaN(r)&&(r=1);var a,s,l,c,u=t.getElementsByTagName("stop"),h="userSpaceOnUse"===t.getAttribute("gradientUnits")?"pixels":"percentage",d=t.getAttribute("gradientTransform")||"",f=[],p=0,g=0;for("linearGradient"===t.nodeName||"LINEARGRADIENT"===t.nodeName?(a="linear",s=function(e){return{x1:e.getAttribute("x1")||0,y1:e.getAttribute("y1")||0,x2:e.getAttribute("x2")||"100%",y2:e.getAttribute("y2")||0}}(t)):(a="radial",s=function(e){return{x1:e.getAttribute("fx")||e.getAttribute("cx")||"50%",y1:e.getAttribute("fy")||e.getAttribute("cy")||"50%",r1:0,x2:e.getAttribute("cx")||"50%",y2:e.getAttribute("cy")||"50%",r2:e.getAttribute("r")||"50%"}}(t)),l=u.length;l--;)f.push(e(u[l],r));return c=m.parseTransformAttribute(d),function(e,t,n,i){var o,r;Object.keys(t).forEach((function(e){"Infinity"===(o=t[e])?r=1:"-Infinity"===o?r=0:(r=parseFloat(t[e],10),"string"==typeof o&&/^(\\d+\\.\\d+)%|(\\d+)%$/.test(o)&&(r*=.01,"pixels"===i&&("x1"!==e&&"x2"!==e&&"r2"!==e||(r*=n.viewBoxWidth||n.width),"y1"!==e&&"y2"!==e||(r*=n.viewBoxHeight||n.height)))),t[e]=r}))}(0,s,o,h),"pixels"===h&&(p=-n.left,g=-n.top),new m.Gradient({id:t.getAttribute("id"),type:a,coords:s,colorStops:f,gradientUnits:h,gradientTransform:c,offsetX:p,offsetY:g})}})}(),c=m.util.toFixed,m.Pattern=m.util.createClass({repeat:"repeat",offsetX:0,offsetY:0,crossOrigin:"",patternTransform:null,initialize:function(e,t){if(e||(e={}),this.id=m.Object.__uid++,this.setOptions(e),!e.source||e.source&&"string"!=typeof e.source)t&&t(this);else{var n=this;this.source=m.util.createImage(),m.util.loadImage(e.source,(function(e,i){n.source=e,t&&t(n,i)}),null,this.crossOrigin)}},toObject:function(e){var t,n,i=m.Object.NUM_FRACTION_DIGITS;return"string"==typeof this.source.src?t=this.source.src:"object"===_typeof(this.source)&&this.source.toDataURL&&(t=this.source.toDataURL()),n={type:"pattern",source:t,repeat:this.repeat,crossOrigin:this.crossOrigin,offsetX:c(this.offsetX,i),offsetY:c(this.offsetY,i),patternTransform:this.patternTransform?this.patternTransform.concat():null},m.util.populateWithProperties(this,n,e),n},toSVG:function(e){var t="function"==typeof this.source?this.source():this.source,n=t.width/e.width,i=t.height/e.height,o=this.offsetX/e.width,r=this.offsetY/e.height,a="";return"repeat-x"!==this.repeat&&"no-repeat"!==this.repeat||(i=1,r&&(i+=Math.abs(r))),"repeat-y"!==this.repeat&&"no-repeat"!==this.repeat||(n=1,o&&(n+=Math.abs(o))),t.src?a=t.src:t.toDataURL&&(a=t.toDataURL()),\'<pattern id="SVGID_\'+this.id+\'" x="\'+o+\'" y="\'+r+\'" width="\'+n+\'" height="\'+i+\'">\\n<image x="0" y="0" width="\'+t.width+\'" height="\'+t.height+\'" xlink:href="\'+a+\'"></image>\\n</pattern>\\n\'},setOptions:function(e){for(var t in e)this[t]=e[t]},toLive:function(e){var t=this.source;if(!t)return"";if(void 0!==t.src){if(!t.complete)return"";if(0===t.naturalWidth||0===t.naturalHeight)return""}return e.createPattern(t,this.repeat)}}),function(e){var t=e.fabric||(e.fabric={}),n=t.util.toFixed;t.Shadow?t.warn("fabric.Shadow is already defined."):(t.Shadow=t.util.createClass({color:"rgb(0,0,0)",blur:0,offsetX:0,offsetY:0,affectStroke:!1,includeDefaultValues:!0,nonScaling:!1,initialize:function(e){for(var n in"string"==typeof e&&(e=this._parseShadow(e)),e)this[n]=e[n];this.id=t.Object.__uid++},_parseShadow:function(e){var n=e.trim(),i=t.Shadow.reOffsetsAndBlur.exec(n)||[];return{color:(n.replace(t.Shadow.reOffsetsAndBlur,"")||"rgb(0,0,0)").trim(),offsetX:parseFloat(i[1],10)||0,offsetY:parseFloat(i[2],10)||0,blur:parseFloat(i[3],10)||0}},toString:function(){return[this.offsetX,this.offsetY,this.blur,this.color].join("px ")},toSVG:function(e){var i=40,o=40,r=t.Object.NUM_FRACTION_DIGITS,a=t.util.rotateVector({x:this.offsetX,y:this.offsetY},t.util.degreesToRadians(-e.angle)),s=new t.Color(this.color);return e.width&&e.height&&(i=100*n((Math.abs(a.x)+this.blur)/e.width,r)+20,o=100*n((Math.abs(a.y)+this.blur)/e.height,r)+20),e.flipX&&(a.x*=-1),e.flipY&&(a.y*=-1),\'<filter id="SVGID_\'+this.id+\'" y="-\'+o+\'%" height="\'+(100+2*o)+\'%" x="-\'+i+\'%" width="\'+(100+2*i)+\'%" >\\n\\t<feGaussianBlur in="SourceAlpha" stdDeviation="\'+n(this.blur?this.blur/2:0,r)+\'"></feGaussianBlur>\\n\\t<feOffset dx="\'+n(a.x,r)+\'" dy="\'+n(a.y,r)+\'" result="oBlur" ></feOffset>\\n\\t<feFlood flood-color="\'+s.toRgb()+\'" flood-opacity="\'+s.getAlpha()+\'"/>\\n\\t<feComposite in2="oBlur" operator="in" />\\n\\t<feMerge>\\n\\t\\t<feMergeNode></feMergeNode>\\n\\t\\t<feMergeNode in="SourceGraphic"></feMergeNode>\\n\\t</feMerge>\\n</filter>\\n\'},toObject:function(){if(this.includeDefaultValues)return{color:this.color,blur:this.blur,offsetX:this.offsetX,offsetY:this.offsetY,affectStroke:this.affectStroke,nonScaling:this.nonScaling};var e={},n=t.Shadow.prototype;return["color","blur","offsetX","offsetY","affectStroke","nonScaling"].forEach((function(t){this[t]!==n[t]&&(e[t]=this[t])}),this),e}}),t.Shadow.reOffsetsAndBlur=/(?:\\s|^)(-?\\d+(?:\\.\\d*)?(?:px)?(?:\\s?|$))?(-?\\d+(?:\\.\\d*)?(?:px)?(?:\\s?|$))?(\\d+(?:\\.\\d*)?(?:px)?)?(?:\\s?|$)(?:$|\\s)/)}(e),function(){if(m.StaticCanvas)m.warn("fabric.StaticCanvas is already defined.");else{var e=m.util.object.extend,t=m.util.getElementOffset,n=m.util.removeFromArray,i=m.util.toFixed,o=m.util.transformPoint,r=m.util.invertTransform,a=m.util.getNodeCanvas,s=m.util.createCanvasElement,l=new Error("Could not initialize `canvas` element");m.StaticCanvas=m.util.createClass(m.CommonMethods,{initialize:function(e,t){t||(t={}),this.renderAndResetBound=this.renderAndReset.bind(this),this.requestRenderAllBound=this.requestRenderAll.bind(this),this._initStatic(e,t)},backgroundColor:"",backgroundImage:null,overlayColor:"",overlayImage:null,includeDefaultValues:!0,stateful:!1,renderOnAddRemove:!0,controlsAboveOverlay:!1,allowTouchScrolling:!1,imageSmoothingEnabled:!0,viewportTransform:m.iMatrix.concat(),backgroundVpt:!0,overlayVpt:!0,enableRetinaScaling:!0,vptCoords:{},skipOffscreen:!0,clipPath:void 0,_initStatic:function(e,t){var n=this.requestRenderAllBound;this._objects=[],this._createLowerCanvas(e),this._initOptions(t),this.interactive||this._initRetinaScaling(),t.overlayImage&&this.setOverlayImage(t.overlayImage,n),t.backgroundImage&&this.setBackgroundImage(t.backgroundImage,n),t.backgroundColor&&this.setBackgroundColor(t.backgroundColor,n),t.overlayColor&&this.setOverlayColor(t.overlayColor,n),this.calcOffset()},_isRetinaScaling:function(){return m.devicePixelRatio>1&&this.enableRetinaScaling},getRetinaScaling:function(){return this._isRetinaScaling()?Math.max(1,m.devicePixelRatio):1},_initRetinaScaling:function(){if(this._isRetinaScaling()){var e=m.devicePixelRatio;this.__initRetinaScaling(e,this.lowerCanvasEl,this.contextContainer),this.upperCanvasEl&&this.__initRetinaScaling(e,this.upperCanvasEl,this.contextTop)}},__initRetinaScaling:function(e,t,n){t.setAttribute("width",this.width*e),t.setAttribute("height",this.height*e),n.scale(e,e)},calcOffset:function(){return this._offset=t(this.lowerCanvasEl),this},setOverlayImage:function(e,t,n){return this.__setBgOverlayImage("overlayImage",e,t,n)},setBackgroundImage:function(e,t,n){return this.__setBgOverlayImage("backgroundImage",e,t,n)},setOverlayColor:function(e,t){return this.__setBgOverlayColor("overlayColor",e,t)},setBackgroundColor:function(e,t){return this.__setBgOverlayColor("backgroundColor",e,t)},__setBgOverlayImage:function(e,t,n,i){return"string"==typeof t?m.util.loadImage(t,(function(t,o){if(t){var r=new m.Image(t,i);this[e]=r,r.canvas=this}n&&n(t,o)}),this,i&&i.crossOrigin):(i&&t.setOptions(i),this[e]=t,t&&(t.canvas=this),n&&n(t,!1)),this},__setBgOverlayColor:function(e,t,n){return this[e]=t,this._initGradient(t,e),this._initPattern(t,e,n),this},_createCanvasElement:function(){var e=s();if(!e)throw l;if(e.style||(e.style={}),void 0===e.getContext)throw l;return e},_initOptions:function(e){var t=this.lowerCanvasEl;this._setOptions(e),this.width=this.width||parseInt(t.width,10)||0,this.height=this.height||parseInt(t.height,10)||0,this.lowerCanvasEl.style&&(t.width=this.width,t.height=this.height,t.style.width=this.width+"px",t.style.height=this.height+"px",this.viewportTransform=this.viewportTransform.slice())},_createLowerCanvas:function(e){e&&e.getContext?this.lowerCanvasEl=e:this.lowerCanvasEl=m.util.getById(e)||this._createCanvasElement(),m.util.addClass(this.lowerCanvasEl,"lower-canvas"),this._originalCanvasStyle=this.lowerCanvasEl.style,this.interactive&&this._applyCanvasStyle(this.lowerCanvasEl),this.contextContainer=this.lowerCanvasEl.getContext("2d")},getWidth:function(){return this.width},getHeight:function(){return this.height},setWidth:function(e,t){return this.setDimensions({width:e},t)},setHeight:function(e,t){return this.setDimensions({height:e},t)},setDimensions:function(e,t){var n;for(var i in t=t||{},e)n=e[i],t.cssOnly||(this._setBackstoreDimension(i,e[i]),n+="px",this.hasLostContext=!0),t.backstoreOnly||this._setCssDimension(i,n);return this._isCurrentlyDrawing&&this.freeDrawingBrush&&this.freeDrawingBrush._setBrushStyles(this.contextTop),this._initRetinaScaling(),this.calcOffset(),t.cssOnly||this.requestRenderAll(),this},_setBackstoreDimension:function(e,t){return this.lowerCanvasEl[e]=t,this.upperCanvasEl&&(this.upperCanvasEl[e]=t),this.cacheCanvasEl&&(this.cacheCanvasEl[e]=t),this[e]=t,this},_setCssDimension:function(e,t){return this.lowerCanvasEl.style[e]=t,this.upperCanvasEl&&(this.upperCanvasEl.style[e]=t),this.wrapperEl&&(this.wrapperEl.style[e]=t),this},getZoom:function(){return this.viewportTransform[0]},setViewportTransform:function(e){var t,n,i,o=this._activeObject,r=this.backgroundImage,a=this.overlayImage;for(this.viewportTransform=e,n=0,i=this._objects.length;n<i;n++)(t=this._objects[n]).group||t.setCoords(!0);return o&&o.setCoords(),r&&r.setCoords(!0),a&&a.setCoords(!0),this.calcViewportBoundaries(),this.renderOnAddRemove&&this.requestRenderAll(),this},zoomToPoint:function(e,t){var n=e,i=this.viewportTransform.slice(0);e=o(e,r(this.viewportTransform)),i[0]=t,i[3]=t;var a=o(e,i);return i[4]+=n.x-a.x,i[5]+=n.y-a.y,this.setViewportTransform(i)},setZoom:function(e){return this.zoomToPoint(new m.Point(0,0),e),this},absolutePan:function(e){var t=this.viewportTransform.slice(0);return t[4]=-e.x,t[5]=-e.y,this.setViewportTransform(t)},relativePan:function(e){return this.absolutePan(new m.Point(-e.x-this.viewportTransform[4],-e.y-this.viewportTransform[5]))},getElement:function(){return this.lowerCanvasEl},_onObjectAdded:function(e){this.stateful&&e.setupState(),e._set("canvas",this),e.setCoords(),this.fire("object:added",{target:e}),e.fire("added")},_onObjectRemoved:function(e){this.fire("object:removed",{target:e}),e.fire("removed"),delete e.canvas},clearContext:function(e){return e.clearRect(0,0,this.width,this.height),this},getContext:function(){return this.contextContainer},clear:function(){return this.remove.apply(this,this.getObjects()),this.backgroundImage=null,this.overlayImage=null,this.backgroundColor="",this.overlayColor="",this._hasITextHandlers&&(this.off("mouse:up",this._mouseUpITextHandler),this._iTextInstances=null,this._hasITextHandlers=!1),this.clearContext(this.contextContainer),this.fire("canvas:cleared"),this.renderOnAddRemove&&this.requestRenderAll(),this},renderAll:function(){var e=this.contextContainer;return this.renderCanvas(e,this._objects),this},renderAndReset:function(){this.isRendering=0,this.renderAll()},requestRenderAll:function(){return this.isRendering||(this.isRendering=m.util.requestAnimFrame(this.renderAndResetBound)),this},calcViewportBoundaries:function(){var e={},t=this.width,n=this.height,i=r(this.viewportTransform);return e.tl=o({x:0,y:0},i),e.br=o({x:t,y:n},i),e.tr=new m.Point(e.br.x,e.tl.y),e.bl=new m.Point(e.tl.x,e.br.y),this.vptCoords=e,e},cancelRequestedRender:function(){this.isRendering&&(m.util.cancelAnimFrame(this.isRendering),this.isRendering=0)},renderCanvas:function(e,t){var n=this.viewportTransform,i=this.clipPath;this.cancelRequestedRender(),this.calcViewportBoundaries(),this.clearContext(e),m.util.setImageSmoothing(e,this.imageSmoothingEnabled),this.fire("before:render",{ctx:e}),this._renderBackground(e),e.save(),e.transform(n[0],n[1],n[2],n[3],n[4],n[5]),this._renderObjects(e,t),e.restore(),!this.controlsAboveOverlay&&this.interactive&&this.drawControls(e),i&&(i.canvas=this,i.shouldCache(),i._transformDone=!0,i.renderCache({forClipping:!0}),this.drawClipPathOnCanvas(e)),this._renderOverlay(e),this.controlsAboveOverlay&&this.interactive&&this.drawControls(e),this.fire("after:render",{ctx:e})},drawClipPathOnCanvas:function(e){var t=this.viewportTransform,n=this.clipPath;e.save(),e.transform(t[0],t[1],t[2],t[3],t[4],t[5]),e.globalCompositeOperation="destination-in",n.transform(e),e.scale(1/n.zoomX,1/n.zoomY),e.drawImage(n._cacheCanvas,-n.cacheTranslationX,-n.cacheTranslationY),e.restore()},_renderObjects:function(e,t){var n,i;for(n=0,i=t.length;n<i;++n)t[n]&&t[n].render(e)},_renderBackgroundOrOverlay:function(e,t){var n=this[t+"Color"],i=this[t+"Image"],o=this.viewportTransform,r=this[t+"Vpt"];if(n||i){if(n){e.save(),e.beginPath(),e.moveTo(0,0),e.lineTo(this.width,0),e.lineTo(this.width,this.height),e.lineTo(0,this.height),e.closePath(),e.fillStyle=n.toLive?n.toLive(e,this):n,r&&e.transform(o[0],o[1],o[2],o[3],o[4],o[5]),e.transform(1,0,0,1,n.offsetX||0,n.offsetY||0);var a=n.gradientTransform||n.patternTransform;a&&e.transform(a[0],a[1],a[2],a[3],a[4],a[5]),e.fill(),e.restore()}i&&(e.save(),r&&e.transform(o[0],o[1],o[2],o[3],o[4],o[5]),i.render(e),e.restore())}},_renderBackground:function(e){this._renderBackgroundOrOverlay(e,"background")},_renderOverlay:function(e){this._renderBackgroundOrOverlay(e,"overlay")},getCenter:function(){return{top:this.height/2,left:this.width/2}},getCenterPoint:function(){return new m.Point(this.width/2,this.height/2)},centerObjectH:function(e){return this._centerObject(e,new m.Point(this.getCenterPoint().x,e.getCenterPoint().y))},centerObjectV:function(e){return this._centerObject(e,new m.Point(e.getCenterPoint().x,this.getCenterPoint().y))},centerObject:function(e){var t=this.getCenterPoint();return this._centerObject(e,t)},viewportCenterObject:function(e){var t=this.getVpCenter();return this._centerObject(e,t)},viewportCenterObjectH:function(e){var t=this.getVpCenter();return this._centerObject(e,new m.Point(t.x,e.getCenterPoint().y)),this},viewportCenterObjectV:function(e){var t=this.getVpCenter();return this._centerObject(e,new m.Point(e.getCenterPoint().x,t.y))},getVpCenter:function(){var e=this.getCenterPoint(),t=r(this.viewportTransform);return o(e,t)},_centerObject:function(e,t){return e.setPositionByOrigin(t,"center","center"),e.setCoords(),this.renderOnAddRemove&&this.requestRenderAll(),this},toDatalessJSON:function(e){return this.toDatalessObject(e)},toObject:function(e){return this._toObjectMethod("toObject",e)},toDatalessObject:function(e){return this._toObjectMethod("toDatalessObject",e)},_toObjectMethod:function(t,n){var i=this.clipPath,o={version:m.version,objects:this._toObjects(t,n)};return i&&!i.excludeFromExport&&(o.clipPath=this._toObject(this.clipPath,t,n)),e(o,this.__serializeBgOverlay(t,n)),m.util.populateWithProperties(this,o,n),o},_toObjects:function(e,t){return this._objects.filter((function(e){return!e.excludeFromExport})).map((function(n){return this._toObject(n,e,t)}),this)},_toObject:function(e,t,n){var i;this.includeDefaultValues||(i=e.includeDefaultValues,e.includeDefaultValues=!1);var o=e[t](n);return this.includeDefaultValues||(e.includeDefaultValues=i),o},__serializeBgOverlay:function(e,t){var n={},i=this.backgroundImage,o=this.overlayImage,r=this.backgroundColor,a=this.overlayColor;return r&&r.toObject?r.excludeFromExport||(n.background=r.toObject(t)):r&&(n.background=r),a&&a.toObject?a.excludeFromExport||(n.overlay=a.toObject(t)):a&&(n.overlay=a),i&&!i.excludeFromExport&&(n.backgroundImage=this._toObject(i,e,t)),o&&!o.excludeFromExport&&(n.overlayImage=this._toObject(o,e,t)),n},svgViewportTransformation:!0,toSVG:function(e,t){e||(e={}),e.reviver=t;var n=[];return this._setSVGPreamble(n,e),this._setSVGHeader(n,e),this.clipPath&&n.push(\'<g clip-path="url(#\'+this.clipPath.clipPathId+\')" >\\n\'),this._setSVGBgOverlayColor(n,"background"),this._setSVGBgOverlayImage(n,"backgroundImage",t),this._setSVGObjects(n,t),this.clipPath&&n.push("</g>\\n"),this._setSVGBgOverlayColor(n,"overlay"),this._setSVGBgOverlayImage(n,"overlayImage",t),n.push("</svg>"),n.join("")},_setSVGPreamble:function(e,t){t.suppressPreamble||e.push(\'<?xml version="1.0" encoding="\',t.encoding||"UTF-8",\'" standalone="no" ?>\\n\',\'<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" \',\'"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\\n\')},_setSVGHeader:function(e,t){var n,o=t.width||this.width,r=t.height||this.height,a=\'viewBox="0 0 \'+this.width+" "+this.height+\'" \',s=m.Object.NUM_FRACTION_DIGITS;t.viewBox?a=\'viewBox="\'+t.viewBox.x+" "+t.viewBox.y+" "+t.viewBox.width+" "+t.viewBox.height+\'" \':this.svgViewportTransformation&&(n=this.viewportTransform,a=\'viewBox="\'+i(-n[4]/n[0],s)+" "+i(-n[5]/n[3],s)+" "+i(this.width/n[0],s)+" "+i(this.height/n[3],s)+\'" \'),e.push("<svg ",\'xmlns="http://www.w3.org/2000/svg" \',\'xmlns:xlink="http://www.w3.org/1999/xlink" \',\'version="1.1" \',\'width="\',o,\'" \',\'height="\',r,\'" \',a,\'xml:space="preserve">\\n\',"<desc>Created with Fabric.js ",m.version,"</desc>\\n","<defs>\\n",this.createSVGFontFacesMarkup(),this.createSVGRefElementsMarkup(),this.createSVGClipPathMarkup(t),"</defs>\\n")},createSVGClipPathMarkup:function(e){var t=this.clipPath;return t?(t.clipPathId="CLIPPATH_"+m.Object.__uid++,\'<clipPath id="\'+t.clipPathId+\'" >\\n\'+this.clipPath.toClipPathSVG(e.reviver)+"</clipPath>\\n"):""},createSVGRefElementsMarkup:function(){var e=this;return["background","overlay"].map((function(t){var n=e[t+"Color"];if(n&&n.toLive){var i=e[t+"Vpt"],o=e.viewportTransform,r={width:e.width/(i?o[0]:1),height:e.height/(i?o[3]:1)};return n.toSVG(r,{additionalTransform:i?m.util.matrixToSVG(o):""})}})).join("")},createSVGFontFacesMarkup:function(){var e,t,n,i,o,r,a,s,l="",c={},u=m.fontPaths,h=[];for(this._objects.forEach((function e(t){h.push(t),t._objects&&t._objects.forEach(e)})),a=0,s=h.length;a<s;a++)if(t=(e=h[a]).fontFamily,-1!==e.type.indexOf("text")&&!c[t]&&u[t]&&(c[t]=!0,e.styles))for(o in n=e.styles)for(r in i=n[o])!c[t=i[r].fontFamily]&&u[t]&&(c[t]=!0);for(var d in c)l+=["\\t\\t@font-face {\\n","\\t\\t\\tfont-family: \'",d,"\';\\n","\\t\\t\\tsrc: url(\'",u[d],"\');\\n","\\t\\t}\\n"].join("");return l&&(l=[\'\\t<style type="text/css">\',"<![CDATA[\\n",l,"]]>","</style>\\n"].join("")),l},_setSVGObjects:function(e,t){var n,i,o,r=this._objects;for(i=0,o=r.length;i<o;i++)(n=r[i]).excludeFromExport||this._setSVGObject(e,n,t)},_setSVGObject:function(e,t,n){e.push(t.toSVG(n))},_setSVGBgOverlayImage:function(e,t,n){this[t]&&!this[t].excludeFromExport&&this[t].toSVG&&e.push(this[t].toSVG(n))},_setSVGBgOverlayColor:function(e,t){var n=this[t+"Color"],i=this.viewportTransform,o=this.width,r=this.height;if(n)if(n.toLive){var a=n.repeat,s=m.util.invertTransform(i),l=this[t+"Vpt"]?m.util.matrixToSVG(s):"";e.push(\'<rect transform="\'+l+" translate(",o/2,",",r/2,\')"\',\' x="\',n.offsetX-o/2,\'" y="\',n.offsetY-r/2,\'" \',\'width="\',"repeat-y"===a||"no-repeat"===a?n.source.width:o,\'" height="\',"repeat-x"===a||"no-repeat"===a?n.source.height:r,\'" fill="url(#SVGID_\'+n.id+\')"\',"></rect>\\n")}else e.push(\'<rect x="0" y="0" width="100%" height="100%" \',\'fill="\',n,\'"\',"></rect>\\n")},sendToBack:function(e){if(!e)return this;var t,i,o,r=this._activeObject;if(e===r&&"activeSelection"===e.type)for(t=(o=r._objects).length;t--;)i=o[t],n(this._objects,i),this._objects.unshift(i);else n(this._objects,e),this._objects.unshift(e);return this.renderOnAddRemove&&this.requestRenderAll(),this},bringToFront:function(e){if(!e)return this;var t,i,o,r=this._activeObject;if(e===r&&"activeSelection"===e.type)for(o=r._objects,t=0;t<o.length;t++)i=o[t],n(this._objects,i),this._objects.push(i);else n(this._objects,e),this._objects.push(e);return this.renderOnAddRemove&&this.requestRenderAll(),this},sendBackwards:function(e,t){if(!e)return this;var i,o,r,a,s,l=this._activeObject,c=0;if(e===l&&"activeSelection"===e.type)for(s=l._objects,i=0;i<s.length;i++)o=s[i],(r=this._objects.indexOf(o))>0+c&&(a=r-1,n(this._objects,o),this._objects.splice(a,0,o)),c++;else 0!==(r=this._objects.indexOf(e))&&(a=this._findNewLowerIndex(e,r,t),n(this._objects,e),this._objects.splice(a,0,e));return this.renderOnAddRemove&&this.requestRenderAll(),this},_findNewLowerIndex:function(e,t,n){var i,o;if(n)for(i=t,o=t-1;o>=0;--o){if(e.intersectsWithObject(this._objects[o])||e.isContainedWithinObject(this._objects[o])||this._objects[o].isContainedWithinObject(e)){i=o;break}}else i=t-1;return i},bringForward:function(e,t){if(!e)return this;var i,o,r,a,s,l=this._activeObject,c=0;if(e===l&&"activeSelection"===e.type)for(i=(s=l._objects).length;i--;)o=s[i],(r=this._objects.indexOf(o))<this._objects.length-1-c&&(a=r+1,n(this._objects,o),this._objects.splice(a,0,o)),c++;else(r=this._objects.indexOf(e))!==this._objects.length-1&&(a=this._findNewUpperIndex(e,r,t),n(this._objects,e),this._objects.splice(a,0,e));return this.renderOnAddRemove&&this.requestRenderAll(),this},_findNewUpperIndex:function(e,t,n){var i,o,r;if(n)for(i=t,o=t+1,r=this._objects.length;o<r;++o){if(e.intersectsWithObject(this._objects[o])||e.isContainedWithinObject(this._objects[o])||this._objects[o].isContainedWithinObject(e)){i=o;break}}else i=t+1;return i},moveTo:function(e,t){return n(this._objects,e),this._objects.splice(t,0,e),this.renderOnAddRemove&&this.requestRenderAll()},dispose:function(){return this.isRendering&&(m.util.cancelAnimFrame(this.isRendering),this.isRendering=0),this.forEachObject((function(e){e.dispose&&e.dispose()})),this._objects=[],this.backgroundImage&&this.backgroundImage.dispose&&this.backgroundImage.dispose(),this.backgroundImage=null,this.overlayImage&&this.overlayImage.dispose&&this.overlayImage.dispose(),this.overlayImage=null,this._iTextInstances=null,this.contextContainer=null,this.lowerCanvasEl.classList.remove("lower-canvas"),m.util.setStyle(this.lowerCanvasEl,this._originalCanvasStyle),delete this._originalCanvasStyle,this.lowerCanvasEl.setAttribute("width",this.width),this.lowerCanvasEl.setAttribute("height",this.height),m.util.cleanUpJsdomNode(this.lowerCanvasEl),this.lowerCanvasEl=void 0,this},toString:function(){return"#<fabric.Canvas ("+this.complexity()+"): { objects: "+this._objects.length+" }>"}}),e(m.StaticCanvas.prototype,m.Observable),e(m.StaticCanvas.prototype,m.Collection),e(m.StaticCanvas.prototype,m.DataURLExporter),e(m.StaticCanvas,{EMPTY_JSON:\'{"objects": [], "background": "white"}\',supports:function(e){var t=s();if(!t||!t.getContext)return null;var n=t.getContext("2d");return n&&"setLineDash"===e?void 0!==n.setLineDash:null}}),m.StaticCanvas.prototype.toJSON=m.StaticCanvas.prototype.toObject,m.isLikelyNode&&(m.StaticCanvas.prototype.createPNGStream=function(){var e=a(this.lowerCanvasEl);return e&&e.createPNGStream()},m.StaticCanvas.prototype.createJPEGStream=function(e){var t=a(this.lowerCanvasEl);return t&&t.createJPEGStream(e)})}}(),m.BaseBrush=m.util.createClass({color:"rgb(0, 0, 0)",width:1,shadow:null,strokeLineCap:"round",strokeLineJoin:"round",strokeMiterLimit:10,strokeDashArray:null,limitedToCanvasSize:!1,_setBrushStyles:function(e){e.strokeStyle=this.color,e.lineWidth=this.width,e.lineCap=this.strokeLineCap,e.miterLimit=this.strokeMiterLimit,e.lineJoin=this.strokeLineJoin,e.setLineDash(this.strokeDashArray||[])},_saveAndTransform:function(e){var t=this.canvas.viewportTransform;e.save(),e.transform(t[0],t[1],t[2],t[3],t[4],t[5])},_setShadow:function(){if(this.shadow){var e=this.canvas,t=this.shadow,n=e.contextTop,i=e.getZoom();e&&e._isRetinaScaling()&&(i*=m.devicePixelRatio),n.shadowColor=t.color,n.shadowBlur=t.blur*i,n.shadowOffsetX=t.offsetX*i,n.shadowOffsetY=t.offsetY*i}},needsFullRender:function(){return new m.Color(this.color).getAlpha()<1||!!this.shadow},_resetShadow:function(){var e=this.canvas.contextTop;e.shadowColor="",e.shadowBlur=e.shadowOffsetX=e.shadowOffsetY=0},_isOutSideCanvas:function(e){return e.x<0||e.x>this.canvas.getWidth()||e.y<0||e.y>this.canvas.getHeight()}}),m.PencilBrush=m.util.createClass(m.BaseBrush,{decimate:.4,drawStraightLine:!1,straightLineKey:"shiftKey",initialize:function(e){this.canvas=e,this._points=[]},needsFullRender:function(){return this.callSuper("needsFullRender")||this._hasStraightLine},_drawSegment:function(e,t,n){var i=t.midPointFrom(n);return e.quadraticCurveTo(t.x,t.y,i.x,i.y),i},onMouseDown:function(e,t){this.canvas._isMainEvent(t.e)&&(this.drawStraightLine=t.e[this.straightLineKey],this._prepareForDrawing(e),this._captureDrawingPath(e),this._render())},onMouseMove:function(e,t){if(this.canvas._isMainEvent(t.e)&&(this.drawStraightLine=t.e[this.straightLineKey],(!0!==this.limitedToCanvasSize||!this._isOutSideCanvas(e))&&this._captureDrawingPath(e)&&this._points.length>1))if(this.needsFullRender())this.canvas.clearContext(this.canvas.contextTop),this._render();else{var n=this._points,i=n.length,o=this.canvas.contextTop;this._saveAndTransform(o),this.oldEnd&&(o.beginPath(),o.moveTo(this.oldEnd.x,this.oldEnd.y)),this.oldEnd=this._drawSegment(o,n[i-2],n[i-1],!0),o.stroke(),o.restore()}},onMouseUp:function(e){return!this.canvas._isMainEvent(e.e)||(this.drawStraightLine=!1,this.oldEnd=void 0,this._finalizeAndAddPath(),!1)},_prepareForDrawing:function(e){var t=new m.Point(e.x,e.y);this._reset(),this._addPoint(t),this.canvas.contextTop.moveTo(t.x,t.y)},_addPoint:function(e){return!(this._points.length>1&&e.eq(this._points[this._points.length-1])||(this.drawStraightLine&&this._points.length>1&&(this._hasStraightLine=!0,this._points.pop()),this._points.push(e),0))},_reset:function(){this._points=[],this._setBrushStyles(this.canvas.contextTop),this._setShadow(),this._hasStraightLine=!1},_captureDrawingPath:function(e){var t=new m.Point(e.x,e.y);return this._addPoint(t)},_render:function(e){var t,n,i=this._points[0],o=this._points[1];if(e=e||this.canvas.contextTop,this._saveAndTransform(e),e.beginPath(),2===this._points.length&&i.x===o.x&&i.y===o.y){var r=this.width/1e3;i=new m.Point(i.x,i.y),o=new m.Point(o.x,o.y),i.x-=r,o.x+=r}for(e.moveTo(i.x,i.y),t=1,n=this._points.length;t<n;t++)this._drawSegment(e,i,o),i=this._points[t],o=this._points[t+1];e.lineTo(i.x,i.y),e.stroke(),e.restore()},convertPointsToSVGPath:function(e){var t=this.width/1e3;return m.util.getSmoothPathFromPoints(e,t)},_isEmptySVGPath:function(e){return"M 0 0 Q 0 0 0 0 L 0 0"===m.util.joinPath(e)},createPath:function(e){var t=new m.Path(e,{fill:null,stroke:this.color,strokeWidth:this.width,strokeLineCap:this.strokeLineCap,strokeMiterLimit:this.strokeMiterLimit,strokeLineJoin:this.strokeLineJoin,strokeDashArray:this.strokeDashArray});return this.shadow&&(this.shadow.affectStroke=!0,t.shadow=new m.Shadow(this.shadow)),t},decimatePoints:function(e,t){if(e.length<=2)return e;var n,i=this.canvas.getZoom(),o=Math.pow(t/i,2),r=e.length-1,a=e[0],s=[a];for(n=1;n<r-1;n++)Math.pow(a.x-e[n].x,2)+Math.pow(a.y-e[n].y,2)>=o&&(a=e[n],s.push(a));return s.push(e[r]),s},_finalizeAndAddPath:function(){this.canvas.contextTop.closePath(),this.decimate&&(this._points=this.decimatePoints(this._points,this.decimate));var e=this.convertPointsToSVGPath(this._points);if(this._isEmptySVGPath(e))this.canvas.requestRenderAll();else{var t=this.createPath(e);this.canvas.clearContext(this.canvas.contextTop),this.canvas.fire("before:path:created",{path:t}),this.canvas.add(t),this.canvas.requestRenderAll(),t.setCoords(),this._resetShadow(),this.canvas.fire("path:created",{path:t})}}}),m.CircleBrush=m.util.createClass(m.BaseBrush,{width:10,initialize:function(e){this.canvas=e,this.points=[]},drawDot:function(e){var t=this.addPoint(e),n=this.canvas.contextTop;this._saveAndTransform(n),this.dot(n,t),n.restore()},dot:function(e,t){e.fillStyle=t.fill,e.beginPath(),e.arc(t.x,t.y,t.radius,0,2*Math.PI,!1),e.closePath(),e.fill()},onMouseDown:function(e){this.points.length=0,this.canvas.clearContext(this.canvas.contextTop),this._setShadow(),this.drawDot(e)},_render:function(){var e,t,n=this.canvas.contextTop,i=this.points;for(this._saveAndTransform(n),e=0,t=i.length;e<t;e++)this.dot(n,i[e]);n.restore()},onMouseMove:function(e){!0===this.limitedToCanvasSize&&this._isOutSideCanvas(e)||(this.needsFullRender()?(this.canvas.clearContext(this.canvas.contextTop),this.addPoint(e),this._render()):this.drawDot(e))},onMouseUp:function(){var e,t,n=this.canvas.renderOnAddRemove;this.canvas.renderOnAddRemove=!1;var i=[];for(e=0,t=this.points.length;e<t;e++){var o=this.points[e],r=new m.Circle({radius:o.radius,left:o.x,top:o.y,originX:"center",originY:"center",fill:o.fill});this.shadow&&(r.shadow=new m.Shadow(this.shadow)),i.push(r)}var a=new m.Group(i);a.canvas=this.canvas,this.canvas.fire("before:path:created",{path:a}),this.canvas.add(a),this.canvas.fire("path:created",{path:a}),this.canvas.clearContext(this.canvas.contextTop),this._resetShadow(),this.canvas.renderOnAddRemove=n,this.canvas.requestRenderAll()},addPoint:function(e){var t=new m.Point(e.x,e.y),n=m.util.getRandomInt(Math.max(0,this.width-20),this.width+20)/2,i=new m.Color(this.color).setAlpha(m.util.getRandomInt(0,100)/100).toRgba();return t.radius=n,t.fill=i,this.points.push(t),t}}),m.SprayBrush=m.util.createClass(m.BaseBrush,{width:10,density:20,dotWidth:1,dotWidthVariance:1,randomOpacity:!1,optimizeOverlapping:!0,initialize:function(e){this.canvas=e,this.sprayChunks=[]},onMouseDown:function(e){this.sprayChunks.length=0,this.canvas.clearContext(this.canvas.contextTop),this._setShadow(),this.addSprayChunk(e),this.render(this.sprayChunkPoints)},onMouseMove:function(e){!0===this.limitedToCanvasSize&&this._isOutSideCanvas(e)||(this.addSprayChunk(e),this.render(this.sprayChunkPoints))},onMouseUp:function(){var e=this.canvas.renderOnAddRemove;this.canvas.renderOnAddRemove=!1;for(var t=[],n=0,i=this.sprayChunks.length;n<i;n++)for(var o=this.sprayChunks[n],r=0,a=o.length;r<a;r++){var s=new m.Rect({width:o[r].width,height:o[r].width,left:o[r].x+1,top:o[r].y+1,originX:"center",originY:"center",fill:this.color});t.push(s)}this.optimizeOverlapping&&(t=this._getOptimizedRects(t));var l=new m.Group(t);this.shadow&&l.set("shadow",new m.Shadow(this.shadow)),this.canvas.fire("before:path:created",{path:l}),this.canvas.add(l),this.canvas.fire("path:created",{path:l}),this.canvas.clearContext(this.canvas.contextTop),this._resetShadow(),this.canvas.renderOnAddRemove=e,this.canvas.requestRenderAll()},_getOptimizedRects:function(e){var t,n,i,o={};for(n=0,i=e.length;n<i;n++)o[t=e[n].left+""+e[n].top]||(o[t]=e[n]);var r=[];for(t in o)r.push(o[t]);return r},render:function(e){var t,n,i=this.canvas.contextTop;for(i.fillStyle=this.color,this._saveAndTransform(i),t=0,n=e.length;t<n;t++){var o=e[t];void 0!==o.opacity&&(i.globalAlpha=o.opacity),i.fillRect(o.x,o.y,o.width,o.width)}i.restore()},_render:function(){var e,t,n=this.canvas.contextTop;for(n.fillStyle=this.color,this._saveAndTransform(n),e=0,t=this.sprayChunks.length;e<t;e++)this.render(this.sprayChunks[e]);n.restore()},addSprayChunk:function(e){this.sprayChunkPoints=[];var t,n,i,o,r=this.width/2;for(o=0;o<this.density;o++){t=m.util.getRandomInt(e.x-r,e.x+r),n=m.util.getRandomInt(e.y-r,e.y+r),i=this.dotWidthVariance?m.util.getRandomInt(Math.max(1,this.dotWidth-this.dotWidthVariance),this.dotWidth+this.dotWidthVariance):this.dotWidth;var a=new m.Point(t,n);a.width=i,this.randomOpacity&&(a.opacity=m.util.getRandomInt(0,100)/100),this.sprayChunkPoints.push(a)}this.sprayChunks.push(this.sprayChunkPoints)}}),m.PatternBrush=m.util.createClass(m.PencilBrush,{getPatternSrc:function(){var e=m.util.createCanvasElement(),t=e.getContext("2d");return e.width=e.height=25,t.fillStyle=this.color,t.beginPath(),t.arc(10,10,10,0,2*Math.PI,!1),t.closePath(),t.fill(),e},getPatternSrcFunction:function(){return String(this.getPatternSrc).replace("this.color",\'"\'+this.color+\'"\')},getPattern:function(e){return e.createPattern(this.source||this.getPatternSrc(),"repeat")},_setBrushStyles:function(e){this.callSuper("_setBrushStyles",e),e.strokeStyle=this.getPattern(e)},createPath:function(e){var t=this.callSuper("createPath",e),n=t._getLeftTopCoords().scalarAdd(t.strokeWidth/2);return t.stroke=new m.Pattern({source:this.source||this.getPatternSrcFunction(),offsetX:-n.x,offsetY:-n.y}),t}}),function(){var e=m.util.getPointer,t=m.util.degreesToRadians,n=m.util.isTouchEvent;for(var i in m.Canvas=m.util.createClass(m.StaticCanvas,{initialize:function(e,t){t||(t={}),this.renderAndResetBound=this.renderAndReset.bind(this),this.requestRenderAllBound=this.requestRenderAll.bind(this),this._initStatic(e,t),this._initInteractive(),this._createCacheCanvas()},uniformScaling:!0,uniScaleKey:"shiftKey",centeredScaling:!1,centeredRotation:!1,centeredKey:"altKey",altActionKey:"shiftKey",interactive:!0,selection:!0,selectionKey:"shiftKey",altSelectionKey:null,selectionColor:"rgba(100, 100, 255, 0.3)",selectionDashArray:[],selectionBorderColor:"rgba(255, 255, 255, 0.3)",selectionLineWidth:1,selectionFullyContained:!1,hoverCursor:"move",moveCursor:"move",defaultCursor:"default",freeDrawingCursor:"crosshair",notAllowedCursor:"not-allowed",containerClass:"canvas-container",perPixelTargetFind:!1,targetFindTolerance:0,skipTargetFind:!1,isDrawingMode:!1,preserveObjectStacking:!1,snapAngle:0,snapThreshold:null,stopContextMenu:!1,fireRightClick:!1,fireMiddleClick:!1,targets:[],enablePointerEvents:!1,_hoveredTarget:null,_hoveredTargets:[],_initInteractive:function(){this._currentTransform=null,this._groupSelector=null,this._initWrapperElement(),this._createUpperCanvas(),this._initEventListeners(),this._initRetinaScaling(),this.freeDrawingBrush=m.PencilBrush&&new m.PencilBrush(this),this.calcOffset()},_chooseObjectsToRender:function(){var e,t,n,i=this.getActiveObjects();if(i.length>0&&!this.preserveObjectStacking){t=[],n=[];for(var o=0,r=this._objects.length;o<r;o++)e=this._objects[o],-1===i.indexOf(e)?t.push(e):n.push(e);i.length>1&&(this._activeObject._objects=n),t.push.apply(t,n)}else t=this._objects;return t},renderAll:function(){!this.contextTopDirty||this._groupSelector||this.isDrawingMode||(this.clearContext(this.contextTop),this.contextTopDirty=!1),this.hasLostContext&&(this.renderTopLayer(this.contextTop),this.hasLostContext=!1);var e=this.contextContainer;return this.renderCanvas(e,this._chooseObjectsToRender()),this},renderTopLayer:function(e){e.save(),this.isDrawingMode&&this._isCurrentlyDrawing&&(this.freeDrawingBrush&&this.freeDrawingBrush._render(),this.contextTopDirty=!0),this.selection&&this._groupSelector&&(this._drawSelection(e),this.contextTopDirty=!0),e.restore()},renderTop:function(){var e=this.contextTop;return this.clearContext(e),this.renderTopLayer(e),this.fire("after:render"),this},_normalizePointer:function(e,t){var n=e.calcTransformMatrix(),i=m.util.invertTransform(n),o=this.restorePointerVpt(t);return m.util.transformPoint(o,i)},isTargetTransparent:function(e,t,n){if(e.shouldCache()&&e._cacheCanvas&&e!==this._activeObject){var i=this._normalizePointer(e,{x:t,y:n}),o=Math.max(e.cacheTranslationX+i.x*e.zoomX,0),r=Math.max(e.cacheTranslationY+i.y*e.zoomY,0);return m.util.isTransparent(e._cacheContext,Math.round(o),Math.round(r),this.targetFindTolerance)}var a=this.contextCache,s=e.selectionBackgroundColor,l=this.viewportTransform;return e.selectionBackgroundColor="",this.clearContext(a),a.save(),a.transform(l[0],l[1],l[2],l[3],l[4],l[5]),e.render(a),a.restore(),e.selectionBackgroundColor=s,m.util.isTransparent(a,t,n,this.targetFindTolerance)},_isSelectionKeyPressed:function(e){return Array.isArray(this.selectionKey)?!!this.selectionKey.find((function(t){return!0===e[t]})):e[this.selectionKey]},_shouldClearSelection:function(e,t){var n=this.getActiveObjects(),i=this._activeObject;return!t||t&&i&&n.length>1&&-1===n.indexOf(t)&&i!==t&&!this._isSelectionKeyPressed(e)||t&&!t.evented||t&&!t.selectable&&i&&i!==t},_shouldCenterTransform:function(e,t,n){var i;if(e)return"scale"===t||"scaleX"===t||"scaleY"===t||"resizing"===t?i=this.centeredScaling||e.centeredScaling:"rotate"===t&&(i=this.centeredRotation||e.centeredRotation),i?!n:n},_getOriginFromCorner:function(e,t){var n={x:e.originX,y:e.originY};return"ml"===t||"tl"===t||"bl"===t?n.x="right":"mr"!==t&&"tr"!==t&&"br"!==t||(n.x="left"),"tl"===t||"mt"===t||"tr"===t?n.y="bottom":"bl"!==t&&"mb"!==t&&"br"!==t||(n.y="top"),n},_getActionFromCorner:function(e,t,n,i){if(!t||!e)return"drag";var o=i.controls[t];return o.getActionName(n,o,i)},_setupCurrentTransform:function(e,n,i){if(n){var o=this.getPointer(e),r=n.__corner,a=n.controls[r],s=i&&r?a.getActionHandler(e,n,a):m.controlsUtils.dragHandler,l=this._getActionFromCorner(i,r,e,n),c=this._getOriginFromCorner(n,r),u=e[this.centeredKey],h={target:n,action:l,actionHandler:s,corner:r,scaleX:n.scaleX,scaleY:n.scaleY,skewX:n.skewX,skewY:n.skewY,offsetX:o.x-n.left,offsetY:o.y-n.top,originX:c.x,originY:c.y,ex:o.x,ey:o.y,lastX:o.x,lastY:o.y,theta:t(n.angle),width:n.width*n.scaleX,shiftKey:e.shiftKey,altKey:u,original:m.util.saveObjectTransform(n)};this._shouldCenterTransform(n,l,u)&&(h.originX="center",h.originY="center"),h.original.originX=c.x,h.original.originY=c.y,this._currentTransform=h,this._beforeTransform(e)}},setCursor:function(e){this.upperCanvasEl.style.cursor=e},_drawSelection:function(e){var t=this._groupSelector,n=new m.Point(t.ex,t.ey),i=m.util.transformPoint(n,this.viewportTransform),o=new m.Point(t.ex+t.left,t.ey+t.top),r=m.util.transformPoint(o,this.viewportTransform),a=Math.min(i.x,r.x),s=Math.min(i.y,r.y),l=Math.max(i.x,r.x),c=Math.max(i.y,r.y),u=this.selectionLineWidth/2;this.selectionColor&&(e.fillStyle=this.selectionColor,e.fillRect(a,s,l-a,c-s)),this.selectionLineWidth&&this.selectionBorderColor&&(e.lineWidth=this.selectionLineWidth,e.strokeStyle=this.selectionBorderColor,a+=u,s+=u,l-=u,c-=u,m.Object.prototype._setLineDash.call(this,e,this.selectionDashArray),e.strokeRect(a,s,l-a,c-s))},findTarget:function(e,t){if(!this.skipTargetFind){var i,o,r=this.getPointer(e,!0),a=this._activeObject,s=this.getActiveObjects(),l=n(e),c=s.length>1&&!t||1===s.length;if(this.targets=[],c&&a._findTargetCorner(r,l))return a;if(s.length>1&&!t&&a===this._searchPossibleTargets([a],r))return a;if(1===s.length&&a===this._searchPossibleTargets([a],r)){if(!this.preserveObjectStacking)return a;i=a,o=this.targets,this.targets=[]}var u=this._searchPossibleTargets(this._objects,r);return e[this.altSelectionKey]&&u&&i&&u!==i&&(u=i,this.targets=o),u}},_checkTarget:function(e,t,n){if(t&&t.visible&&t.evented&&t.containsPoint(e)){if(!this.perPixelTargetFind&&!t.perPixelTargetFind||t.isEditing)return!0;if(!this.isTargetTransparent(t,n.x,n.y))return!0}},_searchPossibleTargets:function(e,t){for(var n,i,o=e.length;o--;){var r=e[o],a=r.group?this._normalizePointer(r.group,t):t;if(this._checkTarget(a,r,t)){(n=e[o]).subTargetCheck&&n instanceof m.Group&&(i=this._searchPossibleTargets(n._objects,t))&&this.targets.push(i);break}}return n},restorePointerVpt:function(e){return m.util.transformPoint(e,m.util.invertTransform(this.viewportTransform))},getPointer:function(t,n){if(this._absolutePointer&&!n)return this._absolutePointer;if(this._pointer&&n)return this._pointer;var i,o=e(t),r=this.upperCanvasEl,a=r.getBoundingClientRect(),s=a.width||0,l=a.height||0;s&&l||("top"in a&&"bottom"in a&&(l=Math.abs(a.top-a.bottom)),"right"in a&&"left"in a&&(s=Math.abs(a.right-a.left))),this.calcOffset(),o.x=o.x-this._offset.left,o.y=o.y-this._offset.top,n||(o=this.restorePointerVpt(o));var c=this.getRetinaScaling();return 1!==c&&(o.x/=c,o.y/=c),i=0===s||0===l?{width:1,height:1}:{width:r.width/s,height:r.height/l},{x:o.x*i.width,y:o.y*i.height}},_createUpperCanvas:function(){var e=this.lowerCanvasEl.className.replace(/\\s*lower-canvas\\s*/,""),t=this.lowerCanvasEl,n=this.upperCanvasEl;n?n.className="":(n=this._createCanvasElement(),this.upperCanvasEl=n),m.util.addClass(n,"upper-canvas "+e),this.wrapperEl.appendChild(n),this._copyCanvasStyle(t,n),this._applyCanvasStyle(n),this.contextTop=n.getContext("2d")},getTopContext:function(){return this.contextTop},_createCacheCanvas:function(){this.cacheCanvasEl=this._createCanvasElement(),this.cacheCanvasEl.setAttribute("width",this.width),this.cacheCanvasEl.setAttribute("height",this.height),this.contextCache=this.cacheCanvasEl.getContext("2d")},_initWrapperElement:function(){this.wrapperEl=m.util.wrapElement(this.lowerCanvasEl,"div",{class:this.containerClass}),m.util.setStyle(this.wrapperEl,{width:this.width+"px",height:this.height+"px",position:"relative"}),m.util.makeElementUnselectable(this.wrapperEl)},_applyCanvasStyle:function(e){var t=this.width||e.width,n=this.height||e.height;m.util.setStyle(e,{position:"absolute",width:t+"px",height:n+"px",left:0,top:0,"touch-action":this.allowTouchScrolling?"manipulation":"none","-ms-touch-action":this.allowTouchScrolling?"manipulation":"none"}),e.width=t,e.height=n,m.util.makeElementUnselectable(e)},_copyCanvasStyle:function(e,t){t.style.cssText=e.style.cssText},getSelectionContext:function(){return this.contextTop},getSelectionElement:function(){return this.upperCanvasEl},getActiveObject:function(){return this._activeObject},getActiveObjects:function(){var e=this._activeObject;return e?"activeSelection"===e.type&&e._objects?e._objects.slice(0):[e]:[]},_onObjectRemoved:function(e){e===this._activeObject&&(this.fire("before:selection:cleared",{target:e}),this._discardActiveObject(),this.fire("selection:cleared",{target:e}),e.fire("deselected")),e===this._hoveredTarget&&(this._hoveredTarget=null,this._hoveredTargets=[]),this.callSuper("_onObjectRemoved",e)},_fireSelectionEvents:function(e,t){var n=!1,i=this.getActiveObjects(),o=[],r=[];e.forEach((function(e){-1===i.indexOf(e)&&(n=!0,e.fire("deselected",{e:t,target:e}),r.push(e))})),i.forEach((function(i){-1===e.indexOf(i)&&(n=!0,i.fire("selected",{e:t,target:i}),o.push(i))})),e.length>0&&i.length>0?n&&this.fire("selection:updated",{e:t,selected:o,deselected:r}):i.length>0?this.fire("selection:created",{e:t,selected:o}):e.length>0&&this.fire("selection:cleared",{e:t,deselected:r})},setActiveObject:function(e,t){var n=this.getActiveObjects();return this._setActiveObject(e,t),this._fireSelectionEvents(n,t),this},_setActiveObject:function(e,t){return this._activeObject!==e&&(!!this._discardActiveObject(t,e)&&(!e.onSelect({e:t})&&(this._activeObject=e,!0)))},_discardActiveObject:function(e,t){var n=this._activeObject;if(n){if(n.onDeselect({e:e,object:t}))return!1;this._activeObject=null}return!0},discardActiveObject:function(e){var t=this.getActiveObjects(),n=this.getActiveObject();return t.length&&this.fire("before:selection:cleared",{target:n,e:e}),this._discardActiveObject(e),this._fireSelectionEvents(t,e),this},dispose:function(){var e=this.wrapperEl;return this.removeListeners(),e.removeChild(this.upperCanvasEl),e.removeChild(this.lowerCanvasEl),this.contextCache=null,this.contextTop=null,["upperCanvasEl","cacheCanvasEl"].forEach(function(e){m.util.cleanUpJsdomNode(this[e]),this[e]=void 0}.bind(this)),e.parentNode&&e.parentNode.replaceChild(this.lowerCanvasEl,this.wrapperEl),delete this.wrapperEl,m.StaticCanvas.prototype.dispose.call(this),this},clear:function(){return this.discardActiveObject(),this.clearContext(this.contextTop),this.callSuper("clear")},drawControls:function(e){var t=this._activeObject;t&&t._renderControls(e)},_toObject:function(e,t,n){var i=this._realizeGroupTransformOnObject(e),o=this.callSuper("_toObject",e,t,n);return this._unwindGroupTransformOnObject(e,i),o},_realizeGroupTransformOnObject:function(e){if(e.group&&"activeSelection"===e.group.type&&this._activeObject===e.group){var t={};return["angle","flipX","flipY","left","scaleX","scaleY","skewX","skewY","top"].forEach((function(n){t[n]=e[n]})),m.util.addTransformToObject(e,this._activeObject.calcOwnMatrix()),t}return null},_unwindGroupTransformOnObject:function(e,t){t&&e.set(t)},_setSVGObject:function(e,t,n){var i=this._realizeGroupTransformOnObject(t);this.callSuper("_setSVGObject",e,t,n),this._unwindGroupTransformOnObject(t,i)},setViewportTransform:function(e){this.renderOnAddRemove&&this._activeObject&&this._activeObject.isEditing&&this._activeObject.clearContextTop(),m.StaticCanvas.prototype.setViewportTransform.call(this,e)}}),m.StaticCanvas)"prototype"!==i&&(m.Canvas[i]=m.StaticCanvas[i])}(),function(){var e=m.util.addListener,t=m.util.removeListener,n={passive:!1};function i(e,t){return e.button&&e.button===t-1}m.util.object.extend(m.Canvas.prototype,{mainTouchId:null,_initEventListeners:function(){this.removeListeners(),this._bindEvents(),this.addOrRemove(e,"add")},_getEventPrefix:function(){return this.enablePointerEvents?"pointer":"mouse"},addOrRemove:function(e,t){var i=this.upperCanvasEl,o=this._getEventPrefix();e(m.window,"resize",this._onResize),e(i,o+"down",this._onMouseDown),e(i,o+"move",this._onMouseMove,n),e(i,o+"out",this._onMouseOut),e(i,o+"enter",this._onMouseEnter),e(i,"wheel",this._onMouseWheel),e(i,"contextmenu",this._onContextMenu),e(i,"dblclick",this._onDoubleClick),e(i,"dragover",this._onDragOver),e(i,"dragenter",this._onDragEnter),e(i,"dragleave",this._onDragLeave),e(i,"drop",this._onDrop),this.enablePointerEvents||e(i,"touchstart",this._onTouchStart,n),"undefined"!=typeof eventjs&&t in eventjs&&(eventjs[t](i,"gesture",this._onGesture),eventjs[t](i,"drag",this._onDrag),eventjs[t](i,"orientation",this._onOrientationChange),eventjs[t](i,"shake",this._onShake),eventjs[t](i,"longpress",this._onLongPress))},removeListeners:function(){this.addOrRemove(t,"remove");var e=this._getEventPrefix();t(m.document,e+"up",this._onMouseUp),t(m.document,"touchend",this._onTouchEnd,n),t(m.document,e+"move",this._onMouseMove,n),t(m.document,"touchmove",this._onMouseMove,n)},_bindEvents:function(){this.eventsBound||(this._onMouseDown=this._onMouseDown.bind(this),this._onTouchStart=this._onTouchStart.bind(this),this._onMouseMove=this._onMouseMove.bind(this),this._onMouseUp=this._onMouseUp.bind(this),this._onTouchEnd=this._onTouchEnd.bind(this),this._onResize=this._onResize.bind(this),this._onGesture=this._onGesture.bind(this),this._onDrag=this._onDrag.bind(this),this._onShake=this._onShake.bind(this),this._onLongPress=this._onLongPress.bind(this),this._onOrientationChange=this._onOrientationChange.bind(this),this._onMouseWheel=this._onMouseWheel.bind(this),this._onMouseOut=this._onMouseOut.bind(this),this._onMouseEnter=this._onMouseEnter.bind(this),this._onContextMenu=this._onContextMenu.bind(this),this._onDoubleClick=this._onDoubleClick.bind(this),this._onDragOver=this._onDragOver.bind(this),this._onDragEnter=this._simpleEventHandler.bind(this,"dragenter"),this._onDragLeave=this._simpleEventHandler.bind(this,"dragleave"),this._onDrop=this._onDrop.bind(this),this.eventsBound=!0)},_onGesture:function(e,t){this.__onTransformGesture&&this.__onTransformGesture(e,t)},_onDrag:function(e,t){this.__onDrag&&this.__onDrag(e,t)},_onMouseWheel:function(e){this.__onMouseWheel(e)},_onMouseOut:function(e){var t=this._hoveredTarget;this.fire("mouse:out",{target:t,e:e}),this._hoveredTarget=null,t&&t.fire("mouseout",{e:e});var n=this;this._hoveredTargets.forEach((function(i){n.fire("mouse:out",{target:t,e:e}),i&&t.fire("mouseout",{e:e})})),this._hoveredTargets=[]},_onMouseEnter:function(e){this._currentTransform||this.findTarget(e)||(this.fire("mouse:over",{target:null,e:e}),this._hoveredTarget=null,this._hoveredTargets=[])},_onOrientationChange:function(e,t){this.__onOrientationChange&&this.__onOrientationChange(e,t)},_onShake:function(e,t){this.__onShake&&this.__onShake(e,t)},_onLongPress:function(e,t){this.__onLongPress&&this.__onLongPress(e,t)},_onDragOver:function(e){e.preventDefault();var t=this._simpleEventHandler("dragover",e);this._fireEnterLeaveEvents(t,e)},_onDrop:function(e){return this._simpleEventHandler("drop:before",e),this._simpleEventHandler("drop",e)},_onContextMenu:function(e){return this.stopContextMenu&&(e.stopPropagation(),e.preventDefault()),!1},_onDoubleClick:function(e){this._cacheTransformEventData(e),this._handleEvent(e,"dblclick"),this._resetTransformEventData(e)},getPointerId:function(e){var t=e.changedTouches;return t?t[0]&&t[0].identifier:this.enablePointerEvents?e.pointerId:-1},_isMainEvent:function(e){return!0===e.isPrimary||!1!==e.isPrimary&&("touchend"===e.type&&0===e.touches.length||(!e.changedTouches||e.changedTouches[0].identifier===this.mainTouchId))},_onTouchStart:function(i){i.preventDefault(),null===this.mainTouchId&&(this.mainTouchId=this.getPointerId(i)),this.__onMouseDown(i),this._resetTransformEventData();var o=this.upperCanvasEl,r=this._getEventPrefix();e(m.document,"touchend",this._onTouchEnd,n),e(m.document,"touchmove",this._onMouseMove,n),t(o,r+"down",this._onMouseDown)},_onMouseDown:function(i){this.__onMouseDown(i),this._resetTransformEventData();var o=this.upperCanvasEl,r=this._getEventPrefix();t(o,r+"move",this._onMouseMove,n),e(m.document,r+"up",this._onMouseUp),e(m.document,r+"move",this._onMouseMove,n)},_onTouchEnd:function(i){if(!(i.touches.length>0)){this.__onMouseUp(i),this._resetTransformEventData(),this.mainTouchId=null;var o=this._getEventPrefix();t(m.document,"touchend",this._onTouchEnd,n),t(m.document,"touchmove",this._onMouseMove,n);var r=this;this._willAddMouseDown&&clearTimeout(this._willAddMouseDown),this._willAddMouseDown=setTimeout((function(){e(r.upperCanvasEl,o+"down",r._onMouseDown),r._willAddMouseDown=0}),400)}},_onMouseUp:function(i){this.__onMouseUp(i),this._resetTransformEventData();var o=this.upperCanvasEl,r=this._getEventPrefix();this._isMainEvent(i)&&(t(m.document,r+"up",this._onMouseUp),t(m.document,r+"move",this._onMouseMove,n),e(o,r+"move",this._onMouseMove,n))},_onMouseMove:function(e){!this.allowTouchScrolling&&e.preventDefault&&e.preventDefault(),this.__onMouseMove(e)},_onResize:function(){this.calcOffset()},_shouldRender:function(e){var t=this._activeObject;return!!(!!t!=!!e||t&&e&&t!==e)||(t&&t.isEditing,!1)},__onMouseUp:function(e){var t,n=this._currentTransform,o=this._groupSelector,r=!1,a=!o||0===o.left&&0===o.top;if(this._cacheTransformEventData(e),t=this._target,this._handleEvent(e,"up:before"),i(e,3))this.fireRightClick&&this._handleEvent(e,"up",3,a);else{if(i(e,2))return this.fireMiddleClick&&this._handleEvent(e,"up",2,a),void this._resetTransformEventData();if(this.isDrawingMode&&this._isCurrentlyDrawing)this._onMouseUpInDrawingMode(e);else if(this._isMainEvent(e)){if(n&&(this._finalizeCurrentTransform(e),r=n.actionPerformed),!a){var s=t===this._activeObject;this._maybeGroupObjects(e),r||(r=this._shouldRender(t)||!s&&t===this._activeObject)}var l,c;if(t){if(l=t._findTargetCorner(this.getPointer(e,!0),m.util.isTouchEvent(e)),t.selectable&&t!==this._activeObject&&"up"===t.activeOn)this.setActiveObject(t,e),r=!0;else{var u=t.controls[l],h=u&&u.getMouseUpHandler(e,t,u);h&&h(e,n,(c=this.getPointer(e)).x,c.y)}t.isMoving=!1}if(n&&(n.target!==t||n.corner!==l)){var d=n.target&&n.target.controls[n.corner],f=d&&d.getMouseUpHandler(e,t,u);c=c||this.getPointer(e),f&&f(e,n,c.x,c.y)}this._setCursorFromEvent(e,t),this._handleEvent(e,"up",1,a),this._groupSelector=null,this._currentTransform=null,t&&(t.__corner=0),r?this.requestRenderAll():a||this.renderTop()}}},_simpleEventHandler:function(e,t){var n=this.findTarget(t),i=this.targets,o={e:t,target:n,subTargets:i};if(this.fire(e,o),n&&n.fire(e,o),!i)return n;for(var r=0;r<i.length;r++)i[r].fire(e,o);return n},_handleEvent:function(e,t,n,i){var o=this._target,r=this.targets||[],a={e:e,target:o,subTargets:r,button:n||1,isClick:i||!1,pointer:this._pointer,absolutePointer:this._absolutePointer,transform:this._currentTransform};"up"===t&&(a.currentTarget=this.findTarget(e),a.currentSubTargets=this.targets),this.fire("mouse:"+t,a),o&&o.fire("mouse"+t,a);for(var s=0;s<r.length;s++)r[s].fire("mouse"+t,a)},_finalizeCurrentTransform:function(e){var t=this._currentTransform,n=t.target,i={e:e,target:n,transform:t,action:t.action};n._scaling&&(n._scaling=!1),n.setCoords(),(t.actionPerformed||this.stateful&&n.hasStateChanged())&&this._fire("modified",i)},_onMouseDownInDrawingMode:function(e){this._isCurrentlyDrawing=!0,this.getActiveObject()&&this.discardActiveObject(e).requestRenderAll();var t=this.getPointer(e);this.freeDrawingBrush.onMouseDown(t,{e:e,pointer:t}),this._handleEvent(e,"down")},_onMouseMoveInDrawingMode:function(e){if(this._isCurrentlyDrawing){var t=this.getPointer(e);this.freeDrawingBrush.onMouseMove(t,{e:e,pointer:t})}this.setCursor(this.freeDrawingCursor),this._handleEvent(e,"move")},_onMouseUpInDrawingMode:function(e){var t=this.getPointer(e);this._isCurrentlyDrawing=this.freeDrawingBrush.onMouseUp({e:e,pointer:t}),this._handleEvent(e,"up")},__onMouseDown:function(e){this._cacheTransformEventData(e),this._handleEvent(e,"down:before");var t=this._target;if(i(e,3))this.fireRightClick&&this._handleEvent(e,"down",3);else if(i(e,2))this.fireMiddleClick&&this._handleEvent(e,"down",2);else if(this.isDrawingMode)this._onMouseDownInDrawingMode(e);else if(this._isMainEvent(e)&&!this._currentTransform){var n=this._pointer;this._previousPointer=n;var o=this._shouldRender(t),r=this._shouldGroup(e,t);if(this._shouldClearSelection(e,t)?this.discardActiveObject(e):r&&(this._handleGrouping(e,t),t=this._activeObject),!this.selection||t&&(t.selectable||t.isEditing||t===this._activeObject)||(this._groupSelector={ex:this._absolutePointer.x,ey:this._absolutePointer.y,top:0,left:0}),t){var a=t===this._activeObject;t.selectable&&"down"===t.activeOn&&this.setActiveObject(t,e);var s=t._findTargetCorner(this.getPointer(e,!0),m.util.isTouchEvent(e));if(t.__corner=s,t===this._activeObject&&(s||!r)){this._setupCurrentTransform(e,t,a);var l=t.controls[s],c=(n=this.getPointer(e),l&&l.getMouseDownHandler(e,t,l));c&&c(e,this._currentTransform,n.x,n.y)}}this._handleEvent(e,"down"),(o||r)&&this.requestRenderAll()}},_resetTransformEventData:function(){this._target=null,this._pointer=null,this._absolutePointer=null},_cacheTransformEventData:function(e){this._resetTransformEventData(),this._pointer=this.getPointer(e,!0),this._absolutePointer=this.restorePointerVpt(this._pointer),this._target=this._currentTransform?this._currentTransform.target:this.findTarget(e)||null},_beforeTransform:function(e){var t=this._currentTransform;this.stateful&&t.target.saveState(),this.fire("before:transform",{e:e,transform:t})},__onMouseMove:function(e){var t,n;if(this._handleEvent(e,"move:before"),this._cacheTransformEventData(e),this.isDrawingMode)this._onMouseMoveInDrawingMode(e);else if(this._isMainEvent(e)){var i=this._groupSelector;i?(n=this._absolutePointer,i.left=n.x-i.ex,i.top=n.y-i.ey,this.renderTop()):this._currentTransform?this._transformObject(e):(t=this.findTarget(e)||null,this._setCursorFromEvent(e,t),this._fireOverOutEvents(t,e)),this._handleEvent(e,"move"),this._resetTransformEventData()}},_fireOverOutEvents:function(e,t){var n=this._hoveredTarget,i=this._hoveredTargets,o=this.targets,r=Math.max(i.length,o.length);this.fireSyntheticInOutEvents(e,t,{oldTarget:n,evtOut:"mouseout",canvasEvtOut:"mouse:out",evtIn:"mouseover",canvasEvtIn:"mouse:over"});for(var a=0;a<r;a++)this.fireSyntheticInOutEvents(o[a],t,{oldTarget:i[a],evtOut:"mouseout",evtIn:"mouseover"});this._hoveredTarget=e,this._hoveredTargets=this.targets.concat()},_fireEnterLeaveEvents:function(e,t){var n=this._draggedoverTarget,i=this._hoveredTargets,o=this.targets,r=Math.max(i.length,o.length);this.fireSyntheticInOutEvents(e,t,{oldTarget:n,evtOut:"dragleave",evtIn:"dragenter"});for(var a=0;a<r;a++)this.fireSyntheticInOutEvents(o[a],t,{oldTarget:i[a],evtOut:"dragleave",evtIn:"dragenter"});this._draggedoverTarget=e},fireSyntheticInOutEvents:function(e,t,n){var i,o,r,a=n.oldTarget,s=a!==e,l=n.canvasEvtIn,c=n.canvasEvtOut;s&&(i={e:t,target:e,previousTarget:a},o={e:t,target:a,nextTarget:e}),r=e&&s,a&&s&&(c&&this.fire(c,o),a.fire(n.evtOut,o)),r&&(l&&this.fire(l,i),e.fire(n.evtIn,i))},__onMouseWheel:function(e){this._cacheTransformEventData(e),this._handleEvent(e,"wheel"),this._resetTransformEventData()},_transformObject:function(e){var t=this.getPointer(e),n=this._currentTransform;n.reset=!1,n.shiftKey=e.shiftKey,n.altKey=e[this.centeredKey],this._performTransformAction(e,n,t),n.actionPerformed&&this.requestRenderAll()},_performTransformAction:function(e,t,n){var i=n.x,o=n.y,r=t.action,a=!1,s=t.actionHandler;s&&(a=s(e,t,i,o)),"drag"===r&&a&&(t.target.isMoving=!0,this.setCursor(t.target.moveCursor||this.moveCursor)),t.actionPerformed=t.actionPerformed||a},_fire:m.controlsUtils.fireEvent,_setCursorFromEvent:function(e,t){if(!t)return this.setCursor(this.defaultCursor),!1;var n=t.hoverCursor||this.hoverCursor,i=this._activeObject&&"activeSelection"===this._activeObject.type?this._activeObject:null,o=(!i||!i.contains(t))&&t._findTargetCorner(this.getPointer(e,!0));o?this.setCursor(this.getCornerCursor(o,t,e)):(t.subTargetCheck&&this.targets.concat().reverse().map((function(e){n=e.hoverCursor||n})),this.setCursor(n))},getCornerCursor:function(e,t,n){var i=t.controls[e];return i.cursorStyleHandler(n,i,t)}})}(),u=Math.min,h=Math.max,m.util.object.extend(m.Canvas.prototype,{_shouldGroup:function(e,t){var n=this._activeObject;return n&&this._isSelectionKeyPressed(e)&&t&&t.selectable&&this.selection&&(n!==t||"activeSelection"===n.type)&&!t.onSelect({e:e})},_handleGrouping:function(e,t){var n=this._activeObject;n.__corner||(t!==n||(t=this.findTarget(e,!0))&&t.selectable)&&(n&&"activeSelection"===n.type?this._updateActiveSelection(t,e):this._createActiveSelection(t,e))},_updateActiveSelection:function(e,t){var n=this._activeObject,i=n._objects.slice(0);n.contains(e)?(n.removeWithUpdate(e),this._hoveredTarget=e,this._hoveredTargets=this.targets.concat(),1===n.size()&&this._setActiveObject(n.item(0),t)):(n.addWithUpdate(e),this._hoveredTarget=n,this._hoveredTargets=this.targets.concat()),this._fireSelectionEvents(i,t)},_createActiveSelection:function(e,t){var n=this.getActiveObjects(),i=this._createGroup(e);this._hoveredTarget=i,this._setActiveObject(i,t),this._fireSelectionEvents(n,t)},_createGroup:function(e){var t=this._objects,n=t.indexOf(this._activeObject)<t.indexOf(e)?[this._activeObject,e]:[e,this._activeObject];return this._activeObject.isEditing&&this._activeObject.exitEditing(),new m.ActiveSelection(n,{canvas:this})},_groupSelectedObjects:function(e){var t,n=this._collectObjects(e);1===n.length?this.setActiveObject(n[0],e):n.length>1&&(t=new m.ActiveSelection(n.reverse(),{canvas:this}),this.setActiveObject(t,e))},_collectObjects:function(e){for(var t,n=[],i=this._groupSelector.ex,o=this._groupSelector.ey,r=i+this._groupSelector.left,a=o+this._groupSelector.top,s=new m.Point(u(i,r),u(o,a)),l=new m.Point(h(i,r),h(o,a)),c=!this.selectionFullyContained,d=i===r&&o===a,f=this._objects.length;f--&&!((t=this._objects[f])&&t.selectable&&t.visible&&(c&&t.intersectsWithRect(s,l,!0)||t.isContainedWithinRect(s,l,!0)||c&&t.containsPoint(s,null,!0)||c&&t.containsPoint(l,null,!0))&&(n.push(t),d)););return n.length>1&&(n=n.filter((function(t){return!t.onSelect({e:e})}))),n},_maybeGroupObjects:function(e){this.selection&&this._groupSelector&&this._groupSelectedObjects(e),this.setCursor(this.defaultCursor),this._groupSelector=null}}),m.util.object.extend(m.StaticCanvas.prototype,{toDataURL:function(e){e||(e={});var t=e.format||"png",n=e.quality||1,i=(e.multiplier||1)*(e.enableRetinaScaling?this.getRetinaScaling():1),o=this.toCanvasElement(i,e);return m.util.toDataURL(o,t,n)},toCanvasElement:function(e,t){e=e||1;var n=((t=t||{}).width||this.width)*e,i=(t.height||this.height)*e,o=this.getZoom(),r=this.width,a=this.height,s=o*e,l=this.viewportTransform,c=(l[4]-(t.left||0))*e,u=(l[5]-(t.top||0))*e,h=this.interactive,d=[s,0,0,s,c,u],f=this.enableRetinaScaling,p=m.util.createCanvasElement(),g=this.contextTop;return p.width=n,p.height=i,this.contextTop=null,this.enableRetinaScaling=!1,this.interactive=!1,this.viewportTransform=d,this.width=n,this.height=i,this.calcViewportBoundaries(),this.renderCanvas(p.getContext("2d"),this._objects),this.viewportTransform=l,this.width=r,this.height=a,this.calcViewportBoundaries(),this.interactive=h,this.enableRetinaScaling=f,this.contextTop=g,p}}),m.util.object.extend(m.StaticCanvas.prototype,{loadFromJSON:function(e,t,n){if(e){var i="string"==typeof e?JSON.parse(e):m.util.object.clone(e),o=this,r=i.clipPath,a=this.renderOnAddRemove;return this.renderOnAddRemove=!1,delete i.clipPath,this._enlivenObjects(i.objects,(function(e){o.clear(),o._setBgOverlay(i,(function(){r?o._enlivenObjects([r],(function(n){o.clipPath=n[0],o.__setupCanvas.call(o,i,e,a,t)})):o.__setupCanvas.call(o,i,e,a,t)}))}),n),this}},__setupCanvas:function(e,t,n,i){var o=this;t.forEach((function(e,t){o.insertAt(e,t)})),this.renderOnAddRemove=n,delete e.objects,delete e.backgroundImage,delete e.overlayImage,delete e.background,delete e.overlay,this._setOptions(e),this.renderAll(),i&&i()},_setBgOverlay:function(e,t){var n={backgroundColor:!1,overlayColor:!1,backgroundImage:!1,overlayImage:!1};if(e.backgroundImage||e.overlayImage||e.background||e.overlay){var i=function(){n.backgroundImage&&n.overlayImage&&n.backgroundColor&&n.overlayColor&&t&&t()};this.__setBgOverlay("backgroundImage",e.backgroundImage,n,i),this.__setBgOverlay("overlayImage",e.overlayImage,n,i),this.__setBgOverlay("backgroundColor",e.background,n,i),this.__setBgOverlay("overlayColor",e.overlay,n,i)}else t&&t()},__setBgOverlay:function(e,t,n,i){var o=this;if(!t)return n[e]=!0,void(i&&i());"backgroundImage"===e||"overlayImage"===e?m.util.enlivenObjects([t],(function(t){o[e]=t[0],n[e]=!0,i&&i()})):this["set"+m.util.string.capitalize(e,!0)](t,(function(){n[e]=!0,i&&i()}))},_enlivenObjects:function(e,t,n){e&&0!==e.length?m.util.enlivenObjects(e,(function(e){t&&t(e)}),null,n):t&&t([])},_toDataURL:function(e,t){this.clone((function(n){t(n.toDataURL(e))}))},_toDataURLWithMultiplier:function(e,t,n){this.clone((function(i){n(i.toDataURLWithMultiplier(e,t))}))},clone:function(e,t){var n=JSON.stringify(this.toJSON(t));this.cloneWithoutData((function(t){t.loadFromJSON(n,(function(){e&&e(t)}))}))},cloneWithoutData:function(e){var t=m.util.createCanvasElement();t.width=this.width,t.height=this.height;var n=new m.Canvas(t);this.backgroundImage?(n.setBackgroundImage(this.backgroundImage.src,(function(){n.renderAll(),e&&e(n)})),n.backgroundImageOpacity=this.backgroundImageOpacity,n.backgroundImageStretch=this.backgroundImageStretch):e&&e(n)}}),function(e){var t=e.fabric||(e.fabric={}),n=t.util.object.extend,i=t.util.object.clone,o=t.util.toFixed,r=t.util.string.capitalize,a=t.util.degreesToRadians,s=!t.isLikelyNode;t.Object||(t.Object=t.util.createClass(t.CommonMethods,{type:"object",originX:"left",originY:"top",top:0,left:0,width:0,height:0,scaleX:1,scaleY:1,flipX:!1,flipY:!1,opacity:1,angle:0,skewX:0,skewY:0,cornerSize:13,touchCornerSize:24,transparentCorners:!0,hoverCursor:null,moveCursor:null,padding:0,borderColor:"rgb(178,204,255)",borderDashArray:null,cornerColor:"rgb(178,204,255)",cornerStrokeColor:null,cornerStyle:"rect",cornerDashArray:null,centeredScaling:!1,centeredRotation:!0,fill:"rgb(0,0,0)",fillRule:"nonzero",globalCompositeOperation:"source-over",backgroundColor:"",selectionBackgroundColor:"",stroke:null,strokeWidth:1,strokeDashArray:null,strokeDashOffset:0,strokeLineCap:"butt",strokeLineJoin:"miter",strokeMiterLimit:4,shadow:null,borderOpacityWhenMoving:.4,borderScaleFactor:1,minScaleLimit:0,selectable:!0,evented:!0,visible:!0,hasControls:!0,hasBorders:!0,perPixelTargetFind:!1,includeDefaultValues:!0,lockMovementX:!1,lockMovementY:!1,lockRotation:!1,lockScalingX:!1,lockScalingY:!1,lockSkewingX:!1,lockSkewingY:!1,lockScalingFlip:!1,excludeFromExport:!1,objectCaching:s,statefullCache:!1,noScaleCache:!0,strokeUniform:!1,dirty:!0,__corner:0,paintFirst:"fill",activeOn:"down",stateProperties:"top left width height scaleX scaleY flipX flipY originX originY transformMatrix stroke strokeWidth strokeDashArray strokeLineCap strokeDashOffset strokeLineJoin strokeMiterLimit angle opacity fill globalCompositeOperation shadow visible backgroundColor skewX skewY fillRule paintFirst clipPath strokeUniform".split(" "),cacheProperties:"fill stroke strokeWidth strokeDashArray width height paintFirst strokeUniform strokeLineCap strokeDashOffset strokeLineJoin strokeMiterLimit backgroundColor clipPath".split(" "),colorProperties:"fill stroke backgroundColor".split(" "),clipPath:void 0,inverted:!1,absolutePositioned:!1,initialize:function(e){e&&this.setOptions(e)},_createCacheCanvas:function(){this._cacheProperties={},this._cacheCanvas=t.util.createCanvasElement(),this._cacheContext=this._cacheCanvas.getContext("2d"),this._updateCacheCanvas(),this.dirty=!0},_limitCacheSize:function(e){var n=t.perfLimitSizeTotal,i=e.width,o=e.height,r=t.maxCacheSideLimit,a=t.minCacheSideLimit;if(i<=r&&o<=r&&i*o<=n)return i<a&&(e.width=a),o<a&&(e.height=a),e;var s=i/o,l=t.util.limitDimsByArea(s,n),c=t.util.capValue,u=c(a,l.x,r),h=c(a,l.y,r);return i>u&&(e.zoomX/=i/u,e.width=u,e.capped=!0),o>h&&(e.zoomY/=o/h,e.height=h,e.capped=!0),e},_getCacheCanvasDimensions:function(){var e=this.getTotalObjectScaling(),t=this._getTransformedDimensions(0,0),n=t.x*e.scaleX/this.scaleX,i=t.y*e.scaleY/this.scaleY;return{width:n+2,height:i+2,zoomX:e.scaleX,zoomY:e.scaleY,x:n,y:i}},_updateCacheCanvas:function(){var e=this.canvas;if(this.noScaleCache&&e&&e._currentTransform){var n=e._currentTransform.target,i=e._currentTransform.action;if(this===n&&i.slice&&"scale"===i.slice(0,5))return!1}var o,r,a=this._cacheCanvas,s=this._limitCacheSize(this._getCacheCanvasDimensions()),l=t.minCacheSideLimit,c=s.width,u=s.height,h=s.zoomX,d=s.zoomY,f=c!==this.cacheWidth||u!==this.cacheHeight,p=this.zoomX!==h||this.zoomY!==d,g=f||p,m=0,v=0,y=!1;if(f){var b=this._cacheCanvas.width,_=this._cacheCanvas.height,k=c>b||u>_;y=k||(c<.9*b||u<.9*_)&&b>l&&_>l,k&&!s.capped&&(c>l||u>l)&&(m=.1*c,v=.1*u)}return this instanceof t.Text&&this.path&&(g=!0,y=!0,m+=this.getHeightOfLine(0)*this.zoomX,v+=this.getHeightOfLine(0)*this.zoomY),!!g&&(y?(a.width=Math.ceil(c+m),a.height=Math.ceil(u+v)):(this._cacheContext.setTransform(1,0,0,1,0,0),this._cacheContext.clearRect(0,0,a.width,a.height)),o=s.x/2,r=s.y/2,this.cacheTranslationX=Math.round(a.width/2-o)+o,this.cacheTranslationY=Math.round(a.height/2-r)+r,this.cacheWidth=c,this.cacheHeight=u,this._cacheContext.translate(this.cacheTranslationX,this.cacheTranslationY),this._cacheContext.scale(h,d),this.zoomX=h,this.zoomY=d,!0)},setOptions:function(e){this._setOptions(e),this._initGradient(e.fill,"fill"),this._initGradient(e.stroke,"stroke"),this._initPattern(e.fill,"fill"),this._initPattern(e.stroke,"stroke")},transform:function(e){var t=this.group&&!this.group._transformDone||this.group&&this.canvas&&e===this.canvas.contextTop,n=this.calcTransformMatrix(!t);e.transform(n[0],n[1],n[2],n[3],n[4],n[5])},toObject:function(e){var n=t.Object.NUM_FRACTION_DIGITS,i={type:this.type,version:t.version,originX:this.originX,originY:this.originY,left:o(this.left,n),top:o(this.top,n),width:o(this.width,n),height:o(this.height,n),fill:this.fill&&this.fill.toObject?this.fill.toObject():this.fill,stroke:this.stroke&&this.stroke.toObject?this.stroke.toObject():this.stroke,strokeWidth:o(this.strokeWidth,n),strokeDashArray:this.strokeDashArray?this.strokeDashArray.concat():this.strokeDashArray,strokeLineCap:this.strokeLineCap,strokeDashOffset:this.strokeDashOffset,strokeLineJoin:this.strokeLineJoin,strokeUniform:this.strokeUniform,strokeMiterLimit:o(this.strokeMiterLimit,n),scaleX:o(this.scaleX,n),scaleY:o(this.scaleY,n),angle:o(this.angle,n),flipX:this.flipX,flipY:this.flipY,opacity:o(this.opacity,n),shadow:this.shadow&&this.shadow.toObject?this.shadow.toObject():this.shadow,visible:this.visible,backgroundColor:this.backgroundColor,fillRule:this.fillRule,paintFirst:this.paintFirst,globalCompositeOperation:this.globalCompositeOperation,skewX:o(this.skewX,n),skewY:o(this.skewY,n)};return this.clipPath&&!this.clipPath.excludeFromExport&&(i.clipPath=this.clipPath.toObject(e),i.clipPath.inverted=this.clipPath.inverted,i.clipPath.absolutePositioned=this.clipPath.absolutePositioned),t.util.populateWithProperties(this,i,e),this.includeDefaultValues||(i=this._removeDefaultValues(i)),i},toDatalessObject:function(e){return this.toObject(e)},_removeDefaultValues:function(e){var n=t.util.getKlass(e.type).prototype;return n.stateProperties.forEach((function(t){"left"!==t&&"top"!==t&&(e[t]===n[t]&&delete e[t],Array.isArray(e[t])&&Array.isArray(n[t])&&0===e[t].length&&0===n[t].length&&delete e[t])})),e},toString:function(){return"#<fabric."+r(this.type)+">"},getObjectScaling:function(){if(!this.group)return{scaleX:this.scaleX,scaleY:this.scaleY};var e=t.util.qrDecompose(this.calcTransformMatrix());return{scaleX:Math.abs(e.scaleX),scaleY:Math.abs(e.scaleY)}},getTotalObjectScaling:function(){var e=this.getObjectScaling(),t=e.scaleX,n=e.scaleY;if(this.canvas){var i=this.canvas.getZoom(),o=this.canvas.getRetinaScaling();t*=i*o,n*=i*o}return{scaleX:t,scaleY:n}},getObjectOpacity:function(){var e=this.opacity;return this.group&&(e*=this.group.getObjectOpacity()),e},_set:function(e,n){var i="scaleX"===e||"scaleY"===e,o=this[e]!==n,r=!1;return i&&(n=this._constrainScale(n)),"scaleX"===e&&n<0?(this.flipX=!this.flipX,n*=-1):"scaleY"===e&&n<0?(this.flipY=!this.flipY,n*=-1):"shadow"!==e||!n||n instanceof t.Shadow?"dirty"===e&&this.group&&this.group.set("dirty",n):n=new t.Shadow(n),this[e]=n,o&&(r=this.group&&this.group.isOnACache(),this.cacheProperties.indexOf(e)>-1?(this.dirty=!0,r&&this.group.set("dirty",!0)):r&&this.stateProperties.indexOf(e)>-1&&this.group.set("dirty",!0)),this},setOnGroup:function(){},getViewportTransform:function(){return this.canvas&&this.canvas.viewportTransform?this.canvas.viewportTransform:t.iMatrix.concat()},isNotVisible:function(){return 0===this.opacity||!this.width&&!this.height&&0===this.strokeWidth||!this.visible},render:function(e){this.isNotVisible()||this.canvas&&this.canvas.skipOffscreen&&!this.group&&!this.isOnScreen()||(e.save(),this._setupCompositeOperation(e),this.drawSelectionBackground(e),this.transform(e),this._setOpacity(e),this._setShadow(e,this),this.shouldCache()?(this.renderCache(),this.drawCacheOnCanvas(e)):(this._removeCacheCanvas(),this.dirty=!1,this.drawObject(e),this.objectCaching&&this.statefullCache&&this.saveState({propertySet:"cacheProperties"})),e.restore())},renderCache:function(e){e=e||{},this._cacheCanvas&&this._cacheContext||this._createCacheCanvas(),this.isCacheDirty()&&(this.statefullCache&&this.saveState({propertySet:"cacheProperties"}),this.drawObject(this._cacheContext,e.forClipping),this.dirty=!1)},_removeCacheCanvas:function(){this._cacheCanvas=null,this._cacheContext=null,this.cacheWidth=0,this.cacheHeight=0},hasStroke:function(){return this.stroke&&"transparent"!==this.stroke&&0!==this.strokeWidth},hasFill:function(){return this.fill&&"transparent"!==this.fill},needsItsOwnCache:function(){return!("stroke"!==this.paintFirst||!this.hasFill()||!this.hasStroke()||"object"!==_typeof(this.shadow))||!!this.clipPath},shouldCache:function(){return this.ownCaching=this.needsItsOwnCache()||this.objectCaching&&(!this.group||!this.group.isOnACache()),this.ownCaching},willDrawShadow:function(){return!!this.shadow&&(0!==this.shadow.offsetX||0!==this.shadow.offsetY)},drawClipPathOnCache:function(e,n){if(e.save(),n.inverted?e.globalCompositeOperation="destination-out":e.globalCompositeOperation="destination-in",n.absolutePositioned){var i=t.util.invertTransform(this.calcTransformMatrix());e.transform(i[0],i[1],i[2],i[3],i[4],i[5])}n.transform(e),e.scale(1/n.zoomX,1/n.zoomY),e.drawImage(n._cacheCanvas,-n.cacheTranslationX,-n.cacheTranslationY),e.restore()},drawObject:function(e,t){var n=this.fill,i=this.stroke;t?(this.fill="black",this.stroke="",this._setClippingProperties(e)):this._renderBackground(e),this._render(e),this._drawClipPath(e,this.clipPath),this.fill=n,this.stroke=i},_drawClipPath:function(e,t){t&&(t.canvas=this.canvas,t.shouldCache(),t._transformDone=!0,t.renderCache({forClipping:!0}),this.drawClipPathOnCache(e,t))},drawCacheOnCanvas:function(e){e.scale(1/this.zoomX,1/this.zoomY),e.drawImage(this._cacheCanvas,-this.cacheTranslationX,-this.cacheTranslationY)},isCacheDirty:function(e){if(this.isNotVisible())return!1;if(this._cacheCanvas&&this._cacheContext&&!e&&this._updateCacheCanvas())return!0;if(this.dirty||this.clipPath&&this.clipPath.absolutePositioned||this.statefullCache&&this.hasStateChanged("cacheProperties")){if(this._cacheCanvas&&this._cacheContext&&!e){var t=this.cacheWidth/this.zoomX,n=this.cacheHeight/this.zoomY;this._cacheContext.clearRect(-t/2,-n/2,t,n)}return!0}return!1},_renderBackground:function(e){if(this.backgroundColor){var t=this._getNonTransformedDimensions();e.fillStyle=this.backgroundColor,e.fillRect(-t.x/2,-t.y/2,t.x,t.y),this._removeShadow(e)}},_setOpacity:function(e){this.group&&!this.group._transformDone?e.globalAlpha=this.getObjectOpacity():e.globalAlpha*=this.opacity},_setStrokeStyles:function(e,t){var n=t.stroke;n&&(e.lineWidth=t.strokeWidth,e.lineCap=t.strokeLineCap,e.lineDashOffset=t.strokeDashOffset,e.lineJoin=t.strokeLineJoin,e.miterLimit=t.strokeMiterLimit,n.toLive?"percentage"===n.gradientUnits||n.gradientTransform||n.patternTransform?this._applyPatternForTransformedGradient(e,n):(e.strokeStyle=n.toLive(e,this),this._applyPatternGradientTransform(e,n)):e.strokeStyle=t.stroke)},_setFillStyles:function(e,t){var n=t.fill;n&&(n.toLive?(e.fillStyle=n.toLive(e,this),this._applyPatternGradientTransform(e,t.fill)):e.fillStyle=n)},_setClippingProperties:function(e){e.globalAlpha=1,e.strokeStyle="transparent",e.fillStyle="#000000"},_setLineDash:function(e,t){t&&0!==t.length&&(1&t.length&&t.push.apply(t,t),e.setLineDash(t))},_renderControls:function(e,n){var i,o,r,s=this.getViewportTransform(),l=this.calcTransformMatrix();o=void 0!==(n=n||{}).hasBorders?n.hasBorders:this.hasBorders,r=void 0!==n.hasControls?n.hasControls:this.hasControls,l=t.util.multiplyTransformMatrices(s,l),i=t.util.qrDecompose(l),e.save(),e.translate(i.translateX,i.translateY),e.lineWidth=1*this.borderScaleFactor,this.group||(e.globalAlpha=this.isMoving?this.borderOpacityWhenMoving:1),this.flipX&&(i.angle-=180),e.rotate(a(this.group?i.angle:this.angle)),n.forActiveSelection||this.group?o&&this.drawBordersInGroup(e,i,n):o&&this.drawBorders(e,n),r&&this.drawControls(e,n),e.restore()},_setShadow:function(e){if(this.shadow){var n,i=this.shadow,o=this.canvas,r=o&&o.viewportTransform[0]||1,a=o&&o.viewportTransform[3]||1;n=i.nonScaling?{scaleX:1,scaleY:1}:this.getObjectScaling(),o&&o._isRetinaScaling()&&(r*=t.devicePixelRatio,a*=t.devicePixelRatio),e.shadowColor=i.color,e.shadowBlur=i.blur*t.browserShadowBlurConstant*(r+a)*(n.scaleX+n.scaleY)/4,e.shadowOffsetX=i.offsetX*r*n.scaleX,e.shadowOffsetY=i.offsetY*a*n.scaleY}},_removeShadow:function(e){this.shadow&&(e.shadowColor="",e.shadowBlur=e.shadowOffsetX=e.shadowOffsetY=0)},_applyPatternGradientTransform:function(e,t){if(!t||!t.toLive)return{offsetX:0,offsetY:0};var n=t.gradientTransform||t.patternTransform,i=-this.width/2+t.offsetX||0,o=-this.height/2+t.offsetY||0;return"percentage"===t.gradientUnits?e.transform(this.width,0,0,this.height,i,o):e.transform(1,0,0,1,i,o),n&&e.transform(n[0],n[1],n[2],n[3],n[4],n[5]),{offsetX:i,offsetY:o}},_renderPaintInOrder:function(e){"stroke"===this.paintFirst?(this._renderStroke(e),this._renderFill(e)):(this._renderFill(e),this._renderStroke(e))},_render:function(){},_renderFill:function(e){this.fill&&(e.save(),this._setFillStyles(e,this),"evenodd"===this.fillRule?e.fill("evenodd"):e.fill(),e.restore())},_renderStroke:function(e){if(this.stroke&&0!==this.strokeWidth){if(this.shadow&&!this.shadow.affectStroke&&this._removeShadow(e),e.save(),this.strokeUniform&&this.group){var t=this.getObjectScaling();e.scale(1/t.scaleX,1/t.scaleY)}else this.strokeUniform&&e.scale(1/this.scaleX,1/this.scaleY);this._setLineDash(e,this.strokeDashArray),this._setStrokeStyles(e,this),e.stroke(),e.restore()}},_applyPatternForTransformedGradient:function(e,n){var i,o=this._limitCacheSize(this._getCacheCanvasDimensions()),r=t.util.createCanvasElement(),a=this.canvas.getRetinaScaling(),s=o.x/this.scaleX/a,l=o.y/this.scaleY/a;r.width=s,r.height=l,(i=r.getContext("2d")).beginPath(),i.moveTo(0,0),i.lineTo(s,0),i.lineTo(s,l),i.lineTo(0,l),i.closePath(),i.translate(s/2,l/2),i.scale(o.zoomX/this.scaleX/a,o.zoomY/this.scaleY/a),this._applyPatternGradientTransform(i,n),i.fillStyle=n.toLive(e),i.fill(),e.translate(-this.width/2-this.strokeWidth/2,-this.height/2-this.strokeWidth/2),e.scale(a*this.scaleX/o.zoomX,a*this.scaleY/o.zoomY),e.strokeStyle=i.createPattern(r,"no-repeat")},_findCenterFromElement:function(){return{x:this.left+this.width/2,y:this.top+this.height/2}},_assignTransformMatrixProps:function(){if(this.transformMatrix){var e=t.util.qrDecompose(this.transformMatrix);this.flipX=!1,this.flipY=!1,this.set("scaleX",e.scaleX),this.set("scaleY",e.scaleY),this.angle=e.angle,this.skewX=e.skewX,this.skewY=0}},_removeTransformMatrix:function(e){var n=this._findCenterFromElement();this.transformMatrix&&(this._assignTransformMatrixProps(),n=t.util.transformPoint(n,this.transformMatrix)),this.transformMatrix=null,e&&(this.scaleX*=e.scaleX,this.scaleY*=e.scaleY,this.cropX=e.cropX,this.cropY=e.cropY,n.x+=e.offsetLeft,n.y+=e.offsetTop,this.width=e.width,this.height=e.height),this.setPositionByOrigin(n,"center","center")},clone:function(e,n){var i=this.toObject(n);this.constructor.fromObject?this.constructor.fromObject(i,e):t.Object._fromObject("Object",i,e)},cloneAsImage:function(e,n){var i=this.toCanvasElement(n);return e&&e(new t.Image(i)),this},toCanvasElement:function(e){e||(e={});var n=t.util,i=n.saveObjectTransform(this),o=this.group,r=this.shadow,a=Math.abs,s=(e.multiplier||1)*(e.enableRetinaScaling?t.devicePixelRatio:1);delete this.group,e.withoutTransform&&n.resetObjectTransform(this),e.withoutShadow&&(this.shadow=null);var l,c,u,h,d=t.util.createCanvasElement(),f=this.getBoundingRect(!0,!0),p=this.shadow,g={x:0,y:0};p&&(c=p.blur,l=p.nonScaling?{scaleX:1,scaleY:1}:this.getObjectScaling(),g.x=2*Math.round(a(p.offsetX)+c)*a(l.scaleX),g.y=2*Math.round(a(p.offsetY)+c)*a(l.scaleY)),u=f.width+g.x,h=f.height+g.y,d.width=Math.ceil(u),d.height=Math.ceil(h);var m=new t.StaticCanvas(d,{enableRetinaScaling:!1,renderOnAddRemove:!1,skipOffscreen:!1});"jpeg"===e.format&&(m.backgroundColor="#fff"),this.setPositionByOrigin(new t.Point(m.width/2,m.height/2),"center","center");var v=this.canvas;m.add(this);var y=m.toCanvasElement(s||1,e);return this.shadow=r,this.set("canvas",v),o&&(this.group=o),this.set(i).setCoords(),m._objects=[],m.dispose(),m=null,y},toDataURL:function(e){return e||(e={}),t.util.toDataURL(this.toCanvasElement(e),e.format||"png",e.quality||1)},isType:function(e){return arguments.length>1?Array.from(arguments).includes(this.type):this.type===e},complexity:function(){return 1},toJSON:function(e){return this.toObject(e)},rotate:function(e){var t=("center"!==this.originX||"center"!==this.originY)&&this.centeredRotation;return t&&this._setOriginToCenter(),this.set("angle",e),t&&this._resetOrigin(),this},centerH:function(){return this.canvas&&this.canvas.centerObjectH(this),this},viewportCenterH:function(){return this.canvas&&this.canvas.viewportCenterObjectH(this),this},centerV:function(){return this.canvas&&this.canvas.centerObjectV(this),this},viewportCenterV:function(){return this.canvas&&this.canvas.viewportCenterObjectV(this),this},center:function(){return this.canvas&&this.canvas.centerObject(this),this},viewportCenter:function(){return this.canvas&&this.canvas.viewportCenterObject(this),this},getLocalPointer:function(e,n){n=n||this.canvas.getPointer(e);var i=new t.Point(n.x,n.y),o=this._getLeftTopCoords();return this.angle&&(i=t.util.rotatePoint(i,o,a(-this.angle))),{x:i.x-o.x,y:i.y-o.y}},_setupCompositeOperation:function(e){this.globalCompositeOperation&&(e.globalCompositeOperation=this.globalCompositeOperation)},dispose:function(){t.runningAnimations&&t.runningAnimations.cancelByTarget(this)}}),t.util.createAccessors&&t.util.createAccessors(t.Object),n(t.Object.prototype,t.Observable),t.Object.NUM_FRACTION_DIGITS=2,t.Object.ENLIVEN_PROPS=["clipPath"],t.Object._fromObject=function(e,n,o,r){var a=t[e];n=i(n,!0),t.util.enlivenPatterns([n.fill,n.stroke],(function(e){void 0!==e[0]&&(n.fill=e[0]),void 0!==e[1]&&(n.stroke=e[1]),t.util.enlivenObjectEnlivables(n,n,(function(){var e=r?new a(n[r],n):new a(n);o&&o(e)}))}))},t.Object.__uid=0)}(e),d=m.util.degreesToRadians,f={left:-.5,center:0,right:.5},p={top:-.5,center:0,bottom:.5},m.util.object.extend(m.Object.prototype,{translateToGivenOrigin:function(e,t,n,i,o){var r,a,s,l=e.x,c=e.y;return"string"==typeof t?t=f[t]:t-=.5,"string"==typeof i?i=f[i]:i-=.5,"string"==typeof n?n=p[n]:n-=.5,"string"==typeof o?o=p[o]:o-=.5,a=o-n,((r=i-t)||a)&&(s=this._getTransformedDimensions(),l=e.x+r*s.x,c=e.y+a*s.y),new m.Point(l,c)},translateToCenterPoint:function(e,t,n){var i=this.translateToGivenOrigin(e,t,n,"center","center");return this.angle?m.util.rotatePoint(i,e,d(this.angle)):i},translateToOriginPoint:function(e,t,n){var i=this.translateToGivenOrigin(e,"center","center",t,n);return this.angle?m.util.rotatePoint(i,e,d(this.angle)):i},getCenterPoint:function(){var e=new m.Point(this.left,this.top);return this.translateToCenterPoint(e,this.originX,this.originY)},getPointByOrigin:function(e,t){var n=this.getCenterPoint();return this.translateToOriginPoint(n,e,t)},toLocalPoint:function(e,t,n){var i,o,r=this.getCenterPoint();return i=void 0!==t&&void 0!==n?this.translateToGivenOrigin(r,"center","center",t,n):new m.Point(this.left,this.top),o=new m.Point(e.x,e.y),this.angle&&(o=m.util.rotatePoint(o,r,-d(this.angle))),o.subtractEquals(i)},setPositionByOrigin:function(e,t,n){var i=this.translateToCenterPoint(e,t,n),o=this.translateToOriginPoint(i,this.originX,this.originY);this.set("left",o.x),this.set("top",o.y)},adjustPosition:function(e){var t,n,i=d(this.angle),o=this.getScaledWidth(),r=m.util.cos(i)*o,a=m.util.sin(i)*o;t="string"==typeof this.originX?f[this.originX]:this.originX-.5,n="string"==typeof e?f[e]:e-.5,this.left+=r*(n-t),this.top+=a*(n-t),this.setCoords(),this.originX=e},_setOriginToCenter:function(){this._originalOriginX=this.originX,this._originalOriginY=this.originY;var e=this.getCenterPoint();this.originX="center",this.originY="center",this.left=e.x,this.top=e.y},_resetOrigin:function(){var e=this.translateToOriginPoint(this.getCenterPoint(),this._originalOriginX,this._originalOriginY);this.originX=this._originalOriginX,this.originY=this._originalOriginY,this.left=e.x,this.top=e.y,this._originalOriginX=null,this._originalOriginY=null},_getLeftTopCoords:function(){return this.translateToOriginPoint(this.getCenterPoint(),"left","top")}}),function(){var e=m.util,t=e.degreesToRadians,n=e.multiplyTransformMatrices,i=e.transformPoint;e.object.extend(m.Object.prototype,{oCoords:null,aCoords:null,lineCoords:null,ownMatrixCache:null,matrixCache:null,controls:{},_getCoords:function(e,t){return t?e?this.calcACoords():this.calcLineCoords():(this.aCoords&&this.lineCoords||this.setCoords(!0),e?this.aCoords:this.lineCoords)},getCoords:function(e,t){return n=this._getCoords(e,t),[new m.Point(n.tl.x,n.tl.y),new m.Point(n.tr.x,n.tr.y),new m.Point(n.br.x,n.br.y),new m.Point(n.bl.x,n.bl.y)];var n},intersectsWithRect:function(e,t,n,i){var o=this.getCoords(n,i);return"Intersection"===m.Intersection.intersectPolygonRectangle(o,e,t).status},intersectsWithObject:function(e,t,n){return"Intersection"===m.Intersection.intersectPolygonPolygon(this.getCoords(t,n),e.getCoords(t,n)).status||e.isContainedWithinObject(this,t,n)||this.isContainedWithinObject(e,t,n)},isContainedWithinObject:function(e,t,n){for(var i=this.getCoords(t,n),o=t?e.aCoords:e.lineCoords,r=0,a=e._getImageLines(o);r<4;r++)if(!e.containsPoint(i[r],a))return!1;return!0},isContainedWithinRect:function(e,t,n,i){var o=this.getBoundingRect(n,i);return o.left>=e.x&&o.left+o.width<=t.x&&o.top>=e.y&&o.top+o.height<=t.y},containsPoint:function(e,t,n,i){var o=this._getCoords(n,i),r=(t=t||this._getImageLines(o),this._findCrossPoints(e,t));return 0!==r&&r%2==1},isOnScreen:function(e){if(!this.canvas)return!1;var t=this.canvas.vptCoords.tl,n=this.canvas.vptCoords.br;return!!this.getCoords(!0,e).some((function(e){return e.x<=n.x&&e.x>=t.x&&e.y<=n.y&&e.y>=t.y}))||(!!this.intersectsWithRect(t,n,!0,e)||this._containsCenterOfCanvas(t,n,e))},_containsCenterOfCanvas:function(e,t,n){var i={x:(e.x+t.x)/2,y:(e.y+t.y)/2};return!!this.containsPoint(i,null,!0,n)},isPartiallyOnScreen:function(e){if(!this.canvas)return!1;var t=this.canvas.vptCoords.tl,n=this.canvas.vptCoords.br;return!!this.intersectsWithRect(t,n,!0,e)||this.getCoords(!0,e).every((function(e){return(e.x>=n.x||e.x<=t.x)&&(e.y>=n.y||e.y<=t.y)}))&&this._containsCenterOfCanvas(t,n,e)},_getImageLines:function(e){return{topline:{o:e.tl,d:e.tr},rightline:{o:e.tr,d:e.br},bottomline:{o:e.br,d:e.bl},leftline:{o:e.bl,d:e.tl}}},_findCrossPoints:function(e,t){var n,i,o,r=0;for(var a in t)if(!((o=t[a]).o.y<e.y&&o.d.y<e.y||o.o.y>=e.y&&o.d.y>=e.y||(o.o.x===o.d.x&&o.o.x>=e.x?i=o.o.x:(0,n=(o.d.y-o.o.y)/(o.d.x-o.o.x),i=-(e.y-0*e.x-(o.o.y-n*o.o.x))/(0-n)),i>=e.x&&(r+=1),2!==r)))break;return r},getBoundingRect:function(t,n){var i=this.getCoords(t,n);return e.makeBoundingBoxFromPoints(i)},getScaledWidth:function(){return this._getTransformedDimensions().x},getScaledHeight:function(){return this._getTransformedDimensions().y},_constrainScale:function(e){return Math.abs(e)<this.minScaleLimit?e<0?-this.minScaleLimit:this.minScaleLimit:0===e?1e-4:e},scale:function(e){return this._set("scaleX",e),this._set("scaleY",e),this.setCoords()},scaleToWidth:function(e,t){var n=this.getBoundingRect(t).width/this.getScaledWidth();return this.scale(e/this.width/n)},scaleToHeight:function(e,t){var n=this.getBoundingRect(t).height/this.getScaledHeight();return this.scale(e/this.height/n)},calcLineCoords:function(){var n=this.getViewportTransform(),o=this.padding,r=t(this.angle),a=e.cos(r)*o,s=e.sin(r)*o,l=a+s,c=a-s,u=this.calcACoords(),h={tl:i(u.tl,n),tr:i(u.tr,n),bl:i(u.bl,n),br:i(u.br,n)};return o&&(h.tl.x-=c,h.tl.y-=l,h.tr.x+=l,h.tr.y-=c,h.bl.x-=l,h.bl.y+=c,h.br.x+=c,h.br.y+=l),h},calcOCoords:function(){var e=this._calcRotateMatrix(),t=this._calcTranslateMatrix(),i=this.getViewportTransform(),o=n(i,t),r=n(o,e),a=(r=n(r,[1/i[0],0,0,1/i[3],0,0]),this._calculateCurrentDimensions()),s={};return this.forEachControl((function(e,t,n){s[t]=e.positionHandler(a,r,n)})),s},calcACoords:function(){var e=this._calcRotateMatrix(),t=this._calcTranslateMatrix(),o=n(t,e),r=this._getTransformedDimensions(),a=r.x/2,s=r.y/2;return{tl:i({x:-a,y:-s},o),tr:i({x:a,y:-s},o),bl:i({x:-a,y:s},o),br:i({x:a,y:s},o)}},setCoords:function(e){return this.aCoords=this.calcACoords(),this.lineCoords=this.group?this.aCoords:this.calcLineCoords(),e||(this.oCoords=this.calcOCoords(),this._setCornerCoords&&this._setCornerCoords()),this},_calcRotateMatrix:function(){return e.calcRotateMatrix(this)},_calcTranslateMatrix:function(){var e=this.getCenterPoint();return[1,0,0,1,e.x,e.y]},transformMatrixKey:function(e){var t="_",n="";return!e&&this.group&&(n=this.group.transformMatrixKey(e)+t),n+this.top+t+this.left+t+this.scaleX+t+this.scaleY+t+this.skewX+t+this.skewY+t+this.angle+t+this.originX+t+this.originY+t+this.width+t+this.height+t+this.strokeWidth+this.flipX+this.flipY},calcTransformMatrix:function(e){var t=this.calcOwnMatrix();if(e||!this.group)return t;var i=this.transformMatrixKey(e),o=this.matrixCache||(this.matrixCache={});return o.key===i?o.value:(this.group&&(t=n(this.group.calcTransformMatrix(!1),t)),o.key=i,o.value=t,t)},calcOwnMatrix:function(){var t=this.transformMatrixKey(!0),n=this.ownMatrixCache||(this.ownMatrixCache={});if(n.key===t)return n.value;var i=this._calcTranslateMatrix(),o={angle:this.angle,translateX:i[4],translateY:i[5],scaleX:this.scaleX,scaleY:this.scaleY,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY};return n.key=t,n.value=e.composeMatrix(o),n.value},_getNonTransformedDimensions:function(){var e=this.strokeWidth;return{x:this.width+e,y:this.height+e}},_getTransformedDimensions:function(t,n){void 0===t&&(t=this.skewX),void 0===n&&(n=this.skewY);var i,o,r,a=0===t&&0===n;if(this.strokeUniform?(o=this.width,r=this.height):(o=(i=this._getNonTransformedDimensions()).x,r=i.y),a)return this._finalizeDimensions(o*this.scaleX,r*this.scaleY);var s=e.sizeAfterTransform(o,r,{scaleX:this.scaleX,scaleY:this.scaleY,skewX:t,skewY:n});return this._finalizeDimensions(s.x,s.y)},_finalizeDimensions:function(e,t){return this.strokeUniform?{x:e+this.strokeWidth,y:t+this.strokeWidth}:{x:e,y:t}},_calculateCurrentDimensions:function(){var e=this.getViewportTransform(),t=this._getTransformedDimensions();return i(t,e,!0).scalarAdd(2*this.padding)}})}(),m.util.object.extend(m.Object.prototype,{sendToBack:function(){return this.group?m.StaticCanvas.prototype.sendToBack.call(this.group,this):this.canvas&&this.canvas.sendToBack(this),this},bringToFront:function(){return this.group?m.StaticCanvas.prototype.bringToFront.call(this.group,this):this.canvas&&this.canvas.bringToFront(this),this},sendBackwards:function(e){return this.group?m.StaticCanvas.prototype.sendBackwards.call(this.group,this,e):this.canvas&&this.canvas.sendBackwards(this,e),this},bringForward:function(e){return this.group?m.StaticCanvas.prototype.bringForward.call(this.group,this,e):this.canvas&&this.canvas.bringForward(this,e),this},moveTo:function(e){return this.group&&"activeSelection"!==this.group.type?m.StaticCanvas.prototype.moveTo.call(this.group,this,e):this.canvas&&this.canvas.moveTo(this,e),this}}),function(){function e(e,t){if(t){if(t.toLive)return e+": url(#SVGID_"+t.id+"); ";var n=new m.Color(t),i=e+": "+n.toRgb()+"; ",o=n.getAlpha();return 1!==o&&(i+=e+"-opacity: "+o.toString()+"; "),i}return e+": none; "}var t=m.util.toFixed;m.util.object.extend(m.Object.prototype,{getSvgStyles:function(t){var n=this.fillRule?this.fillRule:"nonzero",i=this.strokeWidth?this.strokeWidth:"0",o=this.strokeDashArray?this.strokeDashArray.join(" "):"none",r=this.strokeDashOffset?this.strokeDashOffset:"0",a=this.strokeLineCap?this.strokeLineCap:"butt",s=this.strokeLineJoin?this.strokeLineJoin:"miter",l=this.strokeMiterLimit?this.strokeMiterLimit:"4",c=void 0!==this.opacity?this.opacity:"1",u=this.visible?"":" visibility: hidden;",h=t?"":this.getSvgFilter(),d=e("fill",this.fill);return[e("stroke",this.stroke),"stroke-width: ",i,"; ","stroke-dasharray: ",o,"; ","stroke-linecap: ",a,"; ","stroke-dashoffset: ",r,"; ","stroke-linejoin: ",s,"; ","stroke-miterlimit: ",l,"; ",d,"fill-rule: ",n,"; ","opacity: ",c,";",h,u].join("")},getSvgSpanStyles:function(t,n){var i="; ",o=t.fontFamily?"font-family: "+(-1===t.fontFamily.indexOf("\'")&&-1===t.fontFamily.indexOf(\'"\')?"\'"+t.fontFamily+"\'":t.fontFamily)+i:"",r=t.strokeWidth?"stroke-width: "+t.strokeWidth+i:"",a=(o=o,t.fontSize?"font-size: "+t.fontSize+"px"+i:""),s=t.fontStyle?"font-style: "+t.fontStyle+i:"",l=t.fontWeight?"font-weight: "+t.fontWeight+i:"",c=t.fill?e("fill",t.fill):"",u=t.stroke?e("stroke",t.stroke):"",h=this.getSvgTextDecoration(t);return h&&(h="text-decoration: "+h+i),[u,r,o,a,s,l,h,c,t.deltaY?"baseline-shift: "+-t.deltaY+"; ":"",n?"white-space: pre; ":""].join("")},getSvgTextDecoration:function(e){return["overline","underline","line-through"].filter((function(t){return e[t.replace("-","")]})).join(" ")},getSvgFilter:function(){return this.shadow?"filter: url(#SVGID_"+this.shadow.id+");":""},getSvgCommons:function(){return[this.id?\'id="\'+this.id+\'" \':"",this.clipPath?\'clip-path="url(#\'+this.clipPath.clipPathId+\')" \':""].join("")},getSvgTransform:function(e,t){var n=e?this.calcTransformMatrix():this.calcOwnMatrix();return\'transform="\'+m.util.matrixToSVG(n)+(t||"")+\'" \'},_setSVGBg:function(e){if(this.backgroundColor){var n=m.Object.NUM_FRACTION_DIGITS;e.push("\\t\\t<rect ",this._getFillAttributes(this.backgroundColor),\' x="\',t(-this.width/2,n),\'" y="\',t(-this.height/2,n),\'" width="\',t(this.width,n),\'" height="\',t(this.height,n),\'"></rect>\\n\')}},toSVG:function(e){return this._createBaseSVGMarkup(this._toSVG(e),{reviver:e})},toClipPathSVG:function(e){return"\\t"+this._createBaseClipPathSVGMarkup(this._toSVG(e),{reviver:e})},_createBaseClipPathSVGMarkup:function(e,t){var n=(t=t||{}).reviver,i=t.additionalTransform||"",o=[this.getSvgTransform(!0,i),this.getSvgCommons()].join(""),r=e.indexOf("COMMON_PARTS");return e[r]=o,n?n(e.join("")):e.join("")},_createBaseSVGMarkup:function(e,t){var n,i,o=(t=t||{}).noStyle,r=t.reviver,a=o?"":\'style="\'+this.getSvgStyles()+\'" \',s=t.withShadow?\'style="\'+this.getSvgFilter()+\'" \':"",l=this.clipPath,c=this.strokeUniform?\'vector-effect="non-scaling-stroke" \':"",u=l&&l.absolutePositioned,h=this.stroke,d=this.fill,f=this.shadow,p=[],g=e.indexOf("COMMON_PARTS"),v=t.additionalTransform;return l&&(l.clipPathId="CLIPPATH_"+m.Object.__uid++,i=\'<clipPath id="\'+l.clipPathId+\'" >\\n\'+l.toClipPathSVG(r)+"</clipPath>\\n"),u&&p.push("<g ",s,this.getSvgCommons()," >\\n"),p.push("<g ",this.getSvgTransform(!1),u?"":s+this.getSvgCommons()," >\\n"),n=[a,c,o?"":this.addPaintOrder()," ",v?\'transform="\'+v+\'" \':""].join(""),e[g]=n,d&&d.toLive&&p.push(d.toSVG(this)),h&&h.toLive&&p.push(h.toSVG(this)),f&&p.push(f.toSVG(this)),l&&p.push(i),p.push(e.join("")),p.push("</g>\\n"),u&&p.push("</g>\\n"),r?r(p.join("")):p.join("")},addPaintOrder:function(){return"fill"!==this.paintFirst?\' paint-order="\'+this.paintFirst+\'" \':""}})}(),function(){var e=m.util.object.extend,t="stateProperties";function n(t,n,i){var o={};i.forEach((function(e){o[e]=t[e]})),e(t[n],o,!0)}function i(e,t,n){if(e===t)return!0;if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(var o=0,r=e.length;o<r;o++)if(!i(e[o],t[o]))return!1;return!0}if(e&&"object"===_typeof(e)){var a,s=Object.keys(e);if(!t||"object"!==_typeof(t)||!n&&s.length!==Object.keys(t).length)return!1;for(o=0,r=s.length;o<r;o++)if("canvas"!==(a=s[o])&&"group"!==a&&!i(e[a],t[a]))return!1;return!0}}m.util.object.extend(m.Object.prototype,{hasStateChanged:function(e){var n="_"+(e=e||t);return Object.keys(this[n]).length<this[e].length||!i(this[n],this,!0)},saveState:function(e){var i=e&&e.propertySet||t,o="_"+i;return this[o]?(n(this,o,this[i]),e&&e.stateProperties&&n(this,o,e.stateProperties),this):this.setupState(e)},setupState:function(e){var n=(e=e||{}).propertySet||t;return e.propertySet=n,this["_"+n]={},this.saveState(e),this}})}(),function(){var e=m.util.degreesToRadians;m.util.object.extend(m.Object.prototype,{_findTargetCorner:function(e,t){if(!this.hasControls||this.group||!this.canvas||this.canvas._activeObject!==this)return!1;var n,i,o,r=e.x,a=e.y,s=Object.keys(this.oCoords),l=s.length-1;for(this.__corner=0;l>=0;l--)if(o=s[l],this.isControlVisible(o)&&(i=this._getImageLines(t?this.oCoords[o].touchCorner:this.oCoords[o].corner),0!==(n=this._findCrossPoints({x:r,y:a},i))&&n%2==1))return this.__corner=o,o;return!1},forEachControl:function(e){for(var t in this.controls)e(this.controls[t],t,this)},_setCornerCoords:function(){var e=this.oCoords;for(var t in e){var n=this.controls[t];e[t].corner=n.calcCornerCoords(this.angle,this.cornerSize,e[t].x,e[t].y,!1),e[t].touchCorner=n.calcCornerCoords(this.angle,this.touchCornerSize,e[t].x,e[t].y,!0)}},drawSelectionBackground:function(t){if(!this.selectionBackgroundColor||this.canvas&&!this.canvas.interactive||this.canvas&&this.canvas._activeObject!==this)return this;t.save();var n=this.getCenterPoint(),i=this._calculateCurrentDimensions(),o=this.canvas.viewportTransform;return t.translate(n.x,n.y),t.scale(1/o[0],1/o[3]),t.rotate(e(this.angle)),t.fillStyle=this.selectionBackgroundColor,t.fillRect(-i.x/2,-i.y/2,i.x,i.y),t.restore(),this},drawBorders:function(e,t){t=t||{};var n=this._calculateCurrentDimensions(),i=this.borderScaleFactor,o=n.x+i,r=n.y+i,a=void 0!==t.hasControls?t.hasControls:this.hasControls,s=!1;return e.save(),e.strokeStyle=t.borderColor||this.borderColor,this._setLineDash(e,t.borderDashArray||this.borderDashArray),e.strokeRect(-o/2,-r/2,o,r),a&&(e.beginPath(),this.forEachControl((function(t,n,i){t.withConnection&&t.getVisibility(i,n)&&(s=!0,e.moveTo(t.x*o,t.y*r),e.lineTo(t.x*o+t.offsetX,t.y*r+t.offsetY))})),s&&e.stroke()),e.restore(),this},drawBordersInGroup:function(e,t,n){n=n||{};var i=m.util.sizeAfterTransform(this.width,this.height,t),o=this.strokeWidth,r=this.strokeUniform,a=this.borderScaleFactor,s=i.x+o*(r?this.canvas.getZoom():t.scaleX)+a,l=i.y+o*(r?this.canvas.getZoom():t.scaleY)+a;return e.save(),this._setLineDash(e,n.borderDashArray||this.borderDashArray),e.strokeStyle=n.borderColor||this.borderColor,e.strokeRect(-s/2,-l/2,s,l),e.restore(),this},drawControls:function(e,t){t=t||{},e.save();var n,i,o=this.canvas.getRetinaScaling();return e.setTransform(o,0,0,o,0,0),e.strokeStyle=e.fillStyle=t.cornerColor||this.cornerColor,this.transparentCorners||(e.strokeStyle=t.cornerStrokeColor||this.cornerStrokeColor),this._setLineDash(e,t.cornerDashArray||this.cornerDashArray),this.setCoords(),this.group&&(n=this.group.calcTransformMatrix()),this.forEachControl((function(o,r,a){i=a.oCoords[r],o.getVisibility(a,r)&&(n&&(i=m.util.transformPoint(i,n)),o.render(e,i.x,i.y,t,a))})),e.restore(),this},isControlVisible:function(e){return this.controls[e]&&this.controls[e].getVisibility(this,e)},setControlVisible:function(e,t){return this._controlsVisibility||(this._controlsVisibility={}),this._controlsVisibility[e]=t,this},setControlsVisibility:function(e){for(var t in e||(e={}),e)this.setControlVisible(t,e[t]);return this},onDeselect:function(){},onSelect:function(){}})}(),m.util.object.extend(m.StaticCanvas.prototype,{FX_DURATION:500,fxCenterObjectH:function(e,t){var n=function(){},i=(t=t||{}).onComplete||n,o=t.onChange||n,r=this;return m.util.animate({target:this,startValue:e.left,endValue:this.getCenterPoint().x,duration:this.FX_DURATION,onChange:function(t){e.set("left",t),r.requestRenderAll(),o()},onComplete:function(){e.setCoords(),i()}})},fxCenterObjectV:function(e,t){var n=function(){},i=(t=t||{}).onComplete||n,o=t.onChange||n,r=this;return m.util.animate({target:this,startValue:e.top,endValue:this.getCenterPoint().y,duration:this.FX_DURATION,onChange:function(t){e.set("top",t),r.requestRenderAll(),o()},onComplete:function(){e.setCoords(),i()}})},fxRemove:function(e,t){var n=function(){},i=(t=t||{}).onComplete||n,o=t.onChange||n,r=this;return m.util.animate({target:this,startValue:e.opacity,endValue:0,duration:this.FX_DURATION,onChange:function(t){e.set("opacity",t),r.requestRenderAll(),o()},onComplete:function(){r.remove(e),i()}})}}),m.util.object.extend(m.Object.prototype,{animate:function(){if(arguments[0]&&"object"===_typeof(arguments[0])){var e,t,n=[],i=[];for(e in arguments[0])n.push(e);for(var o=0,r=n.length;o<r;o++)e=n[o],t=o!==r-1,i.push(this._animate(e,arguments[0][e],arguments[1],t));return i}return this._animate.apply(this,arguments)},_animate:function(e,t,n,i){var o,r=this;t=t.toString(),n=n?m.util.object.clone(n):{},~e.indexOf(".")&&(o=e.split("."));var a=r.colorProperties.indexOf(e)>-1||o&&r.colorProperties.indexOf(o[1])>-1,s=o?this.get(o[0])[o[1]]:this.get(e);"from"in n||(n.from=s),a||(t=~t.indexOf("=")?s+parseFloat(t.replace("=","")):parseFloat(t));var l={target:this,startValue:n.from,endValue:t,byValue:n.by,easing:n.easing,duration:n.duration,abort:n.abort&&function(e,t,i){return n.abort.call(r,e,t,i)},onChange:function(t,a,s){o?r[o[0]][o[1]]=t:r.set(e,t),i||n.onChange&&n.onChange(t,a,s)},onComplete:function(e,t,o){i||(r.setCoords(),n.onComplete&&n.onComplete(e,t,o))}};return a?m.util.animateColor(l.startValue,l.endValue,l.duration,l):m.util.animate(l)}}),function(e){var t=e.fabric||(e.fabric={}),n=t.util.object.extend,i=t.util.object.clone,o={x1:1,x2:1,y1:1,y2:1};function r(e,t){var n=e.origin,i=e.axis1,o=e.axis2,r=e.dimension,a=t.nearest,s=t.center,l=t.farthest;return function(){switch(this.get(n)){case a:return Math.min(this.get(i),this.get(o));case s:return Math.min(this.get(i),this.get(o))+.5*this.get(r);case l:return Math.max(this.get(i),this.get(o))}}}t.Line?t.warn("fabric.Line is already defined"):(t.Line=t.util.createClass(t.Object,{type:"line",x1:0,y1:0,x2:0,y2:0,cacheProperties:t.Object.prototype.cacheProperties.concat("x1","x2","y1","y2"),initialize:function(e,t){e||(e=[0,0,0,0]),this.callSuper("initialize",t),this.set("x1",e[0]),this.set("y1",e[1]),this.set("x2",e[2]),this.set("y2",e[3]),this._setWidthHeight(t)},_setWidthHeight:function(e){e||(e={}),this.width=Math.abs(this.x2-this.x1),this.height=Math.abs(this.y2-this.y1),this.left="left"in e?e.left:this._getLeftToOriginX(),this.top="top"in e?e.top:this._getTopToOriginY()},_set:function(e,t){return this.callSuper("_set",e,t),void 0!==o[e]&&this._setWidthHeight(),this},_getLeftToOriginX:r({origin:"originX",axis1:"x1",axis2:"x2",dimension:"width"},{nearest:"left",center:"center",farthest:"right"}),_getTopToOriginY:r({origin:"originY",axis1:"y1",axis2:"y2",dimension:"height"},{nearest:"top",center:"center",farthest:"bottom"}),_render:function(e){e.beginPath();var t=this.calcLinePoints();e.moveTo(t.x1,t.y1),e.lineTo(t.x2,t.y2),e.lineWidth=this.strokeWidth;var n=e.strokeStyle;e.strokeStyle=this.stroke||e.fillStyle,this.stroke&&this._renderStroke(e),e.strokeStyle=n},_findCenterFromElement:function(){return{x:(this.x1+this.x2)/2,y:(this.y1+this.y2)/2}},toObject:function(e){return n(this.callSuper("toObject",e),this.calcLinePoints())},_getNonTransformedDimensions:function(){var e=this.callSuper("_getNonTransformedDimensions");return"butt"===this.strokeLineCap&&(0===this.width&&(e.y-=this.strokeWidth),0===this.height&&(e.x-=this.strokeWidth)),e},calcLinePoints:function(){var e=this.x1<=this.x2?-1:1,t=this.y1<=this.y2?-1:1,n=e*this.width*.5,i=t*this.height*.5;return{x1:n,x2:e*this.width*-.5,y1:i,y2:t*this.height*-.5}},_toSVG:function(){var e=this.calcLinePoints();return["<line ","COMMON_PARTS",\'x1="\',e.x1,\'" y1="\',e.y1,\'" x2="\',e.x2,\'" y2="\',e.y2,\'" />\\n\']}}),t.Line.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("x1 y1 x2 y2".split(" ")),t.Line.fromElement=function(e,i,o){o=o||{};var r=t.parseAttributes(e,t.Line.ATTRIBUTE_NAMES),a=[r.x1||0,r.y1||0,r.x2||0,r.y2||0];i(new t.Line(a,n(r,o)))},t.Line.fromObject=function(e,n){var o=i(e,!0);o.points=[e.x1,e.y1,e.x2,e.y2],t.Object._fromObject("Line",o,(function(e){delete e.points,n&&n(e)}),"points")})}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.util.degreesToRadians;t.Circle?t.warn("fabric.Circle is already defined."):(t.Circle=t.util.createClass(t.Object,{type:"circle",radius:0,startAngle:0,endAngle:360,cacheProperties:t.Object.prototype.cacheProperties.concat("radius","startAngle","endAngle"),_set:function(e,t){return this.callSuper("_set",e,t),"radius"===e&&this.setRadius(t),this},toObject:function(e){return this.callSuper("toObject",["radius","startAngle","endAngle"].concat(e))},_toSVG:function(){var e,i=(this.endAngle-this.startAngle)%360;if(0===i)e=["<circle ","COMMON_PARTS",\'cx="0" cy="0" \',\'r="\',this.radius,\'" />\\n\'];else{var o=n(this.startAngle),r=n(this.endAngle),a=this.radius;e=[\'<path d="M \'+t.util.cos(o)*a+" "+t.util.sin(o)*a," A "+a+" "+a," 0 ",+(i>180?"1":"0")+" 1"," "+t.util.cos(r)*a+" "+t.util.sin(r)*a,\'" \',"COMMON_PARTS"," />\\n"]}return e},_render:function(e){e.beginPath(),e.arc(0,0,this.radius,n(this.startAngle),n(this.endAngle),!1),this._renderPaintInOrder(e)},getRadiusX:function(){return this.get("radius")*this.get("scaleX")},getRadiusY:function(){return this.get("radius")*this.get("scaleY")},setRadius:function(e){return this.radius=e,this.set("width",2*e).set("height",2*e)}}),t.Circle.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("cx cy r".split(" ")),t.Circle.fromElement=function(e,n){var i,o=t.parseAttributes(e,t.Circle.ATTRIBUTE_NAMES);if(!("radius"in(i=o)&&i.radius>=0))throw new Error("value of `r` attribute is required and can not be negative");o.left=(o.left||0)-o.radius,o.top=(o.top||0)-o.radius,n(new t.Circle(o))},t.Circle.fromObject=function(e,n){t.Object._fromObject("Circle",e,n)})}(e),function(e){var t=e.fabric||(e.fabric={});t.Triangle?t.warn("fabric.Triangle is already defined"):(t.Triangle=t.util.createClass(t.Object,{type:"triangle",width:100,height:100,_render:function(e){var t=this.width/2,n=this.height/2;e.beginPath(),e.moveTo(-t,n),e.lineTo(0,-n),e.lineTo(t,n),e.closePath(),this._renderPaintInOrder(e)},_toSVG:function(){var e=this.width/2,t=this.height/2;return["<polygon ","COMMON_PARTS",\'points="\',[-e+" "+t,"0 "+-t,e+" "+t].join(","),\'" />\']}}),t.Triangle.fromObject=function(e,n){return t.Object._fromObject("Triangle",e,n)})}(e),function(e){var t=e.fabric||(e.fabric={}),n=2*Math.PI;t.Ellipse?t.warn("fabric.Ellipse is already defined."):(t.Ellipse=t.util.createClass(t.Object,{type:"ellipse",rx:0,ry:0,cacheProperties:t.Object.prototype.cacheProperties.concat("rx","ry"),initialize:function(e){this.callSuper("initialize",e),this.set("rx",e&&e.rx||0),this.set("ry",e&&e.ry||0)},_set:function(e,t){switch(this.callSuper("_set",e,t),e){case"rx":this.rx=t,this.set("width",2*t);break;case"ry":this.ry=t,this.set("height",2*t)}return this},getRx:function(){return this.get("rx")*this.get("scaleX")},getRy:function(){return this.get("ry")*this.get("scaleY")},toObject:function(e){return this.callSuper("toObject",["rx","ry"].concat(e))},_toSVG:function(){return["<ellipse ","COMMON_PARTS",\'cx="0" cy="0" \',\'rx="\',this.rx,\'" ry="\',this.ry,\'" />\\n\']},_render:function(e){e.beginPath(),e.save(),e.transform(1,0,0,this.ry/this.rx,0,0),e.arc(0,0,this.rx,0,n,!1),e.restore(),this._renderPaintInOrder(e)}}),t.Ellipse.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("cx cy rx ry".split(" ")),t.Ellipse.fromElement=function(e,n){var i=t.parseAttributes(e,t.Ellipse.ATTRIBUTE_NAMES);i.left=(i.left||0)-i.rx,i.top=(i.top||0)-i.ry,n(new t.Ellipse(i))},t.Ellipse.fromObject=function(e,n){t.Object._fromObject("Ellipse",e,n)})}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.util.object.extend;t.Rect?t.warn("fabric.Rect is already defined"):(t.Rect=t.util.createClass(t.Object,{stateProperties:t.Object.prototype.stateProperties.concat("rx","ry"),type:"rect",rx:0,ry:0,cacheProperties:t.Object.prototype.cacheProperties.concat("rx","ry"),initialize:function(e){this.callSuper("initialize",e),this._initRxRy()},_initRxRy:function(){this.rx&&!this.ry?this.ry=this.rx:this.ry&&!this.rx&&(this.rx=this.ry)},_render:function(e){var t=this.rx?Math.min(this.rx,this.width/2):0,n=this.ry?Math.min(this.ry,this.height/2):0,i=this.width,o=this.height,r=-this.width/2,a=-this.height/2,s=0!==t||0!==n,l=.4477152502;e.beginPath(),e.moveTo(r+t,a),e.lineTo(r+i-t,a),s&&e.bezierCurveTo(r+i-l*t,a,r+i,a+l*n,r+i,a+n),e.lineTo(r+i,a+o-n),s&&e.bezierCurveTo(r+i,a+o-l*n,r+i-l*t,a+o,r+i-t,a+o),e.lineTo(r+t,a+o),s&&e.bezierCurveTo(r+l*t,a+o,r,a+o-l*n,r,a+o-n),e.lineTo(r,a+n),s&&e.bezierCurveTo(r,a+l*n,r+l*t,a,r+t,a),e.closePath(),this._renderPaintInOrder(e)},toObject:function(e){return this.callSuper("toObject",["rx","ry"].concat(e))},_toSVG:function(){return["<rect ","COMMON_PARTS",\'x="\',-this.width/2,\'" y="\',-this.height/2,\'" rx="\',this.rx,\'" ry="\',this.ry,\'" width="\',this.width,\'" height="\',this.height,\'" />\\n\']}}),t.Rect.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("x y rx ry width height".split(" ")),t.Rect.fromElement=function(e,i,o){if(!e)return i(null);o=o||{};var r=t.parseAttributes(e,t.Rect.ATTRIBUTE_NAMES);r.left=r.left||0,r.top=r.top||0,r.height=r.height||0,r.width=r.width||0;var a=new t.Rect(n(o?t.util.object.clone(o):{},r));a.visible=a.visible&&a.width>0&&a.height>0,i(a)},t.Rect.fromObject=function(e,n){return t.Object._fromObject("Rect",e,n)})}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.util.object.extend,i=t.util.array.min,o=t.util.array.max,r=t.util.toFixed,a=t.util.projectStrokeOnPoints;t.Polyline?t.warn("fabric.Polyline is already defined"):(t.Polyline=t.util.createClass(t.Object,{type:"polyline",points:null,exactBoundingBox:!1,cacheProperties:t.Object.prototype.cacheProperties.concat("points"),initialize:function(e,t){t=t||{},this.points=e||[],this.callSuper("initialize",t),this._setPositionDimensions(t)},_projectStrokeOnPoints:function(){return a(this.points,this,!0)},_setPositionDimensions:function(e){var t,n=this._calcDimensions(e),i=this.exactBoundingBox?this.strokeWidth:0;this.width=n.width-i,this.height=n.height-i,e.fromSVG||(t=this.translateToGivenOrigin({x:n.left-this.strokeWidth/2+i/2,y:n.top-this.strokeWidth/2+i/2},"left","top",this.originX,this.originY)),void 0===e.left&&(this.left=e.fromSVG?n.left:t.x),void 0===e.top&&(this.top=e.fromSVG?n.top:t.y),this.pathOffset={x:n.left+this.width/2+i/2,y:n.top+this.height/2+i/2}},_calcDimensions:function(){var e=this.exactBoundingBox?this._projectStrokeOnPoints():this.points,t=i(e,"x")||0,n=i(e,"y")||0;return{left:t,top:n,width:(o(e,"x")||0)-t,height:(o(e,"y")||0)-n}},toObject:function(e){return n(this.callSuper("toObject",e),{points:this.points.concat()})},_toSVG:function(){for(var e=[],n=this.pathOffset.x,i=this.pathOffset.y,o=t.Object.NUM_FRACTION_DIGITS,a=0,s=this.points.length;a<s;a++)e.push(r(this.points[a].x-n,o),",",r(this.points[a].y-i,o)," ");return["<"+this.type+" ","COMMON_PARTS",\'points="\',e.join(""),\'" />\\n\']},commonRender:function(e){var t,n=this.points.length,i=this.pathOffset.x,o=this.pathOffset.y;if(!n||isNaN(this.points[n-1].y))return!1;e.beginPath(),e.moveTo(this.points[0].x-i,this.points[0].y-o);for(var r=0;r<n;r++)t=this.points[r],e.lineTo(t.x-i,t.y-o);return!0},_render:function(e){this.commonRender(e)&&this._renderPaintInOrder(e)},complexity:function(){return this.get("points").length}}),t.Polyline.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat(),t.Polyline.fromElementGenerator=function(e){return function(i,o,r){if(!i)return o(null);r||(r={});var a=t.parsePointsAttribute(i.getAttribute("points")),s=t.parseAttributes(i,t[e].ATTRIBUTE_NAMES);s.fromSVG=!0,o(new t[e](a,n(s,r)))}},t.Polyline.fromElement=t.Polyline.fromElementGenerator("Polyline"),t.Polyline.fromObject=function(e,n){return t.Object._fromObject("Polyline",e,n,"points")})}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.util.projectStrokeOnPoints;t.Polygon?t.warn("fabric.Polygon is already defined"):(t.Polygon=t.util.createClass(t.Polyline,{type:"polygon",_projectStrokeOnPoints:function(){return n(this.points,this)},_render:function(e){this.commonRender(e)&&(e.closePath(),this._renderPaintInOrder(e))}}),t.Polygon.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat(),t.Polygon.fromElement=t.Polyline.fromElementGenerator("Polygon"),t.Polygon.fromObject=function(e,n){t.Object._fromObject("Polygon",e,n,"points")})}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.util.array.min,i=t.util.array.max,o=t.util.object.extend,r=t.util.object.clone,a=t.util.toFixed;t.Path?t.warn("fabric.Path is already defined"):(t.Path=t.util.createClass(t.Object,{type:"path",path:null,cacheProperties:t.Object.prototype.cacheProperties.concat("path","fillRule"),stateProperties:t.Object.prototype.stateProperties.concat("path"),initialize:function(e,t){delete(t=r(t||{})).path,this.callSuper("initialize",t),this._setPath(e||[],t)},_setPath:function(e,n){this.path=t.util.makePathSimpler(Array.isArray(e)?e:t.util.parsePath(e)),t.Polyline.prototype._setPositionDimensions.call(this,n||{})},_renderPathCommands:function(e){var t,n=0,i=0,o=0,r=0,a=0,s=0,l=-this.pathOffset.x,c=-this.pathOffset.y;e.beginPath();for(var u=0,h=this.path.length;u<h;++u)switch((t=this.path[u])[0]){case"L":o=t[1],r=t[2],e.lineTo(o+l,r+c);break;case"M":n=o=t[1],i=r=t[2],e.moveTo(o+l,r+c);break;case"C":o=t[5],r=t[6],a=t[3],s=t[4],e.bezierCurveTo(t[1]+l,t[2]+c,a+l,s+c,o+l,r+c);break;case"Q":e.quadraticCurveTo(t[1]+l,t[2]+c,t[3]+l,t[4]+c),o=t[3],r=t[4],a=t[1],s=t[2];break;case"z":case"Z":o=n,r=i,e.closePath()}},_render:function(e){this._renderPathCommands(e),this._renderPaintInOrder(e)},toString:function(){return"#<fabric.Path ("+this.complexity()+\'): { "top": \'+this.top+\', "left": \'+this.left+" }>"},toObject:function(e){return o(this.callSuper("toObject",e),{path:this.path.map((function(e){return e.slice()}))})},toDatalessObject:function(e){var t=this.toObject(["sourcePath"].concat(e));return t.sourcePath&&delete t.path,t},_toSVG:function(){return["<path ","COMMON_PARTS",\'d="\',t.util.joinPath(this.path),\'" stroke-linecap="round" \',"/>\\n"]},_getOffsetTransform:function(){var e=t.Object.NUM_FRACTION_DIGITS;return" translate("+a(-this.pathOffset.x,e)+", "+a(-this.pathOffset.y,e)+")"},toClipPathSVG:function(e){var t=this._getOffsetTransform();return"\\t"+this._createBaseClipPathSVGMarkup(this._toSVG(),{reviver:e,additionalTransform:t})},toSVG:function(e){var t=this._getOffsetTransform();return this._createBaseSVGMarkup(this._toSVG(),{reviver:e,additionalTransform:t})},complexity:function(){return this.path.length},_calcDimensions:function(){for(var e,o,r=[],a=[],s=0,l=0,c=0,u=0,h=0,d=this.path.length;h<d;++h){switch((e=this.path[h])[0]){case"L":c=e[1],u=e[2],o=[];break;case"M":s=c=e[1],l=u=e[2],o=[];break;case"C":o=t.util.getBoundsOfCurve(c,u,e[1],e[2],e[3],e[4],e[5],e[6]),c=e[5],u=e[6];break;case"Q":o=t.util.getBoundsOfCurve(c,u,e[1],e[2],e[1],e[2],e[3],e[4]),c=e[3],u=e[4];break;case"z":case"Z":c=s,u=l}o.forEach((function(e){r.push(e.x),a.push(e.y)})),r.push(c),a.push(u)}var f=n(r)||0,p=n(a)||0;return{left:f,top:p,width:(i(r)||0)-f,height:(i(a)||0)-p}}}),t.Path.fromObject=function(e,n){if("string"==typeof e.sourcePath){var i=e.sourcePath;t.loadSVGFromURL(i,(function(i){var o=i[0];o.setOptions(e),e.clipPath?t.util.enlivenObjects([e.clipPath],(function(e){o.clipPath=e[0],n&&n(o)})):n&&n(o)}))}else t.Object._fromObject("Path",e,n,"path")},t.Path.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat(["d"]),t.Path.fromElement=function(e,n,i){var r=t.parseAttributes(e,t.Path.ATTRIBUTE_NAMES);r.fromSVG=!0,n(new t.Path(r.d,o(r,i)))})}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.util.array.min,i=t.util.array.max;t.Group||(t.Group=t.util.createClass(t.Object,t.Collection,{type:"group",strokeWidth:0,subTargetCheck:!1,cacheProperties:[],useSetOnGroup:!1,initialize:function(e,t,n){t=t||{},this._objects=[],n&&this.callSuper("initialize",t),this._objects=e||[];for(var i=this._objects.length;i--;)this._objects[i].group=this;if(n)this._updateObjectsACoords();else{var o=t&&t.centerPoint;void 0!==t.originX&&(this.originX=t.originX),void 0!==t.originY&&(this.originY=t.originY),o||this._calcBounds(),this._updateObjectsCoords(o),delete t.centerPoint,this.callSuper("initialize",t)}this.setCoords()},_updateObjectsACoords:function(){for(var e=this._objects.length;e--;)this._objects[e].setCoords(true)},_updateObjectsCoords:function(e){e=e||this.getCenterPoint();for(var t=this._objects.length;t--;)this._updateObjectCoords(this._objects[t],e)},_updateObjectCoords:function(e,t){var n=e.left,i=e.top;e.set({left:n-t.x,top:i-t.y}),e.group=this,e.setCoords(!0)},toString:function(){return"#<fabric.Group: ("+this.complexity()+")>"},addWithUpdate:function(e){var n=!!this.group;return this._restoreObjectsState(),t.util.resetObjectTransform(this),e&&(n&&t.util.removeTransformFromObject(e,this.group.calcTransformMatrix()),this._objects.push(e),e.group=this,e._set("canvas",this.canvas)),this._calcBounds(),this._updateObjectsCoords(),this.dirty=!0,n?this.group.addWithUpdate():this.setCoords(),this},removeWithUpdate:function(e){return this._restoreObjectsState(),t.util.resetObjectTransform(this),this.remove(e),this._calcBounds(),this._updateObjectsCoords(),this.setCoords(),this.dirty=!0,this},_onObjectAdded:function(e){this.dirty=!0,e.group=this,e._set("canvas",this.canvas)},_onObjectRemoved:function(e){this.dirty=!0,delete e.group},_set:function(e,n){var i=this._objects.length;if(this.useSetOnGroup)for(;i--;)this._objects[i].setOnGroup(e,n);if("canvas"===e)for(;i--;)this._objects[i]._set(e,n);t.Object.prototype._set.call(this,e,n)},toObject:function(e){var n=this.includeDefaultValues,i=this._objects.filter((function(e){return!e.excludeFromExport})).map((function(t){var i=t.includeDefaultValues;t.includeDefaultValues=n;var o=t.toObject(e);return t.includeDefaultValues=i,o})),o=t.Object.prototype.toObject.call(this,e);return o.objects=i,o},toDatalessObject:function(e){var n,i=this.sourcePath;if(i)n=i;else{var o=this.includeDefaultValues;n=this._objects.map((function(t){var n=t.includeDefaultValues;t.includeDefaultValues=o;var i=t.toDatalessObject(e);return t.includeDefaultValues=n,i}))}var r=t.Object.prototype.toDatalessObject.call(this,e);return r.objects=n,r},render:function(e){this._transformDone=!0,this.callSuper("render",e),this._transformDone=!1},shouldCache:function(){var e=t.Object.prototype.shouldCache.call(this);if(e)for(var n=0,i=this._objects.length;n<i;n++)if(this._objects[n].willDrawShadow())return this.ownCaching=!1,!1;return e},willDrawShadow:function(){if(t.Object.prototype.willDrawShadow.call(this))return!0;for(var e=0,n=this._objects.length;e<n;e++)if(this._objects[e].willDrawShadow())return!0;return!1},isOnACache:function(){return this.ownCaching||this.group&&this.group.isOnACache()},drawObject:function(e){for(var t=0,n=this._objects.length;t<n;t++)this._objects[t].render(e);this._drawClipPath(e,this.clipPath)},isCacheDirty:function(e){if(this.callSuper("isCacheDirty",e))return!0;if(!this.statefullCache)return!1;for(var t=0,n=this._objects.length;t<n;t++)if(this._objects[t].isCacheDirty(!0)){if(this._cacheCanvas){var i=this.cacheWidth/this.zoomX,o=this.cacheHeight/this.zoomY;this._cacheContext.clearRect(-i/2,-o/2,i,o)}return!0}return!1},_restoreObjectsState:function(){var e=this.calcOwnMatrix();return this._objects.forEach((function(n){t.util.addTransformToObject(n,e),delete n.group,n.setCoords()})),this},destroy:function(){return this._objects.forEach((function(e){e.set("dirty",!0)})),this._restoreObjectsState()},dispose:function(){this.callSuper("dispose"),this.forEachObject((function(e){e.dispose&&e.dispose()})),this._objects=[]},toActiveSelection:function(){if(this.canvas){var e=this._objects,n=this.canvas;this._objects=[];var i=this.toObject();delete i.objects;var o=new t.ActiveSelection([]);return o.set(i),o.type="activeSelection",n.remove(this),e.forEach((function(e){e.group=o,e.dirty=!0,n.add(e)})),o.canvas=n,o._objects=e,n._activeObject=o,o.setCoords(),o}},ungroupOnCanvas:function(){return this._restoreObjectsState()},setObjectsCoords:function(){return this.forEachObject((function(e){e.setCoords(true)})),this},_calcBounds:function(e){for(var t,n,i,o,r=[],a=[],s=["tr","br","bl","tl"],l=0,c=this._objects.length,u=s.length;l<c;++l){for(i=(t=this._objects[l]).calcACoords(),o=0;o<u;o++)n=s[o],r.push(i[n].x),a.push(i[n].y);t.aCoords=i}this._getBounds(r,a,e)},_getBounds:function(e,o,r){var a=new t.Point(n(e),n(o)),s=new t.Point(i(e),i(o)),l=a.y||0,c=a.x||0,u=s.x-a.x||0,h=s.y-a.y||0;this.width=u,this.height=h,r||this.setPositionByOrigin({x:c,y:l},"left","top")},_toSVG:function(e){for(var t=["<g ","COMMON_PARTS"," >\\n"],n=0,i=this._objects.length;n<i;n++)t.push("\\t\\t",this._objects[n].toSVG(e));return t.push("</g>\\n"),t},getSvgStyles:function(){var e=void 0!==this.opacity&&1!==this.opacity?"opacity: "+this.opacity+";":"",t=this.visible?"":" visibility: hidden;";return[e,this.getSvgFilter(),t].join("")},toClipPathSVG:function(e){for(var t=[],n=0,i=this._objects.length;n<i;n++)t.push("\\t",this._objects[n].toClipPathSVG(e));return this._createBaseClipPathSVGMarkup(t,{reviver:e})}}),t.Group.fromObject=function(e,n){var i=e.objects,o=t.util.object.clone(e,!0);delete o.objects,"string"!=typeof i?t.util.enlivenObjects(i,(function(i){t.util.enlivenObjectEnlivables(e,o,(function(){n&&n(new t.Group(i,o,!0))}))})):t.loadSVGFromURL(i,(function(r){var a=t.util.groupSVGElements(r,e,i),s=o.clipPath;delete o.clipPath,a.set(o),s?t.util.enlivenObjects([s],(function(e){a.clipPath=e[0],n&&n(a)})):n&&n(a)}))})}(e),function(e){var t=e.fabric||(e.fabric={});t.ActiveSelection||(t.ActiveSelection=t.util.createClass(t.Group,{type:"activeSelection",initialize:function(e,n){n=n||{},this._objects=e||[];for(var i=this._objects.length;i--;)this._objects[i].group=this;n.originX&&(this.originX=n.originX),n.originY&&(this.originY=n.originY),this._calcBounds(),this._updateObjectsCoords(),t.Object.prototype.initialize.call(this,n),this.setCoords()},toGroup:function(){var e=this._objects.concat();this._objects=[];var n=t.Object.prototype.toObject.call(this),i=new t.Group([]);if(delete n.type,i.set(n),e.forEach((function(e){e.canvas.remove(e),e.group=i})),i._objects=e,!this.canvas)return i;var o=this.canvas;return o.add(i),o._activeObject=i,i.setCoords(),i},onDeselect:function(){return this.destroy(),!1},toString:function(){return"#<fabric.ActiveSelection: ("+this.complexity()+")>"},shouldCache:function(){return!1},isOnACache:function(){return!1},_renderControls:function(e,t,n){e.save(),e.globalAlpha=this.isMoving?this.borderOpacityWhenMoving:1,this.callSuper("_renderControls",e,t),void 0===(n=n||{}).hasControls&&(n.hasControls=!1),n.forActiveSelection=!0;for(var i=0,o=this._objects.length;i<o;i++)this._objects[i]._renderControls(e,n);e.restore()}}),t.ActiveSelection.fromObject=function(e,n){t.util.enlivenObjects(e.objects,(function(i){delete e.objects,n&&n(new t.ActiveSelection(i,e,!0))}))})}(e),function(e){var t=m.util.object.extend;e.fabric||(e.fabric={}),e.fabric.Image?m.warn("fabric.Image is already defined."):(m.Image=m.util.createClass(m.Object,{type:"image",strokeWidth:0,srcFromAttribute:!1,_lastScaleX:1,_lastScaleY:1,_filterScalingX:1,_filterScalingY:1,minimumScaleTrigger:.5,stateProperties:m.Object.prototype.stateProperties.concat("cropX","cropY"),cacheProperties:m.Object.prototype.cacheProperties.concat("cropX","cropY"),cacheKey:"",cropX:0,cropY:0,imageSmoothing:!0,initialize:function(e,t){t||(t={}),this.filters=[],this.cacheKey="texture"+m.Object.__uid++,this.callSuper("initialize",t),this._initElement(e,t)},getElement:function(){return this._element||{}},setElement:function(e,t){return this.removeTexture(this.cacheKey),this.removeTexture(this.cacheKey+"_filtered"),this._element=e,this._originalElement=e,this._initConfig(t),0!==this.filters.length&&this.applyFilters(),this.resizeFilter&&this.applyResizeFilters(),this},removeTexture:function(e){var t=m.filterBackend;t&&t.evictCachesForKey&&t.evictCachesForKey(e)},dispose:function(){this.callSuper("dispose"),this.removeTexture(this.cacheKey),this.removeTexture(this.cacheKey+"_filtered"),this._cacheContext=void 0,["_originalElement","_element","_filteredEl","_cacheCanvas"].forEach(function(e){m.util.cleanUpJsdomNode(this[e]),this[e]=void 0}.bind(this))},getCrossOrigin:function(){return this._originalElement&&(this._originalElement.crossOrigin||null)},getOriginalSize:function(){var e=this.getElement();return{width:e.naturalWidth||e.width,height:e.naturalHeight||e.height}},_stroke:function(e){if(this.stroke&&0!==this.strokeWidth){var t=this.width/2,n=this.height/2;e.beginPath(),e.moveTo(-t,-n),e.lineTo(t,-n),e.lineTo(t,n),e.lineTo(-t,n),e.lineTo(-t,-n),e.closePath()}},toObject:function(e){var n=[];this.filters.forEach((function(e){e&&n.push(e.toObject())}));var i=t(this.callSuper("toObject",["cropX","cropY"].concat(e)),{src:this.getSrc(),crossOrigin:this.getCrossOrigin(),filters:n});return this.resizeFilter&&(i.resizeFilter=this.resizeFilter.toObject()),i},hasCrop:function(){return this.cropX||this.cropY||this.width<this._element.width||this.height<this._element.height},_toSVG:function(){var e,t=[],n=[],i=this._element,o=-this.width/2,r=-this.height/2,a="",s="";if(!i)return[];if(this.hasCrop()){var l=m.Object.__uid++;t.push(\'<clipPath id="imageCrop_\'+l+\'">\\n\',\'\\t<rect x="\'+o+\'" y="\'+r+\'" width="\'+this.width+\'" height="\'+this.height+\'" />\\n\',"</clipPath>\\n"),a=\' clip-path="url(#imageCrop_\'+l+\')" \'}if(this.imageSmoothing||(s=\'" image-rendering="optimizeSpeed\'),n.push("\\t<image ","COMMON_PARTS",\'xlink:href="\',this.getSvgSrc(!0),\'" x="\',o-this.cropX,\'" y="\',r-this.cropY,\'" width="\',i.width||i.naturalWidth,\'" height="\',i.height||i.height,s,\'"\',a,"></image>\\n"),this.stroke||this.strokeDashArray){var c=this.fill;this.fill=null,e=["\\t<rect ",\'x="\',o,\'" y="\',r,\'" width="\',this.width,\'" height="\',this.height,\'" style="\',this.getSvgStyles(),\'"/>\\n\'],this.fill=c}return t="fill"!==this.paintFirst?t.concat(e,n):t.concat(n,e)},getSrc:function(e){var t=e?this._element:this._originalElement;return t?t.toDataURL?t.toDataURL():this.srcFromAttribute?t.getAttribute("src"):t.src:this.src||""},setSrc:function(e,t,n){return m.util.loadImage(e,(function(e,i){this.setElement(e,n),this._setWidthHeight(),t&&t(this,i)}),this,n&&n.crossOrigin),this},toString:function(){return\'#<fabric.Image: { src: "\'+this.getSrc()+\'" }>\'},applyResizeFilters:function(){var e=this.resizeFilter,t=this.minimumScaleTrigger,n=this.getTotalObjectScaling(),i=n.scaleX,o=n.scaleY,r=this._filteredEl||this._originalElement;if(this.group&&this.set("dirty",!0),!e||i>t&&o>t)return this._element=r,this._filterScalingX=1,this._filterScalingY=1,this._lastScaleX=i,void(this._lastScaleY=o);m.filterBackend||(m.filterBackend=m.initFilterBackend());var a=m.util.createCanvasElement(),s=this._filteredEl?this.cacheKey+"_filtered":this.cacheKey,l=r.width,c=r.height;a.width=l,a.height=c,this._element=a,this._lastScaleX=e.scaleX=i,this._lastScaleY=e.scaleY=o,m.filterBackend.applyFilters([e],r,l,c,this._element,s),this._filterScalingX=a.width/this._originalElement.width,this._filterScalingY=a.height/this._originalElement.height},applyFilters:function(e){if(e=(e=e||this.filters||[]).filter((function(e){return e&&!e.isNeutralState()})),this.set("dirty",!0),this.removeTexture(this.cacheKey+"_filtered"),0===e.length)return this._element=this._originalElement,this._filteredEl=null,this._filterScalingX=1,this._filterScalingY=1,this;var t=this._originalElement,n=t.naturalWidth||t.width,i=t.naturalHeight||t.height;if(this._element===this._originalElement){var o=m.util.createCanvasElement();o.width=n,o.height=i,this._element=o,this._filteredEl=o}else this._element=this._filteredEl,this._filteredEl.getContext("2d").clearRect(0,0,n,i),this._lastScaleX=1,this._lastScaleY=1;return m.filterBackend||(m.filterBackend=m.initFilterBackend()),m.filterBackend.applyFilters(e,this._originalElement,n,i,this._element,this.cacheKey),this._originalElement.width===this._element.width&&this._originalElement.height===this._element.height||(this._filterScalingX=this._element.width/this._originalElement.width,this._filterScalingY=this._element.height/this._originalElement.height),this},_render:function(e){m.util.setImageSmoothing(e,this.imageSmoothing),!0!==this.isMoving&&this.resizeFilter&&this._needsResize()&&this.applyResizeFilters(),this._stroke(e),this._renderPaintInOrder(e)},drawCacheOnCanvas:function(e){m.util.setImageSmoothing(e,this.imageSmoothing),m.Object.prototype.drawCacheOnCanvas.call(this,e)},shouldCache:function(){return this.needsItsOwnCache()},_renderFill:function(e){var t=this._element;if(t){var n=this._filterScalingX,i=this._filterScalingY,o=this.width,r=this.height,a=Math.min,s=Math.max,l=s(this.cropX,0),c=s(this.cropY,0),u=t.naturalWidth||t.width,h=t.naturalHeight||t.height,d=l*n,f=c*i,p=a(o*n,u-d),g=a(r*i,h-f),m=-o/2,v=-r/2,y=a(o,u/n-l),b=a(r,h/i-c);t&&e.drawImage(t,d,f,p,g,m,v,y,b)}},_needsResize:function(){var e=this.getTotalObjectScaling();return e.scaleX!==this._lastScaleX||e.scaleY!==this._lastScaleY},_resetWidthHeight:function(){this.set(this.getOriginalSize())},_initElement:function(e,t){this.setElement(m.util.getById(e),t),m.util.addClass(this.getElement(),m.Image.CSS_CANVAS)},_initConfig:function(e){e||(e={}),this.setOptions(e),this._setWidthHeight(e)},_initFilters:function(e,t){e&&e.length?m.util.enlivenObjects(e,(function(e){t&&t(e)}),"fabric.Image.filters"):t&&t()},_setWidthHeight:function(e){e||(e={});var t=this.getElement();this.width=e.width||t.naturalWidth||t.width||0,this.height=e.height||t.naturalHeight||t.height||0},parsePreserveAspectRatioAttribute:function(){var e,t=m.util.parsePreserveAspectRatioAttribute(this.preserveAspectRatio||""),n=this._element.width,i=this._element.height,o=1,r=1,a=0,s=0,l=0,c=0,u=this.width,h=this.height,d={width:u,height:h};return!t||"none"===t.alignX&&"none"===t.alignY?(o=u/n,r=h/i):("meet"===t.meetOrSlice&&(e=(u-n*(o=r=m.util.findScaleToFit(this._element,d)))/2,"Min"===t.alignX&&(a=-e),"Max"===t.alignX&&(a=e),e=(h-i*r)/2,"Min"===t.alignY&&(s=-e),"Max"===t.alignY&&(s=e)),"slice"===t.meetOrSlice&&(e=n-u/(o=r=m.util.findScaleToCover(this._element,d)),"Mid"===t.alignX&&(l=e/2),"Max"===t.alignX&&(l=e),e=i-h/r,"Mid"===t.alignY&&(c=e/2),"Max"===t.alignY&&(c=e),n=u/o,i=h/r)),{width:n,height:i,scaleX:o,scaleY:r,offsetLeft:a,offsetTop:s,cropX:l,cropY:c}}}),m.Image.CSS_CANVAS="canvas-img",m.Image.prototype.getSvgSrc=m.Image.prototype.getSrc,m.Image.fromObject=function(e,t){var n=m.util.object.clone(e);m.util.loadImage(n.src,(function(e,i){i?t&&t(null,!0):m.Image.prototype._initFilters.call(n,n.filters,(function(i){n.filters=i||[],m.Image.prototype._initFilters.call(n,[n.resizeFilter],(function(i){n.resizeFilter=i[0],m.util.enlivenObjectEnlivables(n,n,(function(){var i=new m.Image(e,n);t(i,!1)}))}))}))}),null,n.crossOrigin)},m.Image.fromURL=function(e,t,n){m.util.loadImage(e,(function(e,i){t&&t(new m.Image(e,n),i)}),null,n&&n.crossOrigin)},m.Image.ATTRIBUTE_NAMES=m.SHARED_ATTRIBUTES.concat("x y width height preserveAspectRatio xlink:href crossOrigin image-rendering".split(" ")),m.Image.fromElement=function(e,n,i){var o=m.parseAttributes(e,m.Image.ATTRIBUTE_NAMES);m.Image.fromURL(o["xlink:href"],n,t(i?m.util.object.clone(i):{},o))})}(e),m.util.object.extend(m.Object.prototype,{_getAngleValueForStraighten:function(){var e=this.angle%360;return e>0?90*Math.round((e-1)/90):90*Math.round(e/90)},straighten:function(){return this.rotate(this._getAngleValueForStraighten())},fxStraighten:function(e){var t=function(){},n=(e=e||{}).onComplete||t,i=e.onChange||t,o=this;return m.util.animate({target:this,startValue:this.get("angle"),endValue:this._getAngleValueForStraighten(),duration:this.FX_DURATION,onChange:function(e){o.rotate(e),i()},onComplete:function(){o.setCoords(),n()}})}}),m.util.object.extend(m.StaticCanvas.prototype,{straightenObject:function(e){return e.straighten(),this.requestRenderAll(),this},fxStraightenObject:function(e){return e.fxStraighten({onChange:this.requestRenderAllBound})}}),function(){function e(e,t){var n="precision "+t+" float;\\nvoid main(){}",i=e.createShader(e.FRAGMENT_SHADER);return e.shaderSource(i,n),e.compileShader(i),!!e.getShaderParameter(i,e.COMPILE_STATUS)}function t(e){e&&e.tileSize&&(this.tileSize=e.tileSize),this.setupGLContext(this.tileSize,this.tileSize),this.captureGPUInfo()}m.isWebglSupported=function(t){if(m.isLikelyNode)return!1;t=t||m.WebglFilterBackend.prototype.tileSize;var n=document.createElement("canvas"),i=n.getContext("webgl")||n.getContext("experimental-webgl"),o=!1;if(i){m.maxTextureSize=i.getParameter(i.MAX_TEXTURE_SIZE),o=m.maxTextureSize>=t;for(var r=["highp","mediump","lowp"],a=0;a<3;a++)if(e(i,r[a])){m.webGlPrecision=r[a];break}}return this.isSupported=o,o},m.WebglFilterBackend=t,t.prototype={tileSize:2048,resources:{},setupGLContext:function(e,t){this.dispose(),this.createWebGLCanvas(e,t),this.aPosition=new Float32Array([0,0,0,1,1,0,1,1]),this.chooseFastestCopyGLTo2DMethod(e,t)},chooseFastestCopyGLTo2DMethod:function(e,t){var n,i=void 0!==window.performance;try{new ImageData(1,1),n=!0}catch(e){n=!1}var o="undefined"!=typeof ArrayBuffer,r="undefined"!=typeof Uint8ClampedArray;if(i&&n&&o&&r){var a=m.util.createCanvasElement(),s=new ArrayBuffer(e*t*4);if(m.forceGLPutImageData)return this.imageBuffer=s,void(this.copyGLTo2D=b);var l,c,u={imageBuffer:s,destinationWidth:e,destinationHeight:t,targetCanvas:a};a.width=e,a.height=t,l=window.performance.now(),y.call(u,this.gl,u),c=window.performance.now()-l,l=window.performance.now(),b.call(u,this.gl,u),c>window.performance.now()-l?(this.imageBuffer=s,this.copyGLTo2D=b):this.copyGLTo2D=y}},createWebGLCanvas:function(e,t){var n=m.util.createCanvasElement();n.width=e,n.height=t;var i={alpha:!0,premultipliedAlpha:!1,depth:!1,stencil:!1,antialias:!1},o=n.getContext("webgl",i);o||(o=n.getContext("experimental-webgl",i)),o&&(o.clearColor(0,0,0,0),this.canvas=n,this.gl=o)},applyFilters:function(e,t,n,i,o,r){var a,s=this.gl;r&&(a=this.getCachedTexture(r,t));var l={originalWidth:t.width||t.originalWidth,originalHeight:t.height||t.originalHeight,sourceWidth:n,sourceHeight:i,destinationWidth:n,destinationHeight:i,context:s,sourceTexture:this.createTexture(s,n,i,!a&&t),targetTexture:this.createTexture(s,n,i),originalTexture:a||this.createTexture(s,n,i,!a&&t),passes:e.length,webgl:!0,aPosition:this.aPosition,programCache:this.programCache,pass:0,filterBackend:this,targetCanvas:o},c=s.createFramebuffer();return s.bindFramebuffer(s.FRAMEBUFFER,c),e.forEach((function(e){e&&e.applyTo(l)})),function(e){var t=e.targetCanvas,n=t.width,i=t.height,o=e.destinationWidth,r=e.destinationHeight;n===o&&i===r||(t.width=o,t.height=r)}(l),this.copyGLTo2D(s,l),s.bindTexture(s.TEXTURE_2D,null),s.deleteTexture(l.sourceTexture),s.deleteTexture(l.targetTexture),s.deleteFramebuffer(c),o.getContext("2d").setTransform(1,0,0,1,0,0),l},dispose:function(){this.canvas&&(this.canvas=null,this.gl=null),this.clearWebGLCaches()},clearWebGLCaches:function(){this.programCache={},this.textureCache={}},createTexture:function(e,t,n,i,o){var r=e.createTexture();return e.bindTexture(e.TEXTURE_2D,r),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,o||e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,o||e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),i?e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,i):e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t,n,0,e.RGBA,e.UNSIGNED_BYTE,null),r},getCachedTexture:function(e,t){if(this.textureCache[e])return this.textureCache[e];var n=this.createTexture(this.gl,t.width,t.height,t);return this.textureCache[e]=n,n},evictCachesForKey:function(e){this.textureCache[e]&&(this.gl.deleteTexture(this.textureCache[e]),delete this.textureCache[e])},copyGLTo2D:y,captureGPUInfo:function(){if(this.gpuInfo)return this.gpuInfo;var e=this.gl,t={renderer:"",vendor:""};if(!e)return t;var n=e.getExtension("WEBGL_debug_renderer_info");if(n){var i=e.getParameter(n.UNMASKED_RENDERER_WEBGL),o=e.getParameter(n.UNMASKED_VENDOR_WEBGL);i&&(t.renderer=i.toLowerCase()),o&&(t.vendor=o.toLowerCase())}return this.gpuInfo=t,t}}}(),function(){var e=function(){};function t(){}m.Canvas2dFilterBackend=t,t.prototype={evictCachesForKey:e,dispose:e,clearWebGLCaches:e,resources:{},applyFilters:function(e,t,n,i,o){var r=o.getContext("2d");r.drawImage(t,0,0,n,i);var a={sourceWidth:n,sourceHeight:i,imageData:r.getImageData(0,0,n,i),originalEl:t,originalImageData:r.getImageData(0,0,n,i),canvasEl:o,ctx:r,filterBackend:this};return e.forEach((function(e){e.applyTo(a)})),a.imageData.width===n&&a.imageData.height===i||(o.width=a.imageData.width,o.height=a.imageData.height),r.putImageData(a.imageData,0,0),a}}}(),m.Image=m.Image||{},m.Image.filters=m.Image.filters||{},m.Image.filters.BaseFilter=m.util.createClass({type:"BaseFilter",vertexSource:"attribute vec2 aPosition;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvTexCoord = aPosition;\\ngl_Position = vec4(aPosition * 2.0 - 1.0, 0.0, 1.0);\\n}",fragmentSource:"precision highp float;\\nvarying vec2 vTexCoord;\\nuniform sampler2D uTexture;\\nvoid main() {\\ngl_FragColor = texture2D(uTexture, vTexCoord);\\n}",initialize:function(e){e&&this.setOptions(e)},setOptions:function(e){for(var t in e)this[t]=e[t]},createProgram:function(e,t,n){t=t||this.fragmentSource,n=n||this.vertexSource,"highp"!==m.webGlPrecision&&(t=t.replace(/precision highp float/g,"precision "+m.webGlPrecision+" float"));var i=e.createShader(e.VERTEX_SHADER);if(e.shaderSource(i,n),e.compileShader(i),!e.getShaderParameter(i,e.COMPILE_STATUS))throw new Error("Vertex shader compile error for "+this.type+": "+e.getShaderInfoLog(i));var o=e.createShader(e.FRAGMENT_SHADER);if(e.shaderSource(o,t),e.compileShader(o),!e.getShaderParameter(o,e.COMPILE_STATUS))throw new Error("Fragment shader compile error for "+this.type+": "+e.getShaderInfoLog(o));var r=e.createProgram();if(e.attachShader(r,i),e.attachShader(r,o),e.linkProgram(r),!e.getProgramParameter(r,e.LINK_STATUS))throw new Error(\'Shader link error for "${this.type}" \'+e.getProgramInfoLog(r));var a=this.getAttributeLocations(e,r),s=this.getUniformLocations(e,r)||{};return s.uStepW=e.getUniformLocation(r,"uStepW"),s.uStepH=e.getUniformLocation(r,"uStepH"),{program:r,attributeLocations:a,uniformLocations:s}},getAttributeLocations:function(e,t){return{aPosition:e.getAttribLocation(t,"aPosition")}},getUniformLocations:function(){return{}},sendAttributeData:function(e,t,n){var i=t.aPosition,o=e.createBuffer();e.bindBuffer(e.ARRAY_BUFFER,o),e.enableVertexAttribArray(i),e.vertexAttribPointer(i,2,e.FLOAT,!1,0,0),e.bufferData(e.ARRAY_BUFFER,n,e.STATIC_DRAW)},_setupFrameBuffer:function(e){var t,n,i=e.context;e.passes>1?(t=e.destinationWidth,n=e.destinationHeight,e.sourceWidth===t&&e.sourceHeight===n||(i.deleteTexture(e.targetTexture),e.targetTexture=e.filterBackend.createTexture(i,t,n)),i.framebufferTexture2D(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0,i.TEXTURE_2D,e.targetTexture,0)):(i.bindFramebuffer(i.FRAMEBUFFER,null),i.finish())},_swapTextures:function(e){e.passes--,e.pass++;var t=e.targetTexture;e.targetTexture=e.sourceTexture,e.sourceTexture=t},isNeutralState:function(){var e=this.mainParameter,t=m.Image.filters[this.type].prototype;if(e){if(Array.isArray(t[e])){for(var n=t[e].length;n--;)if(this[e][n]!==t[e][n])return!1;return!0}return t[e]===this[e]}return!1},applyTo:function(e){e.webgl?(this._setupFrameBuffer(e),this.applyToWebGL(e),this._swapTextures(e)):this.applyTo2d(e)},retrieveShader:function(e){return e.programCache.hasOwnProperty(this.type)||(e.programCache[this.type]=this.createProgram(e.context)),e.programCache[this.type]},applyToWebGL:function(e){var t=e.context,n=this.retrieveShader(e);0===e.pass&&e.originalTexture?t.bindTexture(t.TEXTURE_2D,e.originalTexture):t.bindTexture(t.TEXTURE_2D,e.sourceTexture),t.useProgram(n.program),this.sendAttributeData(t,n.attributeLocations,e.aPosition),t.uniform1f(n.uniformLocations.uStepW,1/e.sourceWidth),t.uniform1f(n.uniformLocations.uStepH,1/e.sourceHeight),this.sendUniformData(t,n.uniformLocations),t.viewport(0,0,e.destinationWidth,e.destinationHeight),t.drawArrays(t.TRIANGLE_STRIP,0,4)},bindAdditionalTexture:function(e,t,n){e.activeTexture(n),e.bindTexture(e.TEXTURE_2D,t),e.activeTexture(e.TEXTURE0)},unbindAdditionalTexture:function(e,t){e.activeTexture(t),e.bindTexture(e.TEXTURE_2D,null),e.activeTexture(e.TEXTURE0)},getMainParameter:function(){return this[this.mainParameter]},setMainParameter:function(e){this[this.mainParameter]=e},sendUniformData:function(){},createHelpLayer:function(e){if(!e.helpLayer){var t=document.createElement("canvas");t.width=e.sourceWidth,t.height=e.sourceHeight,e.helpLayer=t}},toObject:function(){var e={type:this.type},t=this.mainParameter;return t&&(e[t]=this[t]),e},toJSON:function(){return this.toObject()}}),m.Image.filters.BaseFilter.fromObject=function(e,t){var n=new m.Image.filters[e.type](e);return t&&t(n),n},function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.ColorMatrix=i(n.BaseFilter,{type:"ColorMatrix",fragmentSource:"precision highp float;\\nuniform sampler2D uTexture;\\nvarying vec2 vTexCoord;\\nuniform mat4 uColorMatrix;\\nuniform vec4 uConstants;\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\ncolor *= uColorMatrix;\\ncolor += uConstants;\\ngl_FragColor = color;\\n}",matrix:[1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0],mainParameter:"matrix",colorsOnly:!0,initialize:function(e){this.callSuper("initialize",e),this.matrix=this.matrix.slice(0)},applyTo2d:function(e){var t,n,i,o,r,a=e.imageData.data,s=a.length,l=this.matrix,c=this.colorsOnly;for(r=0;r<s;r+=4)t=a[r],n=a[r+1],i=a[r+2],c?(a[r]=t*l[0]+n*l[1]+i*l[2]+255*l[4],a[r+1]=t*l[5]+n*l[6]+i*l[7]+255*l[9],a[r+2]=t*l[10]+n*l[11]+i*l[12]+255*l[14]):(o=a[r+3],a[r]=t*l[0]+n*l[1]+i*l[2]+o*l[3]+255*l[4],a[r+1]=t*l[5]+n*l[6]+i*l[7]+o*l[8]+255*l[9],a[r+2]=t*l[10]+n*l[11]+i*l[12]+o*l[13]+255*l[14],a[r+3]=t*l[15]+n*l[16]+i*l[17]+o*l[18]+255*l[19])},getUniformLocations:function(e,t){return{uColorMatrix:e.getUniformLocation(t,"uColorMatrix"),uConstants:e.getUniformLocation(t,"uConstants")}},sendUniformData:function(e,t){var n=this.matrix,i=[n[0],n[1],n[2],n[3],n[5],n[6],n[7],n[8],n[10],n[11],n[12],n[13],n[15],n[16],n[17],n[18]],o=[n[4],n[9],n[14],n[19]];e.uniformMatrix4fv(t.uColorMatrix,!1,i),e.uniform4fv(t.uConstants,o)}}),t.Image.filters.ColorMatrix.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.Brightness=i(n.BaseFilter,{type:"Brightness",fragmentSource:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uBrightness;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\ncolor.rgb += uBrightness;\\ngl_FragColor = color;\\n}",brightness:0,mainParameter:"brightness",applyTo2d:function(e){if(0!==this.brightness){var t,n=e.imageData.data,i=n.length,o=Math.round(255*this.brightness);for(t=0;t<i;t+=4)n[t]=n[t]+o,n[t+1]=n[t+1]+o,n[t+2]=n[t+2]+o}},getUniformLocations:function(e,t){return{uBrightness:e.getUniformLocation(t,"uBrightness")}},sendUniformData:function(e,t){e.uniform1f(t.uBrightness,this.brightness)}}),t.Image.filters.Brightness.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.util.object.extend,i=t.Image.filters,o=t.util.createClass;i.Convolute=o(i.BaseFilter,{type:"Convolute",opaque:!1,matrix:[0,0,0,0,1,0,0,0,0],fragmentSource:{Convolute_3_1:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uMatrix[9];\\nuniform float uStepW;\\nuniform float uStepH;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = vec4(0, 0, 0, 0);\\nfor (float h = 0.0; h < 3.0; h+=1.0) {\\nfor (float w = 0.0; w < 3.0; w+=1.0) {\\nvec2 matrixPos = vec2(uStepW * (w - 1), uStepH * (h - 1));\\ncolor += texture2D(uTexture, vTexCoord + matrixPos) * uMatrix[int(h * 3.0 + w)];\\n}\\n}\\ngl_FragColor = color;\\n}",Convolute_3_0:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uMatrix[9];\\nuniform float uStepW;\\nuniform float uStepH;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = vec4(0, 0, 0, 1);\\nfor (float h = 0.0; h < 3.0; h+=1.0) {\\nfor (float w = 0.0; w < 3.0; w+=1.0) {\\nvec2 matrixPos = vec2(uStepW * (w - 1.0), uStepH * (h - 1.0));\\ncolor.rgb += texture2D(uTexture, vTexCoord + matrixPos).rgb * uMatrix[int(h * 3.0 + w)];\\n}\\n}\\nfloat alpha = texture2D(uTexture, vTexCoord).a;\\ngl_FragColor = color;\\ngl_FragColor.a = alpha;\\n}",Convolute_5_1:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uMatrix[25];\\nuniform float uStepW;\\nuniform float uStepH;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = vec4(0, 0, 0, 0);\\nfor (float h = 0.0; h < 5.0; h+=1.0) {\\nfor (float w = 0.0; w < 5.0; w+=1.0) {\\nvec2 matrixPos = vec2(uStepW * (w - 2.0), uStepH * (h - 2.0));\\ncolor += texture2D(uTexture, vTexCoord + matrixPos) * uMatrix[int(h * 5.0 + w)];\\n}\\n}\\ngl_FragColor = color;\\n}",Convolute_5_0:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uMatrix[25];\\nuniform float uStepW;\\nuniform float uStepH;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = vec4(0, 0, 0, 1);\\nfor (float h = 0.0; h < 5.0; h+=1.0) {\\nfor (float w = 0.0; w < 5.0; w+=1.0) {\\nvec2 matrixPos = vec2(uStepW * (w - 2.0), uStepH * (h - 2.0));\\ncolor.rgb += texture2D(uTexture, vTexCoord + matrixPos).rgb * uMatrix[int(h * 5.0 + w)];\\n}\\n}\\nfloat alpha = texture2D(uTexture, vTexCoord).a;\\ngl_FragColor = color;\\ngl_FragColor.a = alpha;\\n}",Convolute_7_1:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uMatrix[49];\\nuniform float uStepW;\\nuniform float uStepH;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = vec4(0, 0, 0, 0);\\nfor (float h = 0.0; h < 7.0; h+=1.0) {\\nfor (float w = 0.0; w < 7.0; w+=1.0) {\\nvec2 matrixPos = vec2(uStepW * (w - 3.0), uStepH * (h - 3.0));\\ncolor += texture2D(uTexture, vTexCoord + matrixPos) * uMatrix[int(h * 7.0 + w)];\\n}\\n}\\ngl_FragColor = color;\\n}",Convolute_7_0:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uMatrix[49];\\nuniform float uStepW;\\nuniform float uStepH;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = vec4(0, 0, 0, 1);\\nfor (float h = 0.0; h < 7.0; h+=1.0) {\\nfor (float w = 0.0; w < 7.0; w+=1.0) {\\nvec2 matrixPos = vec2(uStepW * (w - 3.0), uStepH * (h - 3.0));\\ncolor.rgb += texture2D(uTexture, vTexCoord + matrixPos).rgb * uMatrix[int(h * 7.0 + w)];\\n}\\n}\\nfloat alpha = texture2D(uTexture, vTexCoord).a;\\ngl_FragColor = color;\\ngl_FragColor.a = alpha;\\n}",Convolute_9_1:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uMatrix[81];\\nuniform float uStepW;\\nuniform float uStepH;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = vec4(0, 0, 0, 0);\\nfor (float h = 0.0; h < 9.0; h+=1.0) {\\nfor (float w = 0.0; w < 9.0; w+=1.0) {\\nvec2 matrixPos = vec2(uStepW * (w - 4.0), uStepH * (h - 4.0));\\ncolor += texture2D(uTexture, vTexCoord + matrixPos) * uMatrix[int(h * 9.0 + w)];\\n}\\n}\\ngl_FragColor = color;\\n}",Convolute_9_0:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uMatrix[81];\\nuniform float uStepW;\\nuniform float uStepH;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = vec4(0, 0, 0, 1);\\nfor (float h = 0.0; h < 9.0; h+=1.0) {\\nfor (float w = 0.0; w < 9.0; w+=1.0) {\\nvec2 matrixPos = vec2(uStepW * (w - 4.0), uStepH * (h - 4.0));\\ncolor.rgb += texture2D(uTexture, vTexCoord + matrixPos).rgb * uMatrix[int(h * 9.0 + w)];\\n}\\n}\\nfloat alpha = texture2D(uTexture, vTexCoord).a;\\ngl_FragColor = color;\\ngl_FragColor.a = alpha;\\n}"},retrieveShader:function(e){var t=Math.sqrt(this.matrix.length),n=this.type+"_"+t+"_"+(this.opaque?1:0),i=this.fragmentSource[n];return e.programCache.hasOwnProperty(n)||(e.programCache[n]=this.createProgram(e.context,i)),e.programCache[n]},applyTo2d:function(e){var t,n,i,o,r,a,s,l,c,u,h,d,f,p=e.imageData,g=p.data,m=this.matrix,v=Math.round(Math.sqrt(m.length)),y=Math.floor(v/2),b=p.width,_=p.height,k=e.ctx.createImageData(b,_),w=k.data,S=this.opaque?1:0;for(h=0;h<_;h++)for(u=0;u<b;u++){for(r=4*(h*b+u),t=0,n=0,i=0,o=0,f=0;f<v;f++)for(d=0;d<v;d++)a=u+d-y,(s=h+f-y)<0||s>=_||a<0||a>=b||(l=4*(s*b+a),c=m[f*v+d],t+=g[l]*c,n+=g[l+1]*c,i+=g[l+2]*c,S||(o+=g[l+3]*c));w[r]=t,w[r+1]=n,w[r+2]=i,w[r+3]=S?g[r+3]:o}e.imageData=k},getUniformLocations:function(e,t){return{uMatrix:e.getUniformLocation(t,"uMatrix"),uOpaque:e.getUniformLocation(t,"uOpaque"),uHalfSize:e.getUniformLocation(t,"uHalfSize"),uSize:e.getUniformLocation(t,"uSize")}},sendUniformData:function(e,t){e.uniform1fv(t.uMatrix,this.matrix)},toObject:function(){return n(this.callSuper("toObject"),{opaque:this.opaque,matrix:this.matrix})}}),t.Image.filters.Convolute.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.Grayscale=i(n.BaseFilter,{type:"Grayscale",fragmentSource:{average:"precision highp float;\\nuniform sampler2D uTexture;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\nfloat average = (color.r + color.b + color.g) / 3.0;\\ngl_FragColor = vec4(average, average, average, color.a);\\n}",lightness:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform int uMode;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 col = texture2D(uTexture, vTexCoord);\\nfloat average = (max(max(col.r, col.g),col.b) + min(min(col.r, col.g),col.b)) / 2.0;\\ngl_FragColor = vec4(average, average, average, col.a);\\n}",luminosity:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform int uMode;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 col = texture2D(uTexture, vTexCoord);\\nfloat average = 0.21 * col.r + 0.72 * col.g + 0.07 * col.b;\\ngl_FragColor = vec4(average, average, average, col.a);\\n}"},mode:"average",mainParameter:"mode",applyTo2d:function(e){var t,n,i=e.imageData.data,o=i.length,r=this.mode;for(t=0;t<o;t+=4)"average"===r?n=(i[t]+i[t+1]+i[t+2])/3:"lightness"===r?n=(Math.min(i[t],i[t+1],i[t+2])+Math.max(i[t],i[t+1],i[t+2]))/2:"luminosity"===r&&(n=.21*i[t]+.72*i[t+1]+.07*i[t+2]),i[t]=n,i[t+1]=n,i[t+2]=n},retrieveShader:function(e){var t=this.type+"_"+this.mode;if(!e.programCache.hasOwnProperty(t)){var n=this.fragmentSource[this.mode];e.programCache[t]=this.createProgram(e.context,n)}return e.programCache[t]},getUniformLocations:function(e,t){return{uMode:e.getUniformLocation(t,"uMode")}},sendUniformData:function(e,t){e.uniform1i(t.uMode,1)},isNeutralState:function(){return!1}}),t.Image.filters.Grayscale.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.Invert=i(n.BaseFilter,{type:"Invert",fragmentSource:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform int uInvert;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\nif (uInvert == 1) {\\ngl_FragColor = vec4(1.0 - color.r,1.0 -color.g,1.0 -color.b,color.a);\\n} else {\\ngl_FragColor = color;\\n}\\n}",invert:!0,mainParameter:"invert",applyTo2d:function(e){var t,n=e.imageData.data,i=n.length;for(t=0;t<i;t+=4)n[t]=255-n[t],n[t+1]=255-n[t+1],n[t+2]=255-n[t+2]},isNeutralState:function(){return!this.invert},getUniformLocations:function(e,t){return{uInvert:e.getUniformLocation(t,"uInvert")}},sendUniformData:function(e,t){e.uniform1i(t.uInvert,this.invert)}}),t.Image.filters.Invert.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.util.object.extend,i=t.Image.filters,o=t.util.createClass;i.Noise=o(i.BaseFilter,{type:"Noise",fragmentSource:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uStepH;\\nuniform float uNoise;\\nuniform float uSeed;\\nvarying vec2 vTexCoord;\\nfloat rand(vec2 co, float seed, float vScale) {\\nreturn fract(sin(dot(co.xy * vScale ,vec2(12.9898 , 78.233))) * 43758.5453 * (seed + 0.01) / 2.0);\\n}\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\ncolor.rgb += (0.5 - rand(vTexCoord, uSeed, 0.1 / uStepH)) * uNoise;\\ngl_FragColor = color;\\n}",mainParameter:"noise",noise:0,applyTo2d:function(e){if(0!==this.noise){var t,n,i=e.imageData.data,o=i.length,r=this.noise;for(t=0,o=i.length;t<o;t+=4)n=(.5-Math.random())*r,i[t]+=n,i[t+1]+=n,i[t+2]+=n}},getUniformLocations:function(e,t){return{uNoise:e.getUniformLocation(t,"uNoise"),uSeed:e.getUniformLocation(t,"uSeed")}},sendUniformData:function(e,t){e.uniform1f(t.uNoise,this.noise/255),e.uniform1f(t.uSeed,Math.random())},toObject:function(){return n(this.callSuper("toObject"),{noise:this.noise})}}),t.Image.filters.Noise.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.Pixelate=i(n.BaseFilter,{type:"Pixelate",blocksize:4,mainParameter:"blocksize",fragmentSource:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uBlocksize;\\nuniform float uStepW;\\nuniform float uStepH;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nfloat blockW = uBlocksize * uStepW;\\nfloat blockH = uBlocksize * uStepW;\\nint posX = int(vTexCoord.x / blockW);\\nint posY = int(vTexCoord.y / blockH);\\nfloat fposX = float(posX);\\nfloat fposY = float(posY);\\nvec2 squareCoords = vec2(fposX * blockW, fposY * blockH);\\nvec4 color = texture2D(uTexture, squareCoords);\\ngl_FragColor = color;\\n}",applyTo2d:function(e){var t,n,i,o,r,a,s,l,c,u,h,d=e.imageData,f=d.data,p=d.height,g=d.width;for(n=0;n<p;n+=this.blocksize)for(i=0;i<g;i+=this.blocksize)for(o=f[t=4*n*g+4*i],r=f[t+1],a=f[t+2],s=f[t+3],u=Math.min(n+this.blocksize,p),h=Math.min(i+this.blocksize,g),l=n;l<u;l++)for(c=i;c<h;c++)f[t=4*l*g+4*c]=o,f[t+1]=r,f[t+2]=a,f[t+3]=s},isNeutralState:function(){return 1===this.blocksize},getUniformLocations:function(e,t){return{uBlocksize:e.getUniformLocation(t,"uBlocksize"),uStepW:e.getUniformLocation(t,"uStepW"),uStepH:e.getUniformLocation(t,"uStepH")}},sendUniformData:function(e,t){e.uniform1f(t.uBlocksize,this.blocksize)}}),t.Image.filters.Pixelate.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.util.object.extend,i=t.Image.filters,o=t.util.createClass;i.RemoveColor=o(i.BaseFilter,{type:"RemoveColor",color:"#FFFFFF",fragmentSource:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform vec4 uLow;\\nuniform vec4 uHigh;\\nvarying vec2 vTexCoord;\\nvoid main() {\\ngl_FragColor = texture2D(uTexture, vTexCoord);\\nif(all(greaterThan(gl_FragColor.rgb,uLow.rgb)) && all(greaterThan(uHigh.rgb,gl_FragColor.rgb))) {\\ngl_FragColor.a = 0.0;\\n}\\n}",distance:.02,useAlpha:!1,applyTo2d:function(e){var n,i,o,r,a=e.imageData.data,s=255*this.distance,l=new t.Color(this.color).getSource(),c=[l[0]-s,l[1]-s,l[2]-s],u=[l[0]+s,l[1]+s,l[2]+s];for(n=0;n<a.length;n+=4)i=a[n],o=a[n+1],r=a[n+2],i>c[0]&&o>c[1]&&r>c[2]&&i<u[0]&&o<u[1]&&r<u[2]&&(a[n+3]=0)},getUniformLocations:function(e,t){return{uLow:e.getUniformLocation(t,"uLow"),uHigh:e.getUniformLocation(t,"uHigh")}},sendUniformData:function(e,n){var i=new t.Color(this.color).getSource(),o=parseFloat(this.distance),r=[0+i[0]/255-o,0+i[1]/255-o,0+i[2]/255-o,1],a=[i[0]/255+o,i[1]/255+o,i[2]/255+o,1];e.uniform4fv(n.uLow,r),e.uniform4fv(n.uHigh,a)},toObject:function(){return n(this.callSuper("toObject"),{color:this.color,distance:this.distance})}}),t.Image.filters.RemoveColor.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass,o={Brownie:[.5997,.34553,-.27082,0,.186,-.0377,.86095,.15059,0,-.1449,.24113,-.07441,.44972,0,-.02965,0,0,0,1,0],Vintage:[.62793,.32021,-.03965,0,.03784,.02578,.64411,.03259,0,.02926,.0466,-.08512,.52416,0,.02023,0,0,0,1,0],Kodachrome:[1.12855,-.39673,-.03992,0,.24991,-.16404,1.08352,-.05498,0,.09698,-.16786,-.56034,1.60148,0,.13972,0,0,0,1,0],Technicolor:[1.91252,-.85453,-.09155,0,.04624,-.30878,1.76589,-.10601,0,-.27589,-.2311,-.75018,1.84759,0,.12137,0,0,0,1,0],Polaroid:[1.438,-.062,-.062,0,0,-.122,1.378,-.122,0,0,-.016,-.016,1.483,0,0,0,0,0,1,0],Sepia:[.393,.769,.189,0,0,.349,.686,.168,0,0,.272,.534,.131,0,0,0,0,0,1,0],BlackWhite:[1.5,1.5,1.5,0,-1,1.5,1.5,1.5,0,-1,1.5,1.5,1.5,0,-1,0,0,0,1,0]};for(var r in o)n[r]=i(n.ColorMatrix,{type:r,matrix:o[r],mainParameter:!1,colorsOnly:!0}),t.Image.filters[r].fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric,n=t.Image.filters,i=t.util.createClass;n.BlendColor=i(n.BaseFilter,{type:"BlendColor",color:"#F95C63",mode:"multiply",alpha:1,fragmentSource:{multiply:"gl_FragColor.rgb *= uColor.rgb;\\n",screen:"gl_FragColor.rgb = 1.0 - (1.0 - gl_FragColor.rgb) * (1.0 - uColor.rgb);\\n",add:"gl_FragColor.rgb += uColor.rgb;\\n",diff:"gl_FragColor.rgb = abs(gl_FragColor.rgb - uColor.rgb);\\n",subtract:"gl_FragColor.rgb -= uColor.rgb;\\n",lighten:"gl_FragColor.rgb = max(gl_FragColor.rgb, uColor.rgb);\\n",darken:"gl_FragColor.rgb = min(gl_FragColor.rgb, uColor.rgb);\\n",exclusion:"gl_FragColor.rgb += uColor.rgb - 2.0 * (uColor.rgb * gl_FragColor.rgb);\\n",overlay:"if (uColor.r < 0.5) {\\ngl_FragColor.r *= 2.0 * uColor.r;\\n} else {\\ngl_FragColor.r = 1.0 - 2.0 * (1.0 - gl_FragColor.r) * (1.0 - uColor.r);\\n}\\nif (uColor.g < 0.5) {\\ngl_FragColor.g *= 2.0 * uColor.g;\\n} else {\\ngl_FragColor.g = 1.0 - 2.0 * (1.0 - gl_FragColor.g) * (1.0 - uColor.g);\\n}\\nif (uColor.b < 0.5) {\\ngl_FragColor.b *= 2.0 * uColor.b;\\n} else {\\ngl_FragColor.b = 1.0 - 2.0 * (1.0 - gl_FragColor.b) * (1.0 - uColor.b);\\n}\\n",tint:"gl_FragColor.rgb *= (1.0 - uColor.a);\\ngl_FragColor.rgb += uColor.rgb;\\n"},buildSource:function(e){return"precision highp float;\\nuniform sampler2D uTexture;\\nuniform vec4 uColor;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\ngl_FragColor = color;\\nif (color.a > 0.0) {\\n"+this.fragmentSource[e]+"}\\n}"},retrieveShader:function(e){var t,n=this.type+"_"+this.mode;return e.programCache.hasOwnProperty(n)||(t=this.buildSource(this.mode),e.programCache[n]=this.createProgram(e.context,t)),e.programCache[n]},applyTo2d:function(e){var n,i,o,r,a,s,l,c=e.imageData.data,u=c.length,h=1-this.alpha;n=(l=new t.Color(this.color).getSource())[0]*this.alpha,i=l[1]*this.alpha,o=l[2]*this.alpha;for(var d=0;d<u;d+=4)switch(r=c[d],a=c[d+1],s=c[d+2],this.mode){case"multiply":c[d]=r*n/255,c[d+1]=a*i/255,c[d+2]=s*o/255;break;case"screen":c[d]=255-(255-r)*(255-n)/255,c[d+1]=255-(255-a)*(255-i)/255,c[d+2]=255-(255-s)*(255-o)/255;break;case"add":c[d]=r+n,c[d+1]=a+i,c[d+2]=s+o;break;case"diff":case"difference":c[d]=Math.abs(r-n),c[d+1]=Math.abs(a-i),c[d+2]=Math.abs(s-o);break;case"subtract":c[d]=r-n,c[d+1]=a-i,c[d+2]=s-o;break;case"darken":c[d]=Math.min(r,n),c[d+1]=Math.min(a,i),c[d+2]=Math.min(s,o);break;case"lighten":c[d]=Math.max(r,n),c[d+1]=Math.max(a,i),c[d+2]=Math.max(s,o);break;case"overlay":c[d]=n<128?2*r*n/255:255-2*(255-r)*(255-n)/255,c[d+1]=i<128?2*a*i/255:255-2*(255-a)*(255-i)/255,c[d+2]=o<128?2*s*o/255:255-2*(255-s)*(255-o)/255;break;case"exclusion":c[d]=n+r-2*n*r/255,c[d+1]=i+a-2*i*a/255,c[d+2]=o+s-2*o*s/255;break;case"tint":c[d]=n+r*h,c[d+1]=i+a*h,c[d+2]=o+s*h}},getUniformLocations:function(e,t){return{uColor:e.getUniformLocation(t,"uColor")}},sendUniformData:function(e,n){var i=new t.Color(this.color).getSource();i[0]=this.alpha*i[0]/255,i[1]=this.alpha*i[1]/255,i[2]=this.alpha*i[2]/255,i[3]=this.alpha,e.uniform4fv(n.uColor,i)},toObject:function(){return{type:this.type,color:this.color,mode:this.mode,alpha:this.alpha}}}),t.Image.filters.BlendColor.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric,n=t.Image.filters,i=t.util.createClass;n.BlendImage=i(n.BaseFilter,{type:"BlendImage",image:null,mode:"multiply",alpha:1,vertexSource:"attribute vec2 aPosition;\\nvarying vec2 vTexCoord;\\nvarying vec2 vTexCoord2;\\nuniform mat3 uTransformMatrix;\\nvoid main() {\\nvTexCoord = aPosition;\\nvTexCoord2 = (uTransformMatrix * vec3(aPosition, 1.0)).xy;\\ngl_Position = vec4(aPosition * 2.0 - 1.0, 0.0, 1.0);\\n}",fragmentSource:{multiply:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform sampler2D uImage;\\nuniform vec4 uColor;\\nvarying vec2 vTexCoord;\\nvarying vec2 vTexCoord2;\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\nvec4 color2 = texture2D(uImage, vTexCoord2);\\ncolor.rgba *= color2.rgba;\\ngl_FragColor = color;\\n}",mask:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform sampler2D uImage;\\nuniform vec4 uColor;\\nvarying vec2 vTexCoord;\\nvarying vec2 vTexCoord2;\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\nvec4 color2 = texture2D(uImage, vTexCoord2);\\ncolor.a = color2.a;\\ngl_FragColor = color;\\n}"},retrieveShader:function(e){var t=this.type+"_"+this.mode,n=this.fragmentSource[this.mode];return e.programCache.hasOwnProperty(t)||(e.programCache[t]=this.createProgram(e.context,n)),e.programCache[t]},applyToWebGL:function(e){var t=e.context,n=this.createTexture(e.filterBackend,this.image);this.bindAdditionalTexture(t,n,t.TEXTURE1),this.callSuper("applyToWebGL",e),this.unbindAdditionalTexture(t,t.TEXTURE1)},createTexture:function(e,t){return e.getCachedTexture(t.cacheKey,t._element)},calculateMatrix:function(){var e=this.image,t=e._element.width,n=e._element.height;return[1/e.scaleX,0,0,0,1/e.scaleY,0,-e.left/t,-e.top/n,1]},applyTo2d:function(e){var n,i,o,r,a,s,l,c,u,h,d,f=e.imageData,p=e.filterBackend.resources,g=f.data,m=g.length,v=f.width,y=f.height,b=this.image;p.blendImage||(p.blendImage=t.util.createCanvasElement()),h=(u=p.blendImage).getContext("2d"),u.width!==v||u.height!==y?(u.width=v,u.height=y):h.clearRect(0,0,v,y),h.setTransform(b.scaleX,0,0,b.scaleY,b.left,b.top),h.drawImage(b._element,0,0,v,y),d=h.getImageData(0,0,v,y).data;for(var _=0;_<m;_+=4)switch(a=g[_],s=g[_+1],l=g[_+2],c=g[_+3],n=d[_],i=d[_+1],o=d[_+2],r=d[_+3],this.mode){case"multiply":g[_]=a*n/255,g[_+1]=s*i/255,g[_+2]=l*o/255,g[_+3]=c*r/255;break;case"mask":g[_+3]=r}},getUniformLocations:function(e,t){return{uTransformMatrix:e.getUniformLocation(t,"uTransformMatrix"),uImage:e.getUniformLocation(t,"uImage")}},sendUniformData:function(e,t){var n=this.calculateMatrix();e.uniform1i(t.uImage,1),e.uniformMatrix3fv(t.uTransformMatrix,!1,n)},toObject:function(){return{type:this.type,image:this.image&&this.image.toObject(),mode:this.mode,alpha:this.alpha}}}),t.Image.filters.BlendImage.fromObject=function(e,n){t.Image.fromObject(e.image,(function(i){var o=t.util.object.clone(e);o.image=i,n(new t.Image.filters.BlendImage(o))}))}}(e),function(e){var t=e.fabric||(e.fabric={}),n=Math.pow,i=Math.floor,o=Math.sqrt,r=Math.abs,a=Math.round,s=Math.sin,l=Math.ceil,c=t.Image.filters,u=t.util.createClass;c.Resize=u(c.BaseFilter,{type:"Resize",resizeType:"hermite",scaleX:1,scaleY:1,lanczosLobes:3,getUniformLocations:function(e,t){return{uDelta:e.getUniformLocation(t,"uDelta"),uTaps:e.getUniformLocation(t,"uTaps")}},sendUniformData:function(e,t){e.uniform2fv(t.uDelta,this.horizontal?[1/this.width,0]:[0,1/this.height]),e.uniform1fv(t.uTaps,this.taps)},retrieveShader:function(e){var t=this.getFilterWindow(),n=this.type+"_"+t;if(!e.programCache.hasOwnProperty(n)){var i=this.generateShader(t);e.programCache[n]=this.createProgram(e.context,i)}return e.programCache[n]},getFilterWindow:function(){var e=this.tempScale;return Math.ceil(this.lanczosLobes/e)},getTaps:function(){for(var e=this.lanczosCreate(this.lanczosLobes),t=this.tempScale,n=this.getFilterWindow(),i=new Array(n),o=1;o<=n;o++)i[o-1]=e(o*t);return i},generateShader:function(e){for(var t=new Array(e),n=this.fragmentSourceTOP,i=1;i<=e;i++)t[i-1]=i+".0 * uDelta";return n+="uniform float uTaps["+e+"];\\n",n+="void main() {\\n",n+=" vec4 color = texture2D(uTexture, vTexCoord);\\n",n+=" float sum = 1.0;\\n",t.forEach((function(e,t){n+=" color += texture2D(uTexture, vTexCoord + "+e+") * uTaps["+t+"];\\n",n+=" color += texture2D(uTexture, vTexCoord - "+e+") * uTaps["+t+"];\\n",n+=" sum += 2.0 * uTaps["+t+"];\\n"})),n+=" gl_FragColor = color / sum;\\n",n+="}"},fragmentSourceTOP:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform vec2 uDelta;\\nvarying vec2 vTexCoord;\\n",applyTo:function(e){e.webgl?(e.passes++,this.width=e.sourceWidth,this.horizontal=!0,this.dW=Math.round(this.width*this.scaleX),this.dH=e.sourceHeight,this.tempScale=this.dW/this.width,this.taps=this.getTaps(),e.destinationWidth=this.dW,this._setupFrameBuffer(e),this.applyToWebGL(e),this._swapTextures(e),e.sourceWidth=e.destinationWidth,this.height=e.sourceHeight,this.horizontal=!1,this.dH=Math.round(this.height*this.scaleY),this.tempScale=this.dH/this.height,this.taps=this.getTaps(),e.destinationHeight=this.dH,this._setupFrameBuffer(e),this.applyToWebGL(e),this._swapTextures(e),e.sourceHeight=e.destinationHeight):this.applyTo2d(e)},isNeutralState:function(){return 1===this.scaleX&&1===this.scaleY},lanczosCreate:function(e){return function(t){if(t>=e||t<=-e)return 0;if(t<1.1920929e-7&&t>-1.1920929e-7)return 1;var n=(t*=Math.PI)/e;return s(t)/t*s(n)/n}},applyTo2d:function(e){var t=e.imageData,n=this.scaleX,i=this.scaleY;this.rcpScaleX=1/n,this.rcpScaleY=1/i;var o,r=t.width,s=t.height,l=a(r*n),c=a(s*i);"sliceHack"===this.resizeType?o=this.sliceByTwo(e,r,s,l,c):"hermite"===this.resizeType?o=this.hermiteFastResize(e,r,s,l,c):"bilinear"===this.resizeType?o=this.bilinearFiltering(e,r,s,l,c):"lanczos"===this.resizeType&&(o=this.lanczosResize(e,r,s,l,c)),e.imageData=o},sliceByTwo:function(e,n,o,r,a){var s,l,c=e.imageData,u=.5,h=!1,d=!1,f=n*u,p=o*u,g=t.filterBackend.resources,m=0,v=0,y=n,b=0;for(g.sliceByTwo||(g.sliceByTwo=document.createElement("canvas")),((s=g.sliceByTwo).width<1.5*n||s.height<o)&&(s.width=1.5*n,s.height=o),(l=s.getContext("2d")).clearRect(0,0,1.5*n,o),l.putImageData(c,0,0),r=i(r),a=i(a);!h||!d;)n=f,o=p,r<i(f*u)?f=i(f*u):(f=r,h=!0),a<i(p*u)?p=i(p*u):(p=a,d=!0),l.drawImage(s,m,v,n,o,y,b,f,p),m=y,v=b,b+=p;return l.getImageData(m,v,r,a)},lanczosResize:function(e,t,a,s,c){var u=e.imageData.data,h=e.ctx.createImageData(s,c),d=h.data,f=this.lanczosCreate(this.lanczosLobes),p=this.rcpScaleX,g=this.rcpScaleY,m=2/this.rcpScaleX,v=2/this.rcpScaleY,y=l(p*this.lanczosLobes/2),b=l(g*this.lanczosLobes/2),_={},k={},w={};return function e(l){var S,C,E,T,O,j,x,R,I,A,D;for(k.x=(l+.5)*p,w.x=i(k.x),S=0;S<c;S++){for(k.y=(S+.5)*g,w.y=i(k.y),O=0,j=0,x=0,R=0,I=0,C=w.x-y;C<=w.x+y;C++)if(!(C<0||C>=t)){A=i(1e3*r(C-k.x)),_[A]||(_[A]={});for(var N=w.y-b;N<=w.y+b;N++)N<0||N>=a||(D=i(1e3*r(N-k.y)),_[A][D]||(_[A][D]=f(o(n(A*m,2)+n(D*v,2))/1e3)),(E=_[A][D])>0&&(O+=E,j+=E*u[T=4*(N*t+C)],x+=E*u[T+1],R+=E*u[T+2],I+=E*u[T+3]))}d[T=4*(S*s+l)]=j/O,d[T+1]=x/O,d[T+2]=R/O,d[T+3]=I/O}return++l<s?e(l):h}(0)},bilinearFiltering:function(e,t,n,o,r){var a,s,l,c,u,h,d,f,p,g=0,m=this.rcpScaleX,v=this.rcpScaleY,y=4*(t-1),b=e.imageData.data,_=e.ctx.createImageData(o,r),k=_.data;for(l=0;l<r;l++)for(c=0;c<o;c++)for(u=m*c-(a=i(m*c)),h=v*l-(s=i(v*l)),p=4*(s*t+a),d=0;d<4;d++)f=b[p+d]*(1-u)*(1-h)+b[p+4+d]*u*(1-h)+b[p+y+d]*h*(1-u)+b[p+y+4+d]*u*h,k[g++]=f;return _},hermiteFastResize:function(e,t,n,a,s){for(var c=this.rcpScaleX,u=this.rcpScaleY,h=l(c/2),d=l(u/2),f=e.imageData.data,p=e.ctx.createImageData(a,s),g=p.data,m=0;m<s;m++)for(var v=0;v<a;v++){for(var y=4*(v+m*a),b=0,_=0,k=0,w=0,S=0,C=0,E=0,T=(m+.5)*u,O=i(m*u);O<(m+1)*u;O++)for(var j=r(T-(O+.5))/d,x=(v+.5)*c,R=j*j,I=i(v*c);I<(v+1)*c;I++){var A=r(x-(I+.5))/h,D=o(R+A*A);D>1&&D<-1||(b=2*D*D*D-3*D*D+1)>0&&(E+=b*f[(A=4*(I+O*t))+3],k+=b,f[A+3]<255&&(b=b*f[A+3]/250),w+=b*f[A],S+=b*f[A+1],C+=b*f[A+2],_+=b)}g[y]=w/_,g[y+1]=S/_,g[y+2]=C/_,g[y+3]=E/k}return p},toObject:function(){return{type:this.type,scaleX:this.scaleX,scaleY:this.scaleY,resizeType:this.resizeType,lanczosLobes:this.lanczosLobes}}}),t.Image.filters.Resize.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.Contrast=i(n.BaseFilter,{type:"Contrast",fragmentSource:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uContrast;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\nfloat contrastF = 1.015 * (uContrast + 1.0) / (1.0 * (1.015 - uContrast));\\ncolor.rgb = contrastF * (color.rgb - 0.5) + 0.5;\\ngl_FragColor = color;\\n}",contrast:0,mainParameter:"contrast",applyTo2d:function(e){if(0!==this.contrast){var t,n=e.imageData.data,i=n.length,o=Math.floor(255*this.contrast),r=259*(o+255)/(255*(259-o));for(t=0;t<i;t+=4)n[t]=r*(n[t]-128)+128,n[t+1]=r*(n[t+1]-128)+128,n[t+2]=r*(n[t+2]-128)+128}},getUniformLocations:function(e,t){return{uContrast:e.getUniformLocation(t,"uContrast")}},sendUniformData:function(e,t){e.uniform1f(t.uContrast,this.contrast)}}),t.Image.filters.Contrast.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.Saturation=i(n.BaseFilter,{type:"Saturation",fragmentSource:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uSaturation;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\nfloat rgMax = max(color.r, color.g);\\nfloat rgbMax = max(rgMax, color.b);\\ncolor.r += rgbMax != color.r ? (rgbMax - color.r) * uSaturation : 0.00;\\ncolor.g += rgbMax != color.g ? (rgbMax - color.g) * uSaturation : 0.00;\\ncolor.b += rgbMax != color.b ? (rgbMax - color.b) * uSaturation : 0.00;\\ngl_FragColor = color;\\n}",saturation:0,mainParameter:"saturation",applyTo2d:function(e){if(0!==this.saturation){var t,n,i=e.imageData.data,o=i.length,r=-this.saturation;for(t=0;t<o;t+=4)n=Math.max(i[t],i[t+1],i[t+2]),i[t]+=n!==i[t]?(n-i[t])*r:0,i[t+1]+=n!==i[t+1]?(n-i[t+1])*r:0,i[t+2]+=n!==i[t+2]?(n-i[t+2])*r:0}},getUniformLocations:function(e,t){return{uSaturation:e.getUniformLocation(t,"uSaturation")}},sendUniformData:function(e,t){e.uniform1f(t.uSaturation,-this.saturation)}}),t.Image.filters.Saturation.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.Vibrance=i(n.BaseFilter,{type:"Vibrance",fragmentSource:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform float uVibrance;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\nfloat max = max(color.r, max(color.g, color.b));\\nfloat avg = (color.r + color.g + color.b) / 3.0;\\nfloat amt = (abs(max - avg) * 2.0) * uVibrance;\\ncolor.r += max != color.r ? (max - color.r) * amt : 0.00;\\ncolor.g += max != color.g ? (max - color.g) * amt : 0.00;\\ncolor.b += max != color.b ? (max - color.b) * amt : 0.00;\\ngl_FragColor = color;\\n}",vibrance:0,mainParameter:"vibrance",applyTo2d:function(e){if(0!==this.vibrance){var t,n,i,o,r=e.imageData.data,a=r.length,s=-this.vibrance;for(t=0;t<a;t+=4)n=Math.max(r[t],r[t+1],r[t+2]),i=(r[t]+r[t+1]+r[t+2])/3,o=2*Math.abs(n-i)/255*s,r[t]+=n!==r[t]?(n-r[t])*o:0,r[t+1]+=n!==r[t+1]?(n-r[t+1])*o:0,r[t+2]+=n!==r[t+2]?(n-r[t+2])*o:0}},getUniformLocations:function(e,t){return{uVibrance:e.getUniformLocation(t,"uVibrance")}},sendUniformData:function(e,t){e.uniform1f(t.uVibrance,-this.vibrance)}}),t.Image.filters.Vibrance.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.Blur=i(n.BaseFilter,{type:"Blur",fragmentSource:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform vec2 uDelta;\\nvarying vec2 vTexCoord;\\nconst float nSamples = 15.0;\\nvec3 v3offset = vec3(12.9898, 78.233, 151.7182);\\nfloat random(vec3 scale) {\\nreturn fract(sin(dot(gl_FragCoord.xyz, scale)) * 43758.5453);\\n}\\nvoid main() {\\nvec4 color = vec4(0.0);\\nfloat total = 0.0;\\nfloat offset = random(v3offset);\\nfor (float t = -nSamples; t <= nSamples; t++) {\\nfloat percent = (t + offset - 0.5) / nSamples;\\nfloat weight = 1.0 - abs(percent);\\ncolor += texture2D(uTexture, vTexCoord + uDelta * percent) * weight;\\ntotal += weight;\\n}\\ngl_FragColor = color / total;\\n}",blur:0,mainParameter:"blur",applyTo:function(e){e.webgl?(this.aspectRatio=e.sourceWidth/e.sourceHeight,e.passes++,this._setupFrameBuffer(e),this.horizontal=!0,this.applyToWebGL(e),this._swapTextures(e),this._setupFrameBuffer(e),this.horizontal=!1,this.applyToWebGL(e),this._swapTextures(e)):this.applyTo2d(e)},applyTo2d:function(e){e.imageData=this.simpleBlur(e)},simpleBlur:function(e){var n,i,o=e.filterBackend.resources,r=e.imageData.width,a=e.imageData.height;o.blurLayer1||(o.blurLayer1=t.util.createCanvasElement(),o.blurLayer2=t.util.createCanvasElement()),n=o.blurLayer1,i=o.blurLayer2,n.width===r&&n.height===a||(i.width=n.width=r,i.height=n.height=a);var s,l,c,u,h=n.getContext("2d"),d=i.getContext("2d"),f=15,p=.06*this.blur*.5;for(h.putImageData(e.imageData,0,0),d.clearRect(0,0,r,a),u=-15;u<=f;u++)c=p*(l=u/f)*r+(s=(Math.random()-.5)/4),d.globalAlpha=1-Math.abs(l),d.drawImage(n,c,s),h.drawImage(i,0,0),d.globalAlpha=1,d.clearRect(0,0,i.width,i.height);for(u=-15;u<=f;u++)c=p*(l=u/f)*a+(s=(Math.random()-.5)/4),d.globalAlpha=1-Math.abs(l),d.drawImage(n,s,c),h.drawImage(i,0,0),d.globalAlpha=1,d.clearRect(0,0,i.width,i.height);e.ctx.drawImage(n,0,0);var g=e.ctx.getImageData(0,0,n.width,n.height);return h.globalAlpha=1,h.clearRect(0,0,n.width,n.height),g},getUniformLocations:function(e,t){return{delta:e.getUniformLocation(t,"uDelta")}},sendUniformData:function(e,t){var n=this.chooseRightDelta();e.uniform2fv(t.delta,n)},chooseRightDelta:function(){var e,t=1,n=[0,0];return this.horizontal?this.aspectRatio>1&&(t=1/this.aspectRatio):this.aspectRatio<1&&(t=this.aspectRatio),e=t*this.blur*.12,this.horizontal?n[0]=e:n[1]=e,n}}),n.Blur.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.Gamma=i(n.BaseFilter,{type:"Gamma",fragmentSource:"precision highp float;\\nuniform sampler2D uTexture;\\nuniform vec3 uGamma;\\nvarying vec2 vTexCoord;\\nvoid main() {\\nvec4 color = texture2D(uTexture, vTexCoord);\\nvec3 correction = (1.0 / uGamma);\\ncolor.r = pow(color.r, correction.r);\\ncolor.g = pow(color.g, correction.g);\\ncolor.b = pow(color.b, correction.b);\\ngl_FragColor = color;\\ngl_FragColor.rgb *= color.a;\\n}",gamma:[1,1,1],mainParameter:"gamma",initialize:function(e){this.gamma=[1,1,1],n.BaseFilter.prototype.initialize.call(this,e)},applyTo2d:function(e){var t,n=e.imageData.data,i=this.gamma,o=n.length,r=1/i[0],a=1/i[1],s=1/i[2];for(this.rVals||(this.rVals=new Uint8Array(256),this.gVals=new Uint8Array(256),this.bVals=new Uint8Array(256)),t=0,o=256;t<o;t++)this.rVals[t]=255*Math.pow(t/255,r),this.gVals[t]=255*Math.pow(t/255,a),this.bVals[t]=255*Math.pow(t/255,s);for(t=0,o=n.length;t<o;t+=4)n[t]=this.rVals[n[t]],n[t+1]=this.gVals[n[t+1]],n[t+2]=this.bVals[n[t+2]]},getUniformLocations:function(e,t){return{uGamma:e.getUniformLocation(t,"uGamma")}},sendUniformData:function(e,t){e.uniform3fv(t.uGamma,this.gamma)}}),t.Image.filters.Gamma.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.Composed=i(n.BaseFilter,{type:"Composed",subFilters:[],initialize:function(e){this.callSuper("initialize",e),this.subFilters=this.subFilters.slice(0)},applyTo:function(e){e.passes+=this.subFilters.length-1,this.subFilters.forEach((function(t){t.applyTo(e)}))},toObject:function(){return t.util.object.extend(this.callSuper("toObject"),{subFilters:this.subFilters.map((function(e){return e.toObject()}))})},isNeutralState:function(){return!this.subFilters.some((function(e){return!e.isNeutralState()}))}}),t.Image.filters.Composed.fromObject=function(e,n){var i=(e.subFilters||[]).map((function(e){return new t.Image.filters[e.type](e)})),o=new t.Image.filters.Composed({subFilters:i});return n&&n(o),o}}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.Image.filters,i=t.util.createClass;n.HueRotation=i(n.ColorMatrix,{type:"HueRotation",rotation:0,mainParameter:"rotation",calculateMatrix:function(){var e=this.rotation*Math.PI,n=t.util.cos(e),i=t.util.sin(e),o=1/3,r=Math.sqrt(o)*i,a=1-n;this.matrix=[1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0],this.matrix[0]=n+a/3,this.matrix[1]=o*a-r,this.matrix[2]=o*a+r,this.matrix[5]=o*a+r,this.matrix[6]=n+o*a,this.matrix[7]=o*a-r,this.matrix[10]=o*a-r,this.matrix[11]=o*a+r,this.matrix[12]=n+o*a},isNeutralState:function(e){return this.calculateMatrix(),n.BaseFilter.prototype.isNeutralState.call(this,e)},applyTo:function(e){this.calculateMatrix(),n.BaseFilter.prototype.applyTo.call(this,e)}}),t.Image.filters.HueRotation.fromObject=t.Image.filters.BaseFilter.fromObject}(e),function(e){var t=e.fabric||(e.fabric={}),n=t.util.object.clone;if(t.Text)t.warn("fabric.Text is already defined");else{var i="fontFamily fontWeight fontSize text underline overline linethrough textAlign fontStyle lineHeight textBackgroundColor charSpacing styles direction path pathStartOffset pathSide pathAlign".split(" ");t.Text=t.util.createClass(t.Object,{_dimensionAffectingProps:["fontSize","fontWeight","fontFamily","fontStyle","lineHeight","text","charSpacing","textAlign","styles","path","pathStartOffset","pathSide","pathAlign"],_reNewline:/\\r?\\n/,_reSpacesAndTabs:/[ \\t\\r]/g,_reSpaceAndTab:/[ \\t\\r]/,_reWords:/\\S+/g,type:"text",fontSize:40,fontWeight:"normal",fontFamily:"Times New Roman",underline:!1,overline:!1,linethrough:!1,textAlign:"left",fontStyle:"normal",lineHeight:1.16,superscript:{size:.6,baseline:-.35},subscript:{size:.6,baseline:.11},textBackgroundColor:"",stateProperties:t.Object.prototype.stateProperties.concat(i),cacheProperties:t.Object.prototype.cacheProperties.concat(i),stroke:null,shadow:null,path:null,pathStartOffset:0,pathSide:"left",pathAlign:"baseline",_fontSizeFraction:.222,offsets:{underline:.1,linethrough:-.315,overline:-.88},_fontSizeMult:1.13,charSpacing:0,styles:null,_measuringContext:null,deltaY:0,direction:"ltr",_styleProperties:["stroke","strokeWidth","fill","fontFamily","fontSize","fontWeight","fontStyle","underline","overline","linethrough","deltaY","textBackgroundColor"],__charBounds:[],CACHE_FONT_SIZE:400,MIN_TEXT_WIDTH:2,initialize:function(e,t){this.styles=t&&t.styles||{},this.text=e,this.__skipDimension=!0,this.callSuper("initialize",t),this.path&&this.setPathInfo(),this.__skipDimension=!1,this.initDimensions(),this.setCoords(),this.setupState({propertySet:"_dimensionAffectingProps"})},setPathInfo:function(){var e=this.path;e&&(e.segmentsInfo=t.util.getPathSegmentsInfo(e.path))},getMeasuringContext:function(){return t._measuringContext||(t._measuringContext=this.canvas&&this.canvas.contextCache||t.util.createCanvasElement().getContext("2d")),t._measuringContext},_splitText:function(){var e=this._splitTextIntoLines(this.text);return this.textLines=e.lines,this._textLines=e.graphemeLines,this._unwrappedTextLines=e._unwrappedLines,this._text=e.graphemeText,e},initDimensions:function(){this.__skipDimension||(this._splitText(),this._clearCache(),this.path?(this.width=this.path.width,this.height=this.path.height):(this.width=this.calcTextWidth()||this.cursorWidth||this.MIN_TEXT_WIDTH,this.height=this.calcTextHeight()),-1!==this.textAlign.indexOf("justify")&&this.enlargeSpaces(),this.saveState({propertySet:"_dimensionAffectingProps"}))},enlargeSpaces:function(){for(var e,t,n,i,o,r,a,s=0,l=this._textLines.length;s<l;s++)if(("justify"===this.textAlign||s!==l-1&&!this.isEndOfWrapping(s))&&(i=0,o=this._textLines[s],(t=this.getLineWidth(s))<this.width&&(a=this.textLines[s].match(this._reSpacesAndTabs)))){n=a.length,e=(this.width-t)/n;for(var c=0,u=o.length;c<=u;c++)r=this.__charBounds[s][c],this._reSpaceAndTab.test(o[c])?(r.width+=e,r.kernedWidth+=e,r.left+=i,i+=e):r.left+=i}},isEndOfWrapping:function(e){return e===this._textLines.length-1},missingNewlineOffset:function(){return 1},toString:function(){return"#<fabric.Text ("+this.complexity()+\'): { "text": "\'+this.text+\'", "fontFamily": "\'+this.fontFamily+\'" }>\'},_getCacheCanvasDimensions:function(){var e=this.callSuper("_getCacheCanvasDimensions"),t=this.fontSize;return e.width+=t*e.zoomX,e.height+=t*e.zoomY,e},_render:function(e){var t=this.path;t&&!t.isNotVisible()&&t._render(e),this._setTextStyles(e),this._renderTextLinesBackground(e),this._renderTextDecoration(e,"underline"),this._renderText(e),this._renderTextDecoration(e,"overline"),this._renderTextDecoration(e,"linethrough")},_renderText:function(e){"stroke"===this.paintFirst?(this._renderTextStroke(e),this._renderTextFill(e)):(this._renderTextFill(e),this._renderTextStroke(e))},_setTextStyles:function(e,t,n){if(e.textBaseline="alphabetical",this.path)switch(this.pathAlign){case"center":e.textBaseline="middle";break;case"ascender":e.textBaseline="top";break;case"descender":e.textBaseline="bottom"}e.font=this._getFontDeclaration(t,n)},calcTextWidth:function(){for(var e=this.getLineWidth(0),t=1,n=this._textLines.length;t<n;t++){var i=this.getLineWidth(t);i>e&&(e=i)}return e},_renderTextLine:function(e,t,n,i,o,r){this._renderChars(e,t,n,i,o,r)},_renderTextLinesBackground:function(e){if(this.textBackgroundColor||this.styleHas("textBackgroundColor")){for(var t,n,i,o,r,a,s,l=e.fillStyle,c=this._getLeftOffset(),u=this._getTopOffset(),h=0,d=0,f=this.path,p=0,g=this._textLines.length;p<g;p++)if(t=this.getHeightOfLine(p),this.textBackgroundColor||this.styleHas("textBackgroundColor",p)){i=this._textLines[p],n=this._getLineLeftOffset(p),d=0,h=0,o=this.getValueOfPropertyAt(p,0,"textBackgroundColor");for(var m=0,v=i.length;m<v;m++)r=this.__charBounds[p][m],a=this.getValueOfPropertyAt(p,m,"textBackgroundColor"),f?(e.save(),e.translate(r.renderLeft,r.renderTop),e.rotate(r.angle),e.fillStyle=a,a&&e.fillRect(-r.width/2,-t/this.lineHeight*(1-this._fontSizeFraction),r.width,t/this.lineHeight),e.restore()):a!==o?(s=c+n+h,"rtl"===this.direction&&(s=this.width-s-d),e.fillStyle=o,o&&e.fillRect(s,u,d,t/this.lineHeight),h=r.left,d=r.width,o=a):d+=r.kernedWidth;a&&!f&&(s=c+n+h,"rtl"===this.direction&&(s=this.width-s-d),e.fillStyle=a,e.fillRect(s,u,d,t/this.lineHeight)),u+=t}else u+=t;e.fillStyle=l,this._removeShadow(e)}},getFontCache:function(e){var n=e.fontFamily.toLowerCase();t.charWidthsCache[n]||(t.charWidthsCache[n]={});var i=t.charWidthsCache[n],o=e.fontStyle.toLowerCase()+"_"+(e.fontWeight+"").toLowerCase();return i[o]||(i[o]={}),i[o]},_measureChar:function(e,t,n,i){var o,r,a,s,l=this.getFontCache(t),c=n+e,u=this._getFontDeclaration(t)===this._getFontDeclaration(i),h=t.fontSize/this.CACHE_FONT_SIZE;if(n&&void 0!==l[n]&&(a=l[n]),void 0!==l[e]&&(s=o=l[e]),u&&void 0!==l[c]&&(s=(r=l[c])-a),void 0===o||void 0===a||void 0===r){var d=this.getMeasuringContext();this._setTextStyles(d,t,!0)}return void 0===o&&(s=o=d.measureText(e).width,l[e]=o),void 0===a&&u&&n&&(a=d.measureText(n).width,l[n]=a),u&&void 0===r&&(r=d.measureText(c).width,l[c]=r,s=r-a),{width:o*h,kernedWidth:s*h}},getHeightOfChar:function(e,t){return this.getValueOfPropertyAt(e,t,"fontSize")},measureLine:function(e){var t=this._measureLine(e);return 0!==this.charSpacing&&(t.width-=this._getWidthOfCharSpacing()),t.width<0&&(t.width=0),t},_measureLine:function(e){var n,i,o,r,a,s,l=0,c=this._textLines[e],u=new Array(c.length),h=0,d=this.path,f="right"===this.pathSide;for(this.__charBounds[e]=u,n=0;n<c.length;n++)i=c[n],r=this._getGraphemeBox(i,e,n,o),u[n]=r,l+=r.kernedWidth,o=i;if(u[n]={left:r?r.left+r.width:0,width:0,kernedWidth:0,height:this.fontSize},d){switch(s=d.segmentsInfo[d.segmentsInfo.length-1].length,(a=t.util.getPointOnPath(d.path,0,d.segmentsInfo)).x+=d.pathOffset.x,a.y+=d.pathOffset.y,this.textAlign){case"left":h=f?s-l:0;break;case"center":h=(s-l)/2;break;case"right":h=f?0:s-l}for(h+=this.pathStartOffset*(f?-1:1),n=f?c.length-1:0;f?n>=0:n<c.length;f?n--:n++)r=u[n],h>s?h%=s:h<0&&(h+=s),this._setGraphemeOnPath(h,r,a),h+=r.kernedWidth}return{width:l,numOfSpaces:0}},_setGraphemeOnPath:function(e,n,i){var o=e+n.kernedWidth/2,r=this.path,a=t.util.getPointOnPath(r.path,o,r.segmentsInfo);n.renderLeft=a.x-i.x,n.renderTop=a.y-i.y,n.angle=a.angle+("right"===this.pathSide?Math.PI:0)},_getGraphemeBox:function(e,t,n,i,o){var r,a=this.getCompleteStyleDeclaration(t,n),s=i?this.getCompleteStyleDeclaration(t,n-1):{},l=this._measureChar(e,a,i,s),c=l.kernedWidth,u=l.width;0!==this.charSpacing&&(u+=r=this._getWidthOfCharSpacing(),c+=r);var h={width:u,left:0,height:a.fontSize,kernedWidth:c,deltaY:a.deltaY};if(n>0&&!o){var d=this.__charBounds[t][n-1];h.left=d.left+d.width+l.kernedWidth-l.width}return h},getHeightOfLine:function(e){if(this.__lineHeights[e])return this.__lineHeights[e];for(var t=this._textLines[e],n=this.getHeightOfChar(e,0),i=1,o=t.length;i<o;i++)n=Math.max(this.getHeightOfChar(e,i),n);return this.__lineHeights[e]=n*this.lineHeight*this._fontSizeMult},calcTextHeight:function(){for(var e,t=0,n=0,i=this._textLines.length;n<i;n++)e=this.getHeightOfLine(n),t+=n===i-1?e/this.lineHeight:e;return t},_getLeftOffset:function(){return"ltr"===this.direction?-this.width/2:this.width/2},_getTopOffset:function(){return-this.height/2},_renderTextCommon:function(e,t){e.save();for(var n=0,i=this._getLeftOffset(),o=this._getTopOffset(),r=0,a=this._textLines.length;r<a;r++){var s=this.getHeightOfLine(r),l=s/this.lineHeight,c=this._getLineLeftOffset(r);this._renderTextLine(t,e,this._textLines[r],i+c,o+n+l,r),n+=s}e.restore()},_renderTextFill:function(e){(this.fill||this.styleHas("fill"))&&this._renderTextCommon(e,"fillText")},_renderTextStroke:function(e){(this.stroke&&0!==this.strokeWidth||!this.isEmptyStyles())&&(this.shadow&&!this.shadow.affectStroke&&this._removeShadow(e),e.save(),this._setLineDash(e,this.strokeDashArray),e.beginPath(),this._renderTextCommon(e,"strokeText"),e.closePath(),e.restore())},_renderChars:function(e,n,i,o,r,a){var s,l,c,u,h,d=this.getHeightOfLine(a),f=-1!==this.textAlign.indexOf("justify"),p="",g=0,m=this.path,v=!f&&0===this.charSpacing&&this.isEmptyStyles(a)&&!m,y="ltr"===this.direction,b="ltr"===this.direction?1:-1,_=n.canvas.getAttribute("dir");if(n.save(),_!==this.direction&&(n.canvas.setAttribute("dir",y?"ltr":"rtl"),n.direction=y?"ltr":"rtl",n.textAlign=y?"left":"right"),r-=d*this._fontSizeFraction/this.lineHeight,v)return this._renderChar(e,n,a,0,i.join(""),o,r,d),void n.restore();for(var k=0,w=i.length-1;k<=w;k++)u=k===w||this.charSpacing||m,p+=i[k],c=this.__charBounds[a][k],0===g?(o+=b*(c.kernedWidth-c.width),g+=c.width):g+=c.kernedWidth,f&&!u&&this._reSpaceAndTab.test(i[k])&&(u=!0),u||(s=s||this.getCompleteStyleDeclaration(a,k),l=this.getCompleteStyleDeclaration(a,k+1),u=t.util.hasStyleChanged(s,l,!1)),u&&(m?(n.save(),n.translate(c.renderLeft,c.renderTop),n.rotate(c.angle),this._renderChar(e,n,a,k,p,-g/2,0,d),n.restore()):(h=o,this._renderChar(e,n,a,k,p,h,r,d)),p="",s=l,o+=b*g,g=0);n.restore()},_applyPatternGradientTransformText:function(e){var n,i=t.util.createCanvasElement(),o=this.width+this.strokeWidth,r=this.height+this.strokeWidth;return i.width=o,i.height=r,(n=i.getContext("2d")).beginPath(),n.moveTo(0,0),n.lineTo(o,0),n.lineTo(o,r),n.lineTo(0,r),n.closePath(),n.translate(o/2,r/2),n.fillStyle=e.toLive(n),this._applyPatternGradientTransform(n,e),n.fill(),n.createPattern(i,"no-repeat")},handleFiller:function(e,t,n){var i,o;return n.toLive?"percentage"===n.gradientUnits||n.gradientTransform||n.patternTransform?(i=-this.width/2,o=-this.height/2,e.translate(i,o),e[t]=this._applyPatternGradientTransformText(n),{offsetX:i,offsetY:o}):(e[t]=n.toLive(e,this),this._applyPatternGradientTransform(e,n)):(e[t]=n,{offsetX:0,offsetY:0})},_setStrokeStyles:function(e,t){return e.lineWidth=t.strokeWidth,e.lineCap=this.strokeLineCap,e.lineDashOffset=this.strokeDashOffset,e.lineJoin=this.strokeLineJoin,e.miterLimit=this.strokeMiterLimit,this.handleFiller(e,"strokeStyle",t.stroke)},_setFillStyles:function(e,t){return this.handleFiller(e,"fillStyle",t.fill)},_renderChar:function(e,t,n,i,o,r,a){var s,l,c=this._getStyleDeclaration(n,i),u=this.getCompleteStyleDeclaration(n,i),h="fillText"===e&&u.fill,d="strokeText"===e&&u.stroke&&u.strokeWidth;(d||h)&&(t.save(),h&&(s=this._setFillStyles(t,u)),d&&(l=this._setStrokeStyles(t,u)),t.font=this._getFontDeclaration(u),c&&c.textBackgroundColor&&this._removeShadow(t),c&&c.deltaY&&(a+=c.deltaY),h&&t.fillText(o,r-s.offsetX,a-s.offsetY),d&&t.strokeText(o,r-l.offsetX,a-l.offsetY),t.restore())},setSuperscript:function(e,t){return this._setScript(e,t,this.superscript)},setSubscript:function(e,t){return this._setScript(e,t,this.subscript)},_setScript:function(e,t,n){var i=this.get2DCursorLocation(e,!0),o=this.getValueOfPropertyAt(i.lineIndex,i.charIndex,"fontSize"),r=this.getValueOfPropertyAt(i.lineIndex,i.charIndex,"deltaY"),a={fontSize:o*n.size,deltaY:r+o*n.baseline};return this.setSelectionStyles(a,e,t),this},_getLineLeftOffset:function(e){var t=this.getLineWidth(e),n=this.width-t,i=this.textAlign,o=this.direction,r=0,a=this.isEndOfWrapping(e);return"justify"===i||"justify-center"===i&&!a||"justify-right"===i&&!a||"justify-left"===i&&!a?0:("center"===i&&(r=n/2),"right"===i&&(r=n),"justify-center"===i&&(r=n/2),"justify-right"===i&&(r=n),"rtl"===o&&(r-=n),r)},_clearCache:function(){this.__lineWidths=[],this.__lineHeights=[],this.__charBounds=[]},_shouldClearDimensionCache:function(){var e=this._forceClearCache;return e||(e=this.hasStateChanged("_dimensionAffectingProps")),e&&(this.dirty=!0,this._forceClearCache=!1),e},getLineWidth:function(e){if(void 0!==this.__lineWidths[e])return this.__lineWidths[e];var t=this.measureLine(e).width;return this.__lineWidths[e]=t,t},_getWidthOfCharSpacing:function(){return 0!==this.charSpacing?this.fontSize*this.charSpacing/1e3:0},getValueOfPropertyAt:function(e,t,n){var i=this._getStyleDeclaration(e,t);return i&&void 0!==i[n]?i[n]:this[n]},_renderTextDecoration:function(e,t){if(this[t]||this.styleHas(t)){for(var n,i,o,r,a,s,l,c,u,h,d,f,p,g,m,v,y=this._getLeftOffset(),b=this._getTopOffset(),_=this.path,k=this._getWidthOfCharSpacing(),w=this.offsets[t],S=0,C=this._textLines.length;S<C;S++)if(n=this.getHeightOfLine(S),this[t]||this.styleHas(t,S)){l=this._textLines[S],g=n/this.lineHeight,r=this._getLineLeftOffset(S),h=0,d=0,c=this.getValueOfPropertyAt(S,0,t),v=this.getValueOfPropertyAt(S,0,"fill"),u=b+g*(1-this._fontSizeFraction),i=this.getHeightOfChar(S,0),a=this.getValueOfPropertyAt(S,0,"deltaY");for(var E=0,T=l.length;E<T;E++)if(f=this.__charBounds[S][E],p=this.getValueOfPropertyAt(S,E,t),m=this.getValueOfPropertyAt(S,E,"fill"),o=this.getHeightOfChar(S,E),s=this.getValueOfPropertyAt(S,E,"deltaY"),_&&p&&m)e.save(),e.fillStyle=v,e.translate(f.renderLeft,f.renderTop),e.rotate(f.angle),e.fillRect(-f.kernedWidth/2,w*o+s,f.kernedWidth,this.fontSize/15),e.restore();else if((p!==c||m!==v||o!==i||s!==a)&&d>0){var O=y+r+h;"rtl"===this.direction&&(O=this.width-O-d),c&&v&&(e.fillStyle=v,e.fillRect(O,u+w*i+a,d,this.fontSize/15)),h=f.left,d=f.width,c=p,v=m,i=o,a=s}else d+=f.kernedWidth;O=y+r+h;"rtl"===this.direction&&(O=this.width-O-d),e.fillStyle=m,p&&m&&e.fillRect(O,u+w*i+a,d-k,this.fontSize/15),b+=n}else b+=n;this._removeShadow(e)}},_getFontDeclaration:function(e,n){var i=e||this,o=this.fontFamily,r=t.Text.genericFonts.indexOf(o.toLowerCase())>-1,a=void 0===o||o.indexOf("\'")>-1||o.indexOf(",")>-1||o.indexOf(\'"\')>-1||r?i.fontFamily:\'"\'+i.fontFamily+\'"\';return[t.isLikelyNode?i.fontWeight:i.fontStyle,t.isLikelyNode?i.fontStyle:i.fontWeight,n?this.CACHE_FONT_SIZE+"px":i.fontSize+"px",a].join(" ")},render:function(e){this.visible&&(this.canvas&&this.canvas.skipOffscreen&&!this.group&&!this.isOnScreen()||(this._shouldClearDimensionCache()&&this.initDimensions(),this.callSuper("render",e)))},_splitTextIntoLines:function(e){for(var n=e.split(this._reNewline),i=new Array(n.length),o=["\\n"],r=[],a=0;a<n.length;a++)i[a]=t.util.string.graphemeSplit(n[a]),r=r.concat(i[a],o);return r.pop(),{_unwrappedLines:i,lines:n,graphemeText:r,graphemeLines:i}},toObject:function(e){var n=i.concat(e),o=this.callSuper("toObject",n);return o.styles=t.util.stylesToArray(this.styles,this.text),o.path&&(o.path=this.path.toObject()),o},set:function(e,t){this.callSuper("set",e,t);var n=!1,i=!1;if("object"===_typeof(e))for(var o in e)"path"===o&&this.setPathInfo(),n=n||-1!==this._dimensionAffectingProps.indexOf(o),i=i||"path"===o;else n=-1!==this._dimensionAffectingProps.indexOf(e),i="path"===e;return i&&this.setPathInfo(),n&&(this.initDimensions(),this.setCoords()),this},complexity:function(){return 1}}),t.Text.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("x y dx dy font-family font-style font-weight font-size letter-spacing text-decoration text-anchor".split(" ")),t.Text.DEFAULT_SVG_FONT_SIZE=16,t.Text.fromElement=function(e,i,o){if(!e)return i(null);var r=t.parseAttributes(e,t.Text.ATTRIBUTE_NAMES),a=r.textAnchor||"left";if((o=t.util.object.extend(o?n(o):{},r)).top=o.top||0,o.left=o.left||0,r.textDecoration){var s=r.textDecoration;-1!==s.indexOf("underline")&&(o.underline=!0),-1!==s.indexOf("overline")&&(o.overline=!0),-1!==s.indexOf("line-through")&&(o.linethrough=!0),delete o.textDecoration}"dx"in r&&(o.left+=r.dx),"dy"in r&&(o.top+=r.dy),"fontSize"in o||(o.fontSize=t.Text.DEFAULT_SVG_FONT_SIZE);var l="";"textContent"in e?l=e.textContent:"firstChild"in e&&null!==e.firstChild&&"data"in e.firstChild&&null!==e.firstChild.data&&(l=e.firstChild.data),l=l.replace(/^\\s+|\\s+$|\\n+/g,"").replace(/\\s+/g," ");var c=o.strokeWidth;o.strokeWidth=0;var u=new t.Text(l,o),h=u.getScaledHeight()/u.height,d=((u.height+u.strokeWidth)*u.lineHeight-u.height)*h,f=u.getScaledHeight()+d,p=0;"center"===a&&(p=u.getScaledWidth()/2),"right"===a&&(p=u.getScaledWidth()),u.set({left:u.left-p,top:u.top-(f-u.fontSize*(.07+u._fontSizeFraction))/u.lineHeight,strokeWidth:void 0!==c?c:1}),i(u)},t.Text.fromObject=function(e,i){var o=n(e),r=e.path;return delete o.path,t.Object._fromObject("Text",o,(function(n){n.styles=t.util.stylesFromArray(e.styles,e.text),r?t.Object._fromObject("Path",r,(function(e){n.set("path",e),i(n)}),"path"):i(n)}),"text")},t.Text.genericFonts=["sans-serif","serif","cursive","fantasy","monospace"],t.util.createAccessors&&t.util.createAccessors(t.Text)}}(e),m.util.object.extend(m.Text.prototype,{isEmptyStyles:function(e){if(!this.styles)return!0;if(void 0!==e&&!this.styles[e])return!0;var t=void 0===e?this.styles:{line:this.styles[e]};for(var n in t)for(var i in t[n])for(var o in t[n][i])return!1;return!0},styleHas:function(e,t){if(!this.styles||!e||""===e)return!1;if(void 0!==t&&!this.styles[t])return!1;var n=void 0===t?this.styles:{0:this.styles[t]};for(var i in n)for(var o in n[i])if(void 0!==n[i][o][e])return!0;return!1},cleanStyle:function(e){if(!this.styles||!e||""===e)return!1;var t,n,i=this.styles,o=0,r=!0,a=0;for(var s in i){for(var l in t=0,i[s]){var c;o++,(c=i[s][l]).hasOwnProperty(e)?(n?c[e]!==n&&(r=!1):n=c[e],c[e]===this[e]&&delete c[e]):r=!1,0!==Object.keys(c).length?t++:delete i[s][l]}0===t&&delete i[s]}for(var u=0;u<this._textLines.length;u++)a+=this._textLines[u].length;r&&o===a&&(this[e]=n,this.removeStyle(e))},removeStyle:function(e){if(this.styles&&e&&""!==e){var t,n,i,o=this.styles;for(n in o){for(i in t=o[n])delete t[i][e],0===Object.keys(t[i]).length&&delete t[i];0===Object.keys(t).length&&delete o[n]}}},_extendStyles:function(e,t){var n=this.get2DCursorLocation(e);this._getLineStyle(n.lineIndex)||this._setLineStyle(n.lineIndex),this._getStyleDeclaration(n.lineIndex,n.charIndex)||this._setStyleDeclaration(n.lineIndex,n.charIndex,{}),m.util.object.extend(this._getStyleDeclaration(n.lineIndex,n.charIndex),t)},get2DCursorLocation:function(e,t){void 0===e&&(e=this.selectionStart);for(var n=t?this._unwrappedTextLines:this._textLines,i=n.length,o=0;o<i;o++){if(e<=n[o].length)return{lineIndex:o,charIndex:e};e-=n[o].length+this.missingNewlineOffset(o)}return{lineIndex:o-1,charIndex:n[o-1].length<e?n[o-1].length:e}},getSelectionStyles:function(e,t,n){void 0===e&&(e=this.selectionStart||0),void 0===t&&(t=this.selectionEnd||e);for(var i=[],o=e;o<t;o++)i.push(this.getStyleAtPosition(o,n));return i},getStyleAtPosition:function(e,t){var n=this.get2DCursorLocation(e);return(t?this.getCompleteStyleDeclaration(n.lineIndex,n.charIndex):this._getStyleDeclaration(n.lineIndex,n.charIndex))||{}},setSelectionStyles:function(e,t,n){void 0===t&&(t=this.selectionStart||0),void 0===n&&(n=this.selectionEnd||t);for(var i=t;i<n;i++)this._extendStyles(i,e);return this._forceClearCache=!0,this},_getStyleDeclaration:function(e,t){var n=this.styles&&this.styles[e];return n?n[t]:null},getCompleteStyleDeclaration:function(e,t){for(var n,i=this._getStyleDeclaration(e,t)||{},o={},r=0;r<this._styleProperties.length;r++)o[n=this._styleProperties[r]]=void 0===i[n]?this[n]:i[n];return o},_setStyleDeclaration:function(e,t,n){this.styles[e][t]=n},_deleteStyleDeclaration:function(e,t){delete this.styles[e][t]},_getLineStyle:function(e){return!!this.styles[e]},_setLineStyle:function(e){this.styles[e]={}},_deleteLineStyle:function(e){delete this.styles[e]}}),function(){function e(e){e.textDecoration&&(e.textDecoration.indexOf("underline")>-1&&(e.underline=!0),e.textDecoration.indexOf("line-through")>-1&&(e.linethrough=!0),e.textDecoration.indexOf("overline")>-1&&(e.overline=!0),delete e.textDecoration)}m.IText=m.util.createClass(m.Text,m.Observable,{type:"i-text",selectionStart:0,selectionEnd:0,selectionColor:"rgba(17,119,255,0.3)",isEditing:!1,editable:!0,editingBorderColor:"rgba(102,153,255,0.25)",cursorWidth:2,cursorColor:"",cursorDelay:1e3,cursorDuration:600,caching:!0,hiddenTextareaContainer:null,_reSpace:/\\s|\\n/,_currentCursorOpacity:0,_selectionDirection:null,_abortCursorAnimation:!1,__widthOfSpace:[],inCompositionMode:!1,initialize:function(e,t){this.callSuper("initialize",e,t),this.initBehavior()},setSelectionStart:function(e){e=Math.max(e,0),this._updateAndFire("selectionStart",e)},setSelectionEnd:function(e){e=Math.min(e,this.text.length),this._updateAndFire("selectionEnd",e)},_updateAndFire:function(e,t){this[e]!==t&&(this._fireSelectionChanged(),this[e]=t),this._updateTextarea()},_fireSelectionChanged:function(){this.fire("selection:changed"),this.canvas&&this.canvas.fire("text:selection:changed",{target:this})},initDimensions:function(){this.isEditing&&this.initDelayedCursor(),this.clearContextTop(),this.callSuper("initDimensions")},render:function(e){this.clearContextTop(),this.callSuper("render",e),this.cursorOffsetCache={},this.renderCursorOrSelection()},_render:function(e){this.callSuper("_render",e)},clearContextTop:function(e){if(this.isEditing&&this.canvas&&this.canvas.contextTop){var t=this.canvas.contextTop,n=this.canvas.viewportTransform;t.save(),t.transform(n[0],n[1],n[2],n[3],n[4],n[5]),this.transform(t),this._clearTextArea(t),e||t.restore()}},renderCursorOrSelection:function(){if(this.isEditing&&this.canvas&&this.canvas.contextTop){var e=this._getCursorBoundaries(),t=this.canvas.contextTop;this.clearContextTop(!0),this.selectionStart===this.selectionEnd?this.renderCursor(e,t):this.renderSelection(e,t),t.restore()}},_clearTextArea:function(e){var t=this.width+4,n=this.height+4;e.clearRect(-t/2,-n/2,t,n)},_getCursorBoundaries:function(e){void 0===e&&(e=this.selectionStart);var t=this._getLeftOffset(),n=this._getTopOffset(),i=this._getCursorBoundariesOffsets(e);return{left:t,top:n,leftOffset:i.left,topOffset:i.top}},_getCursorBoundariesOffsets:function(e){if(this.cursorOffsetCache&&"top"in this.cursorOffsetCache)return this.cursorOffsetCache;var t,n,i,o,r=0,a=0,s=this.get2DCursorLocation(e);i=s.charIndex,n=s.lineIndex;for(var l=0;l<n;l++)r+=this.getHeightOfLine(l);t=this._getLineLeftOffset(n);var c=this.__charBounds[n][i];return c&&(a=c.left),0!==this.charSpacing&&i===this._textLines[n].length&&(a-=this._getWidthOfCharSpacing()),o={top:r,left:t+(a>0?a:0)},"rtl"===this.direction&&(o.left*=-1),this.cursorOffsetCache=o,this.cursorOffsetCache},renderCursor:function(e,t){var n=this.get2DCursorLocation(),i=n.lineIndex,o=n.charIndex>0?n.charIndex-1:0,r=this.getValueOfPropertyAt(i,o,"fontSize"),a=this.scaleX*this.canvas.getZoom(),s=this.cursorWidth/a,l=e.topOffset,c=this.getValueOfPropertyAt(i,o,"deltaY");l+=(1-this._fontSizeFraction)*this.getHeightOfLine(i)/this.lineHeight-r*(1-this._fontSizeFraction),this.inCompositionMode&&this.renderSelection(e,t),t.fillStyle=this.cursorColor||this.getValueOfPropertyAt(i,o,"fill"),t.globalAlpha=this.__isMousedown?1:this._currentCursorOpacity,t.fillRect(e.left+e.leftOffset-s/2,l+e.top+c,s,r)},renderSelection:function(e,t){for(var n=this.inCompositionMode?this.hiddenTextarea.selectionStart:this.selectionStart,i=this.inCompositionMode?this.hiddenTextarea.selectionEnd:this.selectionEnd,o=-1!==this.textAlign.indexOf("justify"),r=this.get2DCursorLocation(n),a=this.get2DCursorLocation(i),s=r.lineIndex,l=a.lineIndex,c=r.charIndex<0?0:r.charIndex,u=a.charIndex<0?0:a.charIndex,h=s;h<=l;h++){var d,f=this._getLineLeftOffset(h)||0,p=this.getHeightOfLine(h),g=0,m=0;if(h===s&&(g=this.__charBounds[s][c].left),h>=s&&h<l)m=o&&!this.isEndOfWrapping(h)?this.width:this.getLineWidth(h)||5;else if(h===l)if(0===u)m=this.__charBounds[l][u].left;else{var v=this._getWidthOfCharSpacing();m=this.__charBounds[l][u-1].left+this.__charBounds[l][u-1].width-v}d=p,(this.lineHeight<1||h===l&&this.lineHeight>1)&&(p/=this.lineHeight);var y=e.left+f+g,b=m-g,_=p,k=0;this.inCompositionMode?(t.fillStyle=this.compositionColor||"black",_=1,k=p):t.fillStyle=this.selectionColor,"rtl"===this.direction&&(y=this.width-y-b),t.fillRect(y,e.top+e.topOffset+k,b,_),e.topOffset+=d}},getCurrentCharFontSize:function(){var e=this._getCurrentCharIndex();return this.getValueOfPropertyAt(e.l,e.c,"fontSize")},getCurrentCharColor:function(){var e=this._getCurrentCharIndex();return this.getValueOfPropertyAt(e.l,e.c,"fill")},_getCurrentCharIndex:function(){var e=this.get2DCursorLocation(this.selectionStart,!0),t=e.charIndex>0?e.charIndex-1:0;return{l:e.lineIndex,c:t}}}),m.IText.fromObject=function(t,n){var i=m.util.stylesFromArray(t.styles,t.text),o=Object.assign({},t,{styles:i});if(e(o),o.styles)for(var r in o.styles)for(var a in o.styles[r])e(o.styles[r][a]);m.Object._fromObject("IText",o,n,"text")}}(),g=m.util.object.clone,m.util.object.extend(m.IText.prototype,{initBehavior:function(){this.initAddedHandler(),this.initRemovedHandler(),this.initCursorSelectionHandlers(),this.initDoubleClickSimulation(),this.mouseMoveHandler=this.mouseMoveHandler.bind(this)},onDeselect:function(){this.isEditing&&this.exitEditing(),this.selected=!1},initAddedHandler:function(){var e=this;this.on("added",(function(){var t=e.canvas;t&&(t._hasITextHandlers||(t._hasITextHandlers=!0,e._initCanvasHandlers(t)),t._iTextInstances=t._iTextInstances||[],t._iTextInstances.push(e))}))},initRemovedHandler:function(){var e=this;this.on("removed",(function(){var t=e.canvas;t&&(t._iTextInstances=t._iTextInstances||[],m.util.removeFromArray(t._iTextInstances,e),0===t._iTextInstances.length&&(t._hasITextHandlers=!1,e._removeCanvasHandlers(t)))}))},_initCanvasHandlers:function(e){e._mouseUpITextHandler=function(){e._iTextInstances&&e._iTextInstances.forEach((function(e){e.__isMousedown=!1}))},e.on("mouse:up",e._mouseUpITextHandler)},_removeCanvasHandlers:function(e){e.off("mouse:up",e._mouseUpITextHandler)},_tick:function(){this._currentTickState=this._animateCursor(this,1,this.cursorDuration,"_onTickComplete")},_animateCursor:function(e,t,n,i){var o;return o={isAborted:!1,abort:function(){this.isAborted=!0}},e.animate("_currentCursorOpacity",t,{duration:n,onComplete:function(){o.isAborted||e[i]()},onChange:function(){e.canvas&&e.selectionStart===e.selectionEnd&&e.renderCursorOrSelection()},abort:function(){return o.isAborted}}),o},_onTickComplete:function(){var e=this;this._cursorTimeout1&&clearTimeout(this._cursorTimeout1),this._cursorTimeout1=setTimeout((function(){e._currentTickCompleteState=e._animateCursor(e,0,this.cursorDuration/2,"_tick")}),100)},initDelayedCursor:function(e){var t=this,n=e?0:this.cursorDelay;this.abortCursorAnimation(),this._currentCursorOpacity=1,this._cursorTimeout2=setTimeout((function(){t._tick()}),n)},abortCursorAnimation:function(){var e=this._currentTickState||this._currentTickCompleteState,t=this.canvas;this._currentTickState&&this._currentTickState.abort(),this._currentTickCompleteState&&this._currentTickCompleteState.abort(),clearTimeout(this._cursorTimeout1),clearTimeout(this._cursorTimeout2),this._currentCursorOpacity=0,e&&t&&t.clearContext(t.contextTop||t.contextContainer)},selectAll:function(){return this.selectionStart=0,this.selectionEnd=this._text.length,this._fireSelectionChanged(),this._updateTextarea(),this},getSelectedText:function(){return this._text.slice(this.selectionStart,this.selectionEnd).join("")},findWordBoundaryLeft:function(e){var t=0,n=e-1;if(this._reSpace.test(this._text[n]))for(;this._reSpace.test(this._text[n]);)t++,n--;for(;/\\S/.test(this._text[n])&&n>-1;)t++,n--;return e-t},findWordBoundaryRight:function(e){var t=0,n=e;if(this._reSpace.test(this._text[n]))for(;this._reSpace.test(this._text[n]);)t++,n++;for(;/\\S/.test(this._text[n])&&n<this._text.length;)t++,n++;return e+t},findLineBoundaryLeft:function(e){for(var t=0,n=e-1;!/\\n/.test(this._text[n])&&n>-1;)t++,n--;return e-t},findLineBoundaryRight:function(e){for(var t=0,n=e;!/\\n/.test(this._text[n])&&n<this._text.length;)t++,n++;return e+t},searchWordBoundary:function(e,t){for(var n=this._text,i=this._reSpace.test(n[e])?e-1:e,o=n[i],r=m.reNonWord;!r.test(o)&&i>0&&i<n.length;)o=n[i+=t];return r.test(o)&&(i+=1===t?0:1),i},selectWord:function(e){e=e||this.selectionStart;var t=this.searchWordBoundary(e,-1),n=this.searchWordBoundary(e,1);this.selectionStart=t,this.selectionEnd=n,this._fireSelectionChanged(),this._updateTextarea(),this.renderCursorOrSelection()},selectLine:function(e){e=e||this.selectionStart;var t=this.findLineBoundaryLeft(e),n=this.findLineBoundaryRight(e);return this.selectionStart=t,this.selectionEnd=n,this._fireSelectionChanged(),this._updateTextarea(),this},enterEditing:function(e){if(!this.isEditing&&this.editable)return this.canvas&&(this.canvas.calcOffset(),this.exitEditingOnOthers(this.canvas)),this.isEditing=!0,this.initHiddenTextarea(e),this.hiddenTextarea.focus(),this.hiddenTextarea.value=this.text,this._updateTextarea(),this._saveEditingProps(),this._setEditingProps(),this._textBeforeEdit=this.text,this._tick(),this.fire("editing:entered"),this._fireSelectionChanged(),this.canvas?(this.canvas.fire("text:editing:entered",{target:this}),this.initMouseMoveHandler(),this.canvas.requestRenderAll(),this):this},exitEditingOnOthers:function(e){e._iTextInstances&&e._iTextInstances.forEach((function(e){e.selected=!1,e.isEditing&&e.exitEditing()}))},initMouseMoveHandler:function(){this.canvas.on("mouse:move",this.mouseMoveHandler)},mouseMoveHandler:function(e){if(this.__isMousedown&&this.isEditing){document.activeElement!==this.hiddenTextarea&&this.hiddenTextarea.focus();var t=this.getSelectionStartFromPointer(e.e),n=this.selectionStart,i=this.selectionEnd;(t===this.__selectionStartOnMouseDown&&n!==i||n!==t&&i!==t)&&(t>this.__selectionStartOnMouseDown?(this.selectionStart=this.__selectionStartOnMouseDown,this.selectionEnd=t):(this.selectionStart=t,this.selectionEnd=this.__selectionStartOnMouseDown),this.selectionStart===n&&this.selectionEnd===i||(this.restartCursorIfNeeded(),this._fireSelectionChanged(),this._updateTextarea(),this.renderCursorOrSelection()))}},_setEditingProps:function(){this.hoverCursor="text",this.canvas&&(this.canvas.defaultCursor=this.canvas.moveCursor="text"),this.borderColor=this.editingBorderColor,this.hasControls=this.selectable=!1,this.lockMovementX=this.lockMovementY=!0},fromStringToGraphemeSelection:function(e,t,n){var i=n.slice(0,e),o=m.util.string.graphemeSplit(i).length;if(e===t)return{selectionStart:o,selectionEnd:o};var r=n.slice(e,t);return{selectionStart:o,selectionEnd:o+m.util.string.graphemeSplit(r).length}},fromGraphemeToStringSelection:function(e,t,n){var i=n.slice(0,e).join("").length;return e===t?{selectionStart:i,selectionEnd:i}:{selectionStart:i,selectionEnd:i+n.slice(e,t).join("").length}},_updateTextarea:function(){if(this.cursorOffsetCache={},this.hiddenTextarea){if(!this.inCompositionMode){var e=this.fromGraphemeToStringSelection(this.selectionStart,this.selectionEnd,this._text);this.hiddenTextarea.selectionStart=e.selectionStart,this.hiddenTextarea.selectionEnd=e.selectionEnd}this.updateTextareaPosition()}},updateFromTextArea:function(){if(this.hiddenTextarea){this.cursorOffsetCache={},this.text=this.hiddenTextarea.value,this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords());var e=this.fromStringToGraphemeSelection(this.hiddenTextarea.selectionStart,this.hiddenTextarea.selectionEnd,this.hiddenTextarea.value);this.selectionEnd=this.selectionStart=e.selectionEnd,this.inCompositionMode||(this.selectionStart=e.selectionStart),this.updateTextareaPosition()}},updateTextareaPosition:function(){if(this.selectionStart===this.selectionEnd){var e=this._calcTextareaPosition();this.hiddenTextarea.style.left=e.left,this.hiddenTextarea.style.top=e.top}},_calcTextareaPosition:function(){if(!this.canvas)return{x:1,y:1};var e=this.inCompositionMode?this.compositionStart:this.selectionStart,t=this._getCursorBoundaries(e),n=this.get2DCursorLocation(e),i=n.lineIndex,o=n.charIndex,r=this.getValueOfPropertyAt(i,o,"fontSize")*this.lineHeight,a=t.leftOffset,s=this.calcTransformMatrix(),l={x:t.left+a,y:t.top+t.topOffset+r},c=this.canvas.getRetinaScaling(),u=this.canvas.upperCanvasEl,h=u.width/c,d=u.height/c,f=h-r,p=d-r,g=u.clientWidth/h,v=u.clientHeight/d;return l=m.util.transformPoint(l,s),(l=m.util.transformPoint(l,this.canvas.viewportTransform)).x*=g,l.y*=v,l.x<0&&(l.x=0),l.x>f&&(l.x=f),l.y<0&&(l.y=0),l.y>p&&(l.y=p),l.x+=this.canvas._offset.left,l.y+=this.canvas._offset.top,{left:l.x+"px",top:l.y+"px",fontSize:r+"px",charHeight:r}},_saveEditingProps:function(){this._savedProps={hasControls:this.hasControls,borderColor:this.borderColor,lockMovementX:this.lockMovementX,lockMovementY:this.lockMovementY,hoverCursor:this.hoverCursor,selectable:this.selectable,defaultCursor:this.canvas&&this.canvas.defaultCursor,moveCursor:this.canvas&&this.canvas.moveCursor}},_restoreEditingProps:function(){this._savedProps&&(this.hoverCursor=this._savedProps.hoverCursor,this.hasControls=this._savedProps.hasControls,this.borderColor=this._savedProps.borderColor,this.selectable=this._savedProps.selectable,this.lockMovementX=this._savedProps.lockMovementX,this.lockMovementY=this._savedProps.lockMovementY,this.canvas&&(this.canvas.defaultCursor=this._savedProps.defaultCursor,this.canvas.moveCursor=this._savedProps.moveCursor))},exitEditing:function(){var e=this._textBeforeEdit!==this.text,t=this.hiddenTextarea;return this.selected=!1,this.isEditing=!1,this.selectionEnd=this.selectionStart,t&&(t.blur&&t.blur(),t.parentNode&&t.parentNode.removeChild(t)),this.hiddenTextarea=null,this.abortCursorAnimation(),this._restoreEditingProps(),this._currentCursorOpacity=0,this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this.fire("editing:exited"),e&&this.fire("modified"),this.canvas&&(this.canvas.off("mouse:move",this.mouseMoveHandler),this.canvas.fire("text:editing:exited",{target:this}),e&&this.canvas.fire("object:modified",{target:this})),this},_removeExtraneousStyles:function(){for(var e in this.styles)this._textLines[e]||delete this.styles[e]},removeStyleFromTo:function(e,t){var n,i,o=this.get2DCursorLocation(e,!0),r=this.get2DCursorLocation(t,!0),a=o.lineIndex,s=o.charIndex,l=r.lineIndex,c=r.charIndex;if(a!==l){if(this.styles[a])for(n=s;n<this._unwrappedTextLines[a].length;n++)delete this.styles[a][n];if(this.styles[l])for(n=c;n<this._unwrappedTextLines[l].length;n++)(i=this.styles[l][n])&&(this.styles[a]||(this.styles[a]={}),this.styles[a][s+n-c]=i);for(n=a+1;n<=l;n++)delete this.styles[n];this.shiftLineStyles(l,a-l)}else if(this.styles[a]){i=this.styles[a];var u,h,d=c-s;for(n=s;n<c;n++)delete i[n];for(h in this.styles[a])(u=parseInt(h,10))>=c&&(i[u-d]=i[h],delete i[h])}},shiftLineStyles:function(e,t){var n=g(this.styles);for(var i in this.styles){var o=parseInt(i,10);o>e&&(this.styles[o+t]=n[o],n[o-t]||delete this.styles[o])}},restartCursorIfNeeded:function(){this._currentTickState&&!this._currentTickState.isAborted&&this._currentTickCompleteState&&!this._currentTickCompleteState.isAborted||this.initDelayedCursor()},insertNewlineStyleObject:function(e,t,n,i){var o,r={},a=!1,s=this._unwrappedTextLines[e].length===t;for(var l in n||(n=1),this.shiftLineStyles(e,n),this.styles[e]&&(o=this.styles[e][0===t?t:t-1]),this.styles[e]){var c=parseInt(l,10);c>=t&&(a=!0,r[c-t]=this.styles[e][l],s&&0===t||delete this.styles[e][l])}var u=!1;for(a&&!s&&(this.styles[e+n]=r,u=!0),u&&n--;n>0;)i&&i[n-1]?this.styles[e+n]={0:g(i[n-1])}:o?this.styles[e+n]={0:g(o)}:delete this.styles[e+n],n--;this._forceClearCache=!0},insertCharStyleObject:function(e,t,n,i){this.styles||(this.styles={});var o=this.styles[e],r=o?g(o):{};for(var a in n||(n=1),r){var s=parseInt(a,10);s>=t&&(o[s+n]=r[s],r[s-n]||delete o[s])}if(this._forceClearCache=!0,i)for(;n--;)Object.keys(i[n]).length&&(this.styles[e]||(this.styles[e]={}),this.styles[e][t+n]=g(i[n]));else if(o)for(var l=o[t?t-1:1];l&&n--;)this.styles[e][t+n]=g(l)},insertNewStyleBlock:function(e,t,n){for(var i=this.get2DCursorLocation(t,!0),o=[0],r=0,a=0;a<e.length;a++)"\\n"===e[a]?o[++r]=0:o[r]++;for(o[0]>0&&(this.insertCharStyleObject(i.lineIndex,i.charIndex,o[0],n),n=n&&n.slice(o[0]+1)),r&&this.insertNewlineStyleObject(i.lineIndex,i.charIndex+o[0],r),a=1;a<r;a++)o[a]>0?this.insertCharStyleObject(i.lineIndex+a,0,o[a],n):n&&this.styles[i.lineIndex+a]&&n[0]&&(this.styles[i.lineIndex+a][0]=n[0]),n=n&&n.slice(o[a]+1);o[a]>0&&this.insertCharStyleObject(i.lineIndex+a,0,o[a],n)},setSelectionStartEndWithShift:function(e,t,n){n<=e?(t===e?this._selectionDirection="left":"right"===this._selectionDirection&&(this._selectionDirection="left",this.selectionEnd=e),this.selectionStart=n):n>e&&n<t?"right"===this._selectionDirection?this.selectionEnd=n:this.selectionStart=n:(t===e?this._selectionDirection="right":"left"===this._selectionDirection&&(this._selectionDirection="right",this.selectionStart=t),this.selectionEnd=n)},setSelectionInBoundaries:function(){var e=this.text.length;this.selectionStart>e?this.selectionStart=e:this.selectionStart<0&&(this.selectionStart=0),this.selectionEnd>e?this.selectionEnd=e:this.selectionEnd<0&&(this.selectionEnd=0)}}),m.util.object.extend(m.IText.prototype,{initDoubleClickSimulation:function(){this.__lastClickTime=+new Date,this.__lastLastClickTime=+new Date,this.__lastPointer={},this.on("mousedown",this.onMouseDown)},onMouseDown:function(e){if(this.canvas){this.__newClickTime=+new Date;var t=e.pointer;this.isTripleClick(t)&&(this.fire("tripleclick",e),this._stopEvent(e.e)),this.__lastLastClickTime=this.__lastClickTime,this.__lastClickTime=this.__newClickTime,this.__lastPointer=t,this.__lastIsEditing=this.isEditing,this.__lastSelected=this.selected}},isTripleClick:function(e){return this.__newClickTime-this.__lastClickTime<500&&this.__lastClickTime-this.__lastLastClickTime<500&&this.__lastPointer.x===e.x&&this.__lastPointer.y===e.y},_stopEvent:function(e){e.preventDefault&&e.preventDefault(),e.stopPropagation&&e.stopPropagation()},initCursorSelectionHandlers:function(){this.initMousedownHandler(),this.initMouseupHandler(),this.initClicks()},doubleClickHandler:function(e){this.isEditing&&this.selectWord(this.getSelectionStartFromPointer(e.e))},tripleClickHandler:function(e){this.isEditing&&this.selectLine(this.getSelectionStartFromPointer(e.e))},initClicks:function(){this.on("mousedblclick",this.doubleClickHandler),this.on("tripleclick",this.tripleClickHandler)},_mouseDownHandler:function(e){!this.canvas||!this.editable||e.e.button&&1!==e.e.button||(this.__isMousedown=!0,this.selected&&(this.inCompositionMode=!1,this.setCursorByClick(e.e)),this.isEditing&&(this.__selectionStartOnMouseDown=this.selectionStart,this.selectionStart===this.selectionEnd&&this.abortCursorAnimation(),this.renderCursorOrSelection()))},_mouseDownHandlerBefore:function(e){!this.canvas||!this.editable||e.e.button&&1!==e.e.button||(this.selected=this===this.canvas._activeObject)},initMousedownHandler:function(){this.on("mousedown",this._mouseDownHandler),this.on("mousedown:before",this._mouseDownHandlerBefore)},initMouseupHandler:function(){this.on("mouseup",this.mouseUpHandler)},mouseUpHandler:function(e){if(this.__isMousedown=!1,!(!this.editable||this.group||e.transform&&e.transform.actionPerformed||e.e.button&&1!==e.e.button)){if(this.canvas){var t=this.canvas._activeObject;if(t&&t!==this)return}this.__lastSelected&&!this.__corner?(this.selected=!1,this.__lastSelected=!1,this.enterEditing(e.e),this.selectionStart===this.selectionEnd?this.initDelayedCursor(!0):this.renderCursorOrSelection()):this.selected=!0}},setCursorByClick:function(e){var t=this.getSelectionStartFromPointer(e),n=this.selectionStart,i=this.selectionEnd;e.shiftKey?this.setSelectionStartEndWithShift(n,i,t):(this.selectionStart=t,this.selectionEnd=t),this.isEditing&&(this._fireSelectionChanged(),this._updateTextarea())},getSelectionStartFromPointer:function(e){for(var t,n=this.getLocalPointer(e),i=0,o=0,r=0,a=0,s=0,l=0,c=this._textLines.length;l<c&&r<=n.y;l++)r+=this.getHeightOfLine(l)*this.scaleY,s=l,l>0&&(a+=this._textLines[l-1].length+this.missingNewlineOffset(l-1));o=this._getLineLeftOffset(s)*this.scaleX,t=this._textLines[s],"rtl"===this.direction&&(n.x=this.width*this.scaleX-n.x+o);for(var u=0,h=t.length;u<h&&(i=o,(o+=this.__charBounds[s][u].kernedWidth*this.scaleX)<=n.x);u++)a++;return this._getNewSelectionStartFromOffset(n,i,o,a,h)},_getNewSelectionStartFromOffset:function(e,t,n,i,o){var r=e.x-t,a=n-e.x,s=i+(a>r||a<0?0:1);return this.flipX&&(s=o-s),s>this._text.length&&(s=this._text.length),s}}),m.util.object.extend(m.IText.prototype,{initHiddenTextarea:function(){this.hiddenTextarea=m.document.createElement("textarea"),this.hiddenTextarea.setAttribute("autocapitalize","off"),this.hiddenTextarea.setAttribute("autocorrect","off"),this.hiddenTextarea.setAttribute("autocomplete","off"),this.hiddenTextarea.setAttribute("spellcheck","false"),this.hiddenTextarea.setAttribute("data-fabric-hiddentextarea",""),this.hiddenTextarea.setAttribute("wrap","off");var e=this._calcTextareaPosition();this.hiddenTextarea.style.cssText="position: absolute; top: "+e.top+"; left: "+e.left+"; z-index: -999; opacity: 0; width: 1px; height: 1px; font-size: 1px; padding-top: "+e.fontSize+";",this.hiddenTextareaContainer?this.hiddenTextareaContainer.appendChild(this.hiddenTextarea):m.document.body.appendChild(this.hiddenTextarea),m.util.addListener(this.hiddenTextarea,"keydown",this.onKeyDown.bind(this)),m.util.addListener(this.hiddenTextarea,"keyup",this.onKeyUp.bind(this)),m.util.addListener(this.hiddenTextarea,"input",this.onInput.bind(this)),m.util.addListener(this.hiddenTextarea,"copy",this.copy.bind(this)),m.util.addListener(this.hiddenTextarea,"cut",this.copy.bind(this)),m.util.addListener(this.hiddenTextarea,"paste",this.paste.bind(this)),m.util.addListener(this.hiddenTextarea,"compositionstart",this.onCompositionStart.bind(this)),m.util.addListener(this.hiddenTextarea,"compositionupdate",this.onCompositionUpdate.bind(this)),m.util.addListener(this.hiddenTextarea,"compositionend",this.onCompositionEnd.bind(this)),!this._clickHandlerInitialized&&this.canvas&&(m.util.addListener(this.canvas.upperCanvasEl,"click",this.onClick.bind(this)),this._clickHandlerInitialized=!0)},keysMap:{9:"exitEditing",27:"exitEditing",33:"moveCursorUp",34:"moveCursorDown",35:"moveCursorRight",36:"moveCursorLeft",37:"moveCursorLeft",38:"moveCursorUp",39:"moveCursorRight",40:"moveCursorDown"},keysMapRtl:{9:"exitEditing",27:"exitEditing",33:"moveCursorUp",34:"moveCursorDown",35:"moveCursorLeft",36:"moveCursorRight",37:"moveCursorRight",38:"moveCursorUp",39:"moveCursorLeft",40:"moveCursorDown"},ctrlKeysMapUp:{67:"copy",88:"cut"},ctrlKeysMapDown:{65:"selectAll"},onClick:function(){this.hiddenTextarea&&this.hiddenTextarea.focus()},onKeyDown:function(e){if(this.isEditing){var t="rtl"===this.direction?this.keysMapRtl:this.keysMap;if(e.keyCode in t)this[t[e.keyCode]](e);else{if(!(e.keyCode in this.ctrlKeysMapDown)||!e.ctrlKey&&!e.metaKey)return;this[this.ctrlKeysMapDown[e.keyCode]](e)}e.stopImmediatePropagation(),e.preventDefault(),e.keyCode>=33&&e.keyCode<=40?(this.inCompositionMode=!1,this.clearContextTop(),this.renderCursorOrSelection()):this.canvas&&this.canvas.requestRenderAll()}},onKeyUp:function(e){!this.isEditing||this._copyDone||this.inCompositionMode?this._copyDone=!1:e.keyCode in this.ctrlKeysMapUp&&(e.ctrlKey||e.metaKey)&&(this[this.ctrlKeysMapUp[e.keyCode]](e),e.stopImmediatePropagation(),e.preventDefault(),this.canvas&&this.canvas.requestRenderAll())},onInput:function(e){var t=this.fromPaste;if(this.fromPaste=!1,e&&e.stopPropagation(),this.isEditing){var n,i,o,r,a,s=this._splitTextIntoLines(this.hiddenTextarea.value).graphemeText,l=this._text.length,c=s.length,u=c-l,h=this.selectionStart,d=this.selectionEnd,f=h!==d;if(""===this.hiddenTextarea.value)return this.styles={},this.updateFromTextArea(),this.fire("changed"),void(this.canvas&&(this.canvas.fire("text:changed",{target:this}),this.canvas.requestRenderAll()));var p=this.fromStringToGraphemeSelection(this.hiddenTextarea.selectionStart,this.hiddenTextarea.selectionEnd,this.hiddenTextarea.value),g=h>p.selectionStart;f?(n=this._text.slice(h,d),u+=d-h):c<l&&(n=g?this._text.slice(d+u,d):this._text.slice(h,h-u)),i=s.slice(p.selectionEnd-u,p.selectionEnd),n&&n.length&&(i.length&&(o=this.getSelectionStyles(h,h+1,!1),o=i.map((function(){return o[0]}))),f?(r=h,a=d):g?(r=d-n.length,a=d):(r=d,a=d+n.length),this.removeStyleFromTo(r,a)),i.length&&(t&&i.join("")===m.copiedText&&!m.disableStyleCopyPaste&&(o=m.copiedTextStyle),this.insertNewStyleBlock(i,h,o)),this.updateFromTextArea(),this.fire("changed"),this.canvas&&(this.canvas.fire("text:changed",{target:this}),this.canvas.requestRenderAll())}},onCompositionStart:function(){this.inCompositionMode=!0},onCompositionEnd:function(){this.inCompositionMode=!1},onCompositionUpdate:function(e){this.compositionStart=e.target.selectionStart,this.compositionEnd=e.target.selectionEnd,this.updateTextareaPosition()},copy:function(){this.selectionStart!==this.selectionEnd&&(m.copiedText=this.getSelectedText(),m.disableStyleCopyPaste?m.copiedTextStyle=null:m.copiedTextStyle=this.getSelectionStyles(this.selectionStart,this.selectionEnd,!0),this._copyDone=!0)},paste:function(){this.fromPaste=!0},_getClipboardData:function(e){return e&&e.clipboardData||m.window.clipboardData},_getWidthBeforeCursor:function(e,t){var n,i=this._getLineLeftOffset(e);return t>0&&(i+=(n=this.__charBounds[e][t-1]).left+n.width),i},getDownCursorOffset:function(e,t){var n=this._getSelectionForOffset(e,t),i=this.get2DCursorLocation(n),o=i.lineIndex;if(o===this._textLines.length-1||e.metaKey||34===e.keyCode)return this._text.length-n;var r=i.charIndex,a=this._getWidthBeforeCursor(o,r),s=this._getIndexOnLine(o+1,a);return this._textLines[o].slice(r).length+s+1+this.missingNewlineOffset(o)},_getSelectionForOffset:function(e,t){return e.shiftKey&&this.selectionStart!==this.selectionEnd&&t?this.selectionEnd:this.selectionStart},getUpCursorOffset:function(e,t){var n=this._getSelectionForOffset(e,t),i=this.get2DCursorLocation(n),o=i.lineIndex;if(0===o||e.metaKey||33===e.keyCode)return-n;var r=i.charIndex,a=this._getWidthBeforeCursor(o,r),s=this._getIndexOnLine(o-1,a),l=this._textLines[o].slice(0,r),c=this.missingNewlineOffset(o-1);return-this._textLines[o-1].length+s-l.length+(1-c)},_getIndexOnLine:function(e,t){for(var n,i,o=this._textLines[e],r=this._getLineLeftOffset(e),a=0,s=0,l=o.length;s<l;s++)if((r+=n=this.__charBounds[e][s].width)>t){i=!0;var c=r-n,u=r,h=Math.abs(c-t);a=Math.abs(u-t)<h?s:s-1;break}return i||(a=o.length-1),a},moveCursorDown:function(e){this.selectionStart>=this._text.length&&this.selectionEnd>=this._text.length||this._moveCursorUpOrDown("Down",e)},moveCursorUp:function(e){0===this.selectionStart&&0===this.selectionEnd||this._moveCursorUpOrDown("Up",e)},_moveCursorUpOrDown:function(e,t){var n=this["get"+e+"CursorOffset"](t,"right"===this._selectionDirection);t.shiftKey?this.moveCursorWithShift(n):this.moveCursorWithoutShift(n),0!==n&&(this.setSelectionInBoundaries(),this.abortCursorAnimation(),this._currentCursorOpacity=1,this.initDelayedCursor(),this._fireSelectionChanged(),this._updateTextarea())},moveCursorWithShift:function(e){var t="left"===this._selectionDirection?this.selectionStart+e:this.selectionEnd+e;return this.setSelectionStartEndWithShift(this.selectionStart,this.selectionEnd,t),0!==e},moveCursorWithoutShift:function(e){return e<0?(this.selectionStart+=e,this.selectionEnd=this.selectionStart):(this.selectionEnd+=e,this.selectionStart=this.selectionEnd),0!==e},moveCursorLeft:function(e){0===this.selectionStart&&0===this.selectionEnd||this._moveCursorLeftOrRight("Left",e)},_move:function(e,t,n){var i;if(e.altKey)i=this["findWordBoundary"+n](this[t]);else{if(!e.metaKey&&35!==e.keyCode&&36!==e.keyCode)return this[t]+="Left"===n?-1:1,!0;i=this["findLineBoundary"+n](this[t])}if(void 0!==i&&this[t]!==i)return this[t]=i,!0},_moveLeft:function(e,t){return this._move(e,t,"Left")},_moveRight:function(e,t){return this._move(e,t,"Right")},moveCursorLeftWithoutShift:function(e){var t=!0;return this._selectionDirection="left",this.selectionEnd===this.selectionStart&&0!==this.selectionStart&&(t=this._moveLeft(e,"selectionStart")),this.selectionEnd=this.selectionStart,t},moveCursorLeftWithShift:function(e){return"right"===this._selectionDirection&&this.selectionStart!==this.selectionEnd?this._moveLeft(e,"selectionEnd"):0!==this.selectionStart?(this._selectionDirection="left",this._moveLeft(e,"selectionStart")):void 0},moveCursorRight:function(e){this.selectionStart>=this._text.length&&this.selectionEnd>=this._text.length||this._moveCursorLeftOrRight("Right",e)},_moveCursorLeftOrRight:function(e,t){var n="moveCursor"+e+"With";this._currentCursorOpacity=1,t.shiftKey?n+="Shift":n+="outShift",this[n](t)&&(this.abortCursorAnimation(),this.initDelayedCursor(),this._fireSelectionChanged(),this._updateTextarea())},moveCursorRightWithShift:function(e){return"left"===this._selectionDirection&&this.selectionStart!==this.selectionEnd?this._moveRight(e,"selectionStart"):this.selectionEnd!==this._text.length?(this._selectionDirection="right",this._moveRight(e,"selectionEnd")):void 0},moveCursorRightWithoutShift:function(e){var t=!0;return this._selectionDirection="right",this.selectionStart===this.selectionEnd?(t=this._moveRight(e,"selectionStart"),this.selectionEnd=this.selectionStart):this.selectionStart=this.selectionEnd,t},removeChars:function(e,t){void 0===t&&(t=e+1),this.removeStyleFromTo(e,t),this._text.splice(e,t-e),this.text=this._text.join(""),this.set("dirty",!0),this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this._removeExtraneousStyles()},insertChars:function(e,t,n,i){void 0===i&&(i=n),i>n&&this.removeStyleFromTo(n,i);var o=m.util.string.graphemeSplit(e);this.insertNewStyleBlock(o,n,t),this._text=[].concat(this._text.slice(0,n),o,this._text.slice(i)),this.text=this._text.join(""),this.set("dirty",!0),this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this._removeExtraneousStyles()}}),function(){var e=m.util.toFixed,t=/ +/g;m.util.object.extend(m.Text.prototype,{_toSVG:function(){var e=this._getSVGLeftTopOffsets(),t=this._getSVGTextAndBg(e.textTop,e.textLeft);return this._wrapSVGTextAndBg(t)},toSVG:function(e){return this._createBaseSVGMarkup(this._toSVG(),{reviver:e,noStyle:!0,withShadow:!0})},_getSVGLeftTopOffsets:function(){return{textLeft:-this.width/2,textTop:-this.height/2,lineTop:this.getHeightOfLine(0)}},_wrapSVGTextAndBg:function(e){var t=this.getSvgTextDecoration(this);return[e.textBgRects.join(""),\'\\t\\t<text xml:space="preserve" \',this.fontFamily?\'font-family="\'+this.fontFamily.replace(/"/g,"\'")+\'" \':"",this.fontSize?\'font-size="\'+this.fontSize+\'" \':"",this.fontStyle?\'font-style="\'+this.fontStyle+\'" \':"",this.fontWeight?\'font-weight="\'+this.fontWeight+\'" \':"",t?\'text-decoration="\'+t+\'" \':"",\'style="\',this.getSvgStyles(!0),\'"\',this.addPaintOrder()," >",e.textSpans.join(""),"</text>\\n"]},_getSVGTextAndBg:function(e,t){var n,i=[],o=[],r=e;this._setSVGBg(o);for(var a=0,s=this._textLines.length;a<s;a++)n=this._getLineLeftOffset(a),(this.textBackgroundColor||this.styleHas("textBackgroundColor",a))&&this._setSVGTextLineBg(o,a,t+n,r),this._setSVGTextLineText(i,a,t+n,r),r+=this.getHeightOfLine(a);return{textSpans:i,textBgRects:o}},_createTextCharSpan:function(n,i,o,r){var a=n!==n.trim()||n.match(t),s=this.getSvgSpanStyles(i,a),l=s?\'style="\'+s+\'"\':"",c=i.deltaY,u="",h=m.Object.NUM_FRACTION_DIGITS;return c&&(u=\' dy="\'+e(c,h)+\'" \'),[\'<tspan x="\',e(o,h),\'" y="\',e(r,h),\'" \',u,l,">",m.util.string.escapeXml(n),"</tspan>"].join("")},_setSVGTextLineText:function(e,t,n,i){var o,r,a,s,l,c=this.getHeightOfLine(t),u=-1!==this.textAlign.indexOf("justify"),h="",d=0,f=this._textLines[t];i+=c*(1-this._fontSizeFraction)/this.lineHeight;for(var p=0,g=f.length-1;p<=g;p++)l=p===g||this.charSpacing,h+=f[p],a=this.__charBounds[t][p],0===d?(n+=a.kernedWidth-a.width,d+=a.width):d+=a.kernedWidth,u&&!l&&this._reSpaceAndTab.test(f[p])&&(l=!0),l||(o=o||this.getCompleteStyleDeclaration(t,p),r=this.getCompleteStyleDeclaration(t,p+1),l=m.util.hasStyleChanged(o,r,!0)),l&&(s=this._getStyleDeclaration(t,p)||{},e.push(this._createTextCharSpan(h,s,n,i)),h="",o=r,n+=d,d=0)},_pushTextBgRect:function(t,n,i,o,r,a){var s=m.Object.NUM_FRACTION_DIGITS;t.push("\\t\\t<rect ",this._getFillAttributes(n),\' x="\',e(i,s),\'" y="\',e(o,s),\'" width="\',e(r,s),\'" height="\',e(a,s),\'"></rect>\\n\')},_setSVGTextLineBg:function(e,t,n,i){for(var o,r,a=this._textLines[t],s=this.getHeightOfLine(t)/this.lineHeight,l=0,c=0,u=this.getValueOfPropertyAt(t,0,"textBackgroundColor"),h=0,d=a.length;h<d;h++)o=this.__charBounds[t][h],(r=this.getValueOfPropertyAt(t,h,"textBackgroundColor"))!==u?(u&&this._pushTextBgRect(e,u,n+c,i,l,s),c=o.left,l=o.width,u=r):l+=o.kernedWidth;r&&this._pushTextBgRect(e,r,n+c,i,l,s)},_getFillAttributes:function(e){var t=e&&"string"==typeof e?new m.Color(e):"";return t&&t.getSource()&&1!==t.getAlpha()?\'opacity="\'+t.getAlpha()+\'" fill="\'+t.setAlpha(1).toRgb()+\'"\':\'fill="\'+e+\'"\'},_getSVGLineTopOffset:function(e){for(var t,n=0,i=0;i<e;i++)n+=this.getHeightOfLine(i);return t=this.getHeightOfLine(i),{lineTop:n,offset:(this._fontSizeMult-this._fontSizeFraction)*t/(this.lineHeight*this._fontSizeMult)}},getSvgStyles:function(e){return m.Object.prototype.getSvgStyles.call(this,e)+" white-space: pre;"}})}(),function(e){var t=e.fabric||(e.fabric={});t.Textbox=t.util.createClass(t.IText,t.Observable,{type:"textbox",minWidth:20,dynamicMinWidth:2,__cachedLines:null,lockScalingFlip:!0,noScaleCache:!1,_dimensionAffectingProps:t.Text.prototype._dimensionAffectingProps.concat("width"),_wordJoiners:/[ \\t\\r]/,splitByGrapheme:!1,initDimensions:function(){this.__skipDimension||(this.isEditing&&this.initDelayedCursor(),this.clearContextTop(),this._clearCache(),this.dynamicMinWidth=0,this._styleMap=this._generateStyleMap(this._splitText()),this.dynamicMinWidth>this.width&&this._set("width",this.dynamicMinWidth),-1!==this.textAlign.indexOf("justify")&&this.enlargeSpaces(),this.height=this.calcTextHeight(),this.saveState({propertySet:"_dimensionAffectingProps"}))},_generateStyleMap:function(e){for(var t=0,n=0,i=0,o={},r=0;r<e.graphemeLines.length;r++)"\\n"===e.graphemeText[i]&&r>0?(n=0,i++,t++):!this.splitByGrapheme&&this._reSpaceAndTab.test(e.graphemeText[i])&&r>0&&(n++,i++),o[r]={line:t,offset:n},i+=e.graphemeLines[r].length,n+=e.graphemeLines[r].length;return o},styleHas:function(e,n){if(this._styleMap&&!this.isWrapping){var i=this._styleMap[n];i&&(n=i.line)}return t.Text.prototype.styleHas.call(this,e,n)},isEmptyStyles:function(e){if(!this.styles)return!0;var t,n,i=0,o=!1,r=this._styleMap[e],a=this._styleMap[e+1];for(var s in r&&(e=r.line,i=r.offset),a&&(o=a.line===e,t=a.offset),n=void 0===e?this.styles:{line:this.styles[e]})for(var l in n[s])if(l>=i&&(!o||l<t))for(var c in n[s][l])return!1;return!0},_getStyleDeclaration:function(e,t){if(this._styleMap&&!this.isWrapping){var n=this._styleMap[e];if(!n)return null;e=n.line,t=n.offset+t}return this.callSuper("_getStyleDeclaration",e,t)},_setStyleDeclaration:function(e,t,n){var i=this._styleMap[e];e=i.line,t=i.offset+t,this.styles[e][t]=n},_deleteStyleDeclaration:function(e,t){var n=this._styleMap[e];e=n.line,t=n.offset+t,delete this.styles[e][t]},_getLineStyle:function(e){var t=this._styleMap[e];return!!this.styles[t.line]},_setLineStyle:function(e){var t=this._styleMap[e];this.styles[t.line]={}},_wrapText:function(e,t){var n,i=[];for(this.isWrapping=!0,n=0;n<e.length;n++)i=i.concat(this._wrapLine(e[n],n,t));return this.isWrapping=!1,i},_measureWord:function(e,t,n){var i,o=0;n=n||0;for(var r=0,a=e.length;r<a;r++){o+=this._getGraphemeBox(e[r],t,r+n,i,true).kernedWidth,i=e[r]}return o},_wrapLine:function(e,n,i,o){var r=0,a=this.splitByGrapheme,s=[],l=[],c=a?t.util.string.graphemeSplit(e):e.split(this._wordJoiners),u="",h=0,d=a?"":" ",f=0,p=0,g=0,m=!0,v=this._getWidthOfCharSpacing();o=o||0;0===c.length&&c.push([]),i-=o;for(var y=0;y<c.length;y++)u=a?c[y]:t.util.string.graphemeSplit(c[y]),f=this._measureWord(u,n,h),h+=u.length,(r+=p+f-v)>i&&!m?(s.push(l),l=[],r=f,m=!0):r+=v,m||a||l.push(d),l=l.concat(u),p=a?0:this._measureWord([d],n,h),h++,m=!1,f>g&&(g=f);return y&&s.push(l),g+o>this.dynamicMinWidth&&(this.dynamicMinWidth=g-v+o),s},isEndOfWrapping:function(e){return!this._styleMap[e+1]||this._styleMap[e+1].line!==this._styleMap[e].line},missingNewlineOffset:function(e){return this.splitByGrapheme?this.isEndOfWrapping(e)?1:0:1},_splitTextIntoLines:function(e){for(var n=t.Text.prototype._splitTextIntoLines.call(this,e),i=this._wrapText(n.lines,this.width),o=new Array(i.length),r=0;r<i.length;r++)o[r]=i[r].join("");return n.lines=o,n.graphemeLines=i,n},getMinWidth:function(){return Math.max(this.minWidth,this.dynamicMinWidth)},_removeExtraneousStyles:function(){var e={};for(var t in this._styleMap)this._textLines[t]&&(e[this._styleMap[t].line]=1);for(var t in this.styles)e[t]||delete this.styles[t]},toObject:function(e){return this.callSuper("toObject",["minWidth","splitByGrapheme"].concat(e))}}),t.Textbox.fromObject=function(e,n){var i=t.util.stylesFromArray(e.styles,e.text),o=Object.assign({},e,{styles:i});return t.Object._fromObject("Textbox",o,n,"text")}}(e),function(){var e=m.controlsUtils,t=e.scaleSkewCursorStyleHandler,n=e.scaleCursorStyleHandler,i=e.scalingEqually,o=e.scalingYOrSkewingX,r=e.scalingXOrSkewingY,a=e.scaleOrSkewActionName,s=m.Object.prototype.controls;if(s.ml=new m.Control({x:-.5,y:0,cursorStyleHandler:t,actionHandler:r,getActionName:a}),s.mr=new m.Control({x:.5,y:0,cursorStyleHandler:t,actionHandler:r,getActionName:a}),s.mb=new m.Control({x:0,y:.5,cursorStyleHandler:t,actionHandler:o,getActionName:a}),s.mt=new m.Control({x:0,y:-.5,cursorStyleHandler:t,actionHandler:o,getActionName:a}),s.tl=new m.Control({x:-.5,y:-.5,cursorStyleHandler:n,actionHandler:i}),s.tr=new m.Control({x:.5,y:-.5,cursorStyleHandler:n,actionHandler:i}),s.bl=new m.Control({x:-.5,y:.5,cursorStyleHandler:n,actionHandler:i}),s.br=new m.Control({x:.5,y:.5,cursorStyleHandler:n,actionHandler:i}),s.mtr=new m.Control({x:0,y:-.5,actionHandler:e.rotationWithSnapping,cursorStyleHandler:e.rotationStyleHandler,offsetY:-40,withConnection:!0,actionName:"rotate"}),m.Textbox){var l=m.Textbox.prototype.controls={};l.mtr=s.mtr,l.tr=s.tr,l.br=s.br,l.tl=s.tl,l.bl=s.bl,l.mt=s.mt,l.mb=s.mb,l.mr=new m.Control({x:.5,y:0,actionHandler:e.changeWidth,cursorStyleHandler:t,actionName:"resizing"}),l.ml=new m.Control({x:-.5,y:0,actionHandler:e.changeWidth,cursorStyleHandler:t,actionName:"resizing"})}}()}(xf),function(){fabric.Object.ENLIVEN_PROPS.push("eraser");var e=fabric.Object.prototype._drawClipPath,t=fabric.Object.prototype.needsItsOwnCache,n=fabric.Object.prototype.toObject,i=fabric.Object.prototype.getSvgCommons,o=fabric.Object.prototype._createBaseClipPathSVGMarkup,r=fabric.Object.prototype._createBaseSVGMarkup;fabric.Object.prototype.cacheProperties.push("eraser"),fabric.Object.prototype.stateProperties.push("eraser"),fabric.util.object.extend(fabric.Object.prototype,{erasable:!0,eraser:void 0,needsItsOwnCache:function(){return t.call(this)||!!this.eraser},_drawClipPath:function(t,n){if(e.call(this,t,n),this.eraser){var i=this._getNonTransformedDimensions();this.eraser.isType("eraser")&&this.eraser.set({width:i.x,height:i.y}),e.call(this,t,this.eraser)}},toObject:function(e){var t=n.call(this,["erasable"].concat(e));return this.eraser&&!this.eraser.excludeFromExport&&(t.eraser=this.eraser.toObject(e)),t},getSvgCommons:function(){return i.call(this)+(this.eraser?\'mask="url(#\'+this.eraser.clipPathId+\')" \':"")},_createEraserSVGMarkup:function(e){return this.eraser?(this.eraser.clipPathId="MASK_"+fabric.Object.__uid++,[\'<mask id="\',this.eraser.clipPathId,\'" >\',this.eraser.toSVG(e),"</mask>","\\n"].join("")):""},_createBaseClipPathSVGMarkup:function(e,t){return[this._createEraserSVGMarkup(t&&t.reviver),o.call(this,e,t)].join("")},_createBaseSVGMarkup:function(e,t){return[this._createEraserSVGMarkup(t&&t.reviver),r.call(this,e,t)].join("")}});var a=fabric.Group.prototype._restoreObjectsState;fabric.util.object.extend(fabric.Group.prototype,{_addEraserPathToObjects:function(e){this._objects.forEach((function(t){fabric.EraserBrush.prototype._addPathToObjectEraser.call(fabric.EraserBrush.prototype,t,e)}))},applyEraserToObjects:function(){var e=this,t=this.eraser;if(t){delete this.eraser;var n=e.calcTransformMatrix();t.clone((function(t){var i=e.clipPath;t.getObjects("path").forEach((function(t){var o=fabric.util.multiplyTransformMatrices(n,t.calcTransformMatrix());fabric.util.applyTransformToObject(t,o),i?i.clone((function(i){var o=fabric.EraserBrush.prototype.applyClipPathToPath.call(fabric.EraserBrush.prototype,t,i,n);e._addEraserPathToObjects(o)}),["absolutePositioned","inverted"]):e._addEraserPathToObjects(t)}))}))}},_restoreObjectsState:function(){return!0===this.erasable&&this.applyEraserToObjects(),a.call(this)}}),fabric.Eraser=fabric.util.createClass(fabric.Group,{type:"eraser",originX:"center",originY:"center",drawObject:function(e){e.save(),e.fillStyle="black",e.fillRect(-this.width/2,-this.height/2,this.width,this.height),e.restore(),this.callSuper("drawObject",e)},_getBounds:function(){},_toSVG:function(e){var t=["<g ","COMMON_PARTS"," >\\n"],n=["<rect ",\'fill="white" \',\'x="\',-this.width/2,\'" y="\',-this.height/2,\'" width="\',this.width,\'" height="\',this.height,\'" />\\n\'].join("");t.push("\\t\\t",n);for(var i=0,o=this._objects.length;i<o;i++)t.push("\\t\\t",this._objects[i].toSVG(e));return t.push("</g>\\n"),t}}),fabric.Eraser.fromObject=function(e,t){var n=e.objects;fabric.util.enlivenObjects(n,(function(n){var i=fabric.util.object.clone(e,!0);delete i.objects,fabric.util.enlivenObjectEnlivables(e,i,(function(){t&&t(new fabric.Eraser(n,i,!0))}))}))};var s=fabric.Canvas.prototype._renderOverlay;fabric.util.object.extend(fabric.Canvas.prototype,{isErasing:function(){return this.isDrawingMode&&this.freeDrawingBrush&&"eraser"===this.freeDrawingBrush.type&&this.freeDrawingBrush._isErasing},_renderOverlay:function(e){s.call(this,e),this.isErasing()&&!this.freeDrawingBrush.inverted&&this.freeDrawingBrush._render()}}),fabric.EraserBrush=fabric.util.createClass(fabric.PencilBrush,{type:"eraser",inverted:!1,_isErasing:!1,_isErasable:function(e){return!1!==e.erasable},_prepareCollectionTraversal:function(e,t,n){e.forEachObject((function(i){i.forEachObject&&"deep"===i.erasable?this._prepareCollectionTraversal(i,t,n):!this.inverted&&i.erasable&&i.visible?(i.visible=!1,e.dirty=!0,n.visibility.push(i),n.collection.push(e)):this.inverted&&i.visible&&(i.erasable&&i.eraser?(i.eraser.inverted=!0,i.dirty=!0,e.dirty=!0,n.eraser.push(i),n.collection.push(e)):(i.visible=!1,e.dirty=!0,n.visibility.push(i),n.collection.push(e)))}),this)},preparePattern:function(){this._patternCanvas||(this._patternCanvas=fabric.util.createCanvasElement());var e=this._patternCanvas;e.width=this.canvas.width,e.height=this.canvas.height;var t=e.getContext("2d");if(this.canvas._isRetinaScaling()){var n=this.canvas.getRetinaScaling();this.canvas.__initRetinaScaling(n,e,t)}var i=this.canvas.backgroundImage,o=i&&this._isErasable(i),r=this.canvas.overlayImage,a=r&&this._isErasable(r);if(!this.inverted&&(i&&!o||this.canvas.backgroundColor))o&&(this.canvas.backgroundImage=void 0),this.canvas._renderBackground(t),o&&(this.canvas.backgroundImage=i);else if(this.inverted&&i&&o){var l=this.canvas.backgroundColor;this.canvas.backgroundColor=void 0,this.canvas._renderBackground(t),this.canvas.backgroundColor=l}t.save(),t.transform.apply(t,this.canvas.viewportTransform);var c={visibility:[],eraser:[],collection:[]};if(this._prepareCollectionTraversal(this.canvas,t,c),this.canvas._renderObjects(t,this.canvas._objects),c.visibility.forEach((function(e){e.visible=!0})),c.eraser.forEach((function(e){e.eraser.inverted=!1,e.dirty=!0})),c.collection.forEach((function(e){e.dirty=!0})),t.restore(),!this.inverted&&(r&&!a||this.canvas.overlayColor))a&&(this.canvas.overlayImage=void 0),s.call(this.canvas,t),a&&(this.canvas.overlayImage=r);else if(this.inverted&&r&&a){l=this.canvas.overlayColor;this.canvas.overlayColor=void 0,s.call(this.canvas,t),this.canvas.overlayColor=l}},_setBrushStyles:function(e){this.callSuper("_setBrushStyles",e),e.strokeStyle="black"},_saveAndTransform:function(e){this.callSuper("_saveAndTransform",e),this._setBrushStyles(e),e.globalCompositeOperation=e===this.canvas.getContext()?"destination-out":"source-over"},needsFullRender:function(){return!0},onMouseDown:function(e,t){this.canvas._isMainEvent(t.e)&&(this._prepareForDrawing(e),this._captureDrawingPath(e),this.preparePattern(),this._isErasing=!0,this.canvas.fire("erasing:start"),this._render())},_render:function(){var e;this.inverted||(e=this.canvas.getContext(),this.callSuper("_render",e)),e=this.canvas.contextTop,this.canvas.clearContext(e),this.callSuper("_render",e),e.save();var t=1/this.canvas.getRetinaScaling();e.scale(t,t),e.globalCompositeOperation="source-in",e.drawImage(this._patternCanvas,0,0),e.restore()},createPath:function(e){var t=this.callSuper("createPath",e);return t.globalCompositeOperation=this.inverted?"source-over":"destination-out",t.stroke=this.inverted?"white":"black",t},applyClipPathToPath:function(e,t,n){var i=fabric.util.invertTransform(e.calcTransformMatrix()),o=t.calcTransformMatrix(),r=t.absolutePositioned?i:fabric.util.multiplyTransformMatrices(i,n);return t.absolutePositioned=!1,fabric.util.applyTransformToObject(t,fabric.util.multiplyTransformMatrices(r,o)),e.clipPath=e.clipPath?fabric.util.mergeClipPaths(t,e.clipPath):t,e},clonePathWithClipPath:function(e,t,n){var i=t.calcTransformMatrix(),o=t.clipPath,r=this;e.clone((function(e){o.clone((function(t){n(r.applyClipPathToPath(e,t,i))}),["absolutePositioned","inverted"])}))},_addPathToObjectEraser:function(e,t){var n=this;if(e.forEachObject&&"deep"===e.erasable){var i=e._objects.filter((function(e){return e.erasable}));i.length>0&&e.clipPath?this.clonePathWithClipPath(t,e,(function(e){i.forEach((function(t){n._addPathToObjectEraser(t,e)}))})):i.length>0&&i.forEach((function(e){n._addPathToObjectEraser(e,t)}))}else{var o=e.eraser;o||(o=new fabric.Eraser,e.eraser=o),t.clone((function(t){var i=fabric.util.multiplyTransformMatrices(fabric.util.invertTransform(e.calcTransformMatrix()),t.calcTransformMatrix());fabric.util.applyTransformToObject(t,i),o.addWithUpdate(t),e.set("dirty",!0),e.fire("erasing:end",{path:t}),e.group&&Array.isArray(n.__subTargets)&&n.__subTargets.push(e)}))}},applyEraserToCanvas:function(e){var t=this.canvas,n={};return["backgroundImage","overlayImage"].forEach((function(i){var o=t[i];o&&o.erasable&&(this._addPathToObjectEraser(o,e),n[i]=o)}),this),n},_finalizeAndAddPath:function(){var e=this.canvas.contextTop,t=this.canvas;e.closePath(),this.decimate&&(this._points=this.decimatePoints(this._points,this.decimate)),t.clearContext(t.contextTop),this._isErasing=!1;var n=this._points&&this._points.length>1?this.convertPointsToSVGPath(this._points):null;if(!n||this._isEmptySVGPath(n))return t.fire("erasing:end"),void t.requestRenderAll();var i=this.createPath(n);i.setCoords(),t.fire("before:path:created",{path:i});var o=this.applyEraserToCanvas(i),r=this;this.__subTargets=[];var a=[];t.forEachObject((function(e){e.erasable&&e.intersectsWithObject(i,!0,!0)&&(r._addPathToObjectEraser(e,i),a.push(e))})),t.fire("erasing:end",{path:i,targets:a,subTargets:this.__subTargets,drawables:o}),delete this.__subTargets,t.requestRenderAll(),this._resetShadow(),t.fire("path:created",{path:i})}})}(),function(e){e.objectAdded="objectAdded",e.objectVanishing="objectVanishing",e.objectRemoved="objectRemoved",e.requestFullDataReplay="requestFullDataReplay",e.fullDataReplayResponse="fullDataReplayResponse",e.historyChange="historyChange",e.eraserObjectRemoved="eraserObjectRemoved",e.clearCanvas="clearCanvas"}(Tf||(Tf={})),function(e){e[e.Customer=0]="Customer",e[e.Agent=1]="Agent",e[e.Recorder=2]="Recorder"}(Of||(Of={})),function(e){e[e.None=0]="None",e[e.Pencil=1]="Pencil",e[e.Vanishing=2]="Vanishing",e[e.Graphic=3]="Graphic"}(jf||(jf={}));var If,Af=t.makeLogger(["Annotation Replayer"]),Df=function(){function e(t){var n=t.canvas,i=t.annotationUserType,o=t.history,r=t.userId,a=t.vanishingExistingTimeout;_classCallCheck(this,e),this.isHistoryReplay=!1,this.isReplayingFullData=!1,this.fullDataTransferOrder=[[Of.Agent,Of.Customer],[Of.Customer,Of.Agent],[Of.Customer,Of.Recorder]],this.canvas=n,this.annotationUserType=i,this.history=o,this.userId=r,this.vanishingExistingTimeout=a}return _createClass(e,[{key:"handleData",value:function(e){var t={};if(!Tf[e.type])return Af.error("ERROR: anotationData.type=".concat(e.type," is not exist.")),t;switch(e.type){case Tf.objectAdded:this.enlivenObjects(e.data),this.history.saveHistory({customVersion:e.version,lastVersion:e.lastVersion});break;case Tf.objectVanishing:this.enlivenVanishingObjects(e.data);break;case Tf.objectRemoved:this.removeObjects(e.data),this.history.saveHistory({customVersion:e.version,lastVersion:e.lastVersion});break;case Tf.eraserObjectRemoved:this.eraserRemoveObjects(e);break;case Tf.requestFullDataReplay:this.shouldHandleFullDataRequest(e)&&(t.resFullData=this.getFullDataJSON(e));break;case Tf.fullDataReplayResponse:this.fullDataReplayJSON(e);break;case Tf.historyChange:this.historyDataReplay(e);break;case Tf.clearCanvas:this.clearCanvas(e)}return t}},{key:"shouldHandleFullDataRequest",value:function(e){var t=this;return!e.data||!(e.data.reqVersion&&!this.history.historyVersionData[e.data.reqVersion])&&(!(!e.data.targetId||this.userId!==e.data.targetId)||!(e.data.targetId||!this.fullDataTransferOrder.some((function(n){var i=_slicedToArray(n,2),o=i[0];return i[1]===e.data.userType&&o===t.annotationUserType}))))}},{key:"getFullDataJSON",value:function(e){var t;if(!this.canvas)return{fullData:"",resVersion:this.history.curVersion,userType:this.annotationUserType};var n=null===(t=e.data)||void 0===t?void 0:t.reqVersion;return n&&this.history.historyVersionData[n]?{fullData:this.history.historyVersionData[n],resVersion:n,userType:this.annotationUserType}:{fullData:JSON.stringify(this.history.historyFullData()),resVersion:this.history.curVersion,userType:this.annotationUserType}}},{key:"fullDataReplayJSON",value:function(e){return pt(this,void 0,void 0,_regeneratorRuntime().mark((function t(){var n,i,o,r,a=this;return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e&&e.version!==e.lastVersion){t.next=2;break}return t.abrupt("return");case 2:n=e.data,i=n.fullData,o=n.resVersion,this.isReplayingFullData=!0,this.history.offHistory(),this.history.updateVersionFullData(o,i),r=function(){a.isHistoryReplay=!1,a.isReplayingFullData=!1,a.history.historyProcessing=!1},this.history.replayerInitFromOtherSide(o,i),this.history.curVersion===o?this.canvas.loadFromJSON(JSON.parse(i),(function(){r()})):r();case 9:case"end":return t.stop()}}),t,this)})))}},{key:"enliveObjectsHandler",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this;xf.fabric.util.enlivenObjects(e,(function(e){var i=n.canvas,o=i.renderOnAddRemove;i.renderOnAddRemove=!1,e.forEach((function(e){if(e._objects)for(var o=e._objects,r=0;r<o.length;r++)o[r].byReplay=!0;e.byReplay=!0,e.selectable=!1,t&&(e.excludeFromExport=!0,e.isVanishing=!0,n.fadeOutAndRemove(e,n.vanishingExistingTimeout)),i.add(e)})),i.renderOnAddRemove=o,i.renderAll()}),"")}},{key:"historyDataReplay",value:function(e){var t,n,i,o=this,r=e.version,a=e.lastVersion,s=e.originId;if(a!==this.history.curVersion&&!this.isReplayingFullData)return Af.error("history Sync Error: lastVersion: ".concat(a,", history.curVersion: ").concat(this.history.curVersion)),void(this.history.historyVersionList.indexOf(a)>-1&&this.history.addEmptyVersion(r,a,"undo"===(null===(t=e.data)||void 0===t?void 0:t.operation)?0:1));this.isHistoryReplay=!0,"undo"===(null===(n=e.data)||void 0===n?void 0:n.operation)?this.history.isLegalUndoVersion(r)?this.history.undo((function(){o.isHistoryReplay=!1})):this.history.addEmptyUndo(r,(function(){o.isHistoryReplay=!1})):"redo"===(null===(i=e.data)||void 0===i?void 0:i.operation)&&(this.history.isLegalRedoVersion(r)?this.history.redo((function(){o.isHistoryReplay=!1})):this.history.addEmptyRedo(r,(function(){o.isHistoryReplay=!1}))),this.history.checkHasVersionFullData(r)||this.history.sendReqSpecialVersionFullDataEvent(r,s)}},{key:"enlivenObjects",value:function(e){this.enliveObjectsHandler(e.objectDataStrArr)}},{key:"enlivenVanishingObjects",value:function(e){this.enliveObjectsHandler(e.objectDataStrArr,!0)}},{key:"removeObjects",value:function(e){var t=e.objectDataStrArr;if(null==t?void 0:t.length){var n=this.canvas,i=n.renderOnAddRemove;n.renderOnAddRemove=!1,n.getObjects().filter((function(e){return t.includes(e.objId)&&!e.excludeFromExport})).forEach((function(e){e.byReplay=!0,n.remove(e)})),n.renderOnAddRemove=i,n.renderAll()}}},{key:"eraserRemoveObjects",value:function(e){this.history.offHistory(),this.removeObjects(e.data),this.history.onHistory(e.version,e.lastVersion)}},{key:"clearCanvasContent",value:function(){var e=this,t=this.canvas.getObjects().filter((function(e){return e.excludeFromExport}));this.canvas.clear(),t.forEach((function(t){return e.canvas.add(t)}))}},{key:"clearCanvas",value:function(e){this.history.offHistory(),this.clearCanvasContent(),this.history.onHistory(e.version,e.lastVersion)}},{key:"fadeOutAndRemove",value:function(e,t){var n=this;xf.fabric.util.animate({startValue:1,endValue:0,duration:t,onChange:function(t){(n.canvas||{}).contextContainer&&(e.set("opacity",t),n.canvas.renderAll())},onComplete:function(){(n.canvas||{}).contextContainer&&(n.canvas.remove(e),n.canvas.renderAll())}})}}]),e}(),Nf=function(){function e(t){var n=t.canvas,i=t.isCommonSDK,o=t.isLeader;_classCallCheck(this,e),this.isCommonSDK=!1,this.isLeader=!1,this.isCommonSDK=i,this.isLeader=o,this.canvas=n;var r=this;this.resizeEvtListener=function(){r.setCanvasSize()},this.setCanvasSize(),this.isLeader&&this.listenToResize()}return _createClass(e,[{key:"getReplayerSize",value:function(e){var t,n,i=Object.assign({width:(document.documentElement.clientWidth||window.innerWidth).toString(),height:(document.documentElement.clientHeight||window.innerHeight).toString(),scale:"1"},e),r=document.querySelector(\'iframe[title="\'.concat(C,\'"]\'));if(!r)return i;var a=r.contentDocument;if(!a)return console.error("ERROR: getReplayerSize() iframeDoc=".concat(a," is falsy.")),i;var s=null==a?void 0:a.querySelector("#replayer-iframe");i.width=null!==(t=null==s?void 0:s.getAttribute("width"))&&void 0!==t?t:i.width,i.height=null!==(n=null==s?void 0:s.getAttribute("height"))&&void 0!==n?n:i.height;var l=o.publicStore.getState(),c=null==l?void 0:l.fitToWindowScale;return i.scale=0===c?"1":c.toString(),i}},{key:"listenToResize",value:function(){window.addEventListener("resize",this.resizeEvtListener)}},{key:"setContainerEleStyle",value:function(e){var t=document.querySelector("."+Jn.wrapper);t&&(t.style.scale=e)}},{key:"setCanvasSize",value:function(e){var t,n;if(null===(t=this.canvas)||void 0===t?void 0:t.lowerCanvasEl){var i=this.isCommonSDK?$t:Qt,o=(e?{width:e.width.toString(),height:e.height.toString(),scale:null===(n=i(e))||void 0===n?void 0:n.toString()}:void 0)||this.getReplayerSize();this.canvas.setDimensions(o)}}},{key:"destroy",value:function(){window.removeEventListener("resize",this.resizeEvtListener)}}]),e}(),Pf=new Uint8Array(16);function Lf(){if(!If&&!(If="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return If(Pf)}for(var Mf=[],zf=0;zf<256;++zf)Mf.push((zf+256).toString(16).slice(1));var Ff={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function Bf(e,t,n){if(Ff.randomUUID&&!t&&!e)return Ff.randomUUID();var i=(e=e||{}).random||(e.rng||Lf)();if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,t){n=n||0;for(var o=0;o<16;++o)t[n+o]=i[o];return t}return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return Mf[e[t+0]]+Mf[e[t+1]]+Mf[e[t+2]]+Mf[e[t+3]]+"-"+Mf[e[t+4]]+Mf[e[t+5]]+"-"+Mf[e[t+6]]+Mf[e[t+7]]+"-"+Mf[e[t+8]]+Mf[e[t+9]]+"-"+Mf[e[t+10]]+Mf[e[t+11]]+Mf[e[t+12]]+Mf[e[t+13]]+Mf[e[t+14]]+Mf[e[t+15]]}(i)}var Uf,Vf=t.makeLogger(["Annotation History"]),Wf="_base",Gf=function(){function e(t){var n=t.canvas;_classCallCheck(this,e),this.lastVersion=Wf,this.curVersion=Wf,this.historyVersionList=[],this.historyVersionData={},this.reqFullDataVersionList=[],this.historyProcessing=!1,this.extraProps=["selectable","editable","objId"],this.maxHistoryCount=30,this.sendFullDataReqCoolDown=1e4,this.canvas=n,this.init()}return _createClass(e,[{key:"init",value:function(){var e=JSON.stringify(this.historyFullData()),t=this.curVersion;this.historyVersionList.push(t),this.historyVersionData[t]=e}},{key:"undo",value:function(e){this.historyProcessing=!0;var t=this.historyVersionList[this.historyVersionList.indexOf(this.curVersion)-1];t?(this.lastVersion=this.curVersion,this.curVersion=t,this._loadHistory(t,"history:undo",e)):this.historyProcessing=!1}},{key:"redo",value:function(e){this.historyProcessing=!0;var t=this.historyVersionList[this.historyVersionList.indexOf(this.curVersion)+1];t?(this.lastVersion=this.curVersion,this.curVersion=t,this._loadHistory(t,"history:redo",e)):this.historyProcessing=!1}},{key:"canUndo",value:function(){return this.historyVersionList.indexOf(this.curVersion)>0}},{key:"canRedo",value:function(){return this.historyVersionList.indexOf(this.curVersion)<this.historyVersionList.length-1}},{key:"addEmptyVersion",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=this.historyVersionList.indexOf(t);this.historyVersionList.splice(i+n,0,e),this.historyVersionData[e]=""}},{key:"addEmptyUndo",value:function(e,t){this.historyProcessing=!0,this.addEmptyVersion(e,this.curVersion,0),this.curVersion=e,this.canvas.fire("history:undo"),this.historyProcessing=!1,t&&"function"==typeof t&&t()}},{key:"addEmptyRedo",value:function(e,t){this.historyProcessing=!0,this.addEmptyVersion(e,this.curVersion,1),this.curVersion=e,this.canvas.fire("history:redo"),this.historyProcessing=!1,t&&"function"==typeof t&&t()}},{key:"isLegalUndoVersion",value:function(e){return this.historyVersionList[this.historyVersionList.indexOf(this.curVersion)-1]===e}},{key:"isLegalRedoVersion",value:function(e){return this.historyVersionList[this.historyVersionList.indexOf(this.curVersion)+1]===e}},{key:"isLegalAppendVersion",value:function(e,t){return!this.historyVersionList.includes(t)&&this.curVersion===e}},{key:"_loadHistory",value:function(e,t,n){var i,o=this;try{i=JSON.parse(this.historyVersionData[e])}catch(t){Vf.warn("can not parse history fullData: ".concat(this.historyVersionData[e]))}if(!i)return Vf.error("load history no fullData"),this.canvas.fire(t),this.sendReqSpecialVersionFullDataEvent(e),void(this.historyProcessing=!1);var r=this.canvas.getObjects().filter((function(e){return e.excludeFromExport}));this.canvas.loadFromJSON(i,(function(){r.forEach((function(e){return o.canvas.add(e)})),o.canvas.renderAll(),o.canvas.fire(t),o.historyProcessing=!1,n&&"function"==typeof n&&n()}))}},{key:"saveHistory",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.customVersion,n=e.lastVersion;if(!this.historyProcessing){var i=!1;n&&t&&!this.isLegalAppendVersion(n,t)&&(i=!0);var o=JSON.stringify(this.historyFullData()),r=null!=t?t:Bf(),a=this.historyVersionList.indexOf(this.curVersion);this.lastVersion=this.curVersion,this.curVersion=r,this.historyVersionList.splice(a+1,0,r),this.historyVersionData[r]=o,this.canvas.fire("history:append",{fullData:o,version:r}),i&&this.sendReqSpecialVersionFullDataEvent(r)}}},{key:"offHistory",value:function(){this.historyProcessing=!0}},{key:"onHistory",value:function(e,t){this.historyProcessing=!1,this.saveHistory({customVersion:e,lastVersion:t})}},{key:"cleanRedo",value:function(){var e=this,t=this.historyVersionList.indexOf(this.curVersion)+1,n=this.historyVersionList.slice(t);this.historyVersionList=this.historyVersionList.slice(0,t),n.forEach((function(t){delete e.historyVersionData[t]}))}},{key:"cleanExceedingHistoryRecords",value:function(){var e=this;if(!(this.maxHistoryCount<=0)&&this.historyVersionList.length>this.maxHistoryCount){var t=this.historyVersionList.slice(0,-this.maxHistoryCount);this.historyVersionList=this.historyVersionList.slice(-this.maxHistoryCount),t.forEach((function(t){delete e.historyVersionData[t]}))}}},{key:"historyFullData",value:function(){return this.canvas.toDatalessJSON(this.extraProps)}},{key:"checkHasVersionFullData",value:function(e){return!!this.historyVersionData[e]}},{key:"updateVersionFullData",value:function(e,t){return!(!e||!t||this.checkHasVersionFullData(e))&&(this.historyVersionData[e]=t,this.removeReqFullDataVersion(e),!0)}},{key:"sendReqSpecialVersionFullDataEvent",value:function(e,t){this.reqFullDataVersionList.includes(e)||this.canvas.fire("history:requestFullData",{version:e,targetId:t})}},{key:"addReqFullDataVersion",value:function(e){var t=this;this.reqFullDataVersionList.push(e),setTimeout((function(){t.removeReqFullDataVersion(e)}),this.sendFullDataReqCoolDown)}},{key:"removeReqFullDataVersion",value:function(e){this.reqFullDataVersionList=this.reqFullDataVersionList.filter((function(t){return t!==e}))}},{key:"replayerInitFromOtherSide",value:function(e,t){if(e!==Wf&&1===this.historyVersionList.length&&this.historyVersionList[0]===Wf){var n=this.historyVersionList.pop();n&&delete this.historyVersionData[n],this.historyVersionList.push(e),this.curVersion=e,this.updateVersionFullData(e,t)}}}]),e}();!function(e){e[e.Rect=1]="Rect",e[e.Ellipse=2]="Ellipse",e[e.Diamond=3]="Diamond",e[e.Line=4]="Line",e[e.Arrow=5]="Arrow"}(Uf||(Uf={}));var Hf,Yf=function(){function e(t,n,i){_classCallCheck(this,e),this.canvas=t,this.history=n,this.drawConfig=i,this.drawingGraphType=null,this.isVanishingGraphic=!1,this.drawingGraphic=null,this.drawingArrowLine=null,this.drawingArrowTriangle=null,this.isGraphDrawing=!1,this.startX=0,this.startY=0,this._initCanvasListener()}return _createClass(e,[{key:"_initCanvasListener",value:function(){var e=this,t=this.canvas;t.on("mouse:down",(function(n){if(t.selection=!1,e.drawingGraphType&&!e.drawingGraphic){e.isGraphDrawing=!0;var i=t.getPointer(n.e);e.startX=i.x,e.startY=i.y,e.drawingGraphType===Uf.Rect?e.drawingGraphic=new xf.fabric.Rect({left:e.startX,top:e.startY,width:0,height:0,fill:"transparent",stroke:e.drawConfig.drawColor,strokeWidth:e.drawConfig.drawWidth,selectable:!1,evented:!1,excludeFromExport:!0}):e.drawingGraphType===Uf.Ellipse?e.drawingGraphic=new xf.fabric.Ellipse({left:e.startX,top:e.startY,rx:0,ry:0,fill:"transparent",stroke:e.drawConfig.drawColor,strokeWidth:e.drawConfig.drawWidth,selectable:!1,evented:!1,excludeFromExport:!0}):e.drawingGraphType===Uf.Diamond?e.drawingGraphic=new xf.fabric.Polygon([{x:e.startX,y:e.startY},{x:e.startX,y:e.startY},{x:e.startX,y:e.startY},{x:e.startX,y:e.startY}],{left:e.startX,top:e.startY,fill:"transparent",stroke:e.drawConfig.drawColor,strokeWidth:e.drawConfig.drawWidth,selectable:!1,evented:!1,objectCaching:!1,excludeFromExport:!0}):e.drawingGraphType===Uf.Line?e.drawingGraphic=new xf.fabric.Line([e.startX,e.startY,e.startX,e.startY],{stroke:e.drawConfig.drawColor,strokeWidth:e.drawConfig.drawWidth,originX:"center",originY:"center",selectable:!1,evented:!1,excludeFromExport:!0}):e.drawingGraphType===Uf.Arrow&&(e.drawingGraphic=e.drawingArrowLine=new xf.fabric.Line([e.startX,e.startY,e.startX,e.startY],{stroke:e.drawConfig.drawColor,strokeWidth:e.drawConfig.drawWidth,originX:"center",originY:"center",selectable:!1,evented:!1,excludeFromExport:!0}),e.drawingArrowTriangle=new xf.fabric.Triangle({width:0,height:0,fill:e.drawConfig.drawColor,originX:"center",originY:"center",selectable:!1,evented:!1,excludeFromExport:!0}),e.drawingArrowTriangle.isDrawingGraphic=!0,t.add(e.drawingArrowTriangle)),e.drawingGraphic&&(e.drawingGraphic.isDrawingGraphic=!0,t.add(e.drawingGraphic))}})),t.on("mouse:move",(function(n){if(e.drawingGraphType&&e.isGraphDrawing&&e.drawingGraphic){var i=t.getPointer(n.e),o=e.startX,r=e.startY,a=i.x,s=i.y,l=i.x-e.startX,c=i.y-e.startY;if(e.drawingGraphType===Uf.Rect)e.drawingGraphic.set({left:l<0?e.startX+l:e.startX,top:c<0?e.startY+c:e.startY,width:Math.abs(l),height:Math.abs(c)});else if(e.drawingGraphType===Uf.Ellipse)e.drawingGraphic.set({left:l<0?e.startX+l:e.startX,top:c<0?e.startY+c:e.startY,rx:Math.abs(l)/2,ry:Math.abs(c)/2});else if(e.drawingGraphType===Uf.Diamond){var u=(o+a)/2,h=(r+s)/2,d=[{x:u,y:r},{x:a,y:h},{x:u,y:s},{x:o,y:h}];e.drawingGraphic.set({points:d}),e.drawingGraphic._calcDimensions(),e.drawingGraphic.setCoords()}else if(e.drawingGraphType===Uf.Line)e.drawingGraphic.set({x2:i.x,y2:i.y});else if(e.drawingGraphType===Uf.Arrow){var f=Math.atan2(s-r,a-o),p=f*(180/Math.PI),g=2*e.drawConfig.drawWidth,m=g+e.drawConfig.drawWidth/2,v=i.x-Math.cos(f)*m,y=i.y-Math.sin(f)*m,b=v+Math.cos(f)*(g/2),_=y+Math.sin(f)*(g/2);e.drawingArrowLine.set({x2:v,y2:y}),e.drawingArrowTriangle.set({width:2*g,height:2*g,left:b,top:_,angle:p+90})}t.requestRenderAll()}})),t.on("mouse:up",(function(){var n;if(e.isGraphDrawing&&e.drawingGraphic&&e.drawingGraphic){if(t.remove(e.drawingGraphic),e.drawingGraphType===Uf.Arrow){e.drawingArrowLine&&(e.drawingArrowLine.excludeFromExport=!1,e.drawingGraphic.isDrawingGraphic=!0),e.drawingArrowTriangle&&(e.drawingArrowTriangle.isDrawingGraphic=!0,e.drawingArrowTriangle.excludeFromExport=!1);var i=new xf.fabric.Group([e.drawingArrowLine,e.drawingArrowTriangle],{selectable:!1,evented:!1});i.setCoords(),e.drawingArrowLine&&t.remove(e.drawingArrowLine),e.drawingArrowTriangle&&t.remove(e.drawingArrowTriangle),e.drawingGraphic=i,e.isVanishingGraphic&&(e.drawingGraphic.isVanishing=!0),e.isGraphDrawing=!1,t.add(e.drawingGraphic)}else if(e.drawingGraphType===Uf.Diamond){var o=e.drawingGraphic,r=xf.fabric.util.object.clone(o);if(null===(n=o.points)||void 0===n?void 0:n.length){var a=Math.min.apply(Math,_toConsumableArray(o.points.map((function(e){return e.x})))),s=Math.min.apply(Math,_toConsumableArray(o.points.map((function(e){return e.y})))),l=o.points.map((function(e){return{x:e.x-a,y:e.y-s}}));r.set({points:l,left:a,top:s,excludeFromExport:!1}),e.isVanishingGraphic&&(r.isVanishing=!0),r.isDrawingGraphic=!1,e.isGraphDrawing=!1,t.add(r),e.isGraphDrawing=!0;var c=e.history.historyFullData();t.loadFromJSON(c,(function(){t.renderAll()})),e.isGraphDrawing=!1}}else e.isGraphDrawing=!1,e.drawingGraphic.excludeFromExport=!1,e.drawingGraphic.selectable=!1,e.drawingGraphic.isDrawingGraphic=!1,e.isVanishingGraphic&&(e.drawingGraphic.isVanishing=!0),t.add(e.drawingGraphic);t.renderAll(),e.drawingGraphic=null,e.drawingArrowLine=null,e.drawingArrowTriangle=null}}))}},{key:"resetGraphicDrawMode",value:function(){this.drawingGraphType=null}}]),e}();!function(e){e[e.Middle=1]="Middle",e[e.Right=2]="Right"}(Hf||(Hf={}));var Xf,Kf=t.makeLogger(["Annotation"]),qf=function(){function e(n){_classCallCheck(this,e),this.vanishingExistingTimeout=5e3,this.drawConfig=Ua,this.showToolbar=!1,this.cbsInteractionLatencyLog=t.nonCBSInteractionLatencyLog,this.eventHandlers=_defineProperty2({},Ma,[]),this.enable=void 0===n.enable||n.enable,this.enableToolbar=void 0===n.enableToolbar||n.enableToolbar,this.isLeader=n.isLeader,this.isRecordUser=n.isRecordUser,this.annotationUserType=this.getUserType(),null!=n.vanishingExistingTimeout&&(this.vanishingExistingTimeout=n.vanishingExistingTimeout),this.enable?(n.cbsInteractionLatencyLog&&(this.cbsInteractionLatencyLog=n.cbsInteractionLatencyLog),this.participantType=n.participantType,this.isCommonSDK=n.isCommonSDK,this.init(n)):Kf.log("[Anotation] NOT enable.")}return _createClass(e,[{key:"_resetFabricDrawStatus",value:function(){this.canvas.defaultCursor="default",this.canvas.isDrawingMode=!1,this.canvas.selection=!1,this.graphics.resetGraphicDrawMode()}},{key:"toggleFabricContainerDraw",value:function(e){var t="."+Jn.wrapper,n=document.querySelector(t);n?(void 0!==e?e:this.canvas.isDrawingMode)?n.classList.add(Jn.drawing):n.classList.remove(Jn.drawing):Kf.error("[CoBrowsing Anotation] ERROR: fabricContainerEle is falsy.")}},{key:"triggerVanishingPen",value:function(){var e=this.canvas;e&&(e.freeDrawingCursor=\'url("\'.concat(Ca,\'") 0 14, auto\'),this._resetFabricDrawStatus(),e.isDrawingMode=!0,e.selection=!1,e.discardActiveObject().renderAll(),e.freeDrawingBrush=new xf.fabric.PencilBrush(e),e.freeDrawingBrush.isPencil=!0,e.freeDrawingBrush.color=this.drawConfig.drawColor,e.freeDrawingBrush.width=this.drawConfig.drawWidth,this.drawMode=jf.Vanishing,this.toggleFabricContainerDraw(!0))}},{key:"toggleDrawGraphBase",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.canvas;n&&(this._resetFabricDrawStatus(),n.defaultCursor="crosshair",this.graphics.drawingGraphType=e,this.graphics.isVanishingGraphic=t,this.drawMode=jf.Graphic,this.toggleFabricContainerDraw(!0),n.isDrawingMode=!1,n.selection=!1)}},{key:"toggleDrawMode",value:function(e){var t=this.canvas;if(t){this._resetFabricDrawStatus(),t.freeDrawingCursor=\'url("\'.concat(Ca,\'") 0 14, auto\');var n=e;t.isDrawingMode=n,n?(t.discardActiveObject().renderAll(),t.freeDrawingBrush=new xf.fabric.PencilBrush(t),t.freeDrawingBrush.isPencil=!0,t.freeDrawingBrush.color=this.drawConfig.drawColor,t.freeDrawingBrush.width=this.drawConfig.drawWidth,this.drawMode=jf.Pencil):this.drawMode=jf.None,this.toggleFabricContainerDraw(n)}}},{key:"changeColor",value:function(e){this.drawConfig.drawColor=e;var t=this.canvas;t.freeDrawingBrush&&(t.freeDrawingBrush.color=e)}},{key:"changeDrawWidth",value:function(e){this.drawConfig.drawWidth=e;var t=this.canvas;t.freeDrawingBrush&&(t.freeDrawingBrush.width=e)}},{key:"enableControlMode",value:function(){var e=this.canvas;e&&(e.isDrawingMode=!1,e.selection=!1,e.freeDrawingCursor="default",this.drawMode=jf.None,(null==e?void 0:e.contextContainer)&&(e.discardActiveObject().renderAll(),this.toggleFabricContainerDraw()),this.canvas.freeDrawingBrush=new xf.fabric.BaseBrush)}},{key:"toggleSelectMode",value:function(e){var t=this.canvas;t&&(this.drawMode=jf.None,t.freeDrawingCursor="cell",t.selection=e,t.isDrawingMode=!e,this.toggleFabricContainerDraw(e))}},{key:"toggleEraser",value:function(e){var t,n=this.canvas;if(n){this._resetFabricDrawStatus();var i=null===(t=n.freeDrawingBrush)||void 0===t?void 0:t.isEraser;(void 0!==e?e:i)?(n.isDrawingMode=!1,n.freeDrawingCursor="default",this.toggleDrawMode(!0)):(n.freeDrawingBrush=new xf.fabric.EraserBrush(n),n.freeDrawingBrush.isEraser=!0,n.freeDrawingBrush.width=10,n.isDrawingMode=!0,n.freeDrawingCursor=\'url("\'.concat("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzkxNzBfMTIwNTcpIiBzdHJva2U9IiNkZGQiPgo8cGF0aCBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwLjg2NzQgMTIuODIxN0wzLjE3OTE2IDUuMTM4MzRMNy41NzkzNSAwLjczMzcxQzguNTYxMTkgLTAuMjQ0NTcgMTAuMTQ0MSAtMC4yNDQ1NyAxMS4xMTU5IDAuNzMzNzFMMTUuMjYzNiA0Ljg3NzM5QzE2LjI0NTUgNS44NTU2NyAxNi4yNDU1IDcuNDQyMzMgMTUuMjYzNiA4LjQyMTYxTDEwLjg2NzQgMTIuODIxN1pNMi44MjE1IDYuMTk2NzNDMi42MjUxMiA2LjAwMTE5IDIuMzA4NTIgNi4wMDEzMSAyLjExMzE4IDYuMTk3MDNMMC43MzI1OTMgNy41NzgxNUMtMC4yNDQxOTcgOC41NTY3MyAtMC4yNDQxOTcgMTAuMTQzNyAwLjczMjU5MyAxMS4xMjIyTDAuNzMzNjAzIDExLjEyMjdMNC44ODAzMiAxNS4yNjU5QzUuODU3MTQgMTYuMjQ0NyA3LjQ0NzExIDE2LjI0NDcgOC40MjQ5MSAxNS4yNjU5TDkuODA0NDkgMTMuODg0N0M5Ljk5OTgzIDEzLjY4OSA5Ljk5OTgzIDEzLjM3MTUgOS44MDQ0OSAxMy4xNzU5QzkuNjA4MTEgMTIuOTgwMyA5LjI5MTUxIDEyLjk4MDQgOS4wOTYxNyAxMy4xNzYyTDcuNzE1NTggMTQuNTU3NEM3LjEzMDUxIDE1LjE0NDMgNi4xNzQ3MiAxNS4xNDQ0IDUuNTg5NjUgMTQuNTU3NUw1LjU4ODY0IDE0LjU1NzFMMS40NDE5MiAxMC40MTM5QzAuODU1ODQzIDkuODI2ODcgMC44NTU4NDMgOC44NzM4NiAxLjQ0MTkyIDguMjg2NjlMMi44MjE1IDYuOTA1NTdDMy4wMTY4NCA2LjcwOTgxIDMuMDE2ODQgNi4zOTIzOSAyLjgyMTUgNi4xOTY3M1oiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF85MTcwXzEyMDU3Ij4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSIjZmZmIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==",\'") 4 4, auto\'),this.toggleFabricContainerDraw())}}},{key:"triggerUndo",value:function(){this.history.undo()}},{key:"triggerRedo",value:function(){this.history.redo()}},{key:"triggerClear",value:function(){0!==this.canvas.getObjects().filter((function(e){return!e.excludeFromExport})).length&&(this.history.historyProcessing=!0,this.replayer.clearCanvasContent(),this.history.historyProcessing=!1,this.history.saveHistory(),this.sendClearOperationMsg())}},{key:"initResizeController",value:function(){this.canvas&&(this.resizeController=new Nf({canvas:this.canvas,isCommonSDK:void 0!==this.isCommonSDK&&this.isCommonSDK,isLeader:void 0!==this.isLeader&&this.isLeader}))}},{key:"updateCanvasSize",value:function(e){this.resizeController&&this.resizeController.setCanvasSize(e)}},{key:"initFabric",value:function(e){var t=new xf.fabric.Canvas(e,{containerClass:Jn.fabricContainer,stopContextMenu:!0,fireRightClick:!0,fireMiddleClick:!0});xf.fabric.Object.NUM_FRACTION_DIGITS=16,xf.fabric.Object.prototype.controls.mtr.visible=!1,this.canvas=t,t.selection=!1,this.initFabricEvt(),this.history=new Gf({canvas:this.canvas}),this.replayer=new Df({canvas:this.canvas,annotationUserType:this.annotationUserType,history:this.history,userId:this.userId,vanishingExistingTimeout:this.vanishingExistingTimeout}),this.graphics=new Yf(this.canvas,this.history,this.drawConfig),this.changeColor(Na)}},{key:"handleObjectModified",value:function(e){if(e.objId||(e.objId=Bf()),e&&!e.byReplay){this.sendMsgData({data:{objectDataStrArr:[e.objId]},type:Tf.objectRemoved});var t=[e.toJSON()],n=Bf();e.objId=n,t[0].objId=n,this.sendMsgData({data:{objectDataStrArr:t},type:Tf.objectAdded})}else e.byReplay&&(e.byReplay=!1)}},{key:"initFabricEvt",value:function(){var e=this,t=this,n=this.canvas;function i(){t.triggerEventHandler(Ma,{undoNum:t.history.canUndo(),redoNum:t.history.canRedo()})}function o(e){t.sendHistoryChangeOperationMsg(e)}n.on("history:append",(function(){t.replayer.isHistoryReplay||(t.history.cleanRedo(),t.history.cleanExceedingHistoryRecords()),i()})),n.on(za,(function(){i(),t.replayer.isHistoryReplay||o("undo")})),n.on(Fa,(function(){i(),t.replayer.isHistoryReplay||o("redo")})),n.on("history:requestFullData",(function(e){var n=e.version,i=e.targetId;t.requestFullDataReplay(n,i)})),n.on("erasing:start",(function(){t.history.offHistory()})),n.on("erasing:end",(function(e){var i=e.targets.filter((function(e){return!e.excludeFromExport}));if(i.length){t.history.saveHistory();var o=i.map((function(e){return e.objId})).filter(Boolean);i.forEach((function(e){var t;return(null===(t=e.group)||void 0===t?void 0:t.removeWithUpdate(e))||n.remove(e)})),t.history.onHistory(),t.sendMsgData({data:{objectDataStrArr:o},type:Tf.eraserObjectRemoved})}else t.history.historyProcessing=!1})),n.on("mouse:down",(function(t){var i,o,r,a;(null===(i=t.e)||void 0===i?void 0:i.button)!==Hf.Middle&&(null===(o=t.e)||void 0===o?void 0:o.button)!==Hf.Right||!n._isCurrentlyDrawing||e.drawMode!==jf.Vanishing&&e.drawMode!==jf.Pencil||null===(a=null===(r=n.freeDrawingBrush)||void 0===r?void 0:r.onMouseUp)||void 0===a||a.call(r,{e:{isPrimary:!0}})})),n.on("object:added",(function(n){var i,o,r=n.target;if("path"===(null==r?void 0:r.type)&&r.set({selectable:!1,evented:!1}),r.objId||r.excludeFromExport||(r.objId=Bf()),r&&!r.byReplay){if(t.history.historyProcessing||e.replayer.isReplayingFullData||r.isDrawingGraphic)return;var a=[r.toJSON()];a[0].objId=r.objId,t.drawMode===jf.Vanishing||r.isVanishing?(r.excludeFromExport=!0,r.isVanishing=!0,t.replayer.fadeOutAndRemove(r,t.vanishingExistingTimeout)):null===(o=(i=t.history).saveHistory)||void 0===o||o.call(i),t.sendMsgData({data:{objectDataStrArr:a},type:r.isVanishing?Tf.objectVanishing:Tf.objectAdded})}else r.byReplay&&(r.byReplay=!1)})),n.on("object:modified",(function(e){var n,i,o,r=e.target,a=r.objId;if(r.objId||(r.objId=Bf()),r&&!r.byReplay){if(t.history.historyProcessing||t.replayer.isReplayingFullData||t.graphics.isGraphDrawing)return;a&&t.sendMsgData({data:{objectDataStrArr:[r.objId]},type:Tf.objectRemoved});var s=(null===(n=null==r?void 0:r._objects)||void 0===n?void 0:n.length)?null==r?void 0:r._objects:[r];(null==s?void 0:s.length)&&s.forEach((function(e){t.sendMsgData({data:{objectDataStrArr:[e.objId]},type:Tf.objectRemoved})}));var l=[r.toJSON(["objId"])],c=Bf();r.objId=c,l[0].objId=c,null===(o=(i=t.history).saveHistory)||void 0===o||o.call(i),t.sendMsgData({data:{objectDataStrArr:l},type:Tf.objectAdded})}else r.byReplay&&(r.byReplay=!1)})),n.on("object:removed",(function(e){var n,i,o=e.target;if(!o||o.byReplay||o.excludeFromExport)o.byReplay&&(o.byReplay=!1);else{if(t.history.historyProcessing||t.replayer.isReplayingFullData||t.graphics.isGraphDrawing)return;null===(i=(n=t.history).saveHistory)||void 0===i||i.call(n),t.sendMsgData({data:{objectDataStrArr:[o.objId]},type:Tf.objectRemoved})}}))}},{key:"triggerEventHandler",value:function(e){for(var t,n=this,i=arguments.length,o=new Array(i>1?i-1:0),r=1;r<i;r++)o[r-1]=arguments[r];e?(null===(t=this.eventHandlers[e])||void 0===t?void 0:t.length)&&this.eventHandlers[e].forEach((function(e){return e.apply(n,o)})):console.warn("[Annotation triggerEventHandler] ERROR: type=".concat(e," is falsy."))}},{key:"addEventHandler",value:function(e,t){e&&t?this.eventHandlers[e]?this.eventHandlers[e].push(t):this.eventHandlers[e]=[t]:console.warn("[Annotation addEventHandler] ERROR: type=".concat(e," || handler=").concat(t," is falsy."))}},{key:"removeEventHandler",value:function(e,t){if(e&&t){if(this.eventHandlers[e]){var n=this.eventHandlers[e].findIndex((function(e){return e===t}));n>=0&&this.eventHandlers[e].splice(n,1)}}else console.warn("[Annotation removeEventHandler] ERROR: type=".concat(e," || handler=").concat(t," is falsy."))}},{key:"init",value:function(e){var t=e.transferLayerObserverInstance,n=e.userId;this.transferLayerObserverInstance=t,this.userId=n}},{key:"initToolbar",value:function(e){var t;this.enableToolbar&&((t=document.createElement("div")).setAttribute("style","position:fixed;top:0;left:0;z-index: ".concat(b,";pointer-events: none;")),t.classList.add(Jn.controller,T,O),document.body.appendChild(t),Od(e,this.isCommonSDK))}},{key:"getCanvasEle",value:function(){var e=function(e){var t=e.isLeader,n=e.width,i=e.height,o=document.createElement("style");o.appendChild(document.createTextNode("\\n .".concat(Jn.wrapper," {\\n z-index: ").concat(b,";\\n pointer-events: none;\\n }\\n .").concat(Jn.drawing,".").concat(Jn.wrapper," {\\n pointer-events: auto;\\n }\\n .").concat(Jn.wrapper,".").concat(Jn.wrapperCustomer," {\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n }\\n .").concat(Jn.wrapper,".").concat(Jn.wrapperAgent," {\\n position: fixed;\\n top: 50%;\\n left: 50%;\\n transform: translate(-50%, -50%);\\n transform-origin: top left;\\n }\\n .").concat(Jn.wrapper,".").concat(Jn.drawing," {\\n z-index: ").concat(b,";\\n }\\n ")));var r=document.createElement("div");r.classList.add(Jn.wrapper,T,t?Jn.wrapperCustomer:Jn.wrapperAgent,O);var a=document.createElement("canvas");return a.width=n,a.height=i,a.classList.add(Jn.basic),r.appendChild(a),r.appendChild(o),{canvasWrapper:r,canvas:a}}({isCommonSDK:this.isCommonSDK,isLeader:this.isLeader,width:document.documentElement.clientWidth||window.innerWidth,height:document.documentElement.clientHeight||window.innerHeight}),t=e.canvasWrapper,n=e.canvas;if(this.isLeader)document.body.insertBefore(t,document.body.firstChild);else{var i=this.isRecordUser?document.querySelector(".".concat("replayer-wrapper")):document.querySelector(\'[title="\'.concat(C,\'"]\'));i&&i.parentElement?i.parentElement.appendChild(t):console.error("[getCanvasEle] for Common Follower ERROR: iframeEle=".concat(i," is falsy"))}return{canvasWrapper:t,canvas:n}}},{key:"initCanvasAndToolbar",value:function(){if(!this.start){Zn();var e=this.getCanvasEle().canvas;e&&(this.start=!0,this.initFabric(e),this.startGetData(),this.initToolbar(),this.initResizeController(),this.isLeader||this.requestFullDataReplay())}}},{key:"requestFullDataReplay",value:function(e,t){var n={type:Tf.requestFullDataReplay,data:{userType:this.getUserType()}};e&&(n.data.reqVersion=e),t&&(n.data.targetId=t),this.sendMsgData(n)}},{key:"customerRequestFullDataReplay",value:function(e){var t,n,i=null===(t=e.filter((function(e){return e.participantType===It.FOLLOWER})).sort((function(e,t){return e.joinTimestamp-t.joinTimestamp})))||void 0===t?void 0:t[0];i&&this.requestFullDataReplay(void 0,null!==(n=i.userId)&&void 0!==n?n:null)}},{key:"sendFullDataRespMsg",value:function(e){this.sendMsgData({data:e,type:Tf.fullDataReplayResponse})}},{key:"sendHistoryChangeMsg",value:function(e){this.sendMsgData({data:e,type:Tf.historyChange})}},{key:"sendHistoryChangeOperationMsg",value:function(e){this.sendMsgData({data:{operation:e},type:Tf.historyChange})}},{key:"sendClearOperationMsg",value:function(){this.sendMsgData({data:"",type:Tf.clearCanvas})}},{key:"startGetData",value:function(){var e,t=this,n=this;null===(e=this.transferLayerObserverInstance)||void 0===e||e.registerMessageHandler("recv-anotation",(function(e,i){var o,r,a;if(i.eventType===Q.INTERACTION){var s=i.data.event.data;if(4!==(null==s?void 0:s.source))return;void 0!==(null==s?void 0:s.width)&&n.updateCanvasSize(s)}else if(i.eventType===Q.ANNOTATION){var l=Date.now(),c=i.data,u=n.replayer.handleData(c);if((null===(o=null==u?void 0:u.resFullData)||void 0===o?void 0:o.fullData)&&n.sendFullDataRespMsg(u.resFullData),!(null===(r=c.data.objectDataStrArr)||void 0===r?void 0:r.length))return;var h=Date.now(),d=i.data;t.cbsInteractionLatencyLog.log({cId:d.cId,event_type:z.IncrementalSnapshot,event_source:B.Annotation,participant_type:It.FOLLOWER,ptime:d.timestamp,dtime:l,detime:h})}else if(i.eventType===Q.NTP)"number"==typeof i.data.delta&&t.cbsInteractionLatencyLog.setLocalMathineTimeDelta({delta:i.data.delta,connId:i.data.cId});else if(i.eventType===Q.DISCONNECTED)t.cbsInteractionLatencyLog.destroy();else if(i.eventType===Q.USER_ROSTER){null===(a=i.data.remove)||void 0===a||a.forEach((function(e){t.cbsInteractionLatencyLog.delete(e.connId)}))}}))}},{key:"sendMsgData",value:function(e){this.sendMsg({eventType:Q.ANNOTATION,data:Object.assign(Object.assign({},e),{version:this.history.curVersion,lastVersion:this.history.lastVersion,originId:this.userId,timestamp:Date.now()})})}},{key:"sendMsg",value:function(e){var t;null===(t=this.transferLayerObserverInstance)||void 0===t||t.sendMessage(e)}},{key:"clearCanvas",value:function(){var e;this.canvas&&(null===(e=this.canvas)||void 0===e?void 0:e.wrapperEl)&&(this.canvas.off(),this.canvas.dispose())}},{key:"hideEle",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=arguments.length>1?arguments[1]:void 0,n=document.querySelector(".".concat(t));n&&n.setAttribute("style",n.getAttribute("style")+";"+"display: ".concat(e?"none":"block",";"))}},{key:"hideToolbar",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.showToolbar=!e,this.hideEle(e,Jn.toolbar),e&&(this.enableControlMode(),this.triggerEventHandler(La,Ga)),this.triggerEventHandler(Ba,e)}},{key:"hideOpenBtn",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.hideEle(e,Jn.openBtn)}},{key:"endAnotation",value:function(){this.clearCanvas(),this.hideToolbar(),Zn(),this.start=!1}},{key:"getUserType",value:function(){return this.isLeader?Of.Customer:this.isRecordUser?Of.Recorder:Of.Agent}}]),e}();!function(e){e.Init="Init",e.Start="Start",e.Stop="Stop",e.Pause="Pause",e.Resume="Resume"}(Xf||(Xf={}));var Jf=function(){function e(t){_classCallCheck(this,e),this.option=t,this.transferLayerObserverInstance=null,this.isRecordingEnable=!1,this.isCallingRecording=!1;var i=this.option.mode===_.zcc?"CC":"COMMON";this.tracelog=n.makeLogger(["CoBrowsing Session",i]),this.needUpdateRecordStatus=Xf.Init}return _createClass(e,[{key:"getIsRecordingEnable",get:function(){return this.isRecordingEnable}},{key:"setIsRecordingEnable",value:function(e){this.isRecordingEnable=e}},{key:"setTransferLayerObserverInstance",value:function(e){this.transferLayerObserverInstance=e}},{key:"recoverRecordPreviousStatus",value:function(){this.needUpdateRecordStatus===Xf.Start&&this.startRecord(),this.needUpdateRecordStatus!==Xf.Pause&&this.needUpdateRecordStatus!==Xf.Resume||this.startRecord()}},{key:"startRecord",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.tracelog.log("call start record isNeedDelay ".concat(t)),this.isRecordingEnable){if(t||this.isCallingRecording)return this.needUpdateRecordStatus=Xf.Start,void this.tracelog.log("startRecord wait for response");this.tracelog.log("sendMessage startRecord"),this.isCallingRecording=!0,null===(e=this.transferLayerObserverInstance)||void 0===e||e.sendMessage({eventType:Q.START_RECORD,data:void 0})}else this.tracelog.warn("recording is not enabled")}},{key:"stopRecord",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.tracelog.log("call stop record isNeedDelay ".concat(t)),this.isRecordingEnable){if(t||this.isCallingRecording)return this.needUpdateRecordStatus=Xf.Stop,void this.tracelog.log("stopRecord wait for response");this.tracelog.log("sendMessage stopRecord"),this.isCallingRecording=!0,null===(e=this.transferLayerObserverInstance)||void 0===e||e.sendMessage({eventType:Q.STOP_RECORD,data:void 0})}else this.tracelog.warn("recording is not enabled")}},{key:"pauseRecord",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.tracelog.log("call pause isNeedDelay ".concat(t)),this.isRecordingEnable){if(t||this.isCallingRecording)return this.needUpdateRecordStatus=Xf.Pause,void this.tracelog.log("pauseRecord wait for response");this.tracelog.log("sendMessage pauseRecord"),this.isCallingRecording=!0,null===(e=this.transferLayerObserverInstance)||void 0===e||e.sendMessage({eventType:Q.PAUSE_RECORD,data:void 0})}else this.tracelog.warn("recording is not enabled")}},{key:"resumeRecord",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.tracelog.log("call resume isNeedDelay ".concat(t)),this.isRecordingEnable){if(t||this.isCallingRecording)return this.needUpdateRecordStatus=Xf.Resume,void this.tracelog.log("resumeRecord wait for response");this.tracelog.log("sendMessage resumeRecord"),this.isCallingRecording=!0,null===(e=this.transferLayerObserverInstance)||void 0===e||e.sendMessage({eventType:Q.RESUME_RECORD,data:void 0})}else this.tracelog.warn("recording is not enabled")}},{key:"startRecordCallBack",value:function(e){e?(this.isCallingRecording=!1,this.tracelog.log("startRecordCallBack needUpdateRecordStatus: ".concat(this.needUpdateRecordStatus)),this.needUpdateRecordStatus===Xf.Stop&&this.stopRecord(),this.needUpdateRecordStatus===Xf.Pause&&this.pauseRecord(),this.needUpdateRecordStatus=Xf.Init):this.resetRecordCallBack()}},{key:"stopRecordCallBack",value:function(e){e?(this.tracelog.log("stopRecordCallBack needUpdateRecordStatus: ".concat(this.needUpdateRecordStatus)),this.isCallingRecording=!1,this.needUpdateRecordStatus===Xf.Start&&this.startRecord(),this.needUpdateRecordStatus=Xf.Init):this.resetRecordCallBack()}},{key:"pauseRecordCallBack",value:function(e){e?(this.tracelog.log("pauseRecordCallBack needUpdateRecordStatus: ".concat(this.needUpdateRecordStatus)),this.isCallingRecording=!1,this.needUpdateRecordStatus===Xf.Stop&&this.stopRecord(),this.needUpdateRecordStatus===Xf.Resume&&this.resumeRecord(),this.needUpdateRecordStatus=Xf.Init):this.resetRecordCallBack()}},{key:"resumeRecordCallBack",value:function(e){e?(this.tracelog.log("resumeRecordCallBack needUpdateRecordStatus: ".concat(this.needUpdateRecordStatus)),this.isCallingRecording=!1,this.needUpdateRecordStatus===Xf.Stop&&this.stopRecord(),this.needUpdateRecordStatus===Xf.Pause&&this.pauseRecord(),this.needUpdateRecordStatus=Xf.Init):this.resetRecordCallBack()}},{key:"resetRecordCallBack",value:function(){this.tracelog.log("resetRecordCallBack "),this.isCallingRecording=!1,this.needUpdateRecordStatus=Xf.Init}},{key:"getRecordingNotifyStatus",value:function(e){var t=e.isRecording,n=e.isRecordingPaused,i={started:!1,stopped:!1,paused:!1,resumed:!1};if(void 0===t)return i;if(void 0===this.isRecording)return this.isRecording=t,t&&(i.started=!0,this.isRecordingPaused=n,n&&(i.paused=!0)),i;if(this.isRecording!==t)return this.isRecording=t,this.isRecordingPaused=n,i.started=t,i.stopped=!t,i;if(t&&this.isRecording===t)if(void 0===this.isRecordingPaused)this.isRecordingPaused=n,i.paused=!!n,i.resumed=!n;else if(this.isRecordingPaused!==n)return this.isRecordingPaused=n,i.paused=!!n,i.resumed=!n,i;return i}},{key:"showRecordingLegalConsentDialog",value:function(){n.recordingStore.setState({showNeedLegalConsentDialog:!0,customerLegalConsentAction:k.NoAction})}},{key:"updateRecordingConsentAndMonitorSettings",value:function(e){var t,i,o,r,a,s,l,c,u,h;n.recordingStore.setState({enableMonitor:null!==(i=null===(t=e.recording)||void 0===t?void 0:t.enable_monitor)&&void 0!==i&&i,monitorMessage:null!==(r=null===(o=e.recording)||void 0===o?void 0:o.monitor_message)&&void 0!==r?r:"",consentMessageDuration:null!==(s=null===(a=e.recording)||void 0===a?void 0:a.consent_message_duration)&&void 0!==s?s:0,consentMessage:null!==(c=null===(l=e.recording)||void 0===l?void 0:l.consent_message)&&void 0!==c?c:"",enableConsent:null!==(h=null===(u=e.recording)||void 0===u?void 0:u.enable_consent)&&void 0!==h&&h})}},{key:"responseRecordingLegalConsent",value:function(e){var t,i,o=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if((null===(t=n.recordingStore.getState())||void 0===t?void 0:t.customerLegalConsentAction)!==k.NoAction){var r=e&&o?ae.PASSIVE:e?ae.ACTIVE:ae.REJECT;null===(i=this.transferLayerObserverInstance)||void 0===i||i.sendMessage({eventType:Q.RECORD_APPROVE_RESPONSE,data:{status:r}}),n.recordingStore.setState({customerLegalConsentAction:k.NoAction})}else this.tracelog.warn("multi responseRecordingLegalConsent")}}]),e}(),Zf=function(e){return pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function t(){var n,i,r,a;return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,n=zn(e),i=o.publicStore.getState(),r=i.ZCBTokenConsumer,t.next=5,null==r?void 0:r.getData(n);case 5:return a=t.sent,t.abrupt("return",Fn(a||""));case 9:return t.prev=9,t.t0=t.catch(0),console.error("getStorage error",t.t0),t.abrupt("return","");case 13:case"end":return t.stop()}}),t,null,[[0,9]])})))},$f=function(e,t){return pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function n(){var i,r,a,s;return _regeneratorRuntime().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(i=zn(e),r=zn(t),a=o.publicStore.getState(),s=a.ZCBTokenConsumer,!i){n.next=6;break}return n.next=6,null==s?void 0:s.setData(st.LocalStorage,i,r);case 6:case"end":return n.stop()}}),n)})))},Qf={setSessionData:function(e,t,n){return pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function i(){var r,a,s,l;return _regeneratorRuntime().wrap((function(i){for(;;)switch(i.prev=i.next){case 0:if(r=zn(e),a=zn(t),s=o.publicStore.getState(),l=s.ZCBTokenConsumer,!e){i.next=6;break}return i.next=6,null==l?void 0:l.setStorageData(st.LocalStorage,r,a,n);case 6:case"end":return i.stop()}}),i)})))},getSessionData:function(e){return pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function t(){var n,i,r,a;return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,n=zn(e),i=o.publicStore.getState(),r=i.ZCBTokenConsumer,t.next=5,null==r?void 0:r.getData(n);case 5:return a=t.sent,t.abrupt("return",Fn(a||""));case 9:return t.prev=9,t.t0=t.catch(0),console.error("getSessionDate error",t.t0),t.abrupt("return","");case 13:case"end":return t.stop()}}),t,null,[[0,9]])})))},removeSessionData:function(e){return pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function t(){var n,i,r;return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=zn(e),i=o.publicStore.getState(),r=i.ZCBTokenConsumer,t.next=4,null==r?void 0:r.removeData(n,{});case 4:case"end":return t.stop()}}),t)})))},handleDuplicateSession:function(e){var t=e.key,n=e.onError;return Promise.race([new Promise((function(e,i){Qf.setSessionData(t,"unknown",(function(r){if(r.newValue&&"true"===Fn(r.newValue)&&(n(),i("other page recently created session")),r.newValue&&"unknown"===Fn(r.newValue)){var a=o.publicStore.getState().session;if(!a)return void e("");var s=a.getSessionInfo().sessionStatus;if(s!==g.STARTED&&s!==g.CONNECTING&&s!==g.RECONNECTING)return void e("");Qf.setSessionData(t,"true"),e("")}}))})),new Promise((function(e){window.setTimeout((function(){Qf.removeSessionData(t).then(e)}),300)}))])}},ep=function(){function e(){_classCallCheck(this,e),this.ZCB_ZmTrackingIds={}}return _createClass(e,[{key:"setZmTrackingIds",value:function(e){var t=e.zmWebTrackingId,n=e.zmChsTrackingId,i=e.zmTrackingId;this.ZCB_ZmTrackingIds={zmWebTrackingId:t,zmChsTrackingId:n,zmTrackingId:i}}},{key:"genZmTrackingId",value:function(){var e=Bf(),t="zcb_client_".concat(e,"_0"),n="".concat(e,"_0");return this.ZCB_ZmTrackingIds={zmWebTrackingId:t,zmChsTrackingId:n,zmTrackingId:e},{zmWebTrackingId:t,zmChsTrackingId:n,zmTrackingId:e}}},{key:"getZmTrackingId",value:function(){var e,t=null===(e=this.ZCB_ZmTrackingIds)||void 0===e?void 0:e.zmTrackingId;return t||(console.warn("getZmTrackingId failed, generate new zmTrackingId: ".concat(t)),t=this.genZmTrackingId().zmTrackingId),t}},{key:"clearZmTrackingId",value:function(){this.ZCB_ZmTrackingIds={}}},{key:"genFailOverZmChsTrackingId",value:function(){var e,t=null===(e=this.ZCB_ZmTrackingIds)||void 0===e?void 0:e.zmChsTrackingId;t||(t=this.genZmTrackingId().zmChsTrackingId);var n=t.match(/(\\d+)(?!.*\\d+)/);if(n){var i=parseInt(n[0])+1,o=t.substring(0,n.index)+i;return this.ZCB_ZmTrackingIds&&(this.ZCB_ZmTrackingIds.zmChsTrackingId=o),o}return this.genZmTrackingId().zmChsTrackingId}},{key:"getZmTrackingIdForWeb",value:function(){var e,t=null===(e=this.ZCB_ZmTrackingIds)||void 0===e?void 0:e.zmWebTrackingId;t||(t=this.genZmTrackingId().zmWebTrackingId);var n=t.match(/(\\d+)(?!.*\\d+)/);if(n){var i=parseInt(n[0])+1,o=t.substring(0,n.index)+i;return this.ZCB_ZmTrackingIds&&(this.ZCB_ZmTrackingIds.zmWebTrackingId=o),o}return this.genZmTrackingId().zmWebTrackingId}},{key:"getZmTrackingIdForChs",value:function(){var e,t=null===(e=this.ZCB_ZmTrackingIds)||void 0===e?void 0:e.zmChsTrackingId;return t||(t=this.genZmTrackingId().zmChsTrackingId),t}}]),e}(),tp=window.ZCB_TrackingIdController||new ep;window.ZCB_TrackingIdController=tp;var np=new(function(){function e(){_classCallCheck(this,e),window.ZCB_ZmCobrowseInfo={session:{userId:"",sessionId:"",participantType:""},isCobrowseLocked:!1}}return _createClass(e,[{key:"getSession",value:function(){var e;return null===(e=window.ZCB_ZmCobrowseInfo)||void 0===e?void 0:e.session}},{key:"getCobrowse",value:function(){return window.ZCB_ZmCobrowseInfo}},{key:"setSessionId",value:function(e){window.ZCB_ZmCobrowseInfo.session.sessionId=e}},{key:"setUserId",value:function(e){window.ZCB_ZmCobrowseInfo.session.userId=e}},{key:"setParticipantType",value:function(e){window.ZCB_ZmCobrowseInfo.session.participantType=e}},{key:"setIsCobrowseLocked",value:function(e){window.ZCB_ZmCobrowseInfo.isCobrowseLocked=e}},{key:"setSession",value:function(e){Object.assign(window.ZCB_ZmCobrowseInfo.session,e)}},{key:"clearSession",value:function(){window.ZCB_ZmCobrowseInfo.session={userId:"",sessionId:"",participantType:""},window.ZCB_ZmCobrowseInfo.isCobrowseLocked=!1}}]),e}()),ip=function(e){_inherits(n,e);var t=_createSuper(n);function n(){var e;return _classCallCheck(this,n),(e=t.call(this)).visible="visible"===document.visibilityState,e.handleVisibilityChange=function(){"visible"===document.visibilityState?e.visible=!0:e.visible=!1,e.emit("change",e.visible)},e}return _createClass(n,[{key:"init",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"visibility";this.visible="visible"===document.visibilityState,"visibility"===e&&document.addEventListener("visibilitychange",this.handleVisibilityChange),"focus"===e&&(window.addEventListener("focus",this.handleFocusChange),window.addEventListener("blur",this.handleFocusChange))}},{key:"handleFocusChange",value:function(e){var t=e.type;"blur"===t?document.hasFocus()||(this.visible=!1,this.emit("change",this.visible)):"focus"===t&&(this.visible||(this.visible=!0,this.emit("change",this.visible)))}},{key:"stop",value:function(){document.removeEventListener("visibilitychange",this.handleVisibilityChange),window.removeEventListener("focus",this.handleFocusChange),window.removeEventListener("blur",this.handleFocusChange)}}]),n}(mt);/*! js-cookie v3.0.5 | MIT */function op(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)e[i]=n[i]}return e}var rp,ap,sp=function e(t,n){function i(e,i,o){if("undefined"!=typeof document){"number"==typeof(o=op({},n,o)).expires&&(o.expires=new Date(Date.now()+864e5*o.expires)),o.expires&&(o.expires=o.expires.toUTCString()),e=encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var r="";for(var a in o)o[a]&&(r+="; "+a,!0!==o[a]&&(r+="="+o[a].split(";")[0]));return document.cookie=e+"="+t.write(i,e)+r}}return Object.create({set:i,get:function(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var n=document.cookie?document.cookie.split("; "):[],i={},o=0;o<n.length;o++){var r=n[o].split("="),a=r.slice(1).join("=");try{var s=decodeURIComponent(r[0]);if(i[s]=t.read(a,s),e===s)break}catch(e){}}return e?i[e]:i}},remove:function(e,t){i(e,"",op({},t,{expires:-1}))},withAttributes:function(t){return e(this.converter,op({},this.attributes,t))},withConverter:function(t){return e(op({},this.converter,t),this.attributes)}},{attributes:{value:Object.freeze(n)},converter:{value:Object.freeze(t)}})}({read:function(e){return\'"\'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"}),lp=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"set",value:function(e,t,n){try{return sp.set(e,t,n)}catch(e){return""}}},{key:"get",value:function(e){try{return sp.get(e)}catch(e){return""}}},{key:"remove",value:function(e,t){try{return sp.remove(e,t)}catch(e){return""}}}]),e}(),cp=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"set",value:function(e,t){try{sessionStorage.setItem(e,t)}catch(e){console.error(e)}}},{key:"get",value:function(e){try{return sessionStorage.getItem(e)}catch(e){return console.error(e),""}}},{key:"remove",value:function(e){try{sessionStorage.removeItem(e)}catch(e){console.error(e)}}}]),e}(),up=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"set",value:function(e,t){try{localStorage.setItem(e,t)}catch(e){console.error(e)}}},{key:"get",value:function(e){try{return localStorage.getItem(e)}catch(e){return console.error(e),""}}},{key:"remove",value:function(e){try{localStorage.removeItem(e)}catch(e){console.error(e)}}}]),e}();function hp(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var dp,fp=function(){if(ap)return rp;ap=1;var e=2147483647,t=36,n=/^xn--/,i=/[^\\0-\\x7F]/,o=/[\\x2E\\u3002\\uFF0E\\uFF61]/g,r={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},a=Math.floor,s=String.fromCharCode;function l(e){throw new RangeError(r[e])}function c(e,t){var n=e.split("@"),i="";n.length>1&&(i=n[0]+"@",e=n[1]);var r=function(e,t){for(var n=[],i=e.length;i--;)n[i]=t(e[i]);return n}((e=e.replace(o,".")).split("."),t).join(".");return i+r}function u(e){for(var t=[],n=0,i=e.length;n<i;){var o=e.charCodeAt(n++);if(o>=55296&&o<=56319&&n<i){var r=e.charCodeAt(n++);56320==(64512&r)?t.push(((1023&o)<<10)+(1023&r)+65536):(t.push(o),n--)}else t.push(o)}return t}var h=function(e){return e>=48&&e<58?e-48+26:e>=65&&e<91?e-65:e>=97&&e<123?e-97:t},d=function(e,t){return e+22+75*(e<26)-((0!=t)<<5)},f=function(e,n,i){var o=0;for(e=i?a(e/700):e>>1,e+=a(e/n);e>455;o+=t)e=a(e/35);return a(o+36*e/(e+38))},p=function(n){var i=[],o=n.length,r=0,s=128,c=72,u=n.lastIndexOf("-");u<0&&(u=0);for(var d=0;d<u;++d)n.charCodeAt(d)>=128&&l("not-basic"),i.push(n.charCodeAt(d));for(var p=u>0?u+1:0;p<o;){for(var g=r,m=1,v=t;;v+=t){p>=o&&l("invalid-input");var y=h(n.charCodeAt(p++));y>=t&&l("invalid-input"),y>a((e-r)/m)&&l("overflow"),r+=y*m;var b=v<=c?1:v>=c+26?26:v-c;if(y<b)break;var _=t-b;m>a(e/_)&&l("overflow"),m*=_}var k=i.length+1;c=f(r-g,k,0==g),a(r/k)>e-s&&l("overflow"),s+=a(r/k),r%=k,i.splice(r++,0,s)}return String.fromCodePoint.apply(String,i)},g=function(n){var i,o=[],r=(n=u(n)).length,c=128,h=0,p=72,g=_createForOfIteratorHelper(n);try{for(g.s();!(i=g.n()).done;){var m=i.value;m<128&&o.push(s(m))}}catch(e){g.e(e)}finally{g.f()}var v=o.length,y=v;for(v&&o.push("-");y<r;){var b,_=e,k=_createForOfIteratorHelper(n);try{for(k.s();!(b=k.n()).done;){var w=b.value;w>=c&&w<_&&(_=w)}}catch(e){k.e(e)}finally{k.f()}var S=y+1;_-c>a((e-h)/S)&&l("overflow"),h+=(_-c)*S,c=_;var C,E=_createForOfIteratorHelper(n);try{for(E.s();!(C=E.n()).done;){var T=C.value;if(T<c&&++h>e&&l("overflow"),T===c){for(var O=h,j=t;;j+=t){var x=j<=p?1:j>=p+26?26:j-p;if(O<x)break;var R=O-x,I=t-x;o.push(s(d(x+R%I,0))),O=a(R/I)}o.push(s(d(O,0))),p=f(h,S,y===v),h=0,++y}}}catch(e){E.e(e)}finally{E.f()}++h,++c}return o.join("")};return rp={version:"2.3.1",ucs2:{decode:u,encode:function(e){return String.fromCodePoint.apply(String,_toConsumableArray(e))}},decode:p,encode:g,toASCII:function(e){return c(e,(function(e){return i.test(e)?"xn--"+g(e):e}))},toUnicode:function(e){return c(e,(function(e){return n.test(e)?p(e.slice(4).toLowerCase()):e}))}},rp}(),pp=hp(fp),gp=["ac","com.ac","edu.ac","gov.ac","mil.ac","net.ac","org.ac","ad","ae","ac.ae","co.ae","gov.ae","mil.ae","net.ae","org.ae","sch.ae","aero","airline.aero","airport.aero","accident-investigation.aero","accident-prevention.aero","aerobatic.aero","aeroclub.aero","aerodrome.aero","agents.aero","air-surveillance.aero","air-traffic-control.aero","aircraft.aero","airtraffic.aero","ambulance.aero","association.aero","author.aero","ballooning.aero","broker.aero","caa.aero","cargo.aero","catering.aero","certification.aero","championship.aero","charter.aero","civilaviation.aero","club.aero","conference.aero","consultant.aero","consulting.aero","control.aero","council.aero","crew.aero","design.aero","dgca.aero","educator.aero","emergency.aero","engine.aero","engineer.aero","entertainment.aero","equipment.aero","exchange.aero","express.aero","federation.aero","flight.aero","freight.aero","fuel.aero","gliding.aero","government.aero","groundhandling.aero","group.aero","hanggliding.aero","homebuilt.aero","insurance.aero","journal.aero","journalist.aero","leasing.aero","logistics.aero","magazine.aero","maintenance.aero","marketplace.aero","media.aero","microlight.aero","modelling.aero","navigation.aero","parachuting.aero","paragliding.aero","passenger-association.aero","pilot.aero","press.aero","production.aero","recreation.aero","repbody.aero","res.aero","research.aero","rotorcraft.aero","safety.aero","scientist.aero","services.aero","show.aero","skydiving.aero","software.aero","student.aero","taxi.aero","trader.aero","trading.aero","trainer.aero","union.aero","workinggroup.aero","works.aero","af","com.af","edu.af","gov.af","net.af","org.af","ag","co.ag","com.ag","net.ag","nom.ag","org.ag","ai","com.ai","net.ai","off.ai","org.ai","al","com.al","edu.al","gov.al","mil.al","net.al","org.al","am","co.am","com.am","commune.am","net.am","org.am","ao","co.ao","ed.ao","edu.ao","gov.ao","gv.ao","it.ao","og.ao","org.ao","pb.ao","aq","ar","bet.ar","com.ar","coop.ar","edu.ar","gob.ar","gov.ar","int.ar","mil.ar","musica.ar","mutual.ar","net.ar","org.ar","senasa.ar","tur.ar","arpa","e164.arpa","home.arpa","in-addr.arpa","ip6.arpa","iris.arpa","uri.arpa","urn.arpa","as","gov.as","asia","at","ac.at","sth.ac.at","co.at","gv.at","or.at","au","asn.au","com.au","edu.au","gov.au","id.au","net.au","org.au","conf.au","oz.au","act.au","nsw.au","nt.au","qld.au","sa.au","tas.au","vic.au","wa.au","act.edu.au","catholic.edu.au","nsw.edu.au","nt.edu.au","qld.edu.au","sa.edu.au","tas.edu.au","vic.edu.au","wa.edu.au","qld.gov.au","sa.gov.au","tas.gov.au","vic.gov.au","wa.gov.au","schools.nsw.edu.au","aw","com.aw","ax","az","biz.az","com.az","edu.az","gov.az","info.az","int.az","mil.az","name.az","net.az","org.az","pp.az","pro.az","ba","com.ba","edu.ba","gov.ba","mil.ba","net.ba","org.ba","bb","biz.bb","co.bb","com.bb","edu.bb","gov.bb","info.bb","net.bb","org.bb","store.bb","tv.bb","*.bd","be","ac.be","bf","gov.bf","bg","0.bg","1.bg","2.bg","3.bg","4.bg","5.bg","6.bg","7.bg","8.bg","9.bg","a.bg","b.bg","c.bg","d.bg","e.bg","f.bg","g.bg","h.bg","i.bg","j.bg","k.bg","l.bg","m.bg","n.bg","o.bg","p.bg","q.bg","r.bg","s.bg","t.bg","u.bg","v.bg","w.bg","x.bg","y.bg","z.bg","bh","com.bh","edu.bh","gov.bh","net.bh","org.bh","bi","co.bi","com.bi","edu.bi","or.bi","org.bi","biz","bj","africa.bj","agro.bj","architectes.bj","assur.bj","avocats.bj","co.bj","com.bj","eco.bj","econo.bj","edu.bj","info.bj","loisirs.bj","money.bj","net.bj","org.bj","ote.bj","restaurant.bj","resto.bj","tourism.bj","univ.bj","bm","com.bm","edu.bm","gov.bm","net.bm","org.bm","bn","com.bn","edu.bn","gov.bn","net.bn","org.bn","bo","com.bo","edu.bo","gob.bo","int.bo","mil.bo","net.bo","org.bo","tv.bo","web.bo","academia.bo","agro.bo","arte.bo","blog.bo","bolivia.bo","ciencia.bo","cooperativa.bo","democracia.bo","deporte.bo","ecologia.bo","economia.bo","empresa.bo","indigena.bo","industria.bo","info.bo","medicina.bo","movimiento.bo","musica.bo","natural.bo","nombre.bo","noticias.bo","patria.bo","plurinacional.bo","politica.bo","profesional.bo","pueblo.bo","revista.bo","salud.bo","tecnologia.bo","tksat.bo","transporte.bo","wiki.bo","br","9guacu.br","abc.br","adm.br","adv.br","agr.br","aju.br","am.br","anani.br","aparecida.br","app.br","arq.br","art.br","ato.br","b.br","barueri.br","belem.br","bet.br","bhz.br","bib.br","bio.br","blog.br","bmd.br","boavista.br","bsb.br","campinagrande.br","campinas.br","caxias.br","cim.br","cng.br","cnt.br","com.br","contagem.br","coop.br","coz.br","cri.br","cuiaba.br","curitiba.br","def.br","des.br","det.br","dev.br","ecn.br","eco.br","edu.br","emp.br","enf.br","eng.br","esp.br","etc.br","eti.br","far.br","feira.br","flog.br","floripa.br","fm.br","fnd.br","fortal.br","fot.br","foz.br","fst.br","g12.br","geo.br","ggf.br","goiania.br","gov.br","ac.gov.br","al.gov.br","am.gov.br","ap.gov.br","ba.gov.br","ce.gov.br","df.gov.br","es.gov.br","go.gov.br","ma.gov.br","mg.gov.br","ms.gov.br","mt.gov.br","pa.gov.br","pb.gov.br","pe.gov.br","pi.gov.br","pr.gov.br","rj.gov.br","rn.gov.br","ro.gov.br","rr.gov.br","rs.gov.br","sc.gov.br","se.gov.br","sp.gov.br","to.gov.br","gru.br","imb.br","ind.br","inf.br","jab.br","jampa.br","jdf.br","joinville.br","jor.br","jus.br","leg.br","leilao.br","lel.br","log.br","londrina.br","macapa.br","maceio.br","manaus.br","maringa.br","mat.br","med.br","mil.br","morena.br","mp.br","mus.br","natal.br","net.br","niteroi.br","*.nom.br","not.br","ntr.br","odo.br","ong.br","org.br","osasco.br","palmas.br","poa.br","ppg.br","pro.br","psc.br","psi.br","pvh.br","qsl.br","radio.br","rec.br","recife.br","rep.br","ribeirao.br","rio.br","riobranco.br","riopreto.br","salvador.br","sampa.br","santamaria.br","santoandre.br","saobernardo.br","saogonca.br","seg.br","sjc.br","slg.br","slz.br","sorocaba.br","srv.br","taxi.br","tc.br","tec.br","teo.br","the.br","tmp.br","trd.br","tur.br","tv.br","udi.br","vet.br","vix.br","vlog.br","wiki.br","zlg.br","bs","com.bs","edu.bs","gov.bs","net.bs","org.bs","bt","com.bt","edu.bt","gov.bt","net.bt","org.bt","bv","bw","co.bw","org.bw","by","gov.by","mil.by","com.by","of.by","bz","co.bz","com.bz","edu.bz","gov.bz","net.bz","org.bz","ca","ab.ca","bc.ca","mb.ca","nb.ca","nf.ca","nl.ca","ns.ca","nt.ca","nu.ca","on.ca","pe.ca","qc.ca","sk.ca","yk.ca","gc.ca","cat","cc","cd","gov.cd","cf","cg","ch","ci","ac.ci","aéroport.ci","asso.ci","co.ci","com.ci","ed.ci","edu.ci","go.ci","gouv.ci","int.ci","net.ci","or.ci","org.ci","*.ck","!www.ck","cl","co.cl","gob.cl","gov.cl","mil.cl","cm","co.cm","com.cm","gov.cm","net.cm","cn","ac.cn","com.cn","edu.cn","gov.cn","mil.cn","net.cn","org.cn","公司.cn","網絡.cn","网络.cn","ah.cn","bj.cn","cq.cn","fj.cn","gd.cn","gs.cn","gx.cn","gz.cn","ha.cn","hb.cn","he.cn","hi.cn","hk.cn","hl.cn","hn.cn","jl.cn","js.cn","jx.cn","ln.cn","mo.cn","nm.cn","nx.cn","qh.cn","sc.cn","sd.cn","sh.cn","sn.cn","sx.cn","tj.cn","tw.cn","xj.cn","xz.cn","yn.cn","zj.cn","co","com.co","edu.co","gov.co","mil.co","net.co","nom.co","org.co","com","coop","cr","ac.cr","co.cr","ed.cr","fi.cr","go.cr","or.cr","sa.cr","cu","com.cu","edu.cu","gob.cu","inf.cu","nat.cu","net.cu","org.cu","cv","com.cv","edu.cv","id.cv","int.cv","net.cv","nome.cv","org.cv","publ.cv","cw","com.cw","edu.cw","net.cw","org.cw","cx","gov.cx","cy","ac.cy","biz.cy","com.cy","ekloges.cy","gov.cy","ltd.cy","mil.cy","net.cy","org.cy","press.cy","pro.cy","tm.cy","cz","de","dj","dk","dm","co.dm","com.dm","edu.dm","gov.dm","net.dm","org.dm","do","art.do","com.do","edu.do","gob.do","gov.do","mil.do","net.do","org.do","sld.do","web.do","dz","art.dz","asso.dz","com.dz","edu.dz","gov.dz","net.dz","org.dz","pol.dz","soc.dz","tm.dz","ec","com.ec","edu.ec","fin.ec","gob.ec","gov.ec","info.ec","k12.ec","med.ec","mil.ec","net.ec","org.ec","pro.ec","edu","ee","aip.ee","com.ee","edu.ee","fie.ee","gov.ee","lib.ee","med.ee","org.ee","pri.ee","riik.ee","eg","ac.eg","com.eg","edu.eg","eun.eg","gov.eg","info.eg","me.eg","mil.eg","name.eg","net.eg","org.eg","sci.eg","sport.eg","tv.eg","*.er","es","com.es","edu.es","gob.es","nom.es","org.es","et","biz.et","com.et","edu.et","gov.et","info.et","name.et","net.et","org.et","eu","fi","aland.fi","fj","ac.fj","biz.fj","com.fj","gov.fj","info.fj","mil.fj","name.fj","net.fj","org.fj","pro.fj","*.fk","fm","com.fm","edu.fm","net.fm","org.fm","fo","fr","asso.fr","com.fr","gouv.fr","nom.fr","prd.fr","tm.fr","avoues.fr","cci.fr","greta.fr","huissier-justice.fr","ga","gb","gd","edu.gd","gov.gd","ge","com.ge","edu.ge","gov.ge","net.ge","org.ge","pvt.ge","school.ge","gf","gg","co.gg","net.gg","org.gg","gh","com.gh","edu.gh","gov.gh","mil.gh","org.gh","gi","com.gi","edu.gi","gov.gi","ltd.gi","mod.gi","org.gi","gl","co.gl","com.gl","edu.gl","net.gl","org.gl","gm","gn","ac.gn","com.gn","edu.gn","gov.gn","net.gn","org.gn","gov","gp","asso.gp","com.gp","edu.gp","mobi.gp","net.gp","org.gp","gq","gr","com.gr","edu.gr","gov.gr","net.gr","org.gr","gs","gt","com.gt","edu.gt","gob.gt","ind.gt","mil.gt","net.gt","org.gt","gu","com.gu","edu.gu","gov.gu","guam.gu","info.gu","net.gu","org.gu","web.gu","gw","gy","co.gy","com.gy","edu.gy","gov.gy","net.gy","org.gy","hk","com.hk","edu.hk","gov.hk","idv.hk","net.hk","org.hk","个人.hk","個人.hk","公司.hk","政府.hk","敎育.hk","教育.hk","箇人.hk","組織.hk","組织.hk","網絡.hk","網络.hk","组織.hk","组织.hk","网絡.hk","网络.hk","hm","hn","com.hn","edu.hn","gob.hn","mil.hn","net.hn","org.hn","hr","com.hr","from.hr","iz.hr","name.hr","ht","adult.ht","art.ht","asso.ht","com.ht","coop.ht","edu.ht","firm.ht","gouv.ht","info.ht","med.ht","net.ht","org.ht","perso.ht","pol.ht","pro.ht","rel.ht","shop.ht","hu","2000.hu","agrar.hu","bolt.hu","casino.hu","city.hu","co.hu","erotica.hu","erotika.hu","film.hu","forum.hu","games.hu","hotel.hu","info.hu","ingatlan.hu","jogasz.hu","konyvelo.hu","lakas.hu","media.hu","news.hu","org.hu","priv.hu","reklam.hu","sex.hu","shop.hu","sport.hu","suli.hu","szex.hu","tm.hu","tozsde.hu","utazas.hu","video.hu","id","ac.id","biz.id","co.id","desa.id","go.id","mil.id","my.id","net.id","or.id","ponpes.id","sch.id","web.id","ie","gov.ie","il","ac.il","co.il","gov.il","idf.il","k12.il","muni.il","net.il","org.il","ישראל","אקדמיה.ישראל","ישוב.ישראל","צהל.ישראל","ממשל.ישראל","im","ac.im","co.im","ltd.co.im","plc.co.im","com.im","net.im","org.im","tt.im","tv.im","in","5g.in","6g.in","ac.in","ai.in","am.in","bihar.in","biz.in","business.in","ca.in","cn.in","co.in","com.in","coop.in","cs.in","delhi.in","dr.in","edu.in","er.in","firm.in","gen.in","gov.in","gujarat.in","ind.in","info.in","int.in","internet.in","io.in","me.in","mil.in","net.in","nic.in","org.in","pg.in","post.in","pro.in","res.in","travel.in","tv.in","uk.in","up.in","us.in","info","int","eu.int","io","co.io","com.io","edu.io","gov.io","mil.io","net.io","nom.io","org.io","iq","com.iq","edu.iq","gov.iq","mil.iq","net.iq","org.iq","ir","ac.ir","co.ir","gov.ir","id.ir","net.ir","org.ir","sch.ir","ایران.ir","ايران.ir","is","it","edu.it","gov.it","abr.it","abruzzo.it","aosta-valley.it","aostavalley.it","bas.it","basilicata.it","cal.it","calabria.it","cam.it","campania.it","emilia-romagna.it","emiliaromagna.it","emr.it","friuli-v-giulia.it","friuli-ve-giulia.it","friuli-vegiulia.it","friuli-venezia-giulia.it","friuli-veneziagiulia.it","friuli-vgiulia.it","friuliv-giulia.it","friulive-giulia.it","friulivegiulia.it","friulivenezia-giulia.it","friuliveneziagiulia.it","friulivgiulia.it","fvg.it","laz.it","lazio.it","lig.it","liguria.it","lom.it","lombardia.it","lombardy.it","lucania.it","mar.it","marche.it","mol.it","molise.it","piedmont.it","piemonte.it","pmn.it","pug.it","puglia.it","sar.it","sardegna.it","sardinia.it","sic.it","sicilia.it","sicily.it","taa.it","tos.it","toscana.it","trentin-sud-tirol.it","trentin-süd-tirol.it","trentin-sudtirol.it","trentin-südtirol.it","trentin-sued-tirol.it","trentin-suedtirol.it","trentino.it","trentino-a-adige.it","trentino-aadige.it","trentino-alto-adige.it","trentino-altoadige.it","trentino-s-tirol.it","trentino-stirol.it","trentino-sud-tirol.it","trentino-süd-tirol.it","trentino-sudtirol.it","trentino-südtirol.it","trentino-sued-tirol.it","trentino-suedtirol.it","trentinoa-adige.it","trentinoaadige.it","trentinoalto-adige.it","trentinoaltoadige.it","trentinos-tirol.it","trentinostirol.it","trentinosud-tirol.it","trentinosüd-tirol.it","trentinosudtirol.it","trentinosüdtirol.it","trentinosued-tirol.it","trentinosuedtirol.it","trentinsud-tirol.it","trentinsüd-tirol.it","trentinsudtirol.it","trentinsüdtirol.it","trentinsued-tirol.it","trentinsuedtirol.it","tuscany.it","umb.it","umbria.it","val-d-aosta.it","val-daosta.it","vald-aosta.it","valdaosta.it","valle-aosta.it","valle-d-aosta.it","valle-daosta.it","valleaosta.it","valled-aosta.it","valledaosta.it","vallee-aoste.it","vallée-aoste.it","vallee-d-aoste.it","vallée-d-aoste.it","valleeaoste.it","valléeaoste.it","valleedaoste.it","valléedaoste.it","vao.it","vda.it","ven.it","veneto.it","ag.it","agrigento.it","al.it","alessandria.it","alto-adige.it","altoadige.it","an.it","ancona.it","andria-barletta-trani.it","andria-trani-barletta.it","andriabarlettatrani.it","andriatranibarletta.it","ao.it","aosta.it","aoste.it","ap.it","aq.it","aquila.it","ar.it","arezzo.it","ascoli-piceno.it","ascolipiceno.it","asti.it","at.it","av.it","avellino.it","ba.it","balsan.it","balsan-sudtirol.it","balsan-südtirol.it","balsan-suedtirol.it","bari.it","barletta-trani-andria.it","barlettatraniandria.it","belluno.it","benevento.it","bergamo.it","bg.it","bi.it","biella.it","bl.it","bn.it","bo.it","bologna.it","bolzano.it","bolzano-altoadige.it","bozen.it","bozen-sudtirol.it","bozen-südtirol.it","bozen-suedtirol.it","br.it","brescia.it","brindisi.it","bs.it","bt.it","bulsan.it","bulsan-sudtirol.it","bulsan-südtirol.it","bulsan-suedtirol.it","bz.it","ca.it","cagliari.it","caltanissetta.it","campidano-medio.it","campidanomedio.it","campobasso.it","carbonia-iglesias.it","carboniaiglesias.it","carrara-massa.it","carraramassa.it","caserta.it","catania.it","catanzaro.it","cb.it","ce.it","cesena-forli.it","cesena-forlì.it","cesenaforli.it","cesenaforlì.it","ch.it","chieti.it","ci.it","cl.it","cn.it","co.it","como.it","cosenza.it","cr.it","cremona.it","crotone.it","cs.it","ct.it","cuneo.it","cz.it","dell-ogliastra.it","dellogliastra.it","en.it","enna.it","fc.it","fe.it","fermo.it","ferrara.it","fg.it","fi.it","firenze.it","florence.it","fm.it","foggia.it","forli-cesena.it","forlì-cesena.it","forlicesena.it","forlìcesena.it","fr.it","frosinone.it","ge.it","genoa.it","genova.it","go.it","gorizia.it","gr.it","grosseto.it","iglesias-carbonia.it","iglesiascarbonia.it","im.it","imperia.it","is.it","isernia.it","kr.it","la-spezia.it","laquila.it","laspezia.it","latina.it","lc.it","le.it","lecce.it","lecco.it","li.it","livorno.it","lo.it","lodi.it","lt.it","lu.it","lucca.it","macerata.it","mantova.it","massa-carrara.it","massacarrara.it","matera.it","mb.it","mc.it","me.it","medio-campidano.it","mediocampidano.it","messina.it","mi.it","milan.it","milano.it","mn.it","mo.it","modena.it","monza.it","monza-brianza.it","monza-e-della-brianza.it","monzabrianza.it","monzaebrianza.it","monzaedellabrianza.it","ms.it","mt.it","na.it","naples.it","napoli.it","no.it","novara.it","nu.it","nuoro.it","og.it","ogliastra.it","olbia-tempio.it","olbiatempio.it","or.it","oristano.it","ot.it","pa.it","padova.it","padua.it","palermo.it","parma.it","pavia.it","pc.it","pd.it","pe.it","perugia.it","pesaro-urbino.it","pesarourbino.it","pescara.it","pg.it","pi.it","piacenza.it","pisa.it","pistoia.it","pn.it","po.it","pordenone.it","potenza.it","pr.it","prato.it","pt.it","pu.it","pv.it","pz.it","ra.it","ragusa.it","ravenna.it","rc.it","re.it","reggio-calabria.it","reggio-emilia.it","reggiocalabria.it","reggioemilia.it","rg.it","ri.it","rieti.it","rimini.it","rm.it","rn.it","ro.it","roma.it","rome.it","rovigo.it","sa.it","salerno.it","sassari.it","savona.it","si.it","siena.it","siracusa.it","so.it","sondrio.it","sp.it","sr.it","ss.it","südtirol.it","suedtirol.it","sv.it","ta.it","taranto.it","te.it","tempio-olbia.it","tempioolbia.it","teramo.it","terni.it","tn.it","to.it","torino.it","tp.it","tr.it","trani-andria-barletta.it","trani-barletta-andria.it","traniandriabarletta.it","tranibarlettaandria.it","trapani.it","trento.it","treviso.it","trieste.it","ts.it","turin.it","tv.it","ud.it","udine.it","urbino-pesaro.it","urbinopesaro.it","va.it","varese.it","vb.it","vc.it","ve.it","venezia.it","venice.it","verbania.it","vercelli.it","verona.it","vi.it","vibo-valentia.it","vibovalentia.it","vicenza.it","viterbo.it","vr.it","vs.it","vt.it","vv.it","je","co.je","net.je","org.je","*.jm","jo","agri.jo","ai.jo","com.jo","edu.jo","eng.jo","fm.jo","gov.jo","mil.jo","net.jo","org.jo","per.jo","phd.jo","sch.jo","tv.jo","jobs","jp","ac.jp","ad.jp","co.jp","ed.jp","go.jp","gr.jp","lg.jp","ne.jp","or.jp","aichi.jp","akita.jp","aomori.jp","chiba.jp","ehime.jp","fukui.jp","fukuoka.jp","fukushima.jp","gifu.jp","gunma.jp","hiroshima.jp","hokkaido.jp","hyogo.jp","ibaraki.jp","ishikawa.jp","iwate.jp","kagawa.jp","kagoshima.jp","kanagawa.jp","kochi.jp","kumamoto.jp","kyoto.jp","mie.jp","miyagi.jp","miyazaki.jp","nagano.jp","nagasaki.jp","nara.jp","niigata.jp","oita.jp","okayama.jp","okinawa.jp","osaka.jp","saga.jp","saitama.jp","shiga.jp","shimane.jp","shizuoka.jp","tochigi.jp","tokushima.jp","tokyo.jp","tottori.jp","toyama.jp","wakayama.jp","yamagata.jp","yamaguchi.jp","yamanashi.jp","三重.jp","京都.jp","佐賀.jp","兵庫.jp","北海道.jp","千葉.jp","和歌山.jp","埼玉.jp","大分.jp","大阪.jp","奈良.jp","宮城.jp","宮崎.jp","富山.jp","山口.jp","山形.jp","山梨.jp","岐阜.jp","岡山.jp","岩手.jp","島根.jp","広島.jp","徳島.jp","愛媛.jp","愛知.jp","新潟.jp","東京.jp","栃木.jp","沖縄.jp","滋賀.jp","熊本.jp","石川.jp","神奈川.jp","福井.jp","福岡.jp","福島.jp","秋田.jp","群馬.jp","茨城.jp","長崎.jp","長野.jp","青森.jp","静岡.jp","香川.jp","高知.jp","鳥取.jp","鹿児島.jp","*.kawasaki.jp","!city.kawasaki.jp","*.kitakyushu.jp","!city.kitakyushu.jp","*.kobe.jp","!city.kobe.jp","*.nagoya.jp","!city.nagoya.jp","*.sapporo.jp","!city.sapporo.jp","*.sendai.jp","!city.sendai.jp","*.yokohama.jp","!city.yokohama.jp","aisai.aichi.jp","ama.aichi.jp","anjo.aichi.jp","asuke.aichi.jp","chiryu.aichi.jp","chita.aichi.jp","fuso.aichi.jp","gamagori.aichi.jp","handa.aichi.jp","hazu.aichi.jp","hekinan.aichi.jp","higashiura.aichi.jp","ichinomiya.aichi.jp","inazawa.aichi.jp","inuyama.aichi.jp","isshiki.aichi.jp","iwakura.aichi.jp","kanie.aichi.jp","kariya.aichi.jp","kasugai.aichi.jp","kira.aichi.jp","kiyosu.aichi.jp","komaki.aichi.jp","konan.aichi.jp","kota.aichi.jp","mihama.aichi.jp","miyoshi.aichi.jp","nishio.aichi.jp","nisshin.aichi.jp","obu.aichi.jp","oguchi.aichi.jp","oharu.aichi.jp","okazaki.aichi.jp","owariasahi.aichi.jp","seto.aichi.jp","shikatsu.aichi.jp","shinshiro.aichi.jp","shitara.aichi.jp","tahara.aichi.jp","takahama.aichi.jp","tobishima.aichi.jp","toei.aichi.jp","togo.aichi.jp","tokai.aichi.jp","tokoname.aichi.jp","toyoake.aichi.jp","toyohashi.aichi.jp","toyokawa.aichi.jp","toyone.aichi.jp","toyota.aichi.jp","tsushima.aichi.jp","yatomi.aichi.jp","akita.akita.jp","daisen.akita.jp","fujisato.akita.jp","gojome.akita.jp","hachirogata.akita.jp","happou.akita.jp","higashinaruse.akita.jp","honjo.akita.jp","honjyo.akita.jp","ikawa.akita.jp","kamikoani.akita.jp","kamioka.akita.jp","katagami.akita.jp","kazuno.akita.jp","kitaakita.akita.jp","kosaka.akita.jp","kyowa.akita.jp","misato.akita.jp","mitane.akita.jp","moriyoshi.akita.jp","nikaho.akita.jp","noshiro.akita.jp","odate.akita.jp","oga.akita.jp","ogata.akita.jp","semboku.akita.jp","yokote.akita.jp","yurihonjo.akita.jp","aomori.aomori.jp","gonohe.aomori.jp","hachinohe.aomori.jp","hashikami.aomori.jp","hiranai.aomori.jp","hirosaki.aomori.jp","itayanagi.aomori.jp","kuroishi.aomori.jp","misawa.aomori.jp","mutsu.aomori.jp","nakadomari.aomori.jp","noheji.aomori.jp","oirase.aomori.jp","owani.aomori.jp","rokunohe.aomori.jp","sannohe.aomori.jp","shichinohe.aomori.jp","shingo.aomori.jp","takko.aomori.jp","towada.aomori.jp","tsugaru.aomori.jp","tsuruta.aomori.jp","abiko.chiba.jp","asahi.chiba.jp","chonan.chiba.jp","chosei.chiba.jp","choshi.chiba.jp","chuo.chiba.jp","funabashi.chiba.jp","futtsu.chiba.jp","hanamigawa.chiba.jp","ichihara.chiba.jp","ichikawa.chiba.jp","ichinomiya.chiba.jp","inzai.chiba.jp","isumi.chiba.jp","kamagaya.chiba.jp","kamogawa.chiba.jp","kashiwa.chiba.jp","katori.chiba.jp","katsuura.chiba.jp","kimitsu.chiba.jp","kisarazu.chiba.jp","kozaki.chiba.jp","kujukuri.chiba.jp","kyonan.chiba.jp","matsudo.chiba.jp","midori.chiba.jp","mihama.chiba.jp","minamiboso.chiba.jp","mobara.chiba.jp","mutsuzawa.chiba.jp","nagara.chiba.jp","nagareyama.chiba.jp","narashino.chiba.jp","narita.chiba.jp","noda.chiba.jp","oamishirasato.chiba.jp","omigawa.chiba.jp","onjuku.chiba.jp","otaki.chiba.jp","sakae.chiba.jp","sakura.chiba.jp","shimofusa.chiba.jp","shirako.chiba.jp","shiroi.chiba.jp","shisui.chiba.jp","sodegaura.chiba.jp","sosa.chiba.jp","tako.chiba.jp","tateyama.chiba.jp","togane.chiba.jp","tohnosho.chiba.jp","tomisato.chiba.jp","urayasu.chiba.jp","yachimata.chiba.jp","yachiyo.chiba.jp","yokaichiba.chiba.jp","yokoshibahikari.chiba.jp","yotsukaido.chiba.jp","ainan.ehime.jp","honai.ehime.jp","ikata.ehime.jp","imabari.ehime.jp","iyo.ehime.jp","kamijima.ehime.jp","kihoku.ehime.jp","kumakogen.ehime.jp","masaki.ehime.jp","matsuno.ehime.jp","matsuyama.ehime.jp","namikata.ehime.jp","niihama.ehime.jp","ozu.ehime.jp","saijo.ehime.jp","seiyo.ehime.jp","shikokuchuo.ehime.jp","tobe.ehime.jp","toon.ehime.jp","uchiko.ehime.jp","uwajima.ehime.jp","yawatahama.ehime.jp","echizen.fukui.jp","eiheiji.fukui.jp","fukui.fukui.jp","ikeda.fukui.jp","katsuyama.fukui.jp","mihama.fukui.jp","minamiechizen.fukui.jp","obama.fukui.jp","ohi.fukui.jp","ono.fukui.jp","sabae.fukui.jp","sakai.fukui.jp","takahama.fukui.jp","tsuruga.fukui.jp","wakasa.fukui.jp","ashiya.fukuoka.jp","buzen.fukuoka.jp","chikugo.fukuoka.jp","chikuho.fukuoka.jp","chikujo.fukuoka.jp","chikushino.fukuoka.jp","chikuzen.fukuoka.jp","chuo.fukuoka.jp","dazaifu.fukuoka.jp","fukuchi.fukuoka.jp","hakata.fukuoka.jp","higashi.fukuoka.jp","hirokawa.fukuoka.jp","hisayama.fukuoka.jp","iizuka.fukuoka.jp","inatsuki.fukuoka.jp","kaho.fukuoka.jp","kasuga.fukuoka.jp","kasuya.fukuoka.jp","kawara.fukuoka.jp","keisen.fukuoka.jp","koga.fukuoka.jp","kurate.fukuoka.jp","kurogi.fukuoka.jp","kurume.fukuoka.jp","minami.fukuoka.jp","miyako.fukuoka.jp","miyama.fukuoka.jp","miyawaka.fukuoka.jp","mizumaki.fukuoka.jp","munakata.fukuoka.jp","nakagawa.fukuoka.jp","nakama.fukuoka.jp","nishi.fukuoka.jp","nogata.fukuoka.jp","ogori.fukuoka.jp","okagaki.fukuoka.jp","okawa.fukuoka.jp","oki.fukuoka.jp","omuta.fukuoka.jp","onga.fukuoka.jp","onojo.fukuoka.jp","oto.fukuoka.jp","saigawa.fukuoka.jp","sasaguri.fukuoka.jp","shingu.fukuoka.jp","shinyoshitomi.fukuoka.jp","shonai.fukuoka.jp","soeda.fukuoka.jp","sue.fukuoka.jp","tachiarai.fukuoka.jp","tagawa.fukuoka.jp","takata.fukuoka.jp","toho.fukuoka.jp","toyotsu.fukuoka.jp","tsuiki.fukuoka.jp","ukiha.fukuoka.jp","umi.fukuoka.jp","usui.fukuoka.jp","yamada.fukuoka.jp","yame.fukuoka.jp","yanagawa.fukuoka.jp","yukuhashi.fukuoka.jp","aizubange.fukushima.jp","aizumisato.fukushima.jp","aizuwakamatsu.fukushima.jp","asakawa.fukushima.jp","bandai.fukushima.jp","date.fukushima.jp","fukushima.fukushima.jp","furudono.fukushima.jp","futaba.fukushima.jp","hanawa.fukushima.jp","higashi.fukushima.jp","hirata.fukushima.jp","hirono.fukushima.jp","iitate.fukushima.jp","inawashiro.fukushima.jp","ishikawa.fukushima.jp","iwaki.fukushima.jp","izumizaki.fukushima.jp","kagamiishi.fukushima.jp","kaneyama.fukushima.jp","kawamata.fukushima.jp","kitakata.fukushima.jp","kitashiobara.fukushima.jp","koori.fukushima.jp","koriyama.fukushima.jp","kunimi.fukushima.jp","miharu.fukushima.jp","mishima.fukushima.jp","namie.fukushima.jp","nango.fukushima.jp","nishiaizu.fukushima.jp","nishigo.fukushima.jp","okuma.fukushima.jp","omotego.fukushima.jp","ono.fukushima.jp","otama.fukushima.jp","samegawa.fukushima.jp","shimogo.fukushima.jp","shirakawa.fukushima.jp","showa.fukushima.jp","soma.fukushima.jp","sukagawa.fukushima.jp","taishin.fukushima.jp","tamakawa.fukushima.jp","tanagura.fukushima.jp","tenei.fukushima.jp","yabuki.fukushima.jp","yamato.fukushima.jp","yamatsuri.fukushima.jp","yanaizu.fukushima.jp","yugawa.fukushima.jp","anpachi.gifu.jp","ena.gifu.jp","gifu.gifu.jp","ginan.gifu.jp","godo.gifu.jp","gujo.gifu.jp","hashima.gifu.jp","hichiso.gifu.jp","hida.gifu.jp","higashishirakawa.gifu.jp","ibigawa.gifu.jp","ikeda.gifu.jp","kakamigahara.gifu.jp","kani.gifu.jp","kasahara.gifu.jp","kasamatsu.gifu.jp","kawaue.gifu.jp","kitagata.gifu.jp","mino.gifu.jp","minokamo.gifu.jp","mitake.gifu.jp","mizunami.gifu.jp","motosu.gifu.jp","nakatsugawa.gifu.jp","ogaki.gifu.jp","sakahogi.gifu.jp","seki.gifu.jp","sekigahara.gifu.jp","shirakawa.gifu.jp","tajimi.gifu.jp","takayama.gifu.jp","tarui.gifu.jp","toki.gifu.jp","tomika.gifu.jp","wanouchi.gifu.jp","yamagata.gifu.jp","yaotsu.gifu.jp","yoro.gifu.jp","annaka.gunma.jp","chiyoda.gunma.jp","fujioka.gunma.jp","higashiagatsuma.gunma.jp","isesaki.gunma.jp","itakura.gunma.jp","kanna.gunma.jp","kanra.gunma.jp","katashina.gunma.jp","kawaba.gunma.jp","kiryu.gunma.jp","kusatsu.gunma.jp","maebashi.gunma.jp","meiwa.gunma.jp","midori.gunma.jp","minakami.gunma.jp","naganohara.gunma.jp","nakanojo.gunma.jp","nanmoku.gunma.jp","numata.gunma.jp","oizumi.gunma.jp","ora.gunma.jp","ota.gunma.jp","shibukawa.gunma.jp","shimonita.gunma.jp","shinto.gunma.jp","showa.gunma.jp","takasaki.gunma.jp","takayama.gunma.jp","tamamura.gunma.jp","tatebayashi.gunma.jp","tomioka.gunma.jp","tsukiyono.gunma.jp","tsumagoi.gunma.jp","ueno.gunma.jp","yoshioka.gunma.jp","asaminami.hiroshima.jp","daiwa.hiroshima.jp","etajima.hiroshima.jp","fuchu.hiroshima.jp","fukuyama.hiroshima.jp","hatsukaichi.hiroshima.jp","higashihiroshima.hiroshima.jp","hongo.hiroshima.jp","jinsekikogen.hiroshima.jp","kaita.hiroshima.jp","kui.hiroshima.jp","kumano.hiroshima.jp","kure.hiroshima.jp","mihara.hiroshima.jp","miyoshi.hiroshima.jp","naka.hiroshima.jp","onomichi.hiroshima.jp","osakikamijima.hiroshima.jp","otake.hiroshima.jp","saka.hiroshima.jp","sera.hiroshima.jp","seranishi.hiroshima.jp","shinichi.hiroshima.jp","shobara.hiroshima.jp","takehara.hiroshima.jp","abashiri.hokkaido.jp","abira.hokkaido.jp","aibetsu.hokkaido.jp","akabira.hokkaido.jp","akkeshi.hokkaido.jp","asahikawa.hokkaido.jp","ashibetsu.hokkaido.jp","ashoro.hokkaido.jp","assabu.hokkaido.jp","atsuma.hokkaido.jp","bibai.hokkaido.jp","biei.hokkaido.jp","bifuka.hokkaido.jp","bihoro.hokkaido.jp","biratori.hokkaido.jp","chippubetsu.hokkaido.jp","chitose.hokkaido.jp","date.hokkaido.jp","ebetsu.hokkaido.jp","embetsu.hokkaido.jp","eniwa.hokkaido.jp","erimo.hokkaido.jp","esan.hokkaido.jp","esashi.hokkaido.jp","fukagawa.hokkaido.jp","fukushima.hokkaido.jp","furano.hokkaido.jp","furubira.hokkaido.jp","haboro.hokkaido.jp","hakodate.hokkaido.jp","hamatonbetsu.hokkaido.jp","hidaka.hokkaido.jp","higashikagura.hokkaido.jp","higashikawa.hokkaido.jp","hiroo.hokkaido.jp","hokuryu.hokkaido.jp","hokuto.hokkaido.jp","honbetsu.hokkaido.jp","horokanai.hokkaido.jp","horonobe.hokkaido.jp","ikeda.hokkaido.jp","imakane.hokkaido.jp","ishikari.hokkaido.jp","iwamizawa.hokkaido.jp","iwanai.hokkaido.jp","kamifurano.hokkaido.jp","kamikawa.hokkaido.jp","kamishihoro.hokkaido.jp","kamisunagawa.hokkaido.jp","kamoenai.hokkaido.jp","kayabe.hokkaido.jp","kembuchi.hokkaido.jp","kikonai.hokkaido.jp","kimobetsu.hokkaido.jp","kitahiroshima.hokkaido.jp","kitami.hokkaido.jp","kiyosato.hokkaido.jp","koshimizu.hokkaido.jp","kunneppu.hokkaido.jp","kuriyama.hokkaido.jp","kuromatsunai.hokkaido.jp","kushiro.hokkaido.jp","kutchan.hokkaido.jp","kyowa.hokkaido.jp","mashike.hokkaido.jp","matsumae.hokkaido.jp","mikasa.hokkaido.jp","minamifurano.hokkaido.jp","mombetsu.hokkaido.jp","moseushi.hokkaido.jp","mukawa.hokkaido.jp","muroran.hokkaido.jp","naie.hokkaido.jp","nakagawa.hokkaido.jp","nakasatsunai.hokkaido.jp","nakatombetsu.hokkaido.jp","nanae.hokkaido.jp","nanporo.hokkaido.jp","nayoro.hokkaido.jp","nemuro.hokkaido.jp","niikappu.hokkaido.jp","niki.hokkaido.jp","nishiokoppe.hokkaido.jp","noboribetsu.hokkaido.jp","numata.hokkaido.jp","obihiro.hokkaido.jp","obira.hokkaido.jp","oketo.hokkaido.jp","okoppe.hokkaido.jp","otaru.hokkaido.jp","otobe.hokkaido.jp","otofuke.hokkaido.jp","otoineppu.hokkaido.jp","oumu.hokkaido.jp","ozora.hokkaido.jp","pippu.hokkaido.jp","rankoshi.hokkaido.jp","rebun.hokkaido.jp","rikubetsu.hokkaido.jp","rishiri.hokkaido.jp","rishirifuji.hokkaido.jp","saroma.hokkaido.jp","sarufutsu.hokkaido.jp","shakotan.hokkaido.jp","shari.hokkaido.jp","shibecha.hokkaido.jp","shibetsu.hokkaido.jp","shikabe.hokkaido.jp","shikaoi.hokkaido.jp","shimamaki.hokkaido.jp","shimizu.hokkaido.jp","shimokawa.hokkaido.jp","shinshinotsu.hokkaido.jp","shintoku.hokkaido.jp","shiranuka.hokkaido.jp","shiraoi.hokkaido.jp","shiriuchi.hokkaido.jp","sobetsu.hokkaido.jp","sunagawa.hokkaido.jp","taiki.hokkaido.jp","takasu.hokkaido.jp","takikawa.hokkaido.jp","takinoue.hokkaido.jp","teshikaga.hokkaido.jp","tobetsu.hokkaido.jp","tohma.hokkaido.jp","tomakomai.hokkaido.jp","tomari.hokkaido.jp","toya.hokkaido.jp","toyako.hokkaido.jp","toyotomi.hokkaido.jp","toyoura.hokkaido.jp","tsubetsu.hokkaido.jp","tsukigata.hokkaido.jp","urakawa.hokkaido.jp","urausu.hokkaido.jp","uryu.hokkaido.jp","utashinai.hokkaido.jp","wakkanai.hokkaido.jp","wassamu.hokkaido.jp","yakumo.hokkaido.jp","yoichi.hokkaido.jp","aioi.hyogo.jp","akashi.hyogo.jp","ako.hyogo.jp","amagasaki.hyogo.jp","aogaki.hyogo.jp","asago.hyogo.jp","ashiya.hyogo.jp","awaji.hyogo.jp","fukusaki.hyogo.jp","goshiki.hyogo.jp","harima.hyogo.jp","himeji.hyogo.jp","ichikawa.hyogo.jp","inagawa.hyogo.jp","itami.hyogo.jp","kakogawa.hyogo.jp","kamigori.hyogo.jp","kamikawa.hyogo.jp","kasai.hyogo.jp","kasuga.hyogo.jp","kawanishi.hyogo.jp","miki.hyogo.jp","minamiawaji.hyogo.jp","nishinomiya.hyogo.jp","nishiwaki.hyogo.jp","ono.hyogo.jp","sanda.hyogo.jp","sannan.hyogo.jp","sasayama.hyogo.jp","sayo.hyogo.jp","shingu.hyogo.jp","shinonsen.hyogo.jp","shiso.hyogo.jp","sumoto.hyogo.jp","taishi.hyogo.jp","taka.hyogo.jp","takarazuka.hyogo.jp","takasago.hyogo.jp","takino.hyogo.jp","tamba.hyogo.jp","tatsuno.hyogo.jp","toyooka.hyogo.jp","yabu.hyogo.jp","yashiro.hyogo.jp","yoka.hyogo.jp","yokawa.hyogo.jp","ami.ibaraki.jp","asahi.ibaraki.jp","bando.ibaraki.jp","chikusei.ibaraki.jp","daigo.ibaraki.jp","fujishiro.ibaraki.jp","hitachi.ibaraki.jp","hitachinaka.ibaraki.jp","hitachiomiya.ibaraki.jp","hitachiota.ibaraki.jp","ibaraki.ibaraki.jp","ina.ibaraki.jp","inashiki.ibaraki.jp","itako.ibaraki.jp","iwama.ibaraki.jp","joso.ibaraki.jp","kamisu.ibaraki.jp","kasama.ibaraki.jp","kashima.ibaraki.jp","kasumigaura.ibaraki.jp","koga.ibaraki.jp","miho.ibaraki.jp","mito.ibaraki.jp","moriya.ibaraki.jp","naka.ibaraki.jp","namegata.ibaraki.jp","oarai.ibaraki.jp","ogawa.ibaraki.jp","omitama.ibaraki.jp","ryugasaki.ibaraki.jp","sakai.ibaraki.jp","sakuragawa.ibaraki.jp","shimodate.ibaraki.jp","shimotsuma.ibaraki.jp","shirosato.ibaraki.jp","sowa.ibaraki.jp","suifu.ibaraki.jp","takahagi.ibaraki.jp","tamatsukuri.ibaraki.jp","tokai.ibaraki.jp","tomobe.ibaraki.jp","tone.ibaraki.jp","toride.ibaraki.jp","tsuchiura.ibaraki.jp","tsukuba.ibaraki.jp","uchihara.ibaraki.jp","ushiku.ibaraki.jp","yachiyo.ibaraki.jp","yamagata.ibaraki.jp","yawara.ibaraki.jp","yuki.ibaraki.jp","anamizu.ishikawa.jp","hakui.ishikawa.jp","hakusan.ishikawa.jp","kaga.ishikawa.jp","kahoku.ishikawa.jp","kanazawa.ishikawa.jp","kawakita.ishikawa.jp","komatsu.ishikawa.jp","nakanoto.ishikawa.jp","nanao.ishikawa.jp","nomi.ishikawa.jp","nonoichi.ishikawa.jp","noto.ishikawa.jp","shika.ishikawa.jp","suzu.ishikawa.jp","tsubata.ishikawa.jp","tsurugi.ishikawa.jp","uchinada.ishikawa.jp","wajima.ishikawa.jp","fudai.iwate.jp","fujisawa.iwate.jp","hanamaki.iwate.jp","hiraizumi.iwate.jp","hirono.iwate.jp","ichinohe.iwate.jp","ichinoseki.iwate.jp","iwaizumi.iwate.jp","iwate.iwate.jp","joboji.iwate.jp","kamaishi.iwate.jp","kanegasaki.iwate.jp","karumai.iwate.jp","kawai.iwate.jp","kitakami.iwate.jp","kuji.iwate.jp","kunohe.iwate.jp","kuzumaki.iwate.jp","miyako.iwate.jp","mizusawa.iwate.jp","morioka.iwate.jp","ninohe.iwate.jp","noda.iwate.jp","ofunato.iwate.jp","oshu.iwate.jp","otsuchi.iwate.jp","rikuzentakata.iwate.jp","shiwa.iwate.jp","shizukuishi.iwate.jp","sumita.iwate.jp","tanohata.iwate.jp","tono.iwate.jp","yahaba.iwate.jp","yamada.iwate.jp","ayagawa.kagawa.jp","higashikagawa.kagawa.jp","kanonji.kagawa.jp","kotohira.kagawa.jp","manno.kagawa.jp","marugame.kagawa.jp","mitoyo.kagawa.jp","naoshima.kagawa.jp","sanuki.kagawa.jp","tadotsu.kagawa.jp","takamatsu.kagawa.jp","tonosho.kagawa.jp","uchinomi.kagawa.jp","utazu.kagawa.jp","zentsuji.kagawa.jp","akune.kagoshima.jp","amami.kagoshima.jp","hioki.kagoshima.jp","isa.kagoshima.jp","isen.kagoshima.jp","izumi.kagoshima.jp","kagoshima.kagoshima.jp","kanoya.kagoshima.jp","kawanabe.kagoshima.jp","kinko.kagoshima.jp","kouyama.kagoshima.jp","makurazaki.kagoshima.jp","matsumoto.kagoshima.jp","minamitane.kagoshima.jp","nakatane.kagoshima.jp","nishinoomote.kagoshima.jp","satsumasendai.kagoshima.jp","soo.kagoshima.jp","tarumizu.kagoshima.jp","yusui.kagoshima.jp","aikawa.kanagawa.jp","atsugi.kanagawa.jp","ayase.kanagawa.jp","chigasaki.kanagawa.jp","ebina.kanagawa.jp","fujisawa.kanagawa.jp","hadano.kanagawa.jp","hakone.kanagawa.jp","hiratsuka.kanagawa.jp","isehara.kanagawa.jp","kaisei.kanagawa.jp","kamakura.kanagawa.jp","kiyokawa.kanagawa.jp","matsuda.kanagawa.jp","minamiashigara.kanagawa.jp","miura.kanagawa.jp","nakai.kanagawa.jp","ninomiya.kanagawa.jp","odawara.kanagawa.jp","oi.kanagawa.jp","oiso.kanagawa.jp","sagamihara.kanagawa.jp","samukawa.kanagawa.jp","tsukui.kanagawa.jp","yamakita.kanagawa.jp","yamato.kanagawa.jp","yokosuka.kanagawa.jp","yugawara.kanagawa.jp","zama.kanagawa.jp","zushi.kanagawa.jp","aki.kochi.jp","geisei.kochi.jp","hidaka.kochi.jp","higashitsuno.kochi.jp","ino.kochi.jp","kagami.kochi.jp","kami.kochi.jp","kitagawa.kochi.jp","kochi.kochi.jp","mihara.kochi.jp","motoyama.kochi.jp","muroto.kochi.jp","nahari.kochi.jp","nakamura.kochi.jp","nankoku.kochi.jp","nishitosa.kochi.jp","niyodogawa.kochi.jp","ochi.kochi.jp","okawa.kochi.jp","otoyo.kochi.jp","otsuki.kochi.jp","sakawa.kochi.jp","sukumo.kochi.jp","susaki.kochi.jp","tosa.kochi.jp","tosashimizu.kochi.jp","toyo.kochi.jp","tsuno.kochi.jp","umaji.kochi.jp","yasuda.kochi.jp","yusuhara.kochi.jp","amakusa.kumamoto.jp","arao.kumamoto.jp","aso.kumamoto.jp","choyo.kumamoto.jp","gyokuto.kumamoto.jp","kamiamakusa.kumamoto.jp","kikuchi.kumamoto.jp","kumamoto.kumamoto.jp","mashiki.kumamoto.jp","mifune.kumamoto.jp","minamata.kumamoto.jp","minamioguni.kumamoto.jp","nagasu.kumamoto.jp","nishihara.kumamoto.jp","oguni.kumamoto.jp","ozu.kumamoto.jp","sumoto.kumamoto.jp","takamori.kumamoto.jp","uki.kumamoto.jp","uto.kumamoto.jp","yamaga.kumamoto.jp","yamato.kumamoto.jp","yatsushiro.kumamoto.jp","ayabe.kyoto.jp","fukuchiyama.kyoto.jp","higashiyama.kyoto.jp","ide.kyoto.jp","ine.kyoto.jp","joyo.kyoto.jp","kameoka.kyoto.jp","kamo.kyoto.jp","kita.kyoto.jp","kizu.kyoto.jp","kumiyama.kyoto.jp","kyotamba.kyoto.jp","kyotanabe.kyoto.jp","kyotango.kyoto.jp","maizuru.kyoto.jp","minami.kyoto.jp","minamiyamashiro.kyoto.jp","miyazu.kyoto.jp","muko.kyoto.jp","nagaokakyo.kyoto.jp","nakagyo.kyoto.jp","nantan.kyoto.jp","oyamazaki.kyoto.jp","sakyo.kyoto.jp","seika.kyoto.jp","tanabe.kyoto.jp","uji.kyoto.jp","ujitawara.kyoto.jp","wazuka.kyoto.jp","yamashina.kyoto.jp","yawata.kyoto.jp","asahi.mie.jp","inabe.mie.jp","ise.mie.jp","kameyama.mie.jp","kawagoe.mie.jp","kiho.mie.jp","kisosaki.mie.jp","kiwa.mie.jp","komono.mie.jp","kumano.mie.jp","kuwana.mie.jp","matsusaka.mie.jp","meiwa.mie.jp","mihama.mie.jp","minamiise.mie.jp","misugi.mie.jp","miyama.mie.jp","nabari.mie.jp","shima.mie.jp","suzuka.mie.jp","tado.mie.jp","taiki.mie.jp","taki.mie.jp","tamaki.mie.jp","toba.mie.jp","tsu.mie.jp","udono.mie.jp","ureshino.mie.jp","watarai.mie.jp","yokkaichi.mie.jp","furukawa.miyagi.jp","higashimatsushima.miyagi.jp","ishinomaki.miyagi.jp","iwanuma.miyagi.jp","kakuda.miyagi.jp","kami.miyagi.jp","kawasaki.miyagi.jp","marumori.miyagi.jp","matsushima.miyagi.jp","minamisanriku.miyagi.jp","misato.miyagi.jp","murata.miyagi.jp","natori.miyagi.jp","ogawara.miyagi.jp","ohira.miyagi.jp","onagawa.miyagi.jp","osaki.miyagi.jp","rifu.miyagi.jp","semine.miyagi.jp","shibata.miyagi.jp","shichikashuku.miyagi.jp","shikama.miyagi.jp","shiogama.miyagi.jp","shiroishi.miyagi.jp","tagajo.miyagi.jp","taiwa.miyagi.jp","tome.miyagi.jp","tomiya.miyagi.jp","wakuya.miyagi.jp","watari.miyagi.jp","yamamoto.miyagi.jp","zao.miyagi.jp","aya.miyazaki.jp","ebino.miyazaki.jp","gokase.miyazaki.jp","hyuga.miyazaki.jp","kadogawa.miyazaki.jp","kawaminami.miyazaki.jp","kijo.miyazaki.jp","kitagawa.miyazaki.jp","kitakata.miyazaki.jp","kitaura.miyazaki.jp","kobayashi.miyazaki.jp","kunitomi.miyazaki.jp","kushima.miyazaki.jp","mimata.miyazaki.jp","miyakonojo.miyazaki.jp","miyazaki.miyazaki.jp","morotsuka.miyazaki.jp","nichinan.miyazaki.jp","nishimera.miyazaki.jp","nobeoka.miyazaki.jp","saito.miyazaki.jp","shiiba.miyazaki.jp","shintomi.miyazaki.jp","takaharu.miyazaki.jp","takanabe.miyazaki.jp","takazaki.miyazaki.jp","tsuno.miyazaki.jp","achi.nagano.jp","agematsu.nagano.jp","anan.nagano.jp","aoki.nagano.jp","asahi.nagano.jp","azumino.nagano.jp","chikuhoku.nagano.jp","chikuma.nagano.jp","chino.nagano.jp","fujimi.nagano.jp","hakuba.nagano.jp","hara.nagano.jp","hiraya.nagano.jp","iida.nagano.jp","iijima.nagano.jp","iiyama.nagano.jp","iizuna.nagano.jp","ikeda.nagano.jp","ikusaka.nagano.jp","ina.nagano.jp","karuizawa.nagano.jp","kawakami.nagano.jp","kiso.nagano.jp","kisofukushima.nagano.jp","kitaaiki.nagano.jp","komagane.nagano.jp","komoro.nagano.jp","matsukawa.nagano.jp","matsumoto.nagano.jp","miasa.nagano.jp","minamiaiki.nagano.jp","minamimaki.nagano.jp","minamiminowa.nagano.jp","minowa.nagano.jp","miyada.nagano.jp","miyota.nagano.jp","mochizuki.nagano.jp","nagano.nagano.jp","nagawa.nagano.jp","nagiso.nagano.jp","nakagawa.nagano.jp","nakano.nagano.jp","nozawaonsen.nagano.jp","obuse.nagano.jp","ogawa.nagano.jp","okaya.nagano.jp","omachi.nagano.jp","omi.nagano.jp","ookuwa.nagano.jp","ooshika.nagano.jp","otaki.nagano.jp","otari.nagano.jp","sakae.nagano.jp","sakaki.nagano.jp","saku.nagano.jp","sakuho.nagano.jp","shimosuwa.nagano.jp","shinanomachi.nagano.jp","shiojiri.nagano.jp","suwa.nagano.jp","suzaka.nagano.jp","takagi.nagano.jp","takamori.nagano.jp","takayama.nagano.jp","tateshina.nagano.jp","tatsuno.nagano.jp","togakushi.nagano.jp","togura.nagano.jp","tomi.nagano.jp","ueda.nagano.jp","wada.nagano.jp","yamagata.nagano.jp","yamanouchi.nagano.jp","yasaka.nagano.jp","yasuoka.nagano.jp","chijiwa.nagasaki.jp","futsu.nagasaki.jp","goto.nagasaki.jp","hasami.nagasaki.jp","hirado.nagasaki.jp","iki.nagasaki.jp","isahaya.nagasaki.jp","kawatana.nagasaki.jp","kuchinotsu.nagasaki.jp","matsuura.nagasaki.jp","nagasaki.nagasaki.jp","obama.nagasaki.jp","omura.nagasaki.jp","oseto.nagasaki.jp","saikai.nagasaki.jp","sasebo.nagasaki.jp","seihi.nagasaki.jp","shimabara.nagasaki.jp","shinkamigoto.nagasaki.jp","togitsu.nagasaki.jp","tsushima.nagasaki.jp","unzen.nagasaki.jp","ando.nara.jp","gose.nara.jp","heguri.nara.jp","higashiyoshino.nara.jp","ikaruga.nara.jp","ikoma.nara.jp","kamikitayama.nara.jp","kanmaki.nara.jp","kashiba.nara.jp","kashihara.nara.jp","katsuragi.nara.jp","kawai.nara.jp","kawakami.nara.jp","kawanishi.nara.jp","koryo.nara.jp","kurotaki.nara.jp","mitsue.nara.jp","miyake.nara.jp","nara.nara.jp","nosegawa.nara.jp","oji.nara.jp","ouda.nara.jp","oyodo.nara.jp","sakurai.nara.jp","sango.nara.jp","shimoichi.nara.jp","shimokitayama.nara.jp","shinjo.nara.jp","soni.nara.jp","takatori.nara.jp","tawaramoto.nara.jp","tenkawa.nara.jp","tenri.nara.jp","uda.nara.jp","yamatokoriyama.nara.jp","yamatotakada.nara.jp","yamazoe.nara.jp","yoshino.nara.jp","aga.niigata.jp","agano.niigata.jp","gosen.niigata.jp","itoigawa.niigata.jp","izumozaki.niigata.jp","joetsu.niigata.jp","kamo.niigata.jp","kariwa.niigata.jp","kashiwazaki.niigata.jp","minamiuonuma.niigata.jp","mitsuke.niigata.jp","muika.niigata.jp","murakami.niigata.jp","myoko.niigata.jp","nagaoka.niigata.jp","niigata.niigata.jp","ojiya.niigata.jp","omi.niigata.jp","sado.niigata.jp","sanjo.niigata.jp","seiro.niigata.jp","seirou.niigata.jp","sekikawa.niigata.jp","shibata.niigata.jp","tagami.niigata.jp","tainai.niigata.jp","tochio.niigata.jp","tokamachi.niigata.jp","tsubame.niigata.jp","tsunan.niigata.jp","uonuma.niigata.jp","yahiko.niigata.jp","yoita.niigata.jp","yuzawa.niigata.jp","beppu.oita.jp","bungoono.oita.jp","bungotakada.oita.jp","hasama.oita.jp","hiji.oita.jp","himeshima.oita.jp","hita.oita.jp","kamitsue.oita.jp","kokonoe.oita.jp","kuju.oita.jp","kunisaki.oita.jp","kusu.oita.jp","oita.oita.jp","saiki.oita.jp","taketa.oita.jp","tsukumi.oita.jp","usa.oita.jp","usuki.oita.jp","yufu.oita.jp","akaiwa.okayama.jp","asakuchi.okayama.jp","bizen.okayama.jp","hayashima.okayama.jp","ibara.okayama.jp","kagamino.okayama.jp","kasaoka.okayama.jp","kibichuo.okayama.jp","kumenan.okayama.jp","kurashiki.okayama.jp","maniwa.okayama.jp","misaki.okayama.jp","nagi.okayama.jp","niimi.okayama.jp","nishiawakura.okayama.jp","okayama.okayama.jp","satosho.okayama.jp","setouchi.okayama.jp","shinjo.okayama.jp","shoo.okayama.jp","soja.okayama.jp","takahashi.okayama.jp","tamano.okayama.jp","tsuyama.okayama.jp","wake.okayama.jp","yakage.okayama.jp","aguni.okinawa.jp","ginowan.okinawa.jp","ginoza.okinawa.jp","gushikami.okinawa.jp","haebaru.okinawa.jp","higashi.okinawa.jp","hirara.okinawa.jp","iheya.okinawa.jp","ishigaki.okinawa.jp","ishikawa.okinawa.jp","itoman.okinawa.jp","izena.okinawa.jp","kadena.okinawa.jp","kin.okinawa.jp","kitadaito.okinawa.jp","kitanakagusuku.okinawa.jp","kumejima.okinawa.jp","kunigami.okinawa.jp","minamidaito.okinawa.jp","motobu.okinawa.jp","nago.okinawa.jp","naha.okinawa.jp","nakagusuku.okinawa.jp","nakijin.okinawa.jp","nanjo.okinawa.jp","nishihara.okinawa.jp","ogimi.okinawa.jp","okinawa.okinawa.jp","onna.okinawa.jp","shimoji.okinawa.jp","taketomi.okinawa.jp","tarama.okinawa.jp","tokashiki.okinawa.jp","tomigusuku.okinawa.jp","tonaki.okinawa.jp","urasoe.okinawa.jp","uruma.okinawa.jp","yaese.okinawa.jp","yomitan.okinawa.jp","yonabaru.okinawa.jp","yonaguni.okinawa.jp","zamami.okinawa.jp","abeno.osaka.jp","chihayaakasaka.osaka.jp","chuo.osaka.jp","daito.osaka.jp","fujiidera.osaka.jp","habikino.osaka.jp","hannan.osaka.jp","higashiosaka.osaka.jp","higashisumiyoshi.osaka.jp","higashiyodogawa.osaka.jp","hirakata.osaka.jp","ibaraki.osaka.jp","ikeda.osaka.jp","izumi.osaka.jp","izumiotsu.osaka.jp","izumisano.osaka.jp","kadoma.osaka.jp","kaizuka.osaka.jp","kanan.osaka.jp","kashiwara.osaka.jp","katano.osaka.jp","kawachinagano.osaka.jp","kishiwada.osaka.jp","kita.osaka.jp","kumatori.osaka.jp","matsubara.osaka.jp","minato.osaka.jp","minoh.osaka.jp","misaki.osaka.jp","moriguchi.osaka.jp","neyagawa.osaka.jp","nishi.osaka.jp","nose.osaka.jp","osakasayama.osaka.jp","sakai.osaka.jp","sayama.osaka.jp","sennan.osaka.jp","settsu.osaka.jp","shijonawate.osaka.jp","shimamoto.osaka.jp","suita.osaka.jp","tadaoka.osaka.jp","taishi.osaka.jp","tajiri.osaka.jp","takaishi.osaka.jp","takatsuki.osaka.jp","tondabayashi.osaka.jp","toyonaka.osaka.jp","toyono.osaka.jp","yao.osaka.jp","ariake.saga.jp","arita.saga.jp","fukudomi.saga.jp","genkai.saga.jp","hamatama.saga.jp","hizen.saga.jp","imari.saga.jp","kamimine.saga.jp","kanzaki.saga.jp","karatsu.saga.jp","kashima.saga.jp","kitagata.saga.jp","kitahata.saga.jp","kiyama.saga.jp","kouhoku.saga.jp","kyuragi.saga.jp","nishiarita.saga.jp","ogi.saga.jp","omachi.saga.jp","ouchi.saga.jp","saga.saga.jp","shiroishi.saga.jp","taku.saga.jp","tara.saga.jp","tosu.saga.jp","yoshinogari.saga.jp","arakawa.saitama.jp","asaka.saitama.jp","chichibu.saitama.jp","fujimi.saitama.jp","fujimino.saitama.jp","fukaya.saitama.jp","hanno.saitama.jp","hanyu.saitama.jp","hasuda.saitama.jp","hatogaya.saitama.jp","hatoyama.saitama.jp","hidaka.saitama.jp","higashichichibu.saitama.jp","higashimatsuyama.saitama.jp","honjo.saitama.jp","ina.saitama.jp","iruma.saitama.jp","iwatsuki.saitama.jp","kamiizumi.saitama.jp","kamikawa.saitama.jp","kamisato.saitama.jp","kasukabe.saitama.jp","kawagoe.saitama.jp","kawaguchi.saitama.jp","kawajima.saitama.jp","kazo.saitama.jp","kitamoto.saitama.jp","koshigaya.saitama.jp","kounosu.saitama.jp","kuki.saitama.jp","kumagaya.saitama.jp","matsubushi.saitama.jp","minano.saitama.jp","misato.saitama.jp","miyashiro.saitama.jp","miyoshi.saitama.jp","moroyama.saitama.jp","nagatoro.saitama.jp","namegawa.saitama.jp","niiza.saitama.jp","ogano.saitama.jp","ogawa.saitama.jp","ogose.saitama.jp","okegawa.saitama.jp","omiya.saitama.jp","otaki.saitama.jp","ranzan.saitama.jp","ryokami.saitama.jp","saitama.saitama.jp","sakado.saitama.jp","satte.saitama.jp","sayama.saitama.jp","shiki.saitama.jp","shiraoka.saitama.jp","soka.saitama.jp","sugito.saitama.jp","toda.saitama.jp","tokigawa.saitama.jp","tokorozawa.saitama.jp","tsurugashima.saitama.jp","urawa.saitama.jp","warabi.saitama.jp","yashio.saitama.jp","yokoze.saitama.jp","yono.saitama.jp","yorii.saitama.jp","yoshida.saitama.jp","yoshikawa.saitama.jp","yoshimi.saitama.jp","aisho.shiga.jp","gamo.shiga.jp","higashiomi.shiga.jp","hikone.shiga.jp","koka.shiga.jp","konan.shiga.jp","kosei.shiga.jp","koto.shiga.jp","kusatsu.shiga.jp","maibara.shiga.jp","moriyama.shiga.jp","nagahama.shiga.jp","nishiazai.shiga.jp","notogawa.shiga.jp","omihachiman.shiga.jp","otsu.shiga.jp","ritto.shiga.jp","ryuoh.shiga.jp","takashima.shiga.jp","takatsuki.shiga.jp","torahime.shiga.jp","toyosato.shiga.jp","yasu.shiga.jp","akagi.shimane.jp","ama.shimane.jp","gotsu.shimane.jp","hamada.shimane.jp","higashiizumo.shimane.jp","hikawa.shimane.jp","hikimi.shimane.jp","izumo.shimane.jp","kakinoki.shimane.jp","masuda.shimane.jp","matsue.shimane.jp","misato.shimane.jp","nishinoshima.shimane.jp","ohda.shimane.jp","okinoshima.shimane.jp","okuizumo.shimane.jp","shimane.shimane.jp","tamayu.shimane.jp","tsuwano.shimane.jp","unnan.shimane.jp","yakumo.shimane.jp","yasugi.shimane.jp","yatsuka.shimane.jp","arai.shizuoka.jp","atami.shizuoka.jp","fuji.shizuoka.jp","fujieda.shizuoka.jp","fujikawa.shizuoka.jp","fujinomiya.shizuoka.jp","fukuroi.shizuoka.jp","gotemba.shizuoka.jp","haibara.shizuoka.jp","hamamatsu.shizuoka.jp","higashiizu.shizuoka.jp","ito.shizuoka.jp","iwata.shizuoka.jp","izu.shizuoka.jp","izunokuni.shizuoka.jp","kakegawa.shizuoka.jp","kannami.shizuoka.jp","kawanehon.shizuoka.jp","kawazu.shizuoka.jp","kikugawa.shizuoka.jp","kosai.shizuoka.jp","makinohara.shizuoka.jp","matsuzaki.shizuoka.jp","minamiizu.shizuoka.jp","mishima.shizuoka.jp","morimachi.shizuoka.jp","nishiizu.shizuoka.jp","numazu.shizuoka.jp","omaezaki.shizuoka.jp","shimada.shizuoka.jp","shimizu.shizuoka.jp","shimoda.shizuoka.jp","shizuoka.shizuoka.jp","susono.shizuoka.jp","yaizu.shizuoka.jp","yoshida.shizuoka.jp","ashikaga.tochigi.jp","bato.tochigi.jp","haga.tochigi.jp","ichikai.tochigi.jp","iwafune.tochigi.jp","kaminokawa.tochigi.jp","kanuma.tochigi.jp","karasuyama.tochigi.jp","kuroiso.tochigi.jp","mashiko.tochigi.jp","mibu.tochigi.jp","moka.tochigi.jp","motegi.tochigi.jp","nasu.tochigi.jp","nasushiobara.tochigi.jp","nikko.tochigi.jp","nishikata.tochigi.jp","nogi.tochigi.jp","ohira.tochigi.jp","ohtawara.tochigi.jp","oyama.tochigi.jp","sakura.tochigi.jp","sano.tochigi.jp","shimotsuke.tochigi.jp","shioya.tochigi.jp","takanezawa.tochigi.jp","tochigi.tochigi.jp","tsuga.tochigi.jp","ujiie.tochigi.jp","utsunomiya.tochigi.jp","yaita.tochigi.jp","aizumi.tokushima.jp","anan.tokushima.jp","ichiba.tokushima.jp","itano.tokushima.jp","kainan.tokushima.jp","komatsushima.tokushima.jp","matsushige.tokushima.jp","mima.tokushima.jp","minami.tokushima.jp","miyoshi.tokushima.jp","mugi.tokushima.jp","nakagawa.tokushima.jp","naruto.tokushima.jp","sanagochi.tokushima.jp","shishikui.tokushima.jp","tokushima.tokushima.jp","wajiki.tokushima.jp","adachi.tokyo.jp","akiruno.tokyo.jp","akishima.tokyo.jp","aogashima.tokyo.jp","arakawa.tokyo.jp","bunkyo.tokyo.jp","chiyoda.tokyo.jp","chofu.tokyo.jp","chuo.tokyo.jp","edogawa.tokyo.jp","fuchu.tokyo.jp","fussa.tokyo.jp","hachijo.tokyo.jp","hachioji.tokyo.jp","hamura.tokyo.jp","higashikurume.tokyo.jp","higashimurayama.tokyo.jp","higashiyamato.tokyo.jp","hino.tokyo.jp","hinode.tokyo.jp","hinohara.tokyo.jp","inagi.tokyo.jp","itabashi.tokyo.jp","katsushika.tokyo.jp","kita.tokyo.jp","kiyose.tokyo.jp","kodaira.tokyo.jp","koganei.tokyo.jp","kokubunji.tokyo.jp","komae.tokyo.jp","koto.tokyo.jp","kouzushima.tokyo.jp","kunitachi.tokyo.jp","machida.tokyo.jp","meguro.tokyo.jp","minato.tokyo.jp","mitaka.tokyo.jp","mizuho.tokyo.jp","musashimurayama.tokyo.jp","musashino.tokyo.jp","nakano.tokyo.jp","nerima.tokyo.jp","ogasawara.tokyo.jp","okutama.tokyo.jp","ome.tokyo.jp","oshima.tokyo.jp","ota.tokyo.jp","setagaya.tokyo.jp","shibuya.tokyo.jp","shinagawa.tokyo.jp","shinjuku.tokyo.jp","suginami.tokyo.jp","sumida.tokyo.jp","tachikawa.tokyo.jp","taito.tokyo.jp","tama.tokyo.jp","toshima.tokyo.jp","chizu.tottori.jp","hino.tottori.jp","kawahara.tottori.jp","koge.tottori.jp","kotoura.tottori.jp","misasa.tottori.jp","nanbu.tottori.jp","nichinan.tottori.jp","sakaiminato.tottori.jp","tottori.tottori.jp","wakasa.tottori.jp","yazu.tottori.jp","yonago.tottori.jp","asahi.toyama.jp","fuchu.toyama.jp","fukumitsu.toyama.jp","funahashi.toyama.jp","himi.toyama.jp","imizu.toyama.jp","inami.toyama.jp","johana.toyama.jp","kamiichi.toyama.jp","kurobe.toyama.jp","nakaniikawa.toyama.jp","namerikawa.toyama.jp","nanto.toyama.jp","nyuzen.toyama.jp","oyabe.toyama.jp","taira.toyama.jp","takaoka.toyama.jp","tateyama.toyama.jp","toga.toyama.jp","tonami.toyama.jp","toyama.toyama.jp","unazuki.toyama.jp","uozu.toyama.jp","yamada.toyama.jp","arida.wakayama.jp","aridagawa.wakayama.jp","gobo.wakayama.jp","hashimoto.wakayama.jp","hidaka.wakayama.jp","hirogawa.wakayama.jp","inami.wakayama.jp","iwade.wakayama.jp","kainan.wakayama.jp","kamitonda.wakayama.jp","katsuragi.wakayama.jp","kimino.wakayama.jp","kinokawa.wakayama.jp","kitayama.wakayama.jp","koya.wakayama.jp","koza.wakayama.jp","kozagawa.wakayama.jp","kudoyama.wakayama.jp","kushimoto.wakayama.jp","mihama.wakayama.jp","misato.wakayama.jp","nachikatsuura.wakayama.jp","shingu.wakayama.jp","shirahama.wakayama.jp","taiji.wakayama.jp","tanabe.wakayama.jp","wakayama.wakayama.jp","yuasa.wakayama.jp","yura.wakayama.jp","asahi.yamagata.jp","funagata.yamagata.jp","higashine.yamagata.jp","iide.yamagata.jp","kahoku.yamagata.jp","kaminoyama.yamagata.jp","kaneyama.yamagata.jp","kawanishi.yamagata.jp","mamurogawa.yamagata.jp","mikawa.yamagata.jp","murayama.yamagata.jp","nagai.yamagata.jp","nakayama.yamagata.jp","nanyo.yamagata.jp","nishikawa.yamagata.jp","obanazawa.yamagata.jp","oe.yamagata.jp","oguni.yamagata.jp","ohkura.yamagata.jp","oishida.yamagata.jp","sagae.yamagata.jp","sakata.yamagata.jp","sakegawa.yamagata.jp","shinjo.yamagata.jp","shirataka.yamagata.jp","shonai.yamagata.jp","takahata.yamagata.jp","tendo.yamagata.jp","tozawa.yamagata.jp","tsuruoka.yamagata.jp","yamagata.yamagata.jp","yamanobe.yamagata.jp","yonezawa.yamagata.jp","yuza.yamagata.jp","abu.yamaguchi.jp","hagi.yamaguchi.jp","hikari.yamaguchi.jp","hofu.yamaguchi.jp","iwakuni.yamaguchi.jp","kudamatsu.yamaguchi.jp","mitou.yamaguchi.jp","nagato.yamaguchi.jp","oshima.yamaguchi.jp","shimonoseki.yamaguchi.jp","shunan.yamaguchi.jp","tabuse.yamaguchi.jp","tokuyama.yamaguchi.jp","toyota.yamaguchi.jp","ube.yamaguchi.jp","yuu.yamaguchi.jp","chuo.yamanashi.jp","doshi.yamanashi.jp","fuefuki.yamanashi.jp","fujikawa.yamanashi.jp","fujikawaguchiko.yamanashi.jp","fujiyoshida.yamanashi.jp","hayakawa.yamanashi.jp","hokuto.yamanashi.jp","ichikawamisato.yamanashi.jp","kai.yamanashi.jp","kofu.yamanashi.jp","koshu.yamanashi.jp","kosuge.yamanashi.jp","minami-alps.yamanashi.jp","minobu.yamanashi.jp","nakamichi.yamanashi.jp","nanbu.yamanashi.jp","narusawa.yamanashi.jp","nirasaki.yamanashi.jp","nishikatsura.yamanashi.jp","oshino.yamanashi.jp","otsuki.yamanashi.jp","showa.yamanashi.jp","tabayama.yamanashi.jp","tsuru.yamanashi.jp","uenohara.yamanashi.jp","yamanakako.yamanashi.jp","yamanashi.yamanashi.jp","ke","ac.ke","co.ke","go.ke","info.ke","me.ke","mobi.ke","ne.ke","or.ke","sc.ke","kg","com.kg","edu.kg","gov.kg","mil.kg","net.kg","org.kg","*.kh","ki","biz.ki","com.ki","edu.ki","gov.ki","info.ki","net.ki","org.ki","km","ass.km","com.km","edu.km","gov.km","mil.km","nom.km","org.km","prd.km","tm.km","asso.km","coop.km","gouv.km","medecin.km","notaires.km","pharmaciens.km","presse.km","veterinaire.km","kn","edu.kn","gov.kn","net.kn","org.kn","kp","com.kp","edu.kp","gov.kp","org.kp","rep.kp","tra.kp","kr","ac.kr","co.kr","es.kr","go.kr","hs.kr","kg.kr","mil.kr","ms.kr","ne.kr","or.kr","pe.kr","re.kr","sc.kr","busan.kr","chungbuk.kr","chungnam.kr","daegu.kr","daejeon.kr","gangwon.kr","gwangju.kr","gyeongbuk.kr","gyeonggi.kr","gyeongnam.kr","incheon.kr","jeju.kr","jeonbuk.kr","jeonnam.kr","seoul.kr","ulsan.kr","kw","com.kw","edu.kw","emb.kw","gov.kw","ind.kw","net.kw","org.kw","ky","com.ky","edu.ky","net.ky","org.ky","kz","com.kz","edu.kz","gov.kz","mil.kz","net.kz","org.kz","la","com.la","edu.la","gov.la","info.la","int.la","net.la","org.la","per.la","lb","com.lb","edu.lb","gov.lb","net.lb","org.lb","lc","co.lc","com.lc","edu.lc","gov.lc","net.lc","org.lc","li","lk","ac.lk","assn.lk","com.lk","edu.lk","gov.lk","grp.lk","hotel.lk","int.lk","ltd.lk","net.lk","ngo.lk","org.lk","sch.lk","soc.lk","web.lk","lr","com.lr","edu.lr","gov.lr","net.lr","org.lr","ls","ac.ls","biz.ls","co.ls","edu.ls","gov.ls","info.ls","net.ls","org.ls","sc.ls","lt","gov.lt","lu","lv","asn.lv","com.lv","conf.lv","edu.lv","gov.lv","id.lv","mil.lv","net.lv","org.lv","ly","com.ly","edu.ly","gov.ly","id.ly","med.ly","net.ly","org.ly","plc.ly","sch.ly","ma","ac.ma","co.ma","gov.ma","net.ma","org.ma","press.ma","mc","asso.mc","tm.mc","md","me","ac.me","co.me","edu.me","gov.me","its.me","net.me","org.me","priv.me","mg","co.mg","com.mg","edu.mg","gov.mg","mil.mg","nom.mg","org.mg","prd.mg","mh","mil","mk","com.mk","edu.mk","gov.mk","inf.mk","name.mk","net.mk","org.mk","ml","com.ml","edu.ml","gouv.ml","gov.ml","net.ml","org.ml","presse.ml","*.mm","mn","edu.mn","gov.mn","org.mn","mo","com.mo","edu.mo","gov.mo","net.mo","org.mo","mobi","mp","mq","mr","gov.mr","ms","com.ms","edu.ms","gov.ms","net.ms","org.ms","mt","com.mt","edu.mt","net.mt","org.mt","mu","ac.mu","co.mu","com.mu","gov.mu","net.mu","or.mu","org.mu","museum","mv","aero.mv","biz.mv","com.mv","coop.mv","edu.mv","gov.mv","info.mv","int.mv","mil.mv","museum.mv","name.mv","net.mv","org.mv","pro.mv","mw","ac.mw","biz.mw","co.mw","com.mw","coop.mw","edu.mw","gov.mw","int.mw","net.mw","org.mw","mx","com.mx","edu.mx","gob.mx","net.mx","org.mx","my","biz.my","com.my","edu.my","gov.my","mil.my","name.my","net.my","org.my","mz","ac.mz","adv.mz","co.mz","edu.mz","gov.mz","mil.mz","net.mz","org.mz","na","alt.na","co.na","com.na","gov.na","net.na","org.na","name","nc","asso.nc","nom.nc","ne","net","nf","arts.nf","com.nf","firm.nf","info.nf","net.nf","other.nf","per.nf","rec.nf","store.nf","web.nf","ng","com.ng","edu.ng","gov.ng","i.ng","mil.ng","mobi.ng","name.ng","net.ng","org.ng","sch.ng","ni","ac.ni","biz.ni","co.ni","com.ni","edu.ni","gob.ni","in.ni","info.ni","int.ni","mil.ni","net.ni","nom.ni","org.ni","web.ni","nl","no","fhs.no","folkebibl.no","fylkesbibl.no","idrett.no","museum.no","priv.no","vgs.no","dep.no","herad.no","kommune.no","mil.no","stat.no","aa.no","ah.no","bu.no","fm.no","hl.no","hm.no","jan-mayen.no","mr.no","nl.no","nt.no","of.no","ol.no","oslo.no","rl.no","sf.no","st.no","svalbard.no","tm.no","tr.no","va.no","vf.no","gs.aa.no","gs.ah.no","gs.bu.no","gs.fm.no","gs.hl.no","gs.hm.no","gs.jan-mayen.no","gs.mr.no","gs.nl.no","gs.nt.no","gs.of.no","gs.ol.no","gs.oslo.no","gs.rl.no","gs.sf.no","gs.st.no","gs.svalbard.no","gs.tm.no","gs.tr.no","gs.va.no","gs.vf.no","akrehamn.no","åkrehamn.no","algard.no","ålgård.no","arna.no","bronnoysund.no","brønnøysund.no","brumunddal.no","bryne.no","drobak.no","drøbak.no","egersund.no","fetsund.no","floro.no","florø.no","fredrikstad.no","hokksund.no","honefoss.no","hønefoss.no","jessheim.no","jorpeland.no","jørpeland.no","kirkenes.no","kopervik.no","krokstadelva.no","langevag.no","langevåg.no","leirvik.no","mjondalen.no","mjøndalen.no","mo-i-rana.no","mosjoen.no","mosjøen.no","nesoddtangen.no","orkanger.no","osoyro.no","osøyro.no","raholt.no","råholt.no","sandnessjoen.no","sandnessjøen.no","skedsmokorset.no","slattum.no","spjelkavik.no","stathelle.no","stavern.no","stjordalshalsen.no","stjørdalshalsen.no","tananger.no","tranby.no","vossevangen.no","aarborte.no","aejrie.no","afjord.no","åfjord.no","agdenes.no","nes.akershus.no","aknoluokta.no","ákŋoluokta.no","al.no","ål.no","alaheadju.no","álaheadju.no","alesund.no","ålesund.no","alstahaug.no","alta.no","áltá.no","alvdal.no","amli.no","åmli.no","amot.no","åmot.no","andasuolo.no","andebu.no","andoy.no","andøy.no","ardal.no","årdal.no","aremark.no","arendal.no","ås.no","aseral.no","åseral.no","asker.no","askim.no","askoy.no","askøy.no","askvoll.no","asnes.no","åsnes.no","audnedaln.no","aukra.no","aure.no","aurland.no","aurskog-holand.no","aurskog-høland.no","austevoll.no","austrheim.no","averoy.no","averøy.no","badaddja.no","bådåddjå.no","bærum.no","bahcavuotna.no","báhcavuotna.no","bahccavuotna.no","báhccavuotna.no","baidar.no","báidár.no","bajddar.no","bájddar.no","balat.no","bálát.no","balestrand.no","ballangen.no","balsfjord.no","bamble.no","bardu.no","barum.no","batsfjord.no","båtsfjord.no","bearalvahki.no","bearalváhki.no","beardu.no","beiarn.no","berg.no","bergen.no","berlevag.no","berlevåg.no","bievat.no","bievát.no","bindal.no","birkenes.no","bjarkoy.no","bjarkøy.no","bjerkreim.no","bjugn.no","bodo.no","bodø.no","bokn.no","bomlo.no","bømlo.no","bremanger.no","bronnoy.no","brønnøy.no","budejju.no","nes.buskerud.no","bygland.no","bykle.no","cahcesuolo.no","čáhcesuolo.no","davvenjarga.no","davvenjárga.no","davvesiida.no","deatnu.no","dielddanuorri.no","divtasvuodna.no","divttasvuotna.no","donna.no","dønna.no","dovre.no","drammen.no","drangedal.no","dyroy.no","dyrøy.no","eid.no","eidfjord.no","eidsberg.no","eidskog.no","eidsvoll.no","eigersund.no","elverum.no","enebakk.no","engerdal.no","etne.no","etnedal.no","evenassi.no","evenášši.no","evenes.no","evje-og-hornnes.no","farsund.no","fauske.no","fedje.no","fet.no","finnoy.no","finnøy.no","fitjar.no","fjaler.no","fjell.no","fla.no","flå.no","flakstad.no","flatanger.no","flekkefjord.no","flesberg.no","flora.no","folldal.no","forde.no","førde.no","forsand.no","fosnes.no","fræna.no","frana.no","frei.no","frogn.no","froland.no","frosta.no","froya.no","frøya.no","fuoisku.no","fuossko.no","fusa.no","fyresdal.no","gaivuotna.no","gáivuotna.no","galsa.no","gálsá.no","gamvik.no","gangaviika.no","gáŋgaviika.no","gaular.no","gausdal.no","giehtavuoatna.no","gildeskal.no","gildeskål.no","giske.no","gjemnes.no","gjerdrum.no","gjerstad.no","gjesdal.no","gjovik.no","gjøvik.no","gloppen.no","gol.no","gran.no","grane.no","granvin.no","gratangen.no","grimstad.no","grong.no","grue.no","gulen.no","guovdageaidnu.no","ha.no","hå.no","habmer.no","hábmer.no","hadsel.no","hægebostad.no","hagebostad.no","halden.no","halsa.no","hamar.no","hamaroy.no","hammarfeasta.no","hámmárfeasta.no","hammerfest.no","hapmir.no","hápmir.no","haram.no","hareid.no","harstad.no","hasvik.no","hattfjelldal.no","haugesund.no","os.hedmark.no","valer.hedmark.no","våler.hedmark.no","hemne.no","hemnes.no","hemsedal.no","hitra.no","hjartdal.no","hjelmeland.no","hobol.no","hobøl.no","hof.no","hol.no","hole.no","holmestrand.no","holtalen.no","holtålen.no","os.hordaland.no","hornindal.no","horten.no","hoyanger.no","høyanger.no","hoylandet.no","høylandet.no","hurdal.no","hurum.no","hvaler.no","hyllestad.no","ibestad.no","inderoy.no","inderøy.no","iveland.no","ivgu.no","jevnaker.no","jolster.no","jølster.no","jondal.no","kafjord.no","kåfjord.no","karasjohka.no","kárášjohka.no","karasjok.no","karlsoy.no","karmoy.no","karmøy.no","kautokeino.no","klabu.no","klæbu.no","klepp.no","kongsberg.no","kongsvinger.no","kraanghke.no","kråanghke.no","kragero.no","kragerø.no","kristiansand.no","kristiansund.no","krodsherad.no","krødsherad.no","kvæfjord.no","kvænangen.no","kvafjord.no","kvalsund.no","kvam.no","kvanangen.no","kvinesdal.no","kvinnherad.no","kviteseid.no","kvitsoy.no","kvitsøy.no","laakesvuemie.no","lærdal.no","lahppi.no","láhppi.no","lardal.no","larvik.no","lavagis.no","lavangen.no","leangaviika.no","leaŋgaviika.no","lebesby.no","leikanger.no","leirfjord.no","leka.no","leksvik.no","lenvik.no","lerdal.no","lesja.no","levanger.no","lier.no","lierne.no","lillehammer.no","lillesand.no","lindas.no","lindås.no","lindesnes.no","loabat.no","loabát.no","lodingen.no","lødingen.no","lom.no","loppa.no","lorenskog.no","lørenskog.no","loten.no","løten.no","lund.no","lunner.no","luroy.no","lurøy.no","luster.no","lyngdal.no","lyngen.no","malatvuopmi.no","málatvuopmi.no","malselv.no","målselv.no","malvik.no","mandal.no","marker.no","marnardal.no","masfjorden.no","masoy.no","måsøy.no","matta-varjjat.no","mátta-várjjat.no","meland.no","meldal.no","melhus.no","meloy.no","meløy.no","meraker.no","meråker.no","midsund.no","midtre-gauldal.no","moareke.no","moåreke.no","modalen.no","modum.no","molde.no","heroy.more-og-romsdal.no","sande.more-og-romsdal.no","herøy.møre-og-romsdal.no","sande.møre-og-romsdal.no","moskenes.no","moss.no","mosvik.no","muosat.no","muosát.no","naamesjevuemie.no","nååmesjevuemie.no","nærøy.no","namdalseid.no","namsos.no","namsskogan.no","nannestad.no","naroy.no","narviika.no","narvik.no","naustdal.no","navuotna.no","návuotna.no","nedre-eiker.no","nesna.no","nesodden.no","nesseby.no","nesset.no","nissedal.no","nittedal.no","nord-aurdal.no","nord-fron.no","nord-odal.no","norddal.no","nordkapp.no","bo.nordland.no","bø.nordland.no","heroy.nordland.no","herøy.nordland.no","nordre-land.no","nordreisa.no","nore-og-uvdal.no","notodden.no","notteroy.no","nøtterøy.no","odda.no","oksnes.no","øksnes.no","omasvuotna.no","oppdal.no","oppegard.no","oppegård.no","orkdal.no","orland.no","ørland.no","orskog.no","ørskog.no","orsta.no","ørsta.no","osen.no","osteroy.no","osterøy.no","valer.ostfold.no","våler.østfold.no","ostre-toten.no","østre-toten.no","overhalla.no","ovre-eiker.no","øvre-eiker.no","oyer.no","øyer.no","oygarden.no","øygarden.no","oystre-slidre.no","øystre-slidre.no","porsanger.no","porsangu.no","porsáŋgu.no","porsgrunn.no","rade.no","råde.no","radoy.no","radøy.no","rælingen.no","rahkkeravju.no","ráhkkerávju.no","raisa.no","ráisa.no","rakkestad.no","ralingen.no","rana.no","randaberg.no","rauma.no","rendalen.no","rennebu.no","rennesoy.no","rennesøy.no","rindal.no","ringebu.no","ringerike.no","ringsaker.no","risor.no","risør.no","rissa.no","roan.no","rodoy.no","rødøy.no","rollag.no","romsa.no","romskog.no","rømskog.no","roros.no","røros.no","rost.no","røst.no","royken.no","røyken.no","royrvik.no","røyrvik.no","ruovat.no","rygge.no","salangen.no","salat.no","sálat.no","sálát.no","saltdal.no","samnanger.no","sandefjord.no","sandnes.no","sandoy.no","sandøy.no","sarpsborg.no","sauda.no","sauherad.no","sel.no","selbu.no","selje.no","seljord.no","siellak.no","sigdal.no","siljan.no","sirdal.no","skanit.no","skánit.no","skanland.no","skånland.no","skaun.no","skedsmo.no","ski.no","skien.no","skierva.no","skiervá.no","skiptvet.no","skjak.no","skjåk.no","skjervoy.no","skjervøy.no","skodje.no","smola.no","smøla.no","snaase.no","snåase.no","snasa.no","snåsa.no","snillfjord.no","snoasa.no","sogndal.no","sogne.no","søgne.no","sokndal.no","sola.no","solund.no","somna.no","sømna.no","sondre-land.no","søndre-land.no","songdalen.no","sor-aurdal.no","sør-aurdal.no","sor-fron.no","sør-fron.no","sor-odal.no","sør-odal.no","sor-varanger.no","sør-varanger.no","sorfold.no","sørfold.no","sorreisa.no","sørreisa.no","sortland.no","sorum.no","sørum.no","spydeberg.no","stange.no","stavanger.no","steigen.no","steinkjer.no","stjordal.no","stjørdal.no","stokke.no","stor-elvdal.no","stord.no","stordal.no","storfjord.no","strand.no","stranda.no","stryn.no","sula.no","suldal.no","sund.no","sunndal.no","surnadal.no","sveio.no","svelvik.no","sykkylven.no","tana.no","bo.telemark.no","bø.telemark.no","time.no","tingvoll.no","tinn.no","tjeldsund.no","tjome.no","tjøme.no","tokke.no","tolga.no","tonsberg.no","tønsberg.no","torsken.no","træna.no","trana.no","tranoy.no","tranøy.no","troandin.no","trogstad.no","trøgstad.no","tromsa.no","tromso.no","tromsø.no","trondheim.no","trysil.no","tvedestrand.no","tydal.no","tynset.no","tysfjord.no","tysnes.no","tysvær.no","tysvar.no","ullensaker.no","ullensvang.no","ulvik.no","unjarga.no","unjárga.no","utsira.no","vaapste.no","vadso.no","vadsø.no","værøy.no","vaga.no","vågå.no","vagan.no","vågan.no","vagsoy.no","vågsøy.no","vaksdal.no","valle.no","vang.no","vanylven.no","vardo.no","vardø.no","varggat.no","várggát.no","varoy.no","vefsn.no","vega.no","vegarshei.no","vegårshei.no","vennesla.no","verdal.no","verran.no","vestby.no","sande.vestfold.no","vestnes.no","vestre-slidre.no","vestre-toten.no","vestvagoy.no","vestvågøy.no","vevelstad.no","vik.no","vikna.no","vindafjord.no","voagat.no","volda.no","voss.no","*.np","nr","biz.nr","com.nr","edu.nr","gov.nr","info.nr","net.nr","org.nr","nu","nz","ac.nz","co.nz","cri.nz","geek.nz","gen.nz","govt.nz","health.nz","iwi.nz","kiwi.nz","maori.nz","māori.nz","mil.nz","net.nz","org.nz","parliament.nz","school.nz","om","co.om","com.om","edu.om","gov.om","med.om","museum.om","net.om","org.om","pro.om","onion","org","pa","abo.pa","ac.pa","com.pa","edu.pa","gob.pa","ing.pa","med.pa","net.pa","nom.pa","org.pa","sld.pa","pe","com.pe","edu.pe","gob.pe","mil.pe","net.pe","nom.pe","org.pe","pf","com.pf","edu.pf","org.pf","*.pg","ph","com.ph","edu.ph","gov.ph","i.ph","mil.ph","net.ph","ngo.ph","org.ph","pk","ac.pk","biz.pk","com.pk","edu.pk","fam.pk","gkp.pk","gob.pk","gog.pk","gok.pk","gon.pk","gop.pk","gos.pk","gov.pk","net.pk","org.pk","web.pk","pl","com.pl","net.pl","org.pl","agro.pl","aid.pl","atm.pl","auto.pl","biz.pl","edu.pl","gmina.pl","gsm.pl","info.pl","mail.pl","media.pl","miasta.pl","mil.pl","nieruchomosci.pl","nom.pl","pc.pl","powiat.pl","priv.pl","realestate.pl","rel.pl","sex.pl","shop.pl","sklep.pl","sos.pl","szkola.pl","targi.pl","tm.pl","tourism.pl","travel.pl","turystyka.pl","gov.pl","ap.gov.pl","griw.gov.pl","ic.gov.pl","is.gov.pl","kmpsp.gov.pl","konsulat.gov.pl","kppsp.gov.pl","kwp.gov.pl","kwpsp.gov.pl","mup.gov.pl","mw.gov.pl","oia.gov.pl","oirm.gov.pl","oke.gov.pl","oow.gov.pl","oschr.gov.pl","oum.gov.pl","pa.gov.pl","pinb.gov.pl","piw.gov.pl","po.gov.pl","pr.gov.pl","psp.gov.pl","psse.gov.pl","pup.gov.pl","rzgw.gov.pl","sa.gov.pl","sdn.gov.pl","sko.gov.pl","so.gov.pl","sr.gov.pl","starostwo.gov.pl","ug.gov.pl","ugim.gov.pl","um.gov.pl","umig.gov.pl","upow.gov.pl","uppo.gov.pl","us.gov.pl","uw.gov.pl","uzs.gov.pl","wif.gov.pl","wiih.gov.pl","winb.gov.pl","wios.gov.pl","witd.gov.pl","wiw.gov.pl","wkz.gov.pl","wsa.gov.pl","wskr.gov.pl","wsse.gov.pl","wuoz.gov.pl","wzmiuw.gov.pl","zp.gov.pl","zpisdn.gov.pl","augustow.pl","babia-gora.pl","bedzin.pl","beskidy.pl","bialowieza.pl","bialystok.pl","bielawa.pl","bieszczady.pl","boleslawiec.pl","bydgoszcz.pl","bytom.pl","cieszyn.pl","czeladz.pl","czest.pl","dlugoleka.pl","elblag.pl","elk.pl","glogow.pl","gniezno.pl","gorlice.pl","grajewo.pl","ilawa.pl","jaworzno.pl","jelenia-gora.pl","jgora.pl","kalisz.pl","karpacz.pl","kartuzy.pl","kaszuby.pl","katowice.pl","kazimierz-dolny.pl","kepno.pl","ketrzyn.pl","klodzko.pl","kobierzyce.pl","kolobrzeg.pl","konin.pl","konskowola.pl","kutno.pl","lapy.pl","lebork.pl","legnica.pl","lezajsk.pl","limanowa.pl","lomza.pl","lowicz.pl","lubin.pl","lukow.pl","malbork.pl","malopolska.pl","mazowsze.pl","mazury.pl","mielec.pl","mielno.pl","mragowo.pl","naklo.pl","nowaruda.pl","nysa.pl","olawa.pl","olecko.pl","olkusz.pl","olsztyn.pl","opoczno.pl","opole.pl","ostroda.pl","ostroleka.pl","ostrowiec.pl","ostrowwlkp.pl","pila.pl","pisz.pl","podhale.pl","podlasie.pl","polkowice.pl","pomorskie.pl","pomorze.pl","prochowice.pl","pruszkow.pl","przeworsk.pl","pulawy.pl","radom.pl","rawa-maz.pl","rybnik.pl","rzeszow.pl","sanok.pl","sejny.pl","skoczow.pl","slask.pl","slupsk.pl","sosnowiec.pl","stalowa-wola.pl","starachowice.pl","stargard.pl","suwalki.pl","swidnica.pl","swiebodzin.pl","swinoujscie.pl","szczecin.pl","szczytno.pl","tarnobrzeg.pl","tgory.pl","turek.pl","tychy.pl","ustka.pl","walbrzych.pl","warmia.pl","warszawa.pl","waw.pl","wegrow.pl","wielun.pl","wlocl.pl","wloclawek.pl","wodzislaw.pl","wolomin.pl","wroclaw.pl","zachpomor.pl","zagan.pl","zarow.pl","zgora.pl","zgorzelec.pl","pm","pn","co.pn","edu.pn","gov.pn","net.pn","org.pn","post","pr","biz.pr","com.pr","edu.pr","gov.pr","info.pr","isla.pr","name.pr","net.pr","org.pr","pro.pr","ac.pr","est.pr","prof.pr","pro","aaa.pro","aca.pro","acct.pro","avocat.pro","bar.pro","cpa.pro","eng.pro","jur.pro","law.pro","med.pro","recht.pro","ps","com.ps","edu.ps","gov.ps","net.ps","org.ps","plo.ps","sec.ps","pt","com.pt","edu.pt","gov.pt","int.pt","net.pt","nome.pt","org.pt","publ.pt","pw","belau.pw","co.pw","ed.pw","go.pw","or.pw","py","com.py","coop.py","edu.py","gov.py","mil.py","net.py","org.py","qa","com.qa","edu.qa","gov.qa","mil.qa","name.qa","net.qa","org.qa","sch.qa","re","asso.re","com.re","ro","arts.ro","com.ro","firm.ro","info.ro","nom.ro","nt.ro","org.ro","rec.ro","store.ro","tm.ro","www.ro","rs","ac.rs","co.rs","edu.rs","gov.rs","in.rs","org.rs","ru","rw","ac.rw","co.rw","coop.rw","gov.rw","mil.rw","net.rw","org.rw","sa","com.sa","edu.sa","gov.sa","med.sa","net.sa","org.sa","pub.sa","sch.sa","sb","com.sb","edu.sb","gov.sb","net.sb","org.sb","sc","com.sc","edu.sc","gov.sc","net.sc","org.sc","sd","com.sd","edu.sd","gov.sd","info.sd","med.sd","net.sd","org.sd","tv.sd","se","a.se","ac.se","b.se","bd.se","brand.se","c.se","d.se","e.se","f.se","fh.se","fhsk.se","fhv.se","g.se","h.se","i.se","k.se","komforb.se","kommunalforbund.se","komvux.se","l.se","lanbib.se","m.se","n.se","naturbruksgymn.se","o.se","org.se","p.se","parti.se","pp.se","press.se","r.se","s.se","t.se","tm.se","u.se","w.se","x.se","y.se","z.se","sg","com.sg","edu.sg","gov.sg","net.sg","org.sg","sh","com.sh","gov.sh","mil.sh","net.sh","org.sh","si","sj","sk","sl","com.sl","edu.sl","gov.sl","net.sl","org.sl","sm","sn","art.sn","com.sn","edu.sn","gouv.sn","org.sn","perso.sn","univ.sn","so","com.so","edu.so","gov.so","me.so","net.so","org.so","sr","ss","biz.ss","co.ss","com.ss","edu.ss","gov.ss","me.ss","net.ss","org.ss","sch.ss","st","co.st","com.st","consulado.st","edu.st","embaixada.st","mil.st","net.st","org.st","principe.st","saotome.st","store.st","su","sv","com.sv","edu.sv","gob.sv","org.sv","red.sv","sx","gov.sx","sy","com.sy","edu.sy","gov.sy","mil.sy","net.sy","org.sy","sz","ac.sz","co.sz","org.sz","tc","td","tel","tf","tg","th","ac.th","co.th","go.th","in.th","mi.th","net.th","or.th","tj","ac.tj","biz.tj","co.tj","com.tj","edu.tj","go.tj","gov.tj","int.tj","mil.tj","name.tj","net.tj","nic.tj","org.tj","test.tj","web.tj","tk","tl","gov.tl","tm","co.tm","com.tm","edu.tm","gov.tm","mil.tm","net.tm","nom.tm","org.tm","tn","com.tn","ens.tn","fin.tn","gov.tn","ind.tn","info.tn","intl.tn","mincom.tn","nat.tn","net.tn","org.tn","perso.tn","tourism.tn","to","com.to","edu.to","gov.to","mil.to","net.to","org.to","tr","av.tr","bbs.tr","bel.tr","biz.tr","com.tr","dr.tr","edu.tr","gen.tr","gov.tr","info.tr","k12.tr","kep.tr","mil.tr","name.tr","net.tr","org.tr","pol.tr","tel.tr","tsk.tr","tv.tr","web.tr","nc.tr","gov.nc.tr","tt","biz.tt","co.tt","com.tt","edu.tt","gov.tt","info.tt","mil.tt","name.tt","net.tt","org.tt","pro.tt","tv","tw","club.tw","com.tw","ebiz.tw","edu.tw","game.tw","gov.tw","idv.tw","mil.tw","net.tw","org.tw","tz","ac.tz","co.tz","go.tz","hotel.tz","info.tz","me.tz","mil.tz","mobi.tz","ne.tz","or.tz","sc.tz","tv.tz","ua","com.ua","edu.ua","gov.ua","in.ua","net.ua","org.ua","cherkassy.ua","cherkasy.ua","chernigov.ua","chernihiv.ua","chernivtsi.ua","chernovtsy.ua","ck.ua","cn.ua","cr.ua","crimea.ua","cv.ua","dn.ua","dnepropetrovsk.ua","dnipropetrovsk.ua","donetsk.ua","dp.ua","if.ua","ivano-frankivsk.ua","kh.ua","kharkiv.ua","kharkov.ua","kherson.ua","khmelnitskiy.ua","khmelnytskyi.ua","kiev.ua","kirovograd.ua","km.ua","kr.ua","kropyvnytskyi.ua","krym.ua","ks.ua","kv.ua","kyiv.ua","lg.ua","lt.ua","lugansk.ua","luhansk.ua","lutsk.ua","lv.ua","lviv.ua","mk.ua","mykolaiv.ua","nikolaev.ua","od.ua","odesa.ua","odessa.ua","pl.ua","poltava.ua","rivne.ua","rovno.ua","rv.ua","sb.ua","sebastopol.ua","sevastopol.ua","sm.ua","sumy.ua","te.ua","ternopil.ua","uz.ua","uzhgorod.ua","uzhhorod.ua","vinnica.ua","vinnytsia.ua","vn.ua","volyn.ua","yalta.ua","zakarpattia.ua","zaporizhzhe.ua","zaporizhzhia.ua","zhitomir.ua","zhytomyr.ua","zp.ua","zt.ua","ug","ac.ug","co.ug","com.ug","go.ug","ne.ug","or.ug","org.ug","sc.ug","uk","ac.uk","co.uk","gov.uk","ltd.uk","me.uk","net.uk","nhs.uk","org.uk","plc.uk","police.uk","*.sch.uk","us","dni.us","fed.us","isa.us","kids.us","nsn.us","ak.us","al.us","ar.us","as.us","az.us","ca.us","co.us","ct.us","dc.us","de.us","fl.us","ga.us","gu.us","hi.us","ia.us","id.us","il.us","in.us","ks.us","ky.us","la.us","ma.us","md.us","me.us","mi.us","mn.us","mo.us","ms.us","mt.us","nc.us","nd.us","ne.us","nh.us","nj.us","nm.us","nv.us","ny.us","oh.us","ok.us","or.us","pa.us","pr.us","ri.us","sc.us","sd.us","tn.us","tx.us","ut.us","va.us","vi.us","vt.us","wa.us","wi.us","wv.us","wy.us","k12.ak.us","k12.al.us","k12.ar.us","k12.as.us","k12.az.us","k12.ca.us","k12.co.us","k12.ct.us","k12.dc.us","k12.fl.us","k12.ga.us","k12.gu.us","k12.ia.us","k12.id.us","k12.il.us","k12.in.us","k12.ks.us","k12.ky.us","k12.la.us","k12.ma.us","k12.md.us","k12.me.us","k12.mi.us","k12.mn.us","k12.mo.us","k12.ms.us","k12.mt.us","k12.nc.us","k12.ne.us","k12.nh.us","k12.nj.us","k12.nm.us","k12.nv.us","k12.ny.us","k12.oh.us","k12.ok.us","k12.or.us","k12.pa.us","k12.pr.us","k12.sc.us","k12.tn.us","k12.tx.us","k12.ut.us","k12.va.us","k12.vi.us","k12.vt.us","k12.wa.us","k12.wi.us","cc.ak.us","lib.ak.us","cc.al.us","lib.al.us","cc.ar.us","lib.ar.us","cc.as.us","lib.as.us","cc.az.us","lib.az.us","cc.ca.us","lib.ca.us","cc.co.us","lib.co.us","cc.ct.us","lib.ct.us","cc.dc.us","lib.dc.us","cc.de.us","cc.fl.us","cc.ga.us","cc.gu.us","cc.hi.us","cc.ia.us","cc.id.us","cc.il.us","cc.in.us","cc.ks.us","cc.ky.us","cc.la.us","cc.ma.us","cc.md.us","cc.me.us","cc.mi.us","cc.mn.us","cc.mo.us","cc.ms.us","cc.mt.us","cc.nc.us","cc.nd.us","cc.ne.us","cc.nh.us","cc.nj.us","cc.nm.us","cc.nv.us","cc.ny.us","cc.oh.us","cc.ok.us","cc.or.us","cc.pa.us","cc.pr.us","cc.ri.us","cc.sc.us","cc.sd.us","cc.tn.us","cc.tx.us","cc.ut.us","cc.va.us","cc.vi.us","cc.vt.us","cc.wa.us","cc.wi.us","cc.wv.us","cc.wy.us","k12.wy.us","lib.fl.us","lib.ga.us","lib.gu.us","lib.hi.us","lib.ia.us","lib.id.us","lib.il.us","lib.in.us","lib.ks.us","lib.ky.us","lib.la.us","lib.ma.us","lib.md.us","lib.me.us","lib.mi.us","lib.mn.us","lib.mo.us","lib.ms.us","lib.mt.us","lib.nc.us","lib.nd.us","lib.ne.us","lib.nh.us","lib.nj.us","lib.nm.us","lib.nv.us","lib.ny.us","lib.oh.us","lib.ok.us","lib.or.us","lib.pa.us","lib.pr.us","lib.ri.us","lib.sc.us","lib.sd.us","lib.tn.us","lib.tx.us","lib.ut.us","lib.va.us","lib.vi.us","lib.vt.us","lib.wa.us","lib.wi.us","lib.wy.us","chtr.k12.ma.us","paroch.k12.ma.us","pvt.k12.ma.us","ann-arbor.mi.us","cog.mi.us","dst.mi.us","eaton.mi.us","gen.mi.us","mus.mi.us","tec.mi.us","washtenaw.mi.us","uy","com.uy","edu.uy","gub.uy","mil.uy","net.uy","org.uy","uz","co.uz","com.uz","net.uz","org.uz","va","vc","com.vc","edu.vc","gov.vc","mil.vc","net.vc","org.vc","ve","arts.ve","bib.ve","co.ve","com.ve","e12.ve","edu.ve","firm.ve","gob.ve","gov.ve","info.ve","int.ve","mil.ve","net.ve","nom.ve","org.ve","rar.ve","rec.ve","store.ve","tec.ve","web.ve","vg","vi","co.vi","com.vi","k12.vi","net.vi","org.vi","vn","ac.vn","ai.vn","biz.vn","com.vn","edu.vn","gov.vn","health.vn","id.vn","info.vn","int.vn","io.vn","name.vn","net.vn","org.vn","pro.vn","angiang.vn","bacgiang.vn","backan.vn","baclieu.vn","bacninh.vn","baria-vungtau.vn","bentre.vn","binhdinh.vn","binhduong.vn","binhphuoc.vn","binhthuan.vn","camau.vn","cantho.vn","caobang.vn","daklak.vn","daknong.vn","danang.vn","dienbien.vn","dongnai.vn","dongthap.vn","gialai.vn","hagiang.vn","haiduong.vn","haiphong.vn","hanam.vn","hanoi.vn","hatinh.vn","haugiang.vn","hoabinh.vn","hungyen.vn","khanhhoa.vn","kiengiang.vn","kontum.vn","laichau.vn","lamdong.vn","langson.vn","laocai.vn","longan.vn","namdinh.vn","nghean.vn","ninhbinh.vn","ninhthuan.vn","phutho.vn","phuyen.vn","quangbinh.vn","quangnam.vn","quangngai.vn","quangninh.vn","quangtri.vn","soctrang.vn","sonla.vn","tayninh.vn","thaibinh.vn","thainguyen.vn","thanhhoa.vn","thanhphohochiminh.vn","thuathienhue.vn","tiengiang.vn","travinh.vn","tuyenquang.vn","vinhlong.vn","vinhphuc.vn","yenbai.vn","vu","com.vu","edu.vu","net.vu","org.vu","wf","ws","com.ws","edu.ws","gov.ws","net.ws","org.ws","yt","امارات","հայ","বাংলা","бг","البحرين","бел","中国","中國","الجزائر","مصر","ею","ευ","موريتانيا","გე","ελ","香港","個人.香港","公司.香港","政府.香港","教育.香港","組織.香港","網絡.香港","ಭಾರತ","ଭାରତ","ভাৰত","भारतम्","भारोत","ڀارت","ഭാരതം","भारत","بارت","بھارت","భారత్","ભારત","ਭਾਰਤ","ভারত","இந்தியா","ایران","ايران","عراق","الاردن","한국","қаз","ລາວ","ලංකා","இலங்கை","المغرب","мкд","мон","澳門","澳门","مليسيا","عمان","پاکستان","پاكستان","فلسطين","срб","ак.срб","обр.срб","од.срб","орг.срб","пр.срб","упр.срб","рф","قطر","السعودية","السعودیة","السعودیۃ","السعوديه","سودان","新加坡","சிங்கப்பூர்","سورية","سوريا","ไทย","ทหาร.ไทย","ธุรกิจ.ไทย","เน็ต.ไทย","รัฐบาล.ไทย","ศึกษา.ไทย","องค์กร.ไทย","تونس","台灣","台湾","臺灣","укр","اليمن","xxx","ye","com.ye","edu.ye","gov.ye","mil.ye","net.ye","org.ye","ac.za","agric.za","alt.za","co.za","edu.za","gov.za","grondar.za","law.za","mil.za","net.za","ngo.za","nic.za","nis.za","nom.za","org.za","school.za","tm.za","web.za","zm","ac.zm","biz.zm","co.zm","com.zm","edu.zm","gov.zm","info.zm","mil.zm","net.zm","org.zm","sch.zm","zw","ac.zw","co.zw","gov.zw","mil.zw","org.zw","aaa","aarp","abb","abbott","abbvie","abc","able","abogado","abudhabi","academy","accenture","accountant","accountants","aco","actor","ads","adult","aeg","aetna","afl","africa","agakhan","agency","aig","airbus","airforce","airtel","akdn","alibaba","alipay","allfinanz","allstate","ally","alsace","alstom","amazon","americanexpress","americanfamily","amex","amfam","amica","amsterdam","analytics","android","anquan","anz","aol","apartments","app","apple","aquarelle","arab","aramco","archi","army","art","arte","asda","associates","athleta","attorney","auction","audi","audible","audio","auspost","author","auto","autos","aws","axa","azure","baby","baidu","banamex","band","bank","bar","barcelona","barclaycard","barclays","barefoot","bargains","baseball","basketball","bauhaus","bayern","bbc","bbt","bbva","bcg","bcn","beats","beauty","beer","bentley","berlin","best","bestbuy","bet","bharti","bible","bid","bike","bing","bingo","bio","black","blackfriday","blockbuster","blog","bloomberg","blue","bms","bmw","bnpparibas","boats","boehringer","bofa","bom","bond","boo","book","booking","bosch","bostik","boston","bot","boutique","box","bradesco","bridgestone","broadway","broker","brother","brussels","build","builders","business","buy","buzz","bzh","cab","cafe","cal","call","calvinklein","cam","camera","camp","canon","capetown","capital","capitalone","car","caravan","cards","care","career","careers","cars","casa","case","cash","casino","catering","catholic","cba","cbn","cbre","center","ceo","cern","cfa","cfd","chanel","channel","charity","chase","chat","cheap","chintai","christmas","chrome","church","cipriani","circle","cisco","citadel","citi","citic","city","claims","cleaning","click","clinic","clinique","clothing","cloud","club","clubmed","coach","codes","coffee","college","cologne","commbank","community","company","compare","computer","comsec","condos","construction","consulting","contact","contractors","cooking","cool","corsica","country","coupon","coupons","courses","cpa","credit","creditcard","creditunion","cricket","crown","crs","cruise","cruises","cuisinella","cymru","cyou","dad","dance","data","date","dating","datsun","day","dclk","dds","deal","dealer","deals","degree","delivery","dell","deloitte","delta","democrat","dental","dentist","desi","design","dev","dhl","diamonds","diet","digital","direct","directory","discount","discover","dish","diy","dnp","docs","doctor","dog","domains","dot","download","drive","dtv","dubai","dunlop","dupont","durban","dvag","dvr","earth","eat","eco","edeka","education","email","emerck","energy","engineer","engineering","enterprises","epson","equipment","ericsson","erni","esq","estate","eurovision","eus","events","exchange","expert","exposed","express","extraspace","fage","fail","fairwinds","faith","family","fan","fans","farm","farmers","fashion","fast","fedex","feedback","ferrari","ferrero","fidelity","fido","film","final","finance","financial","fire","firestone","firmdale","fish","fishing","fit","fitness","flickr","flights","flir","florist","flowers","fly","foo","food","football","ford","forex","forsale","forum","foundation","fox","free","fresenius","frl","frogans","frontier","ftr","fujitsu","fun","fund","furniture","futbol","fyi","gal","gallery","gallo","gallup","game","games","gap","garden","gay","gbiz","gdn","gea","gent","genting","george","ggee","gift","gifts","gives","giving","glass","gle","global","globo","gmail","gmbh","gmo","gmx","godaddy","gold","goldpoint","golf","goo","goodyear","goog","google","gop","got","grainger","graphics","gratis","green","gripe","grocery","group","gucci","guge","guide","guitars","guru","hair","hamburg","hangout","haus","hbo","hdfc","hdfcbank","health","healthcare","help","helsinki","here","hermes","hiphop","hisamitsu","hitachi","hiv","hkt","hockey","holdings","holiday","homedepot","homegoods","homes","homesense","honda","horse","hospital","host","hosting","hot","hotels","hotmail","house","how","hsbc","hughes","hyatt","hyundai","ibm","icbc","ice","icu","ieee","ifm","ikano","imamat","imdb","immo","immobilien","inc","industries","infiniti","ing","ink","institute","insurance","insure","international","intuit","investments","ipiranga","irish","ismaili","ist","istanbul","itau","itv","jaguar","java","jcb","jeep","jetzt","jewelry","jio","jll","jmp","jnj","joburg","jot","joy","jpmorgan","jprs","juegos","juniper","kaufen","kddi","kerryhotels","kerrylogistics","kerryproperties","kfh","kia","kids","kim","kindle","kitchen","kiwi","koeln","komatsu","kosher","kpmg","kpn","krd","kred","kuokgroup","kyoto","lacaixa","lamborghini","lamer","lancaster","land","landrover","lanxess","lasalle","lat","latino","latrobe","law","lawyer","lds","lease","leclerc","lefrak","legal","lego","lexus","lgbt","lidl","life","lifeinsurance","lifestyle","lighting","like","lilly","limited","limo","lincoln","link","lipsy","live","living","llc","llp","loan","loans","locker","locus","lol","london","lotte","lotto","love","lpl","lplfinancial","ltd","ltda","lundbeck","luxe","luxury","madrid","maif","maison","makeup","man","management","mango","map","market","marketing","markets","marriott","marshalls","mattel","mba","mckinsey","med","media","meet","melbourne","meme","memorial","men","menu","merck","merckmsd","miami","microsoft","mini","mint","mit","mitsubishi","mlb","mls","mma","mobile","moda","moe","moi","mom","monash","money","monster","mormon","mortgage","moscow","moto","motorcycles","mov","movie","msd","mtn","mtr","music","nab","nagoya","navy","nba","nec","netbank","netflix","network","neustar","new","news","next","nextdirect","nexus","nfl","ngo","nhk","nico","nike","nikon","ninja","nissan","nissay","nokia","norton","now","nowruz","nowtv","nra","nrw","ntt","nyc","obi","observer","office","okinawa","olayan","olayangroup","ollo","omega","one","ong","onl","online","ooo","open","oracle","orange","organic","origins","osaka","otsuka","ott","ovh","page","panasonic","paris","pars","partners","parts","party","pay","pccw","pet","pfizer","pharmacy","phd","philips","phone","photo","photography","photos","physio","pics","pictet","pictures","pid","pin","ping","pink","pioneer","pizza","place","play","playstation","plumbing","plus","pnc","pohl","poker","politie","porn","pramerica","praxi","press","prime","prod","productions","prof","progressive","promo","properties","property","protection","pru","prudential","pub","pwc","qpon","quebec","quest","racing","radio","read","realestate","realtor","realty","recipes","red","redstone","redumbrella","rehab","reise","reisen","reit","reliance","ren","rent","rentals","repair","report","republican","rest","restaurant","review","reviews","rexroth","rich","richardli","ricoh","ril","rio","rip","rocks","rodeo","rogers","room","rsvp","rugby","ruhr","run","rwe","ryukyu","saarland","safe","safety","sakura","sale","salon","samsclub","samsung","sandvik","sandvikcoromant","sanofi","sap","sarl","sas","save","saxo","sbi","sbs","scb","schaeffler","schmidt","scholarships","school","schule","schwarz","science","scot","search","seat","secure","security","seek","select","sener","services","seven","sew","sex","sexy","sfr","shangrila","sharp","shell","shia","shiksha","shoes","shop","shopping","shouji","show","silk","sina","singles","site","ski","skin","sky","skype","sling","smart","smile","sncf","soccer","social","softbank","software","sohu","solar","solutions","song","sony","soy","spa","space","sport","spot","srl","stada","staples","star","statebank","statefarm","stc","stcgroup","stockholm","storage","store","stream","studio","study","style","sucks","supplies","supply","support","surf","surgery","suzuki","swatch","swiss","sydney","systems","tab","taipei","talk","taobao","target","tatamotors","tatar","tattoo","tax","taxi","tci","tdk","team","tech","technology","temasek","tennis","teva","thd","theater","theatre","tiaa","tickets","tienda","tips","tires","tirol","tjmaxx","tjx","tkmaxx","tmall","today","tokyo","tools","top","toray","toshiba","total","tours","town","toyota","toys","trade","trading","training","travel","travelers","travelersinsurance","trust","trv","tube","tui","tunes","tushu","tvs","ubank","ubs","unicom","university","uno","uol","ups","vacations","vana","vanguard","vegas","ventures","verisign","versicherung","vet","viajes","video","vig","viking","villas","vin","vip","virgin","visa","vision","viva","vivo","vlaanderen","vodka","volvo","vote","voting","voto","voyage","wales","walmart","walter","wang","wanggou","watch","watches","weather","weatherchannel","webcam","weber","website","wed","wedding","weibo","weir","whoswho","wien","wiki","williamhill","win","windows","wine","winners","wme","wolterskluwer","woodside","work","works","world","wow","wtc","wtf","xbox","xerox","xihuan","xin","कॉम","セール","佛山","慈善","集团","在线","点看","คอม","八卦","موقع","公益","公司","香格里拉","网站","移动","我爱你","москва","католик","онлайн","сайт","联通","קום","时尚","微博","淡马锡","ファッション","орг","नेट","ストア","アマゾン","삼성","商标","商店","商城","дети","ポイント","新闻","家電","كوم","中文网","中信","娱乐","谷歌","電訊盈科","购物","クラウド","通販","网店","संगठन","餐厅","网络","ком","亚马逊","食品","飞利浦","手机","ارامكو","العليان","بازار","ابوظبي","كاثوليك","همراه","닷컴","政府","شبكة","بيتك","عرب","机构","组织机构","健康","招聘","рус","大拿","みんな","グーグル","世界","書籍","网址","닷넷","コム","天主教","游戏","vermögensberater","vermögensberatung","企业","信息","嘉里大酒店","嘉里","广东","政务","xyz","yachts","yahoo","yamaxun","yandex","yodobashi","yoga","yokohama","you","youtube","yun","zappos","zara","zero","zip","zone","zuerich","co.krd","edu.krd","art.pl","gliwice.pl","krakow.pl","poznan.pl","wroc.pl","zakopane.pl","lib.de.us","12chars.dev","12chars.it","12chars.pro","cc.ua","inf.ua","ltd.ua","611.to","a2hosted.com","cpserver.com","aaa.vodka","*.on-acorn.io","activetrail.biz","adaptable.app","adobeaemcloud.com","*.dev.adobeaemcloud.com","aem.live","hlx.live","adobeaemcloud.net","aem.page","hlx.page","hlx3.page","adobeio-static.net","adobeioruntime.net","africa.com","beep.pl","airkitapps.com","airkitapps-au.com","airkitapps.eu","aivencloud.com","akadns.net","akamai.net","akamai-staging.net","akamaiedge.net","akamaiedge-staging.net","akamaihd.net","akamaihd-staging.net","akamaiorigin.net","akamaiorigin-staging.net","akamaized.net","akamaized-staging.net","edgekey.net","edgekey-staging.net","edgesuite.net","edgesuite-staging.net","barsy.ca","*.compute.estate","*.alces.network","kasserver.com","altervista.org","alwaysdata.net","myamaze.net","execute-api.cn-north-1.amazonaws.com.cn","execute-api.cn-northwest-1.amazonaws.com.cn","execute-api.af-south-1.amazonaws.com","execute-api.ap-east-1.amazonaws.com","execute-api.ap-northeast-1.amazonaws.com","execute-api.ap-northeast-2.amazonaws.com","execute-api.ap-northeast-3.amazonaws.com","execute-api.ap-south-1.amazonaws.com","execute-api.ap-south-2.amazonaws.com","execute-api.ap-southeast-1.amazonaws.com","execute-api.ap-southeast-2.amazonaws.com","execute-api.ap-southeast-3.amazonaws.com","execute-api.ap-southeast-4.amazonaws.com","execute-api.ap-southeast-5.amazonaws.com","execute-api.ca-central-1.amazonaws.com","execute-api.ca-west-1.amazonaws.com","execute-api.eu-central-1.amazonaws.com","execute-api.eu-central-2.amazonaws.com","execute-api.eu-north-1.amazonaws.com","execute-api.eu-south-1.amazonaws.com","execute-api.eu-south-2.amazonaws.com","execute-api.eu-west-1.amazonaws.com","execute-api.eu-west-2.amazonaws.com","execute-api.eu-west-3.amazonaws.com","execute-api.il-central-1.amazonaws.com","execute-api.me-central-1.amazonaws.com","execute-api.me-south-1.amazonaws.com","execute-api.sa-east-1.amazonaws.com","execute-api.us-east-1.amazonaws.com","execute-api.us-east-2.amazonaws.com","execute-api.us-gov-east-1.amazonaws.com","execute-api.us-gov-west-1.amazonaws.com","execute-api.us-west-1.amazonaws.com","execute-api.us-west-2.amazonaws.com","cloudfront.net","auth.af-south-1.amazoncognito.com","auth.ap-east-1.amazoncognito.com","auth.ap-northeast-1.amazoncognito.com","auth.ap-northeast-2.amazoncognito.com","auth.ap-northeast-3.amazoncognito.com","auth.ap-south-1.amazoncognito.com","auth.ap-south-2.amazoncognito.com","auth.ap-southeast-1.amazoncognito.com","auth.ap-southeast-2.amazoncognito.com","auth.ap-southeast-3.amazoncognito.com","auth.ap-southeast-4.amazoncognito.com","auth.ca-central-1.amazoncognito.com","auth.ca-west-1.amazoncognito.com","auth.eu-central-1.amazoncognito.com","auth.eu-central-2.amazoncognito.com","auth.eu-north-1.amazoncognito.com","auth.eu-south-1.amazoncognito.com","auth.eu-south-2.amazoncognito.com","auth.eu-west-1.amazoncognito.com","auth.eu-west-2.amazoncognito.com","auth.eu-west-3.amazoncognito.com","auth.il-central-1.amazoncognito.com","auth.me-central-1.amazoncognito.com","auth.me-south-1.amazoncognito.com","auth.sa-east-1.amazoncognito.com","auth.us-east-1.amazoncognito.com","auth-fips.us-east-1.amazoncognito.com","auth.us-east-2.amazoncognito.com","auth-fips.us-east-2.amazoncognito.com","auth-fips.us-gov-west-1.amazoncognito.com","auth.us-west-1.amazoncognito.com","auth-fips.us-west-1.amazoncognito.com","auth.us-west-2.amazoncognito.com","auth-fips.us-west-2.amazoncognito.com","*.compute.amazonaws.com.cn","*.compute.amazonaws.com","*.compute-1.amazonaws.com","us-east-1.amazonaws.com","emrappui-prod.cn-north-1.amazonaws.com.cn","emrnotebooks-prod.cn-north-1.amazonaws.com.cn","emrstudio-prod.cn-north-1.amazonaws.com.cn","emrappui-prod.cn-northwest-1.amazonaws.com.cn","emrnotebooks-prod.cn-northwest-1.amazonaws.com.cn","emrstudio-prod.cn-northwest-1.amazonaws.com.cn","emrappui-prod.af-south-1.amazonaws.com","emrnotebooks-prod.af-south-1.amazonaws.com","emrstudio-prod.af-south-1.amazonaws.com","emrappui-prod.ap-east-1.amazonaws.com","emrnotebooks-prod.ap-east-1.amazonaws.com","emrstudio-prod.ap-east-1.amazonaws.com","emrappui-prod.ap-northeast-1.amazonaws.com","emrnotebooks-prod.ap-northeast-1.amazonaws.com","emrstudio-prod.ap-northeast-1.amazonaws.com","emrappui-prod.ap-northeast-2.amazonaws.com","emrnotebooks-prod.ap-northeast-2.amazonaws.com","emrstudio-prod.ap-northeast-2.amazonaws.com","emrappui-prod.ap-northeast-3.amazonaws.com","emrnotebooks-prod.ap-northeast-3.amazonaws.com","emrstudio-prod.ap-northeast-3.amazonaws.com","emrappui-prod.ap-south-1.amazonaws.com","emrnotebooks-prod.ap-south-1.amazonaws.com","emrstudio-prod.ap-south-1.amazonaws.com","emrappui-prod.ap-south-2.amazonaws.com","emrnotebooks-prod.ap-south-2.amazonaws.com","emrstudio-prod.ap-south-2.amazonaws.com","emrappui-prod.ap-southeast-1.amazonaws.com","emrnotebooks-prod.ap-southeast-1.amazonaws.com","emrstudio-prod.ap-southeast-1.amazonaws.com","emrappui-prod.ap-southeast-2.amazonaws.com","emrnotebooks-prod.ap-southeast-2.amazonaws.com","emrstudio-prod.ap-southeast-2.amazonaws.com","emrappui-prod.ap-southeast-3.amazonaws.com","emrnotebooks-prod.ap-southeast-3.amazonaws.com","emrstudio-prod.ap-southeast-3.amazonaws.com","emrappui-prod.ap-southeast-4.amazonaws.com","emrnotebooks-prod.ap-southeast-4.amazonaws.com","emrstudio-prod.ap-southeast-4.amazonaws.com","emrappui-prod.ca-central-1.amazonaws.com","emrnotebooks-prod.ca-central-1.amazonaws.com","emrstudio-prod.ca-central-1.amazonaws.com","emrappui-prod.ca-west-1.amazonaws.com","emrnotebooks-prod.ca-west-1.amazonaws.com","emrstudio-prod.ca-west-1.amazonaws.com","emrappui-prod.eu-central-1.amazonaws.com","emrnotebooks-prod.eu-central-1.amazonaws.com","emrstudio-prod.eu-central-1.amazonaws.com","emrappui-prod.eu-central-2.amazonaws.com","emrnotebooks-prod.eu-central-2.amazonaws.com","emrstudio-prod.eu-central-2.amazonaws.com","emrappui-prod.eu-north-1.amazonaws.com","emrnotebooks-prod.eu-north-1.amazonaws.com","emrstudio-prod.eu-north-1.amazonaws.com","emrappui-prod.eu-south-1.amazonaws.com","emrnotebooks-prod.eu-south-1.amazonaws.com","emrstudio-prod.eu-south-1.amazonaws.com","emrappui-prod.eu-south-2.amazonaws.com","emrnotebooks-prod.eu-south-2.amazonaws.com","emrstudio-prod.eu-south-2.amazonaws.com","emrappui-prod.eu-west-1.amazonaws.com","emrnotebooks-prod.eu-west-1.amazonaws.com","emrstudio-prod.eu-west-1.amazonaws.com","emrappui-prod.eu-west-2.amazonaws.com","emrnotebooks-prod.eu-west-2.amazonaws.com","emrstudio-prod.eu-west-2.amazonaws.com","emrappui-prod.eu-west-3.amazonaws.com","emrnotebooks-prod.eu-west-3.amazonaws.com","emrstudio-prod.eu-west-3.amazonaws.com","emrappui-prod.il-central-1.amazonaws.com","emrnotebooks-prod.il-central-1.amazonaws.com","emrstudio-prod.il-central-1.amazonaws.com","emrappui-prod.me-central-1.amazonaws.com","emrnotebooks-prod.me-central-1.amazonaws.com","emrstudio-prod.me-central-1.amazonaws.com","emrappui-prod.me-south-1.amazonaws.com","emrnotebooks-prod.me-south-1.amazonaws.com","emrstudio-prod.me-south-1.amazonaws.com","emrappui-prod.sa-east-1.amazonaws.com","emrnotebooks-prod.sa-east-1.amazonaws.com","emrstudio-prod.sa-east-1.amazonaws.com","emrappui-prod.us-east-1.amazonaws.com","emrnotebooks-prod.us-east-1.amazonaws.com","emrstudio-prod.us-east-1.amazonaws.com","emrappui-prod.us-east-2.amazonaws.com","emrnotebooks-prod.us-east-2.amazonaws.com","emrstudio-prod.us-east-2.amazonaws.com","emrappui-prod.us-gov-east-1.amazonaws.com","emrnotebooks-prod.us-gov-east-1.amazonaws.com","emrstudio-prod.us-gov-east-1.amazonaws.com","emrappui-prod.us-gov-west-1.amazonaws.com","emrnotebooks-prod.us-gov-west-1.amazonaws.com","emrstudio-prod.us-gov-west-1.amazonaws.com","emrappui-prod.us-west-1.amazonaws.com","emrnotebooks-prod.us-west-1.amazonaws.com","emrstudio-prod.us-west-1.amazonaws.com","emrappui-prod.us-west-2.amazonaws.com","emrnotebooks-prod.us-west-2.amazonaws.com","emrstudio-prod.us-west-2.amazonaws.com","*.cn-north-1.airflow.amazonaws.com.cn","*.cn-northwest-1.airflow.amazonaws.com.cn","*.af-south-1.airflow.amazonaws.com","*.ap-east-1.airflow.amazonaws.com","*.ap-northeast-1.airflow.amazonaws.com","*.ap-northeast-2.airflow.amazonaws.com","*.ap-northeast-3.airflow.amazonaws.com","*.ap-south-1.airflow.amazonaws.com","*.ap-south-2.airflow.amazonaws.com","*.ap-southeast-1.airflow.amazonaws.com","*.ap-southeast-2.airflow.amazonaws.com","*.ap-southeast-3.airflow.amazonaws.com","*.ap-southeast-4.airflow.amazonaws.com","*.ca-central-1.airflow.amazonaws.com","*.ca-west-1.airflow.amazonaws.com","*.eu-central-1.airflow.amazonaws.com","*.eu-central-2.airflow.amazonaws.com","*.eu-north-1.airflow.amazonaws.com","*.eu-south-1.airflow.amazonaws.com","*.eu-south-2.airflow.amazonaws.com","*.eu-west-1.airflow.amazonaws.com","*.eu-west-2.airflow.amazonaws.com","*.eu-west-3.airflow.amazonaws.com","*.il-central-1.airflow.amazonaws.com","*.me-central-1.airflow.amazonaws.com","*.me-south-1.airflow.amazonaws.com","*.sa-east-1.airflow.amazonaws.com","*.us-east-1.airflow.amazonaws.com","*.us-east-2.airflow.amazonaws.com","*.us-west-1.airflow.amazonaws.com","*.us-west-2.airflow.amazonaws.com","s3.dualstack.cn-north-1.amazonaws.com.cn","s3-accesspoint.dualstack.cn-north-1.amazonaws.com.cn","s3-website.dualstack.cn-north-1.amazonaws.com.cn","s3.cn-north-1.amazonaws.com.cn","s3-accesspoint.cn-north-1.amazonaws.com.cn","s3-deprecated.cn-north-1.amazonaws.com.cn","s3-object-lambda.cn-north-1.amazonaws.com.cn","s3-website.cn-north-1.amazonaws.com.cn","s3.dualstack.cn-northwest-1.amazonaws.com.cn","s3-accesspoint.dualstack.cn-northwest-1.amazonaws.com.cn","s3.cn-northwest-1.amazonaws.com.cn","s3-accesspoint.cn-northwest-1.amazonaws.com.cn","s3-object-lambda.cn-northwest-1.amazonaws.com.cn","s3-website.cn-northwest-1.amazonaws.com.cn","s3.dualstack.af-south-1.amazonaws.com","s3-accesspoint.dualstack.af-south-1.amazonaws.com","s3-website.dualstack.af-south-1.amazonaws.com","s3.af-south-1.amazonaws.com","s3-accesspoint.af-south-1.amazonaws.com","s3-object-lambda.af-south-1.amazonaws.com","s3-website.af-south-1.amazonaws.com","s3.dualstack.ap-east-1.amazonaws.com","s3-accesspoint.dualstack.ap-east-1.amazonaws.com","s3.ap-east-1.amazonaws.com","s3-accesspoint.ap-east-1.amazonaws.com","s3-object-lambda.ap-east-1.amazonaws.com","s3-website.ap-east-1.amazonaws.com","s3.dualstack.ap-northeast-1.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-1.amazonaws.com","s3-website.dualstack.ap-northeast-1.amazonaws.com","s3.ap-northeast-1.amazonaws.com","s3-accesspoint.ap-northeast-1.amazonaws.com","s3-object-lambda.ap-northeast-1.amazonaws.com","s3-website.ap-northeast-1.amazonaws.com","s3.dualstack.ap-northeast-2.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-2.amazonaws.com","s3-website.dualstack.ap-northeast-2.amazonaws.com","s3.ap-northeast-2.amazonaws.com","s3-accesspoint.ap-northeast-2.amazonaws.com","s3-object-lambda.ap-northeast-2.amazonaws.com","s3-website.ap-northeast-2.amazonaws.com","s3.dualstack.ap-northeast-3.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-3.amazonaws.com","s3-website.dualstack.ap-northeast-3.amazonaws.com","s3.ap-northeast-3.amazonaws.com","s3-accesspoint.ap-northeast-3.amazonaws.com","s3-object-lambda.ap-northeast-3.amazonaws.com","s3-website.ap-northeast-3.amazonaws.com","s3.dualstack.ap-south-1.amazonaws.com","s3-accesspoint.dualstack.ap-south-1.amazonaws.com","s3-website.dualstack.ap-south-1.amazonaws.com","s3.ap-south-1.amazonaws.com","s3-accesspoint.ap-south-1.amazonaws.com","s3-object-lambda.ap-south-1.amazonaws.com","s3-website.ap-south-1.amazonaws.com","s3.dualstack.ap-south-2.amazonaws.com","s3-accesspoint.dualstack.ap-south-2.amazonaws.com","s3-website.dualstack.ap-south-2.amazonaws.com","s3.ap-south-2.amazonaws.com","s3-accesspoint.ap-south-2.amazonaws.com","s3-object-lambda.ap-south-2.amazonaws.com","s3-website.ap-south-2.amazonaws.com","s3.dualstack.ap-southeast-1.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-1.amazonaws.com","s3-website.dualstack.ap-southeast-1.amazonaws.com","s3.ap-southeast-1.amazonaws.com","s3-accesspoint.ap-southeast-1.amazonaws.com","s3-object-lambda.ap-southeast-1.amazonaws.com","s3-website.ap-southeast-1.amazonaws.com","s3.dualstack.ap-southeast-2.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-2.amazonaws.com","s3-website.dualstack.ap-southeast-2.amazonaws.com","s3.ap-southeast-2.amazonaws.com","s3-accesspoint.ap-southeast-2.amazonaws.com","s3-object-lambda.ap-southeast-2.amazonaws.com","s3-website.ap-southeast-2.amazonaws.com","s3.dualstack.ap-southeast-3.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-3.amazonaws.com","s3-website.dualstack.ap-southeast-3.amazonaws.com","s3.ap-southeast-3.amazonaws.com","s3-accesspoint.ap-southeast-3.amazonaws.com","s3-object-lambda.ap-southeast-3.amazonaws.com","s3-website.ap-southeast-3.amazonaws.com","s3.dualstack.ap-southeast-4.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-4.amazonaws.com","s3-website.dualstack.ap-southeast-4.amazonaws.com","s3.ap-southeast-4.amazonaws.com","s3-accesspoint.ap-southeast-4.amazonaws.com","s3-object-lambda.ap-southeast-4.amazonaws.com","s3-website.ap-southeast-4.amazonaws.com","s3.dualstack.ap-southeast-5.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-5.amazonaws.com","s3-website.dualstack.ap-southeast-5.amazonaws.com","s3.ap-southeast-5.amazonaws.com","s3-accesspoint.ap-southeast-5.amazonaws.com","s3-deprecated.ap-southeast-5.amazonaws.com","s3-object-lambda.ap-southeast-5.amazonaws.com","s3-website.ap-southeast-5.amazonaws.com","s3.dualstack.ca-central-1.amazonaws.com","s3-accesspoint.dualstack.ca-central-1.amazonaws.com","s3-accesspoint-fips.dualstack.ca-central-1.amazonaws.com","s3-fips.dualstack.ca-central-1.amazonaws.com","s3-website.dualstack.ca-central-1.amazonaws.com","s3.ca-central-1.amazonaws.com","s3-accesspoint.ca-central-1.amazonaws.com","s3-accesspoint-fips.ca-central-1.amazonaws.com","s3-fips.ca-central-1.amazonaws.com","s3-object-lambda.ca-central-1.amazonaws.com","s3-website.ca-central-1.amazonaws.com","s3.dualstack.ca-west-1.amazonaws.com","s3-accesspoint.dualstack.ca-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.ca-west-1.amazonaws.com","s3-fips.dualstack.ca-west-1.amazonaws.com","s3-website.dualstack.ca-west-1.amazonaws.com","s3.ca-west-1.amazonaws.com","s3-accesspoint.ca-west-1.amazonaws.com","s3-accesspoint-fips.ca-west-1.amazonaws.com","s3-fips.ca-west-1.amazonaws.com","s3-object-lambda.ca-west-1.amazonaws.com","s3-website.ca-west-1.amazonaws.com","s3.dualstack.eu-central-1.amazonaws.com","s3-accesspoint.dualstack.eu-central-1.amazonaws.com","s3-website.dualstack.eu-central-1.amazonaws.com","s3.eu-central-1.amazonaws.com","s3-accesspoint.eu-central-1.amazonaws.com","s3-object-lambda.eu-central-1.amazonaws.com","s3-website.eu-central-1.amazonaws.com","s3.dualstack.eu-central-2.amazonaws.com","s3-accesspoint.dualstack.eu-central-2.amazonaws.com","s3-website.dualstack.eu-central-2.amazonaws.com","s3.eu-central-2.amazonaws.com","s3-accesspoint.eu-central-2.amazonaws.com","s3-object-lambda.eu-central-2.amazonaws.com","s3-website.eu-central-2.amazonaws.com","s3.dualstack.eu-north-1.amazonaws.com","s3-accesspoint.dualstack.eu-north-1.amazonaws.com","s3.eu-north-1.amazonaws.com","s3-accesspoint.eu-north-1.amazonaws.com","s3-object-lambda.eu-north-1.amazonaws.com","s3-website.eu-north-1.amazonaws.com","s3.dualstack.eu-south-1.amazonaws.com","s3-accesspoint.dualstack.eu-south-1.amazonaws.com","s3-website.dualstack.eu-south-1.amazonaws.com","s3.eu-south-1.amazonaws.com","s3-accesspoint.eu-south-1.amazonaws.com","s3-object-lambda.eu-south-1.amazonaws.com","s3-website.eu-south-1.amazonaws.com","s3.dualstack.eu-south-2.amazonaws.com","s3-accesspoint.dualstack.eu-south-2.amazonaws.com","s3-website.dualstack.eu-south-2.amazonaws.com","s3.eu-south-2.amazonaws.com","s3-accesspoint.eu-south-2.amazonaws.com","s3-object-lambda.eu-south-2.amazonaws.com","s3-website.eu-south-2.amazonaws.com","s3.dualstack.eu-west-1.amazonaws.com","s3-accesspoint.dualstack.eu-west-1.amazonaws.com","s3-website.dualstack.eu-west-1.amazonaws.com","s3.eu-west-1.amazonaws.com","s3-accesspoint.eu-west-1.amazonaws.com","s3-deprecated.eu-west-1.amazonaws.com","s3-object-lambda.eu-west-1.amazonaws.com","s3-website.eu-west-1.amazonaws.com","s3.dualstack.eu-west-2.amazonaws.com","s3-accesspoint.dualstack.eu-west-2.amazonaws.com","s3.eu-west-2.amazonaws.com","s3-accesspoint.eu-west-2.amazonaws.com","s3-object-lambda.eu-west-2.amazonaws.com","s3-website.eu-west-2.amazonaws.com","s3.dualstack.eu-west-3.amazonaws.com","s3-accesspoint.dualstack.eu-west-3.amazonaws.com","s3-website.dualstack.eu-west-3.amazonaws.com","s3.eu-west-3.amazonaws.com","s3-accesspoint.eu-west-3.amazonaws.com","s3-object-lambda.eu-west-3.amazonaws.com","s3-website.eu-west-3.amazonaws.com","s3.dualstack.il-central-1.amazonaws.com","s3-accesspoint.dualstack.il-central-1.amazonaws.com","s3-website.dualstack.il-central-1.amazonaws.com","s3.il-central-1.amazonaws.com","s3-accesspoint.il-central-1.amazonaws.com","s3-object-lambda.il-central-1.amazonaws.com","s3-website.il-central-1.amazonaws.com","s3.dualstack.me-central-1.amazonaws.com","s3-accesspoint.dualstack.me-central-1.amazonaws.com","s3-website.dualstack.me-central-1.amazonaws.com","s3.me-central-1.amazonaws.com","s3-accesspoint.me-central-1.amazonaws.com","s3-object-lambda.me-central-1.amazonaws.com","s3-website.me-central-1.amazonaws.com","s3.dualstack.me-south-1.amazonaws.com","s3-accesspoint.dualstack.me-south-1.amazonaws.com","s3.me-south-1.amazonaws.com","s3-accesspoint.me-south-1.amazonaws.com","s3-object-lambda.me-south-1.amazonaws.com","s3-website.me-south-1.amazonaws.com","s3.amazonaws.com","s3-1.amazonaws.com","s3-ap-east-1.amazonaws.com","s3-ap-northeast-1.amazonaws.com","s3-ap-northeast-2.amazonaws.com","s3-ap-northeast-3.amazonaws.com","s3-ap-south-1.amazonaws.com","s3-ap-southeast-1.amazonaws.com","s3-ap-southeast-2.amazonaws.com","s3-ca-central-1.amazonaws.com","s3-eu-central-1.amazonaws.com","s3-eu-north-1.amazonaws.com","s3-eu-west-1.amazonaws.com","s3-eu-west-2.amazonaws.com","s3-eu-west-3.amazonaws.com","s3-external-1.amazonaws.com","s3-fips-us-gov-east-1.amazonaws.com","s3-fips-us-gov-west-1.amazonaws.com","mrap.accesspoint.s3-global.amazonaws.com","s3-me-south-1.amazonaws.com","s3-sa-east-1.amazonaws.com","s3-us-east-2.amazonaws.com","s3-us-gov-east-1.amazonaws.com","s3-us-gov-west-1.amazonaws.com","s3-us-west-1.amazonaws.com","s3-us-west-2.amazonaws.com","s3-website-ap-northeast-1.amazonaws.com","s3-website-ap-southeast-1.amazonaws.com","s3-website-ap-southeast-2.amazonaws.com","s3-website-eu-west-1.amazonaws.com","s3-website-sa-east-1.amazonaws.com","s3-website-us-east-1.amazonaws.com","s3-website-us-gov-west-1.amazonaws.com","s3-website-us-west-1.amazonaws.com","s3-website-us-west-2.amazonaws.com","s3.dualstack.sa-east-1.amazonaws.com","s3-accesspoint.dualstack.sa-east-1.amazonaws.com","s3-website.dualstack.sa-east-1.amazonaws.com","s3.sa-east-1.amazonaws.com","s3-accesspoint.sa-east-1.amazonaws.com","s3-object-lambda.sa-east-1.amazonaws.com","s3-website.sa-east-1.amazonaws.com","s3.dualstack.us-east-1.amazonaws.com","s3-accesspoint.dualstack.us-east-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-east-1.amazonaws.com","s3-fips.dualstack.us-east-1.amazonaws.com","s3-website.dualstack.us-east-1.amazonaws.com","s3.us-east-1.amazonaws.com","s3-accesspoint.us-east-1.amazonaws.com","s3-accesspoint-fips.us-east-1.amazonaws.com","s3-deprecated.us-east-1.amazonaws.com","s3-fips.us-east-1.amazonaws.com","s3-object-lambda.us-east-1.amazonaws.com","s3-website.us-east-1.amazonaws.com","s3.dualstack.us-east-2.amazonaws.com","s3-accesspoint.dualstack.us-east-2.amazonaws.com","s3-accesspoint-fips.dualstack.us-east-2.amazonaws.com","s3-fips.dualstack.us-east-2.amazonaws.com","s3-website.dualstack.us-east-2.amazonaws.com","s3.us-east-2.amazonaws.com","s3-accesspoint.us-east-2.amazonaws.com","s3-accesspoint-fips.us-east-2.amazonaws.com","s3-deprecated.us-east-2.amazonaws.com","s3-fips.us-east-2.amazonaws.com","s3-object-lambda.us-east-2.amazonaws.com","s3-website.us-east-2.amazonaws.com","s3.dualstack.us-gov-east-1.amazonaws.com","s3-accesspoint.dualstack.us-gov-east-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-gov-east-1.amazonaws.com","s3-fips.dualstack.us-gov-east-1.amazonaws.com","s3.us-gov-east-1.amazonaws.com","s3-accesspoint.us-gov-east-1.amazonaws.com","s3-accesspoint-fips.us-gov-east-1.amazonaws.com","s3-fips.us-gov-east-1.amazonaws.com","s3-object-lambda.us-gov-east-1.amazonaws.com","s3-website.us-gov-east-1.amazonaws.com","s3.dualstack.us-gov-west-1.amazonaws.com","s3-accesspoint.dualstack.us-gov-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-gov-west-1.amazonaws.com","s3-fips.dualstack.us-gov-west-1.amazonaws.com","s3.us-gov-west-1.amazonaws.com","s3-accesspoint.us-gov-west-1.amazonaws.com","s3-accesspoint-fips.us-gov-west-1.amazonaws.com","s3-fips.us-gov-west-1.amazonaws.com","s3-object-lambda.us-gov-west-1.amazonaws.com","s3-website.us-gov-west-1.amazonaws.com","s3.dualstack.us-west-1.amazonaws.com","s3-accesspoint.dualstack.us-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-west-1.amazonaws.com","s3-fips.dualstack.us-west-1.amazonaws.com","s3-website.dualstack.us-west-1.amazonaws.com","s3.us-west-1.amazonaws.com","s3-accesspoint.us-west-1.amazonaws.com","s3-accesspoint-fips.us-west-1.amazonaws.com","s3-fips.us-west-1.amazonaws.com","s3-object-lambda.us-west-1.amazonaws.com","s3-website.us-west-1.amazonaws.com","s3.dualstack.us-west-2.amazonaws.com","s3-accesspoint.dualstack.us-west-2.amazonaws.com","s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com","s3-fips.dualstack.us-west-2.amazonaws.com","s3-website.dualstack.us-west-2.amazonaws.com","s3.us-west-2.amazonaws.com","s3-accesspoint.us-west-2.amazonaws.com","s3-accesspoint-fips.us-west-2.amazonaws.com","s3-deprecated.us-west-2.amazonaws.com","s3-fips.us-west-2.amazonaws.com","s3-object-lambda.us-west-2.amazonaws.com","s3-website.us-west-2.amazonaws.com","labeling.ap-northeast-1.sagemaker.aws","labeling.ap-northeast-2.sagemaker.aws","labeling.ap-south-1.sagemaker.aws","labeling.ap-southeast-1.sagemaker.aws","labeling.ap-southeast-2.sagemaker.aws","labeling.ca-central-1.sagemaker.aws","labeling.eu-central-1.sagemaker.aws","labeling.eu-west-1.sagemaker.aws","labeling.eu-west-2.sagemaker.aws","labeling.us-east-1.sagemaker.aws","labeling.us-east-2.sagemaker.aws","labeling.us-west-2.sagemaker.aws","notebook.af-south-1.sagemaker.aws","notebook.ap-east-1.sagemaker.aws","notebook.ap-northeast-1.sagemaker.aws","notebook.ap-northeast-2.sagemaker.aws","notebook.ap-northeast-3.sagemaker.aws","notebook.ap-south-1.sagemaker.aws","notebook.ap-south-2.sagemaker.aws","notebook.ap-southeast-1.sagemaker.aws","notebook.ap-southeast-2.sagemaker.aws","notebook.ap-southeast-3.sagemaker.aws","notebook.ap-southeast-4.sagemaker.aws","notebook.ca-central-1.sagemaker.aws","notebook-fips.ca-central-1.sagemaker.aws","notebook.ca-west-1.sagemaker.aws","notebook-fips.ca-west-1.sagemaker.aws","notebook.eu-central-1.sagemaker.aws","notebook.eu-central-2.sagemaker.aws","notebook.eu-north-1.sagemaker.aws","notebook.eu-south-1.sagemaker.aws","notebook.eu-south-2.sagemaker.aws","notebook.eu-west-1.sagemaker.aws","notebook.eu-west-2.sagemaker.aws","notebook.eu-west-3.sagemaker.aws","notebook.il-central-1.sagemaker.aws","notebook.me-central-1.sagemaker.aws","notebook.me-south-1.sagemaker.aws","notebook.sa-east-1.sagemaker.aws","notebook.us-east-1.sagemaker.aws","notebook-fips.us-east-1.sagemaker.aws","notebook.us-east-2.sagemaker.aws","notebook-fips.us-east-2.sagemaker.aws","notebook.us-gov-east-1.sagemaker.aws","notebook-fips.us-gov-east-1.sagemaker.aws","notebook.us-gov-west-1.sagemaker.aws","notebook-fips.us-gov-west-1.sagemaker.aws","notebook.us-west-1.sagemaker.aws","notebook-fips.us-west-1.sagemaker.aws","notebook.us-west-2.sagemaker.aws","notebook-fips.us-west-2.sagemaker.aws","notebook.cn-north-1.sagemaker.com.cn","notebook.cn-northwest-1.sagemaker.com.cn","studio.af-south-1.sagemaker.aws","studio.ap-east-1.sagemaker.aws","studio.ap-northeast-1.sagemaker.aws","studio.ap-northeast-2.sagemaker.aws","studio.ap-northeast-3.sagemaker.aws","studio.ap-south-1.sagemaker.aws","studio.ap-southeast-1.sagemaker.aws","studio.ap-southeast-2.sagemaker.aws","studio.ap-southeast-3.sagemaker.aws","studio.ca-central-1.sagemaker.aws","studio.eu-central-1.sagemaker.aws","studio.eu-north-1.sagemaker.aws","studio.eu-south-1.sagemaker.aws","studio.eu-south-2.sagemaker.aws","studio.eu-west-1.sagemaker.aws","studio.eu-west-2.sagemaker.aws","studio.eu-west-3.sagemaker.aws","studio.il-central-1.sagemaker.aws","studio.me-central-1.sagemaker.aws","studio.me-south-1.sagemaker.aws","studio.sa-east-1.sagemaker.aws","studio.us-east-1.sagemaker.aws","studio.us-east-2.sagemaker.aws","studio.us-gov-east-1.sagemaker.aws","studio-fips.us-gov-east-1.sagemaker.aws","studio.us-gov-west-1.sagemaker.aws","studio-fips.us-gov-west-1.sagemaker.aws","studio.us-west-1.sagemaker.aws","studio.us-west-2.sagemaker.aws","studio.cn-north-1.sagemaker.com.cn","studio.cn-northwest-1.sagemaker.com.cn","*.experiments.sagemaker.aws","analytics-gateway.ap-northeast-1.amazonaws.com","analytics-gateway.ap-northeast-2.amazonaws.com","analytics-gateway.ap-south-1.amazonaws.com","analytics-gateway.ap-southeast-1.amazonaws.com","analytics-gateway.ap-southeast-2.amazonaws.com","analytics-gateway.eu-central-1.amazonaws.com","analytics-gateway.eu-west-1.amazonaws.com","analytics-gateway.us-east-1.amazonaws.com","analytics-gateway.us-east-2.amazonaws.com","analytics-gateway.us-west-2.amazonaws.com","amplifyapp.com","*.awsapprunner.com","webview-assets.aws-cloud9.af-south-1.amazonaws.com","vfs.cloud9.af-south-1.amazonaws.com","webview-assets.cloud9.af-south-1.amazonaws.com","webview-assets.aws-cloud9.ap-east-1.amazonaws.com","vfs.cloud9.ap-east-1.amazonaws.com","webview-assets.cloud9.ap-east-1.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-1.amazonaws.com","vfs.cloud9.ap-northeast-1.amazonaws.com","webview-assets.cloud9.ap-northeast-1.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-2.amazonaws.com","vfs.cloud9.ap-northeast-2.amazonaws.com","webview-assets.cloud9.ap-northeast-2.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-3.amazonaws.com","vfs.cloud9.ap-northeast-3.amazonaws.com","webview-assets.cloud9.ap-northeast-3.amazonaws.com","webview-assets.aws-cloud9.ap-south-1.amazonaws.com","vfs.cloud9.ap-south-1.amazonaws.com","webview-assets.cloud9.ap-south-1.amazonaws.com","webview-assets.aws-cloud9.ap-southeast-1.amazonaws.com","vfs.cloud9.ap-southeast-1.amazonaws.com","webview-assets.cloud9.ap-southeast-1.amazonaws.com","webview-assets.aws-cloud9.ap-southeast-2.amazonaws.com","vfs.cloud9.ap-southeast-2.amazonaws.com","webview-assets.cloud9.ap-southeast-2.amazonaws.com","webview-assets.aws-cloud9.ca-central-1.amazonaws.com","vfs.cloud9.ca-central-1.amazonaws.com","webview-assets.cloud9.ca-central-1.amazonaws.com","webview-assets.aws-cloud9.eu-central-1.amazonaws.com","vfs.cloud9.eu-central-1.amazonaws.com","webview-assets.cloud9.eu-central-1.amazonaws.com","webview-assets.aws-cloud9.eu-north-1.amazonaws.com","vfs.cloud9.eu-north-1.amazonaws.com","webview-assets.cloud9.eu-north-1.amazonaws.com","webview-assets.aws-cloud9.eu-south-1.amazonaws.com","vfs.cloud9.eu-south-1.amazonaws.com","webview-assets.cloud9.eu-south-1.amazonaws.com","webview-assets.aws-cloud9.eu-west-1.amazonaws.com","vfs.cloud9.eu-west-1.amazonaws.com","webview-assets.cloud9.eu-west-1.amazonaws.com","webview-assets.aws-cloud9.eu-west-2.amazonaws.com","vfs.cloud9.eu-west-2.amazonaws.com","webview-assets.cloud9.eu-west-2.amazonaws.com","webview-assets.aws-cloud9.eu-west-3.amazonaws.com","vfs.cloud9.eu-west-3.amazonaws.com","webview-assets.cloud9.eu-west-3.amazonaws.com","webview-assets.aws-cloud9.il-central-1.amazonaws.com","vfs.cloud9.il-central-1.amazonaws.com","webview-assets.aws-cloud9.me-south-1.amazonaws.com","vfs.cloud9.me-south-1.amazonaws.com","webview-assets.cloud9.me-south-1.amazonaws.com","webview-assets.aws-cloud9.sa-east-1.amazonaws.com","vfs.cloud9.sa-east-1.amazonaws.com","webview-assets.cloud9.sa-east-1.amazonaws.com","webview-assets.aws-cloud9.us-east-1.amazonaws.com","vfs.cloud9.us-east-1.amazonaws.com","webview-assets.cloud9.us-east-1.amazonaws.com","webview-assets.aws-cloud9.us-east-2.amazonaws.com","vfs.cloud9.us-east-2.amazonaws.com","webview-assets.cloud9.us-east-2.amazonaws.com","webview-assets.aws-cloud9.us-west-1.amazonaws.com","vfs.cloud9.us-west-1.amazonaws.com","webview-assets.cloud9.us-west-1.amazonaws.com","webview-assets.aws-cloud9.us-west-2.amazonaws.com","vfs.cloud9.us-west-2.amazonaws.com","webview-assets.cloud9.us-west-2.amazonaws.com","awsapps.com","cn-north-1.eb.amazonaws.com.cn","cn-northwest-1.eb.amazonaws.com.cn","elasticbeanstalk.com","af-south-1.elasticbeanstalk.com","ap-east-1.elasticbeanstalk.com","ap-northeast-1.elasticbeanstalk.com","ap-northeast-2.elasticbeanstalk.com","ap-northeast-3.elasticbeanstalk.com","ap-south-1.elasticbeanstalk.com","ap-southeast-1.elasticbeanstalk.com","ap-southeast-2.elasticbeanstalk.com","ap-southeast-3.elasticbeanstalk.com","ca-central-1.elasticbeanstalk.com","eu-central-1.elasticbeanstalk.com","eu-north-1.elasticbeanstalk.com","eu-south-1.elasticbeanstalk.com","eu-west-1.elasticbeanstalk.com","eu-west-2.elasticbeanstalk.com","eu-west-3.elasticbeanstalk.com","il-central-1.elasticbeanstalk.com","me-south-1.elasticbeanstalk.com","sa-east-1.elasticbeanstalk.com","us-east-1.elasticbeanstalk.com","us-east-2.elasticbeanstalk.com","us-gov-east-1.elasticbeanstalk.com","us-gov-west-1.elasticbeanstalk.com","us-west-1.elasticbeanstalk.com","us-west-2.elasticbeanstalk.com","*.elb.amazonaws.com.cn","*.elb.amazonaws.com","awsglobalaccelerator.com","*.private.repost.aws","eero.online","eero-stage.online","apigee.io","panel.dev","siiites.com","appspacehosted.com","appspaceusercontent.com","appudo.net","on-aptible.com","f5.si","arvanedge.ir","user.aseinet.ne.jp","gv.vc","d.gv.vc","user.party.eus","pimienta.org","poivron.org","potager.org","sweetpepper.org","myasustor.com","cdn.prod.atlassian-dev.net","translated.page","myfritz.link","myfritz.net","onavstack.net","*.awdev.ca","*.advisor.ws","ecommerce-shop.pl","b-data.io","balena-devices.com","base.ec","official.ec","buyshop.jp","fashionstore.jp","handcrafted.jp","kawaiishop.jp","supersale.jp","theshop.jp","shopselect.net","base.shop","beagleboard.io","*.beget.app","pages.gay","bnr.la","bitbucket.io","blackbaudcdn.net","of.je","bluebite.io","boomla.net","boutir.com","boxfuse.io","square7.ch","bplaced.com","bplaced.de","square7.de","bplaced.net","square7.net","*.s.brave.io","shop.brendly.hr","shop.brendly.rs","browsersafetymark.io","radio.am","radio.fm","uk0.bigv.io","dh.bytemark.co.uk","vm.bytemark.co.uk","cafjs.com","canva-apps.cn","*.my.canvasite.cn","canva-apps.com","*.my.canva.site","drr.ac","uwu.ai","carrd.co","crd.co","ju.mp","api.gov.uk","cdn77-storage.com","rsc.contentproxy9.cz","r.cdn77.net","cdn77-ssl.net","c.cdn77.org","rsc.cdn77.org","ssl.origin.cdn77-secure.org","za.bz","br.com","cn.com","de.com","eu.com","jpn.com","mex.com","ru.com","sa.com","uk.com","us.com","za.com","com.de","gb.net","hu.net","jp.net","se.net","uk.net","ae.org","com.se","cx.ua","discourse.group","discourse.team","clerk.app","clerkstage.app","*.lcl.dev","*.lclstage.dev","*.stg.dev","*.stgstage.dev","cleverapps.cc","*.services.clever-cloud.com","cleverapps.io","cleverapps.tech","clickrising.net","cloudns.asia","cloudns.be","cloud-ip.biz","cloudns.biz","cloudns.cc","cloudns.ch","cloudns.cl","cloudns.club","dnsabr.com","ip-ddns.com","cloudns.cx","cloudns.eu","cloudns.in","cloudns.info","ddns-ip.net","dns-cloud.net","dns-dynamic.net","cloudns.nz","cloudns.org","ip-dynamic.org","cloudns.ph","cloudns.pro","cloudns.pw","cloudns.us","c66.me","cloud66.ws","cloud66.zone","jdevcloud.com","wpdevcloud.com","cloudaccess.host","freesite.host","cloudaccess.net","*.cloudera.site","cf-ipfs.com","cloudflare-ipfs.com","trycloudflare.com","pages.dev","r2.dev","workers.dev","cloudflare.net","cdn.cloudflare.net","cdn.cloudflareanycast.net","cdn.cloudflarecn.net","cdn.cloudflareglobal.net","cust.cloudscale.ch","objects.lpg.cloudscale.ch","objects.rma.cloudscale.ch","wnext.app","cnpy.gdn","*.otap.co","co.ca","co.com","codeberg.page","csb.app","preview.csb.app","co.nl","co.no","webhosting.be","hosting-cluster.nl","ctfcloud.net","convex.site","ac.ru","edu.ru","gov.ru","int.ru","mil.ru","test.ru","dyn.cosidns.de","dnsupdater.de","dynamisches-dns.de","internet-dns.de","l-o-g-i-n.de","dynamic-dns.info","feste-ip.net","knx-server.net","static-access.net","craft.me","realm.cz","on.crisp.email","*.cryptonomic.net","curv.dev","cfolks.pl","cyon.link","cyon.site","platform0.app","fnwk.site","folionetwork.site","biz.dk","co.dk","firm.dk","reg.dk","store.dk","dyndns.dappnode.io","builtwithdark.com","darklang.io","demo.datadetect.com","instance.datadetect.com","edgestack.me","dattolocal.com","dattorelay.com","dattoweb.com","mydatto.com","dattolocal.net","mydatto.net","ddnss.de","dyn.ddnss.de","dyndns.ddnss.de","dyn-ip24.de","dyndns1.de","home-webserver.de","dyn.home-webserver.de","myhome-server.de","ddnss.org","debian.net","definima.io","definima.net","deno.dev","deno-staging.dev","dedyn.io","deta.app","deta.dev","dfirma.pl","dkonto.pl","you2.pl","ondigitalocean.app","*.digitaloceanspaces.com","us.kg","rss.my.id","diher.solutions","discordsays.com","discordsez.com","jozi.biz","dnshome.de","online.th","shop.th","drayddns.com","shoparena.pl","dreamhosters.com","durumis.com","mydrobo.com","drud.io","drud.us","duckdns.org","dy.fi","tunk.org","dyndns.biz","for-better.biz","for-more.biz","for-some.biz","for-the.biz","selfip.biz","webhop.biz","ftpaccess.cc","game-server.cc","myphotos.cc","scrapping.cc","blogdns.com","cechire.com","dnsalias.com","dnsdojo.com","doesntexist.com","dontexist.com","doomdns.com","dyn-o-saur.com","dynalias.com","dyndns-at-home.com","dyndns-at-work.com","dyndns-blog.com","dyndns-free.com","dyndns-home.com","dyndns-ip.com","dyndns-mail.com","dyndns-office.com","dyndns-pics.com","dyndns-remote.com","dyndns-server.com","dyndns-web.com","dyndns-wiki.com","dyndns-work.com","est-a-la-maison.com","est-a-la-masion.com","est-le-patron.com","est-mon-blogueur.com","from-ak.com","from-al.com","from-ar.com","from-ca.com","from-ct.com","from-dc.com","from-de.com","from-fl.com","from-ga.com","from-hi.com","from-ia.com","from-id.com","from-il.com","from-in.com","from-ks.com","from-ky.com","from-ma.com","from-md.com","from-mi.com","from-mn.com","from-mo.com","from-ms.com","from-mt.com","from-nc.com","from-nd.com","from-ne.com","from-nh.com","from-nj.com","from-nm.com","from-nv.com","from-oh.com","from-ok.com","from-or.com","from-pa.com","from-pr.com","from-ri.com","from-sc.com","from-sd.com","from-tn.com","from-tx.com","from-ut.com","from-va.com","from-vt.com","from-wa.com","from-wi.com","from-wv.com","from-wy.com","getmyip.com","gotdns.com","hobby-site.com","homelinux.com","homeunix.com","iamallama.com","is-a-anarchist.com","is-a-blogger.com","is-a-bookkeeper.com","is-a-bulls-fan.com","is-a-caterer.com","is-a-chef.com","is-a-conservative.com","is-a-cpa.com","is-a-cubicle-slave.com","is-a-democrat.com","is-a-designer.com","is-a-doctor.com","is-a-financialadvisor.com","is-a-geek.com","is-a-green.com","is-a-guru.com","is-a-hard-worker.com","is-a-hunter.com","is-a-landscaper.com","is-a-lawyer.com","is-a-liberal.com","is-a-libertarian.com","is-a-llama.com","is-a-musician.com","is-a-nascarfan.com","is-a-nurse.com","is-a-painter.com","is-a-personaltrainer.com","is-a-photographer.com","is-a-player.com","is-a-republican.com","is-a-rockstar.com","is-a-socialist.com","is-a-student.com","is-a-teacher.com","is-a-techie.com","is-a-therapist.com","is-an-accountant.com","is-an-actor.com","is-an-actress.com","is-an-anarchist.com","is-an-artist.com","is-an-engineer.com","is-an-entertainer.com","is-certified.com","is-gone.com","is-into-anime.com","is-into-cars.com","is-into-cartoons.com","is-into-games.com","is-leet.com","is-not-certified.com","is-slick.com","is-uberleet.com","is-with-theband.com","isa-geek.com","isa-hockeynut.com","issmarterthanyou.com","likes-pie.com","likescandy.com","neat-url.com","saves-the-whales.com","selfip.com","sells-for-less.com","sells-for-u.com","servebbs.com","simple-url.com","space-to-rent.com","teaches-yoga.com","writesthisblog.com","ath.cx","fuettertdasnetz.de","isteingeek.de","istmein.de","lebtimnetz.de","leitungsen.de","traeumtgerade.de","barrel-of-knowledge.info","barrell-of-knowledge.info","dyndns.info","for-our.info","groks-the.info","groks-this.info","here-for-more.info","knowsitall.info","selfip.info","webhop.info","forgot.her.name","forgot.his.name","at-band-camp.net","blogdns.net","broke-it.net","buyshouses.net","dnsalias.net","dnsdojo.net","does-it.net","dontexist.net","dynalias.net","dynathome.net","endofinternet.net","from-az.net","from-co.net","from-la.net","from-ny.net","gets-it.net","ham-radio-op.net","homeftp.net","homeip.net","homelinux.net","homeunix.net","in-the-band.net","is-a-chef.net","is-a-geek.net","isa-geek.net","kicks-ass.net","office-on-the.net","podzone.net","scrapper-site.net","selfip.net","sells-it.net","servebbs.net","serveftp.net","thruhere.net","webhop.net","merseine.nu","mine.nu","shacknet.nu","blogdns.org","blogsite.org","boldlygoingnowhere.org","dnsalias.org","dnsdojo.org","doesntexist.org","dontexist.org","doomdns.org","dvrdns.org","dynalias.org","dyndns.org","go.dyndns.org","home.dyndns.org","endofinternet.org","endoftheinternet.org","from-me.org","game-host.org","gotdns.org","hobby-site.org","homedns.org","homeftp.org","homelinux.org","homeunix.org","is-a-bruinsfan.org","is-a-candidate.org","is-a-celticsfan.org","is-a-chef.org","is-a-geek.org","is-a-knight.org","is-a-linux-user.org","is-a-patsfan.org","is-a-soxfan.org","is-found.org","is-lost.org","is-saved.org","is-very-bad.org","is-very-evil.org","is-very-good.org","is-very-nice.org","is-very-sweet.org","isa-geek.org","kicks-ass.org","misconfused.org","podzone.org","readmyblog.org","selfip.org","sellsyourhome.org","servebbs.org","serveftp.org","servegame.org","stuff-4-sale.org","webhop.org","better-than.tv","dyndns.tv","on-the-web.tv","worse-than.tv","is-by.us","land-4-sale.us","stuff-4-sale.us","dyndns.ws","mypets.ws","ddnsfree.com","ddnsgeek.com","giize.com","gleeze.com","kozow.com","loseyourip.com","ooguy.com","theworkpc.com","casacam.net","dynu.net","accesscam.org","camdvr.org","freeddns.org","mywire.org","webredirect.org","myddns.rocks","dynv6.net","e4.cz","easypanel.app","easypanel.host","*.ewp.live","twmail.cc","twmail.net","twmail.org","mymailer.com.tw","url.tw","at.emf.camp","rt.ht","elementor.cloud","elementor.cool","en-root.fr","mytuleap.com","tuleap-partners.com","encr.app","encoreapi.com","eu.encoway.cloud","eu.org","al.eu.org","asso.eu.org","at.eu.org","au.eu.org","be.eu.org","bg.eu.org","ca.eu.org","cd.eu.org","ch.eu.org","cn.eu.org","cy.eu.org","cz.eu.org","de.eu.org","dk.eu.org","edu.eu.org","ee.eu.org","es.eu.org","fi.eu.org","fr.eu.org","gr.eu.org","hr.eu.org","hu.eu.org","ie.eu.org","il.eu.org","in.eu.org","int.eu.org","is.eu.org","it.eu.org","jp.eu.org","kr.eu.org","lt.eu.org","lu.eu.org","lv.eu.org","me.eu.org","mk.eu.org","mt.eu.org","my.eu.org","net.eu.org","ng.eu.org","nl.eu.org","no.eu.org","nz.eu.org","pl.eu.org","pt.eu.org","ro.eu.org","ru.eu.org","se.eu.org","si.eu.org","sk.eu.org","tr.eu.org","uk.eu.org","us.eu.org","eurodir.ru","eu-1.evennode.com","eu-2.evennode.com","eu-3.evennode.com","eu-4.evennode.com","us-1.evennode.com","us-2.evennode.com","us-3.evennode.com","us-4.evennode.com","relay.evervault.app","relay.evervault.dev","expo.app","staging.expo.app","onfabrica.com","ru.net","adygeya.ru","bashkiria.ru","bir.ru","cbg.ru","com.ru","dagestan.ru","grozny.ru","kalmykia.ru","kustanai.ru","marine.ru","mordovia.ru","msk.ru","mytis.ru","nalchik.ru","nov.ru","pyatigorsk.ru","spb.ru","vladikavkaz.ru","vladimir.ru","abkhazia.su","adygeya.su","aktyubinsk.su","arkhangelsk.su","armenia.su","ashgabad.su","azerbaijan.su","balashov.su","bashkiria.su","bryansk.su","bukhara.su","chimkent.su","dagestan.su","east-kazakhstan.su","exnet.su","georgia.su","grozny.su","ivanovo.su","jambyl.su","kalmykia.su","kaluga.su","karacol.su","karaganda.su","karelia.su","khakassia.su","krasnodar.su","kurgan.su","kustanai.su","lenug.su","mangyshlak.su","mordovia.su","msk.su","murmansk.su","nalchik.su","navoi.su","north-kazakhstan.su","nov.su","obninsk.su","penza.su","pokrovsk.su","sochi.su","spb.su","tashkent.su","termez.su","togliatti.su","troitsk.su","tselinograd.su","tula.su","tuva.su","vladikavkaz.su","vladimir.su","vologda.su","channelsdvr.net","u.channelsdvr.net","edgecompute.app","fastly-edge.com","fastly-terrarium.com","freetls.fastly.net","map.fastly.net","a.prod.fastly.net","global.prod.fastly.net","a.ssl.fastly.net","b.ssl.fastly.net","global.ssl.fastly.net","fastlylb.net","map.fastlylb.net","*.user.fm","fastvps-server.com","fastvps.host","myfast.host","fastvps.site","myfast.space","conn.uk","copro.uk","hosp.uk","fedorainfracloud.org","fedorapeople.org","cloud.fedoraproject.org","app.os.fedoraproject.org","app.os.stg.fedoraproject.org","mydobiss.com","fh-muenster.io","filegear.me","firebaseapp.com","fldrv.com","flutterflow.app","fly.dev","shw.io","edgeapp.net","forgeblocks.com","id.forgerock.io","framer.ai","framer.app","framercanvas.com","framer.media","framer.photos","framer.website","framer.wiki","0e.vc","freebox-os.com","freeboxos.com","fbx-os.fr","fbxos.fr","freebox-os.fr","freeboxos.fr","freedesktop.org","freemyip.com","*.frusky.de","wien.funkfeuer.at","daemon.asia","dix.asia","mydns.bz","0am.jp","0g0.jp","0j0.jp","0t0.jp","mydns.jp","pgw.jp","wjg.jp","keyword-on.net","live-on.net","server-on.net","mydns.tw","mydns.vc","*.futurecms.at","*.ex.futurecms.at","*.in.futurecms.at","futurehosting.at","futuremailing.at","*.ex.ortsinfo.at","*.kunden.ortsinfo.at","*.statics.cloud","aliases121.com","campaign.gov.uk","service.gov.uk","independent-commission.uk","independent-inquest.uk","independent-inquiry.uk","independent-panel.uk","independent-review.uk","public-inquiry.uk","royal-commission.uk","gehirn.ne.jp","usercontent.jp","gentapps.com","gentlentapis.com","lab.ms","cdn-edges.net","localcert.net","localhostcert.net","gsj.bz","githubusercontent.com","githubpreview.dev","github.io","gitlab.io","gitapp.si","gitpage.si","glitch.me","nog.community","co.ro","shop.ro","lolipop.io","angry.jp","babyblue.jp","babymilk.jp","backdrop.jp","bambina.jp","bitter.jp","blush.jp","boo.jp","boy.jp","boyfriend.jp","but.jp","candypop.jp","capoo.jp","catfood.jp","cheap.jp","chicappa.jp","chillout.jp","chips.jp","chowder.jp","chu.jp","ciao.jp","cocotte.jp","coolblog.jp","cranky.jp","cutegirl.jp","daa.jp","deca.jp","deci.jp","digick.jp","egoism.jp","fakefur.jp","fem.jp","flier.jp","floppy.jp","fool.jp","frenchkiss.jp","girlfriend.jp","girly.jp","gloomy.jp","gonna.jp","greater.jp","hacca.jp","heavy.jp","her.jp","hiho.jp","hippy.jp","holy.jp","hungry.jp","icurus.jp","itigo.jp","jellybean.jp","kikirara.jp","kill.jp","kilo.jp","kuron.jp","littlestar.jp","lolipopmc.jp","lolitapunk.jp","lomo.jp","lovepop.jp","lovesick.jp","main.jp","mods.jp","mond.jp","mongolian.jp","moo.jp","namaste.jp","nikita.jp","nobushi.jp","noor.jp","oops.jp","parallel.jp","parasite.jp","pecori.jp","peewee.jp","penne.jp","pepper.jp","perma.jp","pigboat.jp","pinoko.jp","punyu.jp","pupu.jp","pussycat.jp","pya.jp","raindrop.jp","readymade.jp","sadist.jp","schoolbus.jp","secret.jp","staba.jp","stripper.jp","sub.jp","sunnyday.jp","thick.jp","tonkotsu.jp","under.jp","upper.jp","velvet.jp","verse.jp","versus.jp","vivian.jp","watson.jp","weblike.jp","whitesnow.jp","zombie.jp","heteml.net","graphic.design","goip.de","blogspot.ae","blogspot.al","blogspot.am","*.hosted.app","*.run.app","web.app","blogspot.com.ar","blogspot.co.at","blogspot.com.au","blogspot.ba","blogspot.be","blogspot.bg","blogspot.bj","blogspot.com.br","blogspot.com.by","blogspot.ca","blogspot.cf","blogspot.ch","blogspot.cl","blogspot.com.co","*.0emm.com","appspot.com","*.r.appspot.com","blogspot.com","codespot.com","googleapis.com","googlecode.com","pagespeedmobilizer.com","withgoogle.com","withyoutube.com","blogspot.cv","blogspot.com.cy","blogspot.cz","blogspot.de","*.gateway.dev","blogspot.dk","blogspot.com.ee","blogspot.com.eg","blogspot.com.es","blogspot.fi","blogspot.fr","cloud.goog","translate.goog","*.usercontent.goog","blogspot.gr","blogspot.hk","blogspot.hr","blogspot.hu","blogspot.co.id","blogspot.ie","blogspot.co.il","blogspot.in","blogspot.is","blogspot.it","blogspot.jp","blogspot.co.ke","blogspot.kr","blogspot.li","blogspot.lt","blogspot.lu","blogspot.md","blogspot.mk","blogspot.com.mt","blogspot.mx","blogspot.my","cloudfunctions.net","blogspot.com.ng","blogspot.nl","blogspot.no","blogspot.co.nz","blogspot.pe","blogspot.pt","blogspot.qa","blogspot.re","blogspot.ro","blogspot.rs","blogspot.ru","blogspot.se","blogspot.sg","blogspot.si","blogspot.sk","blogspot.sn","blogspot.td","blogspot.com.tr","blogspot.tw","blogspot.ug","blogspot.co.uk","blogspot.com.uy","blogspot.vn","blogspot.co.za","goupile.fr","pymnt.uk","cloudapps.digital","london.cloudapps.digital","gov.nl","grafana-dev.net","grayjayleagues.com","günstigbestellen.de","günstigliefern.de","fin.ci","free.hr","caa.li","ua.rs","conf.se","häkkinen.fi","hrsn.dev","hashbang.sh","hasura.app","hasura-app.io","hatenablog.com","hatenadiary.com","hateblo.jp","hatenablog.jp","hatenadiary.jp","hatenadiary.org","pages.it.hs-heilbronn.de","pages-research.it.hs-heilbronn.de","heiyu.space","helioho.st","heliohost.us","hepforge.org","herokuapp.com","herokussl.com","heyflow.page","heyflow.site","ravendb.cloud","ravendb.community","development.run","ravendb.run","homesklep.pl","*.kin.one","*.id.pub","*.kin.pub","secaas.hk","hoplix.shop","orx.biz","biz.gl","biz.ng","co.biz.ng","dl.biz.ng","go.biz.ng","lg.biz.ng","on.biz.ng","col.ng","firm.ng","gen.ng","ltd.ng","ngo.ng","plc.ng","ie.ua","hostyhosting.io","hf.space","static.hf.space","hypernode.io","iobb.net","co.cz","*.moonscale.io","moonscale.net","gr.com","iki.fi","ibxos.it","iliadboxos.it","smushcdn.com","wphostedmail.com","wpmucdn.com","tempurl.host","wpmudev.host","dyn-berlin.de","in-berlin.de","in-brb.de","in-butter.de","in-dsl.de","in-vpn.de","in-dsl.net","in-vpn.net","in-dsl.org","in-vpn.org","biz.at","info.at","info.cx","ac.leg.br","al.leg.br","am.leg.br","ap.leg.br","ba.leg.br","ce.leg.br","df.leg.br","es.leg.br","go.leg.br","ma.leg.br","mg.leg.br","ms.leg.br","mt.leg.br","pa.leg.br","pb.leg.br","pe.leg.br","pi.leg.br","pr.leg.br","rj.leg.br","rn.leg.br","ro.leg.br","rr.leg.br","rs.leg.br","sc.leg.br","se.leg.br","sp.leg.br","to.leg.br","pixolino.com","na4u.ru","apps-1and1.com","live-website.com","apps-1and1.net","websitebuilder.online","app-ionos.space","iopsys.se","*.dweb.link","ipifony.net","ir.md","is-a-good.dev","is-a.dev","iservschule.de","mein-iserv.de","schulplattform.de","schulserver.de","test-iserv.de","iserv.dev","mel.cloudlets.com.au","cloud.interhostsolutions.be","alp1.ae.flow.ch","appengine.flow.ch","es-1.axarnet.cloud","diadem.cloud","vip.jelastic.cloud","jele.cloud","it1.eur.aruba.jenv-aruba.cloud","it1.jenv-aruba.cloud","keliweb.cloud","cs.keliweb.cloud","oxa.cloud","tn.oxa.cloud","uk.oxa.cloud","primetel.cloud","uk.primetel.cloud","ca.reclaim.cloud","uk.reclaim.cloud","us.reclaim.cloud","ch.trendhosting.cloud","de.trendhosting.cloud","jele.club","dopaas.com","paas.hosted-by-previder.com","rag-cloud.hosteur.com","rag-cloud-ch.hosteur.com","jcloud.ik-server.com","jcloud-ver-jpc.ik-server.com","demo.jelastic.com","paas.massivegrid.com","jed.wafaicloud.com","ryd.wafaicloud.com","j.scaleforce.com.cy","jelastic.dogado.eu","fi.cloudplatform.fi","demo.datacenter.fi","paas.datacenter.fi","jele.host","mircloud.host","paas.beebyte.io","sekd1.beebyteapp.io","jele.io","jc.neen.it","jcloud.kz","cloudjiffy.net","fra1-de.cloudjiffy.net","west1-us.cloudjiffy.net","jls-sto1.elastx.net","jls-sto2.elastx.net","jls-sto3.elastx.net","fr-1.paas.massivegrid.net","lon-1.paas.massivegrid.net","lon-2.paas.massivegrid.net","ny-1.paas.massivegrid.net","ny-2.paas.massivegrid.net","sg-1.paas.massivegrid.net","jelastic.saveincloud.net","nordeste-idc.saveincloud.net","j.scaleforce.net","sdscloud.pl","unicloud.pl","mircloud.ru","enscaled.sg","jele.site","jelastic.team","orangecloud.tn","j.layershift.co.uk","phx.enscaled.us","mircloud.us","myjino.ru","*.hosting.myjino.ru","*.landing.myjino.ru","*.spectrum.myjino.ru","*.vps.myjino.ru","jotelulu.cloud","webadorsite.com","jouwweb.site","*.cns.joyent.com","*.triton.zone","js.org","kaas.gg","khplay.nl","kapsi.fi","ezproxy.kuleuven.be","kuleuven.cloud","keymachine.de","kinghost.net","uni5.net","knightpoint.systems","koobin.events","webthings.io","krellian.net","oya.to","git-repos.de","lcube-server.de","svn-repos.de","leadpages.co","lpages.co","lpusercontent.com","lelux.site","libp2p.direct","runcontainers.dev","co.business","co.education","co.events","co.financial","co.network","co.place","co.technology","linkyard-cloud.ch","linkyard.cloud","members.linode.com","*.nodebalancer.linode.com","*.linodeobjects.com","ip.linodeusercontent.com","we.bs","filegear-sg.me","ggff.net","*.user.localcert.dev","lodz.pl","pabianice.pl","plock.pl","sieradz.pl","skierniewice.pl","zgierz.pl","loginline.app","loginline.dev","loginline.io","loginline.services","loginline.site","lohmus.me","servers.run","krasnik.pl","leczna.pl","lubartow.pl","lublin.pl","poniatowa.pl","swidnik.pl","glug.org.uk","lug.org.uk","lugs.org.uk","barsy.bg","barsy.club","barsycenter.com","barsyonline.com","barsy.de","barsy.dev","barsy.eu","barsy.gr","barsy.in","barsy.info","barsy.io","barsy.me","barsy.menu","barsyonline.menu","barsy.mobi","barsy.net","barsy.online","barsy.org","barsy.pro","barsy.pub","barsy.ro","barsy.rs","barsy.shop","barsyonline.shop","barsy.site","barsy.store","barsy.support","barsy.uk","barsy.co.uk","barsyonline.co.uk","*.magentosite.cloud","hb.cldmail.ru","matlab.cloud","modelscape.com","mwcloudnonprod.com","polyspace.com","mayfirst.info","mayfirst.org","mazeplay.com","mcdir.me","mcdir.ru","vps.mcdir.ru","mcpre.ru","mediatech.by","mediatech.dev","hra.health","medusajs.app","miniserver.com","memset.net","messerli.app","atmeta.com","apps.fbsbx.com","*.cloud.metacentrum.cz","custom.metacentrum.cz","flt.cloud.muni.cz","usr.cloud.muni.cz","meteorapp.com","eu.meteorapp.com","co.pl","*.azurecontainer.io","azure-api.net","azure-mobile.net","azureedge.net","azurefd.net","azurestaticapps.net","1.azurestaticapps.net","2.azurestaticapps.net","3.azurestaticapps.net","4.azurestaticapps.net","5.azurestaticapps.net","6.azurestaticapps.net","7.azurestaticapps.net","centralus.azurestaticapps.net","eastasia.azurestaticapps.net","eastus2.azurestaticapps.net","westeurope.azurestaticapps.net","westus2.azurestaticapps.net","azurewebsites.net","cloudapp.net","trafficmanager.net","blob.core.windows.net","servicebus.windows.net","routingthecloud.com","sn.mynetname.net","routingthecloud.net","routingthecloud.org","csx.cc","mydbserver.com","webspaceconfig.de","mittwald.info","mittwaldserver.info","typo3server.info","project.space","modx.dev","bmoattachments.org","net.ru","org.ru","pp.ru","hostedpi.com","caracal.mythic-beasts.com","customer.mythic-beasts.com","fentiger.mythic-beasts.com","lynx.mythic-beasts.com","ocelot.mythic-beasts.com","oncilla.mythic-beasts.com","onza.mythic-beasts.com","sphinx.mythic-beasts.com","vs.mythic-beasts.com","x.mythic-beasts.com","yali.mythic-beasts.com","cust.retrosnub.co.uk","ui.nabu.casa","cloud.nospamproxy.com","netfy.app","netlify.app","4u.com","nfshost.com","ipfs.nftstorage.link","ngo.us","ngrok.app","ngrok-free.app","ngrok.dev","ngrok-free.dev","ngrok.io","ap.ngrok.io","au.ngrok.io","eu.ngrok.io","in.ngrok.io","jp.ngrok.io","sa.ngrok.io","us.ngrok.io","ngrok.pizza","ngrok.pro","torun.pl","nh-serv.co.uk","nimsite.uk","mmafan.biz","myftp.biz","no-ip.biz","no-ip.ca","fantasyleague.cc","gotdns.ch","3utilities.com","blogsyte.com","ciscofreak.com","damnserver.com","ddnsking.com","ditchyourip.com","dnsiskinky.com","dynns.com","geekgalaxy.com","health-carereform.com","homesecuritymac.com","homesecuritypc.com","myactivedirectory.com","mysecuritycamera.com","myvnc.com","net-freaks.com","onthewifi.com","point2this.com","quicksytes.com","securitytactics.com","servebeer.com","servecounterstrike.com","serveexchange.com","serveftp.com","servegame.com","servehalflife.com","servehttp.com","servehumour.com","serveirc.com","servemp3.com","servep2p.com","servepics.com","servequake.com","servesarcasm.com","stufftoread.com","unusualperson.com","workisboring.com","dvrcam.info","ilovecollege.info","no-ip.info","brasilia.me","ddns.me","dnsfor.me","hopto.me","loginto.me","noip.me","webhop.me","bounceme.net","ddns.net","eating-organic.net","mydissent.net","myeffect.net","mymediapc.net","mypsx.net","mysecuritycamera.net","nhlfan.net","no-ip.net","pgafan.net","privatizehealthinsurance.net","redirectme.net","serveblog.net","serveminecraft.net","sytes.net","cable-modem.org","collegefan.org","couchpotatofries.org","hopto.org","mlbfan.org","myftp.org","mysecuritycamera.org","nflfan.org","no-ip.org","read-books.org","ufcfan.org","zapto.org","no-ip.co.uk","golffan.us","noip.us","pointto.us","stage.nodeart.io","*.developer.app","noop.app","*.northflank.app","*.build.run","*.code.run","*.database.run","*.migration.run","noticeable.news","notion.site","dnsking.ch","mypi.co","n4t.co","001www.com","myiphost.com","forumz.info","soundcast.me","tcp4.me","dnsup.net","hicam.net","now-dns.net","ownip.net","vpndns.net","dynserv.org","now-dns.org","x443.pw","now-dns.top","ntdll.top","freeddns.us","nsupdate.info","nerdpol.ovh","nyc.mn","prvcy.page","obl.ong","observablehq.cloud","static.observableusercontent.com","omg.lol","cloudycluster.net","omniwe.site","123webseite.at","123website.be","simplesite.com.br","123website.ch","simplesite.com","123webseite.de","123hjemmeside.dk","123miweb.es","123kotisivu.fi","123siteweb.fr","simplesite.gr","123homepage.it","123website.lu","123website.nl","123hjemmeside.no","service.one","simplesite.pl","123paginaweb.pt","123minsida.se","is-a-fullstack.dev","is-cool.dev","is-not-a.dev","localplayer.dev","is-local.org","opensocial.site","opencraft.hosting","16-b.it","32-b.it","64-b.it","orsites.com","operaunite.com","*.customer-oci.com","*.oci.customer-oci.com","*.ocp.customer-oci.com","*.ocs.customer-oci.com","*.oraclecloudapps.com","*.oraclegovcloudapps.com","*.oraclegovcloudapps.uk","tech.orange","can.re","authgear-staging.com","authgearapps.com","skygearapp.com","outsystemscloud.com","*.hosting.ovh.net","*.webpaas.ovh.net","ownprovider.com","own.pm","*.owo.codes","ox.rs","oy.lc","pgfog.com","pagexl.com","gotpantheon.com","pantheonsite.io","*.paywhirl.com","*.xmit.co","xmit.dev","madethis.site","srv.us","gh.srv.us","gl.srv.us","lk3.ru","mypep.link","perspecta.cloud","on-web.fr","*.upsun.app","upsunapp.com","ent.platform.sh","eu.platform.sh","us.platform.sh","*.platformsh.site","*.tst.site","platter-app.com","platter-app.dev","platterp.us","pley.games","onporter.run","co.bn","postman-echo.com","pstmn.io","mock.pstmn.io","httpbin.org","prequalifyme.today","xen.prgmr.com","priv.at","protonet.io","chirurgiens-dentistes-en-france.fr","byen.site","pubtls.org","pythonanywhere.com","eu.pythonanywhere.com","qa2.com","qcx.io","*.sys.qcx.io","myqnapcloud.cn","alpha-myqnapcloud.com","dev-myqnapcloud.com","mycloudnas.com","mynascloud.com","myqnapcloud.com","qoto.io","qualifioapp.com","ladesk.com","qbuser.com","*.quipelements.com","vapor.cloud","vaporcloud.io","rackmaze.com","rackmaze.net","cloudsite.builders","myradweb.net","servername.us","web.in","in.net","myrdbx.io","site.rb-hosting.io","*.on-rancher.cloud","*.on-k3s.io","*.on-rio.io","ravpage.co.il","readthedocs-hosted.com","readthedocs.io","rhcloud.com","instances.spawn.cc","onrender.com","app.render.com","replit.app","id.replit.app","firewalledreplit.co","id.firewalledreplit.co","repl.co","id.repl.co","replit.dev","archer.replit.dev","bones.replit.dev","canary.replit.dev","global.replit.dev","hacker.replit.dev","id.replit.dev","janeway.replit.dev","kim.replit.dev","kira.replit.dev","kirk.replit.dev","odo.replit.dev","paris.replit.dev","picard.replit.dev","pike.replit.dev","prerelease.replit.dev","reed.replit.dev","riker.replit.dev","sisko.replit.dev","spock.replit.dev","staging.replit.dev","sulu.replit.dev","tarpit.replit.dev","teams.replit.dev","tucker.replit.dev","wesley.replit.dev","worf.replit.dev","repl.run","resindevice.io","devices.resinstaging.io","hzc.io","adimo.co.uk","itcouldbewor.se","aus.basketball","nz.basketball","git-pages.rit.edu","rocky.page","rub.de","ruhr-uni-bochum.de","io.noc.ruhr-uni-bochum.de","биз.рус","ком.рус","крым.рус","мир.рус","мск.рус","орг.рус","самара.рус","сочи.рус","спб.рус","я.рус","ras.ru","nyat.app","180r.com","dojin.com","sakuratan.com","sakuraweb.com","x0.com","2-d.jp","bona.jp","crap.jp","daynight.jp","eek.jp","flop.jp","halfmoon.jp","jeez.jp","matrix.jp","mimoza.jp","ivory.ne.jp","mail-box.ne.jp","mints.ne.jp","mokuren.ne.jp","opal.ne.jp","sakura.ne.jp","sumomo.ne.jp","topaz.ne.jp","netgamers.jp","nyanta.jp","o0o0.jp","rdy.jp","rgr.jp","rulez.jp","s3.isk01.sakurastorage.jp","s3.isk02.sakurastorage.jp","saloon.jp","sblo.jp","skr.jp","tank.jp","uh-oh.jp","undo.jp","rs.webaccel.jp","user.webaccel.jp","websozai.jp","xii.jp","squares.net","jpn.org","kirara.st","x0.to","from.tv","sakura.tv","*.builder.code.com","*.dev-builder.code.com","*.stg-builder.code.com","*.001.test.code-builder-stg.platform.salesforce.com","*.d.crm.dev","*.w.crm.dev","*.wa.crm.dev","*.wb.crm.dev","*.wc.crm.dev","*.wd.crm.dev","*.we.crm.dev","*.wf.crm.dev","sandcats.io","logoip.com","logoip.de","fr-par-1.baremetal.scw.cloud","fr-par-2.baremetal.scw.cloud","nl-ams-1.baremetal.scw.cloud","cockpit.fr-par.scw.cloud","fnc.fr-par.scw.cloud","functions.fnc.fr-par.scw.cloud","k8s.fr-par.scw.cloud","nodes.k8s.fr-par.scw.cloud","s3.fr-par.scw.cloud","s3-website.fr-par.scw.cloud","whm.fr-par.scw.cloud","priv.instances.scw.cloud","pub.instances.scw.cloud","k8s.scw.cloud","cockpit.nl-ams.scw.cloud","k8s.nl-ams.scw.cloud","nodes.k8s.nl-ams.scw.cloud","s3.nl-ams.scw.cloud","s3-website.nl-ams.scw.cloud","whm.nl-ams.scw.cloud","cockpit.pl-waw.scw.cloud","k8s.pl-waw.scw.cloud","nodes.k8s.pl-waw.scw.cloud","s3.pl-waw.scw.cloud","s3-website.pl-waw.scw.cloud","scalebook.scw.cloud","smartlabeling.scw.cloud","dedibox.fr","schokokeks.net","gov.scot","service.gov.scot","scrysec.com","client.scrypted.io","firewall-gateway.com","firewall-gateway.de","my-gateway.de","my-router.de","spdns.de","spdns.eu","firewall-gateway.net","my-firewall.org","myfirewall.org","spdns.org","seidat.net","sellfy.store","minisite.ms","senseering.net","servebolt.cloud","biz.ua","co.ua","pp.ua","as.sh.cn","sheezy.games","shiftedit.io","myshopblocks.com","myshopify.com","shopitsite.com","shopware.shop","shopware.store","mo-siemens.io","1kapp.com","appchizi.com","applinzi.com","sinaapp.com","vipsinaapp.com","siteleaf.net","small-web.org","aeroport.fr","avocat.fr","chambagri.fr","chirurgiens-dentistes.fr","experts-comptables.fr","medecin.fr","notaires.fr","pharmacien.fr","port.fr","veterinaire.fr","vp4.me","*.snowflake.app","*.privatelink.snowflake.app","streamlit.app","streamlitapp.com","try-snowplow.com","mafelo.net","playstation-cloud.com","srht.site","apps.lair.io","*.stolos.io","spacekit.io","ind.mom","customer.speedpartner.de","myspreadshop.at","myspreadshop.com.au","myspreadshop.be","myspreadshop.ca","myspreadshop.ch","myspreadshop.com","myspreadshop.de","myspreadshop.dk","myspreadshop.es","myspreadshop.fi","myspreadshop.fr","myspreadshop.ie","myspreadshop.it","myspreadshop.net","myspreadshop.nl","myspreadshop.no","myspreadshop.pl","myspreadshop.se","myspreadshop.co.uk","w-corp-staticblitz.com","w-credentialless-staticblitz.com","w-staticblitz.com","stackhero-network.com","runs.onstackit.cloud","stackit.gg","stackit.rocks","stackit.run","stackit.zone","musician.io","novecore.site","api.stdlib.com","feedback.ac","forms.ac","assessments.cx","calculators.cx","funnels.cx","paynow.cx","quizzes.cx","researched.cx","tests.cx","surveys.so","storebase.store","storipress.app","storj.farm","strapiapp.com","media.strapiapp.com","vps-host.net","atl.jelastic.vps-host.net","njs.jelastic.vps-host.net","ric.jelastic.vps-host.net","streak-link.com","streaklinks.com","streakusercontent.com","soc.srcf.net","user.srcf.net","utwente.io","temp-dns.com","supabase.co","supabase.in","supabase.net","syncloud.it","dscloud.biz","direct.quickconnect.cn","dsmynas.com","familyds.com","diskstation.me","dscloud.me","i234.me","myds.me","synology.me","dscloud.mobi","dsmynas.net","familyds.net","dsmynas.org","familyds.org","direct.quickconnect.to","vpnplus.to","mytabit.com","mytabit.co.il","tabitorder.co.il","taifun-dns.de","ts.net","*.c.ts.net","gda.pl","gdansk.pl","gdynia.pl","med.pl","sopot.pl","taveusercontent.com","p.tawk.email","p.tawkto.email","site.tb-hosting.com","edugit.io","s3.teckids.org","telebit.app","telebit.io","*.telebit.xyz","*.firenet.ch","*.svc.firenet.ch","reservd.com","thingdustdata.com","cust.dev.thingdust.io","reservd.dev.thingdust.io","cust.disrec.thingdust.io","reservd.disrec.thingdust.io","cust.prod.thingdust.io","cust.testing.thingdust.io","reservd.testing.thingdust.io","tickets.io","arvo.network","azimuth.network","tlon.network","torproject.net","pages.torproject.net","townnews-staging.com","12hp.at","2ix.at","4lima.at","lima-city.at","12hp.ch","2ix.ch","4lima.ch","lima-city.ch","trafficplex.cloud","de.cool","12hp.de","2ix.de","4lima.de","lima-city.de","1337.pictures","clan.rip","lima-city.rocks","webspace.rocks","lima.zone","*.transurl.be","*.transurl.eu","site.transip.me","*.transurl.nl","tuxfamily.org","dd-dns.de","dray-dns.de","draydns.de","dyn-vpn.de","dynvpn.de","mein-vigor.de","my-vigor.de","my-wan.de","syno-ds.de","synology-diskstation.de","synology-ds.de","diskstation.eu","diskstation.org","typedream.app","pro.typeform.com","*.uberspace.de","uber.space","hk.com","inc.hk","ltd.hk","hk.org","it.com","unison-services.cloud","virtual-user.de","virtualuser.de","name.pm","sch.tf","biz.wf","sch.wf","org.yt","rs.ba","bielsko.pl","upli.io","urown.cloud","dnsupdate.info","us.org","v.ua","express.val.run","web.val.run","vercel.app","v0.build","vercel.dev","vusercontent.net","now.sh","2038.io","router.management","v-info.info","voorloper.cloud","*.vultrobjects.com","wafflecell.com","webflow.io","webflowtest.io","*.webhare.dev","bookonline.app","hotelwithflight.com","reserve-online.com","reserve-online.net","cprapid.com","pleskns.com","wp2.host","pdns.page","plesk.page","wpsquared.site","*.wadl.top","remotewd.com","box.ca","pages.wiardweb.com","toolforge.org","wmcloud.org","wmflabs.org","wdh.app","panel.gg","daemon.panel.gg","wixsite.com","wixstudio.com","editorx.io","wixstudio.io","wix.run","messwithdns.com","woltlab-demo.com","myforum.community","community-pro.de","diskussionsbereich.de","community-pro.net","meinforum.net","affinitylottery.org.uk","raffleentry.org.uk","weeklylottery.org.uk","wpenginepowered.com","js.wpenginepowered.com","half.host","xnbay.com","u2.xnbay.com","u2-local.xnbay.com","cistron.nl","demon.nl","xs4all.space","yandexcloud.net","storage.yandexcloud.net","website.yandexcloud.net","official.academy","yolasite.com","yombo.me","ynh.fr","nohost.me","noho.st","za.net","za.org","zap.cloud","zeabur.app","bss.design","basicserver.io","virtualserver.io","enterprisecloud.nu"].reduce((function(e,t){var n=t.replace(/^(\\*\\.|\\!)/,""),i=pp.toASCII(n),o=t.charAt(0);if(e.has(i))throw new Error("Multiple rules found for ".concat(t," (").concat(i,")"));return e.set(i,{rule:t,suffix:n,punySuffix:i,wildcard:"*"===o,exception:"!"===o}),e}),new Map),mp={DOMAIN_TOO_SHORT:"Domain name too short.",DOMAIN_TOO_LONG:"Domain name too long. It should be no more than 255 chars.",LABEL_STARTS_WITH_DASH:"Domain name label can not start with a dash.",LABEL_ENDS_WITH_DASH:"Domain name label can not end with a dash.",LABEL_TOO_LONG:"Domain name label should be at most 63 chars long.",LABEL_TOO_SHORT:"Domain name label should be at least 1 character long.",LABEL_INVALID_CHARS:"Domain name label can only contain alphanumeric characters or dashes."},vp=function(e){if("string"!=typeof e)throw new TypeError("Domain name must be a string.");var t=e.slice(0).toLowerCase();"."===t.charAt(t.length-1)&&(t=t.slice(0,t.length-1));var n=function(e){var t=pp.toASCII(e);if(t.length<1)return"DOMAIN_TOO_SHORT";if(t.length>255)return"DOMAIN_TOO_LONG";for(var n,i=t.split("."),o=0;o<i.length;++o){if(!(n=i[o]).length)return"LABEL_TOO_SHORT";if(n.length>63)return"LABEL_TOO_LONG";if("-"===n.charAt(0))return"LABEL_STARTS_WITH_DASH";if("-"===n.charAt(n.length-1))return"LABEL_ENDS_WITH_DASH";if(!/^[a-z0-9\\-_]+$/.test(n))return"LABEL_INVALID_CHARS"}}(t);if(n)return{input:e,error:{message:mp[n],code:n}};var i={input:e,tld:null,sld:null,domain:null,subdomain:null,listed:!1},o=t.split(".");if("local"===o[o.length-1])return i;var r=function(){return/xn--/.test(t)&&(i.domain&&(i.domain=pp.toASCII(i.domain)),i.subdomain&&(i.subdomain=pp.toASCII(i.subdomain))),i},a=function(e){for(var t=pp.toASCII(e).split("."),n=0;n<t.length;n++){var i=t.slice(n).join("."),o=gp.get(i);if(o)return o}return null}(t);if(!a)return o.length<2?i:(i.tld=o.pop(),i.sld=o.pop(),i.domain=[i.sld,i.tld].join("."),o.length&&(i.subdomain=o.pop()),r());i.listed=!0;var s=a.suffix.split("."),l=o.slice(0,o.length-s.length);return a.exception&&l.push(s.shift()),i.tld=s.join("."),!l.length||(a.wildcard&&(s.unshift(l.pop()),i.tld=s.join(".")),!l.length)||(i.sld=l.pop(),i.domain=[i.sld,i.tld].join("."),l.length&&(i.subdomain=l.join("."))),r()},yp={expires:1},bp=new(function(){function e(){var t;_classCallCheck(this,e),this.domain=(t=window.location.host)&&vp(t).domain||null||""}return _createClass(e,[{key:"init",value:function(e,t,n){this.cookieKey=e,t&&this.setSessionCookies(t,n)}},{key:"setCookieKey",value:function(e){this.cookieKey=e}},{key:"setCookie",value:function(e,t,n){return n=Object.assign(Object.assign({domain:this.domain},yp),n||{}),lp.set(e,t,n)}},{key:"setSessionCookies",value:function(e,t){if(this.cookieKey){var n=zn(JSON.stringify(e));this.setCookie(this.cookieKey,n,t),up.set(this.cookieKey,n)}}},{key:"getSessionCookies",value:function(){if(this.cookieKey){var e=lp.get(this.cookieKey);if(!e)return{};var t={};try{t=JSON.parse(Fn(e))}catch(e){return void console.warn("get session info from cookie failed")}return t}}},{key:"batchSet",value:function(e){var t=this.getSessionCookies();t&&this.cookieKey&&(t=Object.assign(t,e),this.setSessionCookies(t))}},{key:"set",value:function(e,t){var n=this.getSessionCookies();n&&this.cookieKey&&(n[e]=t,this.setSessionCookies(n))}},{key:"batchGet",value:function(e){var t=this.getSessionCookies()||{};if(!t||!this.cookieKey)return{};var n={};return e.forEach((function(e){n[e]=t[e]})),n}},{key:"get",value:function(e){var t=this.getSessionCookies()||{};return e?t[e]:t}},{key:"remove",value:function(e){var t=this.getSessionCookies();t&&this.cookieKey&&(("string"==typeof e?[e]:e).forEach((function(e){delete t[e]})),this.setSessionCookies(t))}},{key:"clear",value:function(e){(e=e||this.cookieKey)&&(lp.remove(this.cookieKey,{domain:this.domain}),up.remove(this.cookieKey))}}]),e}()),_p=function(){function e(t){_classCallCheck(this,e),this.status="initial",this.listenCookieTimer=void 0,this.cancelListenTimer=void 0,this.handleStorageListenBind=void 0,this.opts=Object.assign({interval:100,deadline:3e4,overtime:3e3,autoClear:!0},t),this.cookieOldValue=lp.get(this.opts.key),this.status="pending",this.racePromise=Promise.race([this.listenStorage(),this.listenCookie(),this.cancelListener()])}return _createClass(e,[{key:"handleStorageListen",value:function(e,t,n){var i=n.key,o=n.newValue,r=n.oldValue;i===e&&null!==o&&(window.removeEventListener("storage",this.handleStorageListenBind),this.cookieOldValue=o,t({key:e,newValue:o,oldValue:r}))}},{key:"listenStorage",value:function(){var e=this;return new Promise((function(t){e.handleStorageListenBind=e.handleStorageListen.bind(e,e.opts.key,t),window.addEventListener("storage",e.handleStorageListenBind)})).finally((function(){window.removeEventListener("storage",e.handleStorageListenBind)}))}},{key:"listenCookie",value:function(){var e=this,t=Date.now();return new Promise((function(n,i){!function o(){var r=lp.get(e.opts.key);if(r!==e.cookieOldValue)return e.cookieOldValue=r,clearTimeout(e.listenCookieTimer),e.listenCookieTimer=void 0,void n({key:e.opts.key,newValue:r,oldValue:e.cookieOldValue});var a=Date.now();if(a-t>=e.opts.deadline)return i("---listen cookie timeout"),clearTimeout(e.listenCookieTimer),void(e.listenCookieTimer=void 0);var s=e.opts.interval;a-t>=e.opts.overtime&&(s*=2),e.listenCookieTimer=setTimeout(o,s)}()}))}},{key:"cancelListener",value:function(){var e=this;return new Promise((function(t,n){e.cancelReject=n,e.cancelListenTimer=setTimeout((function(){n("---cancel timeout")}),e.opts.deadline)}))}},{key:"then",value:function(e){var t=this;return this.racePromise.then((function(n){t.status="pending",e(n)}),(function(){t.status="fulfilled",e()})).finally((function(){t.opts.autoClear&&t.clear()}))}},{key:"clear",value:function(){window.removeEventListener("storage",this.handleStorageListenBind),this.handleStorageListenBind=void 0,clearTimeout(this.listenCookieTimer),clearTimeout(this.cancelListenTimer),this.listenCookieTimer=void 0,this.cancelListenTimer=void 0}},{key:"cancel",value:function(){this.clear(),this.status="cancelled",this.cancelReject&&this.cancelReject()}}]),e}(),kp=function(e){_inherits(n,e);var t=_createSuper(n);function n(){var e;return _classCallCheck(this,n),(e=t.call(this)).defaultCookieKey=zn("$$_ZCB_SESSION_$$"),e.isLeft=!0,e.storageListener=void 0,e.handleVisibleChange=function(t){var n=bp.get("sid"),i=bp.get("ctn"),o=bp.get("roles"),r=cp.get("tabNo");if(t&&bp.remove("cst"),!n)return e.isLeft=!t,void(!i&&t&&bp.set("ctn",r));t?(e.storageListener&&(e.storageListener.cancel(),e.storageListener=void 0),i!==r&&(e.isLeft=!1,bp.set("ctn",r),e.emit("change",{visible:!0,prevTabNo:i,currentTabNo:r,roles:o}))):(e.storageListener=new _p({key:e.cookieKey,autoClear:!1}),e.storageListener.then((function(t){var n,i=bp.get("ctn");t&&i!==r&&(e.isLeft=!0,e.emit("change",{visible:!1,prevTabNo:r,currentTabNo:i,roles:o}),null===(n=e.storageListener)||void 0===n||n.clear(),e.storageListener=void 0)})))},e.handlePageHide=function(){bp.set("cst","1")},e}return _createClass(n,[{key:"setParticipantType",value:function(e){this.participantType=e}},{key:"isClosedTab",value:function(){return"1"===this.getSessionCookie("cst")}},{key:"shouldToClearWhenError",value:function(){var e=this.getSessionCookies(["stn","ctn"])||{},t=e.stn,n=e.ctn;return!n||n&&n===t||this.participantType===It.FOLLOWER}},{key:"setCookieKey",value:function(e){this.cookieKey=e||this.defaultCookieKey,bp.setCookieKey(this.cookieKey)}},{key:"clearCookieKey",value:function(){this.cookieKey="",bp.setCookieKey("")}},{key:"init",value:function(e){(null==e?void 0:e.cookieKey)&&(this.cookieKey=zn(e.cookieKey)),bp.init(this.cookieKey),this.documentVisibility=new ip,this.documentVisibility.init(),this.documentVisibility.on("change",this.handleVisibleChange),window.addEventListener("pagehide",this.handlePageHide),this.isLeft=!this.documentVisibility.visible;var t=!!bp.get("sid"),n=bp.get("ctn"),i=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:21,t="",n=crypto.getRandomValues(new Uint8Array(e|=0));e--;)t+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63&n[e]];return t}(8);cp.set("tabNo",i),this.documentVisibility.visible&&(bp.set("ctn",i),t&&!this.isClosedTab()&&this.emit("change",{visible:!0,prevTabNo:n,currentTabNo:i}))}},{key:"setSessionCookie",value:function(e){this.cookieKey&&bp.batchSet(e)}},{key:"getSessionCookie",value:function(e){if(this.cookieKey)return bp.get(e)}},{key:"getSessionCookies",value:function(e){if(this.cookieKey)return bp.batchGet(e)}},{key:"removeSessionCookie",value:function(e){if(this.cookieKey)return bp.remove(e)}},{key:"updateSessionTabNo",value:function(e){this.cookieKey&&(e?!0===e?bp.set("stn",cp.get("tabNo")):bp.set("stn",e):bp.remove("stn"))}},{key:"clearListener",value:function(){var e,t;this.removeAllListeners(),null===(e=this.documentVisibility)||void 0===e||e.stop(),null===(t=this.storageListener)||void 0===t||t.cancel(),this.storageListener=void 0}},{key:"clearToInit",value:function(){var e=bp.get("ctn");bp.clear(),e&&bp.set("ctn",e)}},{key:"clearAll",value:function(){var e;bp.clear(),bp.clear(this.defaultCookieKey),null===(e=this.storageListener)||void 0===e||e.cancel(),this.storageListener=void 0}},{key:"destroy",value:function(){this.clearAll(),this.clearListener(),this.clearCookieKey()}}]),n}(mt),wp=new kp;new(function(e){_inherits(n,e);var t=_createSuper(n);function n(){var e;return _classCallCheck(this,n),(e=t.call(this)).handleVisibleChange=function(t){e.emit("change",{visible:t,timestamp:Date.now()})},e}return _createClass(n,[{key:"init",value:function(){this.documentVisibility=new ip,this.documentVisibility.init(),this.documentVisibility.on("change",this.handleVisibleChange)}},{key:"isVisible",get:function(){var e,t;return null===(t=null===(e=this.documentVisibility)||void 0===e?void 0:e.visible)||void 0===t||t}},{key:"clear",value:function(){var e;this.removeAllListeners(),null===(e=this.documentVisibility)||void 0===e||e.stop(),this.documentVisibility=void 0}}]),n}(mt)),function(e){e.WrapperClassName="zcb-flying-cursor-wrapper",e.CCMouseClassName="flying-cursor-mouse-cc",e.CommonMouseClassName="flying-cursor-mouse-common",e.ReplayerMouseClassName="replayer-mouse",e.UserNameClassName="name",e.AgentCursorClassName="agent"}(dp||(dp={}));var Sp=["color-0","color-1","color-2","color-3","color-4"];function Cp(e,t,n,i,o,r){var a,s,l,c=arguments.length>6&&void 0!==arguments[6]&&arguments[6],u=n.get(e),h=null==u?void 0:u.mouseDOM;if(!h||!1===(null==u?void 0:u.connected)){null==h||h.remove();var d=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"cci",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=document.createElement("div");i.classList.add("cci"===t?dp.CCMouseClassName:dp.CommonMouseClassName),n&&i.classList.add(dp.ReplayerMouseClassName);var o=document.createElement("div");return o.textContent=e,o.classList.add(dp.UserNameClassName),i.appendChild(o),{mouse:i,name:o}}(t,r,c),f=d.mouse,p=d.name;if(h=f,o.has(e)){var g=o.get(e);g&&(h.style.opacity="1",h.style.left=100*g.x+"%",h.style.top=100*g.y+"%")}else h.style.opacity="0";var m=(null==u?void 0:u.color)||(a=_toConsumableArray(n.values()).map((function(e){return e.color})),s=Sp.filter((function(e){return!a.includes(e)})),(l=s.length?s:Sp)[Math.floor(Math.random()*l.length)]);h.classList.add(m),i.appendChild(h),n.set(e,{color:m,mouseDOM:h,nameDOM:p,userName:t,connected:!0})}return(u=n.get(e))&&u.userName!==t&&(u.userName=t,u.nameDOM&&(u.nameDOM.textContent=t)),h}var Ep=function(){function e(){_classCallCheck(this,e),this.cacheCursorAgent=new Map,this.isFrameLevelTracerEventRegistered=!1,this.cursorDOMWrapper=null,this.flyingCursorWrapperMap=new Map,this.userLastPosition=new Map}return _createClass(e,[{key:"init",value:function(e,t,n,i){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"cci";this.transferLayerObserverInstance=e,this.userName=null!=n?n:"",this.userId=null!=t?t:"",this.isCustomer=i,this.modeType=o,this.baselineTime=0,e&&Vt&&(this.registerSessionEventsHandler(),this.registerSocketMessageHandler(),this.registerFrameLevelTracerEventsHandler(),this.isCustomer||this.registerFollower())}},{key:"registerSessionEventsHandler",value:function(){var e=this;this.transferLayerObserverInstance.on(u,(function(t){return pt(e,void 0,void 0,_regeneratorRuntime().mark((function e(){var n,i,o,r,a=this;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.event===l.USER_ROSTER&&(n=t.data,i=n.add,o=n.remove,r=n.update,(null==i?void 0:i.length)&&i.forEach((function(e){var t=Bn(e.name),n=e.userId;e.participantType===It.LEADER?(a.customerName=t,a.customerId=n,a.sendLeaderName(n,t)):e.participantType===It.FOLLOWER&&n!==a.userId&&(a.isCustomer?a.updateCursorDOMByUserIdInCustomerSide(n,t):a.createCursorDOMByUserIdInAgentSide(n,t),a.cacheCursorAgent.set(n,t))})),(null==r?void 0:r.length)&&r.forEach((function(e){if(e.participantType===It.FOLLOWER&&e.name){var t=Bn(e.name),n=e.userId;n!==a.userId&&(a.isCustomer?a.updateCursorDOMByUserIdInCustomerSide(n,t):a.createCursorDOMByUserIdInAgentSide(n,t),a.cacheCursorAgent.set(n,t))}})),(null==o?void 0:o.length)&&o.forEach((function(e){var t=e.userId;e.participantType===It.LEADER?a.isCustomer||a.unregisterUserCursor(t):e.participantType===It.FOLLOWER&&(t!==a.userId&&(a.isCustomer?a.clearFlyingCursor(t):a.unregisterUserCursor(t)),a.cacheCursorAgent.delete(t))})));case 1:case"end":return e.stop()}}),e)})))}))}},{key:"registerSocketMessageHandler",value:function(){var e,t=this;null===(e=this.transferLayerObserverInstance)||void 0===e||e.registerMessageHandler("recv-flying-cursor",(function(e,n){if(n.eventType===Q.FLYING_CURSOR){var i=n.data;(null==i?void 0:i.type)===Y.RegisterUser?t.handleRegisterUserData(i):(null==i?void 0:i.type)===Y.Position&&t.updateFlyingCursorPosition(i)}}))}},{key:"registerFrameLevelTracerEventsHandler",value:function(){var e=this;this.isCustomer||this.isFrameLevelTracerEventRegistered||(this.isFrameLevelTracerEventRegistered=!0,Vt.on(zt.REQUEST_AGENT_CURSOR_INFO,(function(t){e.requestMissingUser(t)})),Vt.on(zt.START_REPLAY,(function(){e.sendLeaderName(e.customerId,e.customerName),_toConsumableArray(e.cacheCursorAgent.entries()).forEach((function(t){var n=_slicedToArray(t,2),i=n[0],o=n[1];e.createCursorDOMByUserIdInAgentSide(i,o),e.userLastPosition.has(i)&&e.updateCursorPositionInAgentSide(i,e.userLastPosition.get(i))}))})))}},{key:"handleRegisterUserData",value:function(e){var t=e.data,n=t.userId,i=t.userName;n!==this.userId&&(this.isCustomer?this.updateCursorDOMByUserIdInCustomerSide(n,i):this.createCursorDOMByUserIdInAgentSide(n,i))}},{key:"registerFollower",value:function(e){var t;if(!e||e===this.userId){var n={type:Y.RegisterUser,data:{userId:this.userId,userName:this.userName,modeType:this.modeType}};null===(t=this.transferLayerObserverInstance)||void 0===t||t.sendMessage({eventType:Q.FLYING_CURSOR,data:n})}}},{key:"updatePosition",value:function(e){var t,n=this.userId,i={type:Y.Position,data:{userId:n,position:e}};null===(t=this.transferLayerObserverInstance)||void 0===t||t.sendMessage({eventType:Q.FLYING_CURSOR,data:i})}},{key:"sendLeaderName",value:function(e,t){var n,i={type:Y.RegisterCustomerCursorDOM,data:{userName:t,userId:e,modeType:this.modeType,curAgentId:this.userId}};null===(n=this.transferLayerObserverInstance)||void 0===n||n.sendMessage({eventType:Q.FLYING_CURSOR,data:i})}},{key:"unregisterUserCursor",value:function(e){var t;if(e!==this.userId){var n={type:Y.UnregisterUser,data:{userId:e}};null===(t=this.transferLayerObserverInstance)||void 0===t||t.sendMessage({eventType:Q.FLYING_CURSOR,data:n})}}},{key:"requestMissingUser",value:function(e){if(this.cacheCursorAgent.has(e)){var t=this.cacheCursorAgent.get(e);this.createCursorDOMByUserIdInAgentSide(e,null!=t?t:"")}}},{key:"updateFlyingCursorPosition",value:function(e){var t=e.data,n=t.position,i=t.userId;i===this.userId||n.timeStamp<this.baselineTime||0===n.timeStamp||(this.isCustomer?this.updateCursorPositionInCustomerSide(i,n):this.updateCursorPositionInAgentSide(i,n))}},{key:"updateCursorPositionInCustomerSide",value:function(e,t){var n=this.flyingCursorWrapperMap.get(e);if(n&&!1!==(null==n?void 0:n.connected)){this.baselineTime=t.timeStamp;var i=n.mouseDOM;i&&(-1===t.timeStamp?i.style.opacity="0":(i.style.opacity="1",i.style.left=100*t.x+"%",i.style.top=100*t.y+"%"))}else this.requestMissingUser(e)}},{key:"updateCursorPositionInAgentSide",value:function(e,t){var n;if(e!==this.userId){this.userLastPosition.set(e,t);var i={type:Y.UpdateCursorPositionLocal,data:{userId:e,position:t}};null===(n=this.transferLayerObserverInstance)||void 0===n||n.sendMessage({eventType:Q.FLYING_CURSOR,data:i})}}},{key:"updateCursorDOMByUserIdInCustomerSide",value:function(e,t){var n,i,o=!!this.cursorDOMWrapper;o||(this.cursorDOMWrapper=((i=document.createElement("div")).classList.add(dp.WrapperClassName),i.classList.add(T),i));var r=Cp(e,t,this.flyingCursorWrapperMap,this.cursorDOMWrapper,this.userLastPosition,this.modeType);if(!o){var a=document.querySelector(".".concat(Jn.wrapper));document.body.insertBefore(this.cursorDOMWrapper,null!==(n=null==a?void 0:a.nextSibling)&&void 0!==n?n:null)}return r}},{key:"createCursorDOMByUserIdInAgentSide",value:function(e,t){var n,i={type:Y.RegisterOtherAgentCursorDOM,data:{userId:e,userName:t,modeType:this.modeType}};null===(n=this.transferLayerObserverInstance)||void 0===n||n.sendMessage({eventType:Q.FLYING_CURSOR,data:i})}},{key:"clearFlyingCursor",value:function(e){var t,n;if(void 0!==e){var i=this.flyingCursorWrapperMap.get(e);this.userLastPosition.delete(e),i&&(i.connected=!1,null===(t=i.mouseDOM)||void 0===t||t.remove(),i.mouseDOM=null,i.nameDOM=null)}else _toConsumableArray(this.flyingCursorWrapperMap.values()).forEach((function(e){var t;null===(t=e.mouseDOM)||void 0===t||t.remove(),e.mouseDOM=null,e.nameDOM=null})),this.flyingCursorWrapperMap.clear(),this.userLastPosition.clear(),null===(n=this.cursorDOMWrapper)||void 0===n||n.remove(),this.cursorDOMWrapper=null}}]),e}(),Tp=new Ep;t.makeLogger(["CoBrowsing Session","CC"]),t.performanceLog.logWithBaseTags(["CC","CC_SESSION"]);var Op,jp={usePinCodeUI:!0,allowCustomerAnnotation:!1,allowAgentAnnotation:!0,recording:{enable:!1},ignoredElements:[]},xp=function(){return pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function e(){return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",{});case 1:case"end":return e.stop()}}),e)})))},Rp=function(){return pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function e(){return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",{});case 1:case"end":return e.stop()}}),e)})))},Ip=new Map([[1001,[10004,30105]],[1002,[10010,10014]],[1003,[30300]],[1004,[10023]],[1005,[10002]],[1006,[10011,30308]],[1007,[30309]],[1008,[30307,30311]],[1009,[30315]],[1010,[30316]],[1011,[10025,10006,10008,10007,10009,10003,10001,30106,30107,40100,40101,40102,40103,40104,40200,40201,40202,40210,40211,40214,40216,40300,40301,40302,40402,40403,10021,10026,30109]],[1012,[40212,40217]],[1013,[40215,40218]],[1014,[]],[1015,[40213,40219]],[1016,[10016]],[1017,[10027]],[1018,[]],[2001,[124,125,127,129,30202,30304,401]],[3001,[26700]],[3002,[2e4,20001,20002,20003,20004,20005,20006,20007,24001,26100,26101,26102,26103,26104,26105,26106,26200,26201,26203,26204,26301,26302,26303,26304,26305,26400,26401,26402,26403,26404,26405,26500,26501,26502,26503,26504,26506,26701,26800,26801,29e3]],[3003,[21e3,21001,25203,25204,26202,26505,29001]],[3004,[22e3,29002]],[3005,[23e3,29003]],[9999,[10005,-1,126,128,30100,30101,30102,30103,30104,30200,30201,30203,30204,30205,30301,30302,30303,30305,30306,30310,30312,30313,30314,30400,30401,30402,30403,40001,24e3,24002,25100,25101,25102,25103,25104,25105,25200,25201,25202,26600,26601,26702,26703,10020,19999,30108]]]);!function(e){e[e.SESSION_START_FAILED=1001]="SESSION_START_FAILED",e[e.SESSION_CONNECTING_IN_PROGRESS=1002]="SESSION_CONNECTING_IN_PROGRESS",e[e.SESSION_NOT_FOUND=1003]="SESSION_NOT_FOUND",e[e.SESSION_COUNT_LIMIT=1004]="SESSION_COUNT_LIMIT",e[e.SESSION_REFRESH_PIN_FAILED=1005]="SESSION_REFRESH_PIN_FAILED",e[e.SESSION_JOIN_PIN_NOT_FOUND=1006]="SESSION_JOIN_PIN_NOT_FOUND",e[e.SESSION_PIN_CODE_EXPIRED=1007]="SESSION_PIN_CODE_EXPIRED",e[e.SESSION_PIN_INVALID_FORMAT=1008]="SESSION_PIN_INVALID_FORMAT",e[e.SESSION_START_PIN_REQUIRED=1009]="SESSION_START_PIN_REQUIRED",e[e.SESSION_START_PIN_CONFLICT=1010]="SESSION_START_PIN_CONFLICT",e[e.SESSION_JOIN_FAILED=1011]="SESSION_JOIN_FAILED",e[e.SESSION_CUSTOMER_COUNT_LIMIT=1012]="SESSION_CUSTOMER_COUNT_LIMIT",e[e.SESSION_AGENT_COUNT_LIMIT=1013]="SESSION_AGENT_COUNT_LIMIT",e[e.SESSION_CUSTOMIZE_OVERRIDE_ERROR=1014]="SESSION_CUSTOMIZE_OVERRIDE_ERROR",e[e.SESSION_DUPLICATE_USER=1015]="SESSION_DUPLICATE_USER",e[e.NETWORK_ERROR=1016]="NETWORK_ERROR",e[e.SESSION_CANCELING_IN_PROGRESS=1017]="SESSION_CANCELING_IN_PROGRESS",e[e.TRANSFER_TO_NEW_TAB_FAILED=1018]="TRANSFER_TO_NEW_TAB_FAILED",e[e.TOKEN_INVALID=2001]="TOKEN_INVALID",e[e.RECORD_ERROR_UNKNOWN=3001]="RECORD_ERROR_UNKNOWN",e[e.RECORD_START_FAILED=3002]="RECORD_START_FAILED",e[e.RECORD_END_FAILED=3003]="RECORD_END_FAILED",e[e.RECORD_PAUSE_FAILED=3004]="RECORD_PAUSE_FAILED",e[e.RECORD_RESUME_FAILED=3005]="RECORD_RESUME_FAILED",e[e.UNDEFINED=9999]="UNDEFINED"}(Op||(Op={}));var Ap,Dp=[29e3,29001,29002,29003],Np=new Map,Pp=_createForOfIteratorHelper(Ip);try{var Lp=function(){var e=_slicedToArray(Ap.value,2),t=e[0];e[1].forEach((function(e){Np.set(e,t)}))};for(Pp.s();!(Ap=Pp.n()).done;)Lp()}catch(e){Pp.e(e)}finally{Pp.f()}function Mp(e){return e?Dp.includes(e)?e:Np.get(e):Op.UNDEFINED}t.makeLogger(["CoBrowsing CoBrowse","CC"]);var zp="setData",Fp="getData",Bp="setDataResp",Up="getDataResp",Vp="removeData",Wp="removeDataResp",Gp="checkTokenIframeReady",Hp="checkTokenIframeReadyResp",Yp="storageEventResp",Xp="zcc",Kp="common",qp="/token",Jp="{appKey}",Zp=_defineProperty2(_defineProperty2({},Kp,(function(){if(Gt()){var e=Ht()||{},t=e.appKey,n=e.sdkVersion;return"/static/resource/sdk/".concat(t).concat(qp,"/").concat(n,"?type=inline")}return Bt.getCoBrowsingConfig("originalSdkVersion")?"/static/resource/sdk/".concat(Jp).concat(qp,"/").concat(Yt()):"/static/resource/sdk/".concat(Jp).concat(qp)})),Xp,(function(){return"/static/resource/cci/".concat(Jp).concat(qp)}));var $p="zcb-token-iframe",Qp=function(){function e(t,n){var i=this,o=t.mode,r=t.appKey;_classCallCheck(this,e),this.tasks=[],this.iframeOnLoadCallback=n,r?(this.msgListenerFunc=function(e){var t="https://"+Bt.getCoBrowsingConfig("domain");e.origin===t&&i.handleMsgData(e)},this.iframeEle=this.initTokenMangerDom(o,r)):console.error("TokenConsumer init error, appKey=".concat(r," is falsy."))}return _createClass(e,[{key:"initTokenMangerDom",value:function(e,t){var n=this.iframeEle||document.querySelector(".".concat($p));if(n)return n;window.addEventListener("message",this.msgListenerFunc,!1);var i=document.createElement("iframe");return i.setAttribute("src",function(e,t){var n;return"https://"+Bt.getCoBrowsingConfig("domain")+(null===(n=Zp[e])||void 0===n?void 0:n.call(Zp).replace(Jp,t))}(e,t)),i.setAttribute("style","display:none;"),i.classList.add(T,$p),document.body.firstChild&&document.body.insertBefore(i,document.body.firstChild),i}},{key:"handleMsgData",value:function(e){var t;if(e.data){var n=e.data;if((null==n?void 0:n.type)===Hp)return n.origin.endsWith(".zoom.us")||n.origin.endsWith(".zoomdev.us")?this.tokenManagerIframeOrigin=n.origin:console.error("[TokenConsumer] checkTokenIframeReadyResp origin is valid."),void this.iframeOnLoadCallback(this);if((null==n?void 0:n.type)===Yp&&(null===(t=this.storageTask)||void 0===t||t.call(this,n)),void 0!==(null==n?void 0:n.taskId)){var i=this.tasks.find((function(e){return e.id===n.taskId}));i?null==i||i.callback(n):console.warn("[handleMsgData] not found taskId=".concat(n.taskId))}}}},{key:"postData",value:function(e){var t;if(!(null===(t=this.iframeEle)||void 0===t?void 0:t.contentWindow))return Promise.resolve();var n=Bf();this.iframeEle.contentWindow.postMessage(Object.assign(Object.assign({},e),{taskId:n}),this.tokenManagerIframeOrigin);var i=this;return new Promise((function(t,o){var r=null;i.tasks.push({id:n,callback:function(e){r&&clearTimeout(r),t(e.value)}}),r=setTimeout((function(){o("ERROR: TokenConsumer postData Timeout, data=".concat(JSON.stringify(e),", taskId=").concat(n))}),1e4)}))}},{key:"setData",value:function(e,t,n,i){return this.postData({key:t,value:n,cookieOptions:i,type:zp,storageType:e})}},{key:"setStorageData",value:function(e,t,n,i){return i&&(this.storageTask=function(e){null==i||i(e.value)}),this.postData({key:t,value:n,type:zp,storageType:e,shouldAddStorageListener:!0})}},{key:"getData",value:function(e){return this.postData({key:e,type:Fp})}},{key:"removeData",value:function(e,t){return this.postData({key:e,cookieOptions:t,type:Vp})}},{key:"destroy",value:function(){window.removeEventListener("message",this.msgListenerFunc),document.body.removeChild(this.iframeEle)}}]),e}(),eg={expires:1,secure:!0,sameSite:"none",Partitioned:!0},tg=function(){function e(){var t=this;_classCallCheck(this,e),this.preStorageListener=null,this.storageEventKey=null,this.msgListenerFunc=function(e){var n=t.handleMsgData(e);t.sendResponseMsg(e,n)},this.initListener(),window.parent.postMessage({type:Hp,value:!0,origin:location.origin},"*")}return _createClass(e,[{key:"initListener",value:function(){window.addEventListener("message",this.msgListenerFunc)}},{key:"handleMsgData",value:function(e){if(!e.data)return"";var t=e.data;return t.type===Fp?Object.assign(Object.assign({},this.getData(t.key)),{taskId:t.taskId}):t.type===zp?Object.assign(Object.assign({},this.setData(t.storageType,t.key,t.value,t.taskId,t.shouldAddStorageListener||!1,t.cookieOptions)),{taskId:t.taskId}):t.type===Vp?Object.assign(Object.assign({},this.removeData(t.key,t.cookieOptions)),{taskId:t.taskId}):t.type===Gp?{type:Hp,value:!0,taskId:t.taskId}:void 0}},{key:"sendResponseMsg",value:function(e,t){t&&e.source&&e.source.postMessage(t,e.origin)}},{key:"setData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:st.SessionStorage,t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,o=arguments.length>4?arguments[4]:void 0,r=arguments.length>5?arguments[5]:void 0;if(t){if(e===st.All)cp.set(t,n),lp.set(t,n,Object.assign(Object.assign({},eg),r));else if(e===st.Cookies)lp.set(t,n,Object.assign(Object.assign({},eg),r));else if(e===st.SessionStorage)cp.set(t,n);else if(e===st.LocalStorage&&(up.set(t,n),o)){this.storageEventKey=t,this.preStorageListener&&window.removeEventListener("storage",this.preStorageListener);var a=this,s=function(e){e.key&&e.key===a.storageEventKey&&window.parent.postMessage({type:Yp,value:{key:e.key,newValue:e.newValue,oldValue:e.oldValue},taskId:i,origin:location.origin},"*")};this.preStorageListener=s,window.addEventListener("storage",s)}return{value:n,type:Bp}}console.error("[setData] ERROR: key=".concat(t," is falsy."))}},{key:"getData",value:function(e){if(e)return cp.get(e)?{value:cp.get(e),type:Up}:up.get(e)?{value:up.get(e),type:Up}:lp.get(e)?{value:lp.get(e),type:Up}:{value:"",type:Up};console.error("[getData] ERROR: key=".concat(e," is falsy."))}},{key:"removeData",value:function(e,t){if(e)return lp.remove(e,Object.assign(Object.assign({},eg),t)),cp.remove(e),up.remove(e),{value:"",type:Wp};console.error("[removeData] ERROR: key=".concat(e," is falsy."))}},{key:"destroy",value:function(){window.removeEventListener("message",this.msgListenerFunc),this.preStorageListener&&window.removeEventListener("storage",this.preStorageListener),this.storageEventKey=null}}]),e}(),ng=!1;var ig=!1;function og(e){var t=e.mode,n=e.appKey;return pt(this,void 0,void 0,_regeneratorRuntime().mark((function e(){var i;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n){e.next=3;break}return console.error("[initTokenConsumer] init error, appKey=".concat(n," is falsy.")),e.abrupt("return");case 3:if(!(i=o.publicStore.getState()).ZCBTokenConsumer){e.next=6;break}return e.abrupt("return",i.ZCBTokenConsumer);case 6:if(!ig){e.next=8;break}return e.abrupt("return");case 8:return ig=!0,e.abrupt("return",new Promise((function(e){new Qp({mode:t,appKey:n},(function(t){o.publicStore.setState({ZCBTokenConsumer:t}),e(t)}))})));case 10:case"end":return e.stop()}}),e)})))}t.makeLogger(["CoBrowsing Bootstrap","CC"]),t.performanceLog.logWithBaseTags(["CC","CC_BOOTSTRAP"]);var rg,ag,sg=t.makeLogger(["CoBrowsing Session","COMMON"]),lg=t.performanceLog.logWithBaseTags(["COMMON","COMMON_SESSION"]),cg=function(e){_inherits(a,e);var r=_createSuper(a);function a(e){var t;return _classCallCheck(this,a),(t=r.call(this)).options=e,t.isTop=void 0,t.transferLayerObserverInstance=null,t.sessionStatus=g.NOT_CREATED,t.sessionLeader=null,t.isCurrentReconnectSession=!1,t.agentJoined=!1,t.isBHold=!1,t.agentList=[],t.cancelFrom="",t.initNo=0,t.startUrl="",t.persistence=!1,t.destroying=!1,t.setMaxListeners(100),t.initSessionInstance(),t.recordingManager=new Jf({mode:_.common}),t}return _createClass(a,[{key:"initSessionInstance",value:function(){if(!i.comAuthController){return sg.error("can not find auth module"),this.sessionStatus=g.CONNECT_FAILED,void this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.SESSION_CREATE_FAILED],code:se.SESSION_CREATE_FAILED}})}i.comAuthController.setBaseUrl(this.options.host)}},{key:"checkFrameLevel",value:function(){return pt(this,void 0,void 0,_regeneratorRuntime().mark((function e(){var t;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return sg.log("frameLevelTracer START"),e.next=3,Vt.isReady();case 3:if(t=e.sent,sg.log("frameLevelTracer PING_PONG_READY: isTop ".concat(t)),this.isTop=t,!Vt.isSameOriginWithParent()||t){e.next=9;break}return sg.log("frameLevelTracer result, not need join flow"),e.abrupt("return",!1);case 9:return e.abrupt("return",!0);case 10:case"end":return e.stop()}}),e,this)})))}},{key:"getInitPreParams",value:function(e){var t="",n="",i="",o="",r="";return this.callType===y.AUTO||this.callType===y.PERSIST?(t=this.authToken||"",n=this.sessionId||""):(t=(null==e?void 0:e.sdkToken)||"",n=(null==e?void 0:e.pinCode)||"",i=(null==e?void 0:e.customAgentName)||"",o=(null==e?void 0:e.customPinCode)||"",r=(null==e?void 0:e.sessionId)||""),{externalToken:t,externalSessionId:n,customAgentName:i,cobrowse_code:o,sessionId:r}}},{key:"checkIfToContinueInit",value:function(e){return this.initNo===e}},{key:"init",value:function(e){var n,r,a,s,l,h,d=e.callType,f=void 0===d?y.JOIN:d,p=e.sessionOptions;return pt(this,void 0,void 0,_regeneratorRuntime().mark((function e(){var d,m,v,b,_,k,w,S,C,E,T,O,j,x,R,I,A,D,N,P,L,M,z,F,B,U,V,W,G,H,Y=this;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.initNo++,d=this.initNo,this.callType=f,lg.log(t.PerformanceLogEnum.CallSessionInit,"call session init"),i.sessionController.allowLocalSession(),this.sessionStatus!==g.CONNECTING&&this.sessionStatus!==g.RECONNECTING){e.next=9;break}return sg.error("session is connecting"),this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.SESSION_CONNECTING],code:se.SESSION_CONNECTING}}),e.abrupt("return");case 9:if(this.sessionStatus!==g.CANCELING){e.next=13;break}return sg.error("init entry session is canceling, end already trigger, ".concat((new Date).valueOf())),np.setIsCobrowseLocked(!1),e.abrupt("return");case 13:return f===y.AUTO?(sg.log("CALL init auto, session status change, ".concat(g.RECONNECTING,", ").concat((new Date).valueOf())),this.sessionStatus=g.RECONNECTING,this.emit(u,{event:c.SESSION_RECONNECTING,data:{sessionId:this.sessionId}})):f===y.PERSIST?(sg.log("CALL init persistence, session status change, ".concat(g.PERSISTING,", ").concat((new Date).valueOf())),this.sessionStatus=g.PERSISTING,this.emit(u,{event:c.SESSION_PERSISTING,data:{sessionId:this.sessionId}})):(sg.log("CALL init not auto, session status change, ".concat(g.CONNECTING,", ").concat((new Date).valueOf())),this.sessionStatus=g.CONNECTING,this.emit(u,{event:c.SESSION_CONNECTING,data:{sessionId:this.sessionId}})),m=this.getInitPreParams(p),v=m.externalToken,b=m.externalSessionId,_=m.customAgentName,k=m.cobrowse_code,w=m.sessionId,e.next=17,this.checkFrameLevel();case 17:if(e.sent){e.next=23;break}return sg.log("CALL frame level, session status change, ".concat(g.CONNECT_FAILED)),this.sessionStatus=g.CONNECT_FAILED,this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.FRAME_LEVEL_NOT_READY],code:se.FRAME_LEVEL_NOT_READY}}),e.abrupt("return");case 23:if(Vt.isToppest||Vt.isCrossOriginFromToppestWin()||sg.setReportUrl(""),S=null,f!==y.START){e.next=35;break}return e.next=28,Qf.handleDuplicateSession({key:"com_session_existing",onError:function(){Y.sessionStatus=g.NOT_CREATED,Y.emit(u,{event:c.SESSION_ERROR,data:{errorMsg:Se[se.DUPLICATE_SESSION],code:se.DUPLICATE_SESSION}})}});case 28:return e.next=30,this._startSession(v,k);case 30:S=e.sent,lg.log(t.PerformanceLogEnum.SessionStartFinish,"session start finish ::_startSession (sessionState)"),lg.logRange(t.PerformanceLogEnum.CreateSessionEnd,t.PerformanceLogEnum.SessionStartFinish),e.next=63;break;case 35:if(f!==y.JOIN){e.next=43;break}return e.next=38,this._joinSession(v,b,w,_);case 38:S=e.sent,lg.log(t.PerformanceLogEnum.SessionStartFinish,"session start finish ::_joinSession (sessionState)"),lg.logRange(t.PerformanceLogEnum.CreateSessionEnd,t.PerformanceLogEnum.SessionStartFinish),e.next=63;break;case 43:if(f!==y.AUTO){e.next=51;break}return e.next=46,this._autojoinSession(v,b);case 46:S=e.sent,lg.log(t.PerformanceLogEnum.SessionStartFinish,"session start finish ::_autojoinSession (sessionState)"),lg.logRange(t.PerformanceLogEnum.CreateSessionEnd,t.PerformanceLogEnum.SessionStartFinish),e.next=63;break;case 51:if(f!==y.PERSIST){e.next=63;break}return e.next=54,this._autojoinSession(v,b);case 54:if(S=e.sent,lg.log(t.PerformanceLogEnum.SessionStartFinish,"session start finish ::_persistenceJoinSession (sessionState)"),lg.logRange(t.PerformanceLogEnum.CreateSessionEnd,t.PerformanceLogEnum.SessionStartFinish),!(null===(a=null===(r=null===(n=this.options.sessionConfig)||void 0===n?void 0:n.session_settings)||void 0===r?void 0:r.multi_tab_session_persistence)||void 0===a?void 0:a.enable)||!S||(null===(s=null==S?void 0:S.sessionSettings.multi_tab_session_persistence)||void 0===s?void 0:s.enable)){e.next=63;break}return sg.log("cancel connecting: multi tab persistence is closed"),o.publicStore.setState({callType:y.PERSIST,tipsContent:{forceClose:!0}}),wp.destroy(),this.destroy(),e.abrupt("return");case 63:if(wp.setParticipantType((null==S?void 0:S.currentParticipant.participant_type)||""),this.checkIfToContinueInit(d)){e.next=67;break}return this.cancel(),e.abrupt("return");case 67:if(S){e.next=71;break}return sg.error("sessionState not exist"),np.setIsCobrowseLocked(!1),e.abrupt("return");case 71:if(this.sessionStatus!==g.CANCELING){e.next=75;break}return sg.log("CALL end after call Web, end already trigger, ".concat((new Date).valueOf())),this.end(),e.abrupt("return");case 75:if(E=(C=S||{}).sessionId,T=C.currentParticipant,O=C.sessionRegions,j=C.sessionSettings,x=C.cobrowseCode,R=C.startUrl,I=C.split_wss,A=C.ntp_deviation,D=C.ntp_deviation_recent_count,N=C.ntp_send_interval,P=C.mutation_send_interval,L=C.sdk_config,z=(M=L||{}).gateway_endpoint,void 0!==(F=M.enable_zcb_client_log)&&sg.setLaplaceEnabled(F),z&&(Vt.isToppest||Vt.isCrossOriginFromToppestWin())&&sg.setReportUrl(z),E){e.next=85;break}return B="join flow failed,can not get sessionId from web session status",sg.error(B),this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.SESSION_ID_NOT_FOUND],code:se.SESSION_ID_NOT_FOUND}}),t.cbsConnectionLog({participantType:null==T?void 0:T.participant_type,result:0,failedType:"INIT_SESSION_INIT_NON_SESSIONID",message:B}),e.abrupt("return");case 85:if(sg.log("current sessionId, sessionId:".concat(E)),T&&O){e.next=92;break}return U="join flow failed,can not get currentParticipant or sessionRegions",sg.error(U),this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.EMPTY_PING_LIST],code:se.EMPTY_PING_LIST}}),t.cbsConnectionLog({sessionId:E,result:0,failedType:"INIT_SESSION_INIT_NON_PARTICIPANT",message:U}),e.abrupt("return");case 92:(null===(l=null==S?void 0:S.sessionSettings.multi_tab_session_persistence)||void 0===l?void 0:l.enable)&&(null==S?void 0:S.currentParticipant.participant_type)===It.LEADER&&this.checkIfToContinueInit(d)&&(V=_defineProperty2(_defineProperty2(_defineProperty2({},"sid",(null==S?void 0:S.sessionId)||""),"atk",(null===(h=null==S?void 0:S.sessionRegions)||void 0===h?void 0:h.auth_token)||""),"pcode",(null==S?void 0:S.pinCode)||(null==S?void 0:S.cobrowseCode)||""),(W=wp.getSessionCookie("roles")||[]).includes(It.LEADER)||W.push(It.LEADER),V.roles=W,wp.setSessionCookie(V)),np.setSession({sessionId:E,userId:null==T?void 0:T.user_id,participantType:null==T?void 0:T.participant_type}),o.publicStore.setState({splitWSS:I}),Vt.on(zt.START_RECORD,(function(){setTimeout((function(){Vt.postMessageToIframes({eventType:"RECORD_CONFIG",data:{frameDelay:P}})}))})),G=(j||{}).recording,this.recordingManager.setIsRecordingEnable((null==G?void 0:G.enable)||!0),H=T.participant_type,window.CBS_SessionId=E,this.sessionId=E,this.authToken=O.auth_token,this.sessionSettings=j,this.currentParticipant=T,this.transferLayerSpecialConfig={split_wss:I,ntp_deviation:A,ntp_deviation_recent_count:D,ntp_send_interval:N},this.startUrl=R,H===It.LEADER?(window.isViewer=!1,this._startLeader(O,E,+(f===y.PERSIST))):H===It.FOLLOWER?(x&&o.publicStore.setState({cobrowseCode:x}),window.isViewer=!0,this._startFollower(O,E)):(sg.error("can not find role"),this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.PARTICIPANT_TYPE_ERROR],code:se.PARTICIPANT_TYPE_ERROR}})),lg.log(t.PerformanceLogEnum.AfterJoined),lg.logRange(t.PerformanceLogEnum.CallSessionInit,t.PerformanceLogEnum.AfterJoined);case 109:case"end":return e.stop()}}),e,this)})))}},{key:"_startSession",value:function(e,n){return pt(this,void 0,void 0,_regeneratorRuntime().mark((function o(){var r,a,s,l,h,d;return _regeneratorRuntime().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(o.prev=0,i.comAuthController){o.next=6;break}return this.sessionStatus=g.CONNECT_FAILED,this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.SESSION_CREATE_FAILED],code:se.SESSION_CREATE_FAILED}}),sg.error("CALL _startSession,can not find auth module, session status change, ".concat(g.CONNECT_FAILED)),o.abrupt("return");case 6:return lg.log(t.PerformanceLogEnum.CreateSessionStart,"create session : start & get pinCode"),lg.logRange(t.PerformanceLogEnum.ClientInit,t.PerformanceLogEnum.CreateSessionStart),o.next=10,i.comAuthController.createSession({start_url:location.origin+location.pathname,externalToken:e,sessionConfig:this.options.sessionConfig,cobrowse_code:n,sdk_version:Yt()});case 10:if(r=o.sent,a=r.pinCode,s=r.sessionId,this.sessionId=s,lg.log(t.PerformanceLogEnum.CreateSessionEnd,"create session : end & get pinCode"),lg.logRange(t.PerformanceLogEnum.CreateSessionStart,t.PerformanceLogEnum.CreateSessionEnd),this.sessionStatus!==g.CANCELING){o.next=21;break}return sg.error("start session, session is canceling, end already trigger"),np.setIsCobrowseLocked(!1),this.end(),o.abrupt("return");case 21:return this.pinCode=a||"",o.next=24,i.comAuthController.getSessionStatus({sessionId:s,isCallByZCB:!0});case 24:return l=o.sent,o.abrupt("return",l);case 28:return o.prev=28,o.t0=o.catch(0),this.sessionStatus=g.CONNECT_FAILED,h="Call _startSession session status call failed, error: ".concat(JSON.stringify(o.t0)),sg.error(h),t.cbsConnectionLog({sessionId:this.sessionId,result:0,failedType:"INIT_SESSION_START_SESSION_STATUS",message:h}),d=null===o.t0||void 0===o.t0?void 0:o.t0.code,Ce[d]?this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:at[d],code:d}}):this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.UNKNOWN_SERVICE_EXCEPTION],code:se.UNKNOWN_SERVICE_EXCEPTION}}),o.abrupt("return",null);case 37:case"end":return o.stop()}}),o,this,[[0,28]])})))}},{key:"_joinSession",value:function(e,n,o,r){return pt(this,void 0,void 0,_regeneratorRuntime().mark((function a(){var s,l;return _regeneratorRuntime().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:if(a.prev=0,i.comAuthController){a.next=6;break}return this.sessionStatus=g.CONNECT_FAILED,this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.SESSION_CREATE_FAILED],code:se.SESSION_CREATE_FAILED}}),sg.error("CALL _joinSession,can not find auth module, session status change, ".concat(g.CONNECT_FAILED)),a.abrupt("return");case 6:if(!n){a.next=12;break}return a.next=9,i.comAuthController.joinSession({start_url:location.origin,externalToken:e,pinCode:n,customAgentName:r});case 9:s=a.sent,a.next=15;break;case 12:return a.next=14,i.comAuthController.joinSessionbySessionId({externalToken:e,sessionId:o});case 14:s=a.sent;case 15:return this.sessionId=null==s?void 0:s.sessionId,a.abrupt("return",s);case 19:return a.prev=19,a.t0=a.catch(0),this.sessionStatus=g.CONNECT_FAILED,sg.error("CALL _joinSession,session status call failed, error: ".concat(JSON.stringify(a.t0))),t.cbsConnectionLog({sessionId:this.sessionId,result:0,failedType:"INIT_SESSION_JOIN_SESSION_STATUS",message:a.t0}),l=null===a.t0||void 0===a.t0?void 0:a.t0.code,Ce[l]?this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:at[l],code:l}}):this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.UNKNOWN_SERVICE_EXCEPTION],code:se.UNKNOWN_SERVICE_EXCEPTION}}),a.abrupt("return",null);case 27:case"end":return a.stop()}}),a,this,[[0,19]])})))}},{key:"_autojoinSession",value:function(e,n){return pt(this,void 0,void 0,_regeneratorRuntime().mark((function o(){var r,a;return _regeneratorRuntime().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(o.prev=0,i.comAuthController){o.next=7;break}return this.agentJoined=!1,this.sessionStatus=g.CONNECT_FAILED,this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.SESSION_CREATE_FAILED],code:se.SESSION_CREATE_FAILED}}),sg.error("CALL _autojoinSession,can not find auth module, session status change, ".concat(g.CONNECT_FAILED)),o.abrupt("return");case 7:return o.next=9,i.comAuthController.autoJoinSession({sessionId:n,externalToken:e});case 9:return r=o.sent,o.abrupt("return",r);case 13:return o.prev=13,o.t0=o.catch(0),sg.error("CALL _autojoinSession,session status call failed, error: ".concat(JSON.stringify(o.t0))),t.cbsConnectionLog({result:0,failedType:"INIT_SESSION_AUTO_JOIN_SESSION_STATUS",message:o.t0}),this.sessionStatus=g.CONNECT_FAILED,a=null===o.t0||void 0===o.t0?void 0:o.t0.code,Ce[a]?this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:at[a],code:a}}):this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:Se[se.UNKNOWN_SERVICE_EXCEPTION],code:se.UNKNOWN_SERVICE_EXCEPTION}}),o.abrupt("return",null);case 21:case"end":return o.stop()}}),o,this,[[0,13]])})))}},{key:"_startLeader",value:function(e,t,i){var r,a,s,l,h,d,f,p,g=this;sg.log("customer _startLeader, start create channel, ".concat((new Date).valueOf()));var m=this.options.host;this.isTop?(this.transferLayerObserverInstance=new n.TransferLayerObserver({roomId:t,sessionRegions:e,host:m,participantType:null===(r=this.currentParticipant)||void 0===r?void 0:r.participant_type,startUrl:this.startUrl,persistence:i,config:this.transferLayerSpecialConfig}),this.recordingManager.setTransferLayerObserverInstance(this.transferLayerObserverInstance),qn.setAnotationInstance(new qf({isCommonSDK:!0,isLeader:!0,enableToolbar:!1,transferLayerObserverInstance:this.transferLayerObserverInstance,userId:null!==(s=null===(a=this.currentParticipant)||void 0===a?void 0:a.user_id)&&void 0!==s?s:"",vanishingExistingTimeout:this.sessionSettings.pen_vanish_time,participantType:null===(l=this.currentParticipant)||void 0===l?void 0:l.participant_type,cbsInteractionLatencyLog:n.cbsInteractionLatencyLog})),qn.use(Xn.initCanvasAndToolbar),qn.use(Xn.hideOpenBtn,!0),o.publicStore.setState({anotationManager:qn,AnotationMethods:Xn}),Tp.init(this.transferLayerObserverInstance,null!==(d=null===(h=this.currentParticipant)||void 0===h?void 0:h.user_id)&&void 0!==d?d:"",null!==(p=null===(f=this.currentParticipant)||void 0===f?void 0:f.user_name)&&void 0!==p?p:"",!0,"sdk"),this.recordingManager.updateRecordingConsentAndMonitorSettings(this.sessionSettings),this.handleCochannelListener(),this.transferLayerObserverInstance.registerMessageHandler("recv-remote-control-request",(function(e,t){if(t.eventType===Q.REMOTE_CONTROL_REQUEST){var n=t.data,i=n.userId,o=n.sessionId;if(!i)return;g.remoteControlApproveId=i,g.emit(u,{event:c.REMOTE_CONTROL_REQUEST,data:{sessionId:o,remoteControlApproveId:i}}),sg.log("remote assist REMOTE_CONTROL_RESPONSE")}else t.eventType===Q.REMOTE_CONTROL_CANCEL?(g.emit(u,{event:c.REMOTE_CONTROL_CANCEL,data:{}}),sg.log("remote assist REMOTE_CONTROL_CANCEL")):t.eventType===Q.REMOTE_CONTROL_GIVE_UP?(g.emit(u,{event:c.REMOTE_CONTROL_GIVE_UP,data:{}}),sg.log("remote assist REMOTE_CONTROL_GIVE_UP")):t.eventType===Q.REMOTE_CONTROL_STATUS&&(g.emit(u,{event:c.REMOTE_CONTROL_STATUS,data:{status:t.data.status}}),sg.log("remote assist REMOTE_CONTROL_STATUS"))})),this.transferLayerObserverInstance.start(this.callType===y.AUTO)):sg.log("customer _startLeader skip, not top")}},{key:"_startFollower",value:function(e,t){var i,r,a,s,l,h,d,f,p,g,m,v,b=this,_=this.options.host;sg.log("agent _startFollower, start create channel, ".concat((new Date).valueOf())),this.transferLayerObserverInstance=new n.TransferLayerObserver({sessionRegions:e,roomId:t,host:_,participantType:null===(i=this.currentParticipant)||void 0===i?void 0:i.participant_type,startUrl:this.startUrl,config:this.transferLayerSpecialConfig}),this.recordingManager.setTransferLayerObserverInstance(this.transferLayerObserverInstance),this.handleCochannelListener(),this.transferLayerObserverInstance.start(this.callType===y.AUTO),Tp.init(this.transferLayerObserverInstance,null!==(a=null===(r=this.currentParticipant)||void 0===r?void 0:r.user_id)&&void 0!==a?a:"",null!==(l=null===(s=this.currentParticipant)||void 0===s?void 0:s.user_name)&&void 0!==l?l:"",!1,"sdk"),this.recordingManager.updateRecordingConsentAndMonitorSettings(this.sessionSettings),qn.setAnotationInstance(new qf({isCommonSDK:!0,enableToolbar:null===(d=null===(h=this.sessionSettings)||void 0===h?void 0:h.allow_agent_annotation)||void 0===d||d,transferLayerObserverInstance:this.transferLayerObserverInstance,userId:null!==(p=null===(f=this.currentParticipant)||void 0===f?void 0:f.user_id)&&void 0!==p?p:"",vanishingExistingTimeout:this.sessionSettings.pen_vanish_time,cbsInteractionLatencyLog:n.cbsInteractionLatencyLog})),o.publicStore.setState({anotationManager:qn,AnotationMethods:Xn,remoteControlConfig:null===(g=this.sessionSettings)||void 0===g?void 0:g.remote_assist}),null===(m=this.transferLayerObserverInstance)||void 0===m||m.registerMessageHandler("recv-remote-control-request",(function(e,t){var n;t.eventType===Q.REMOTE_CONTROL_REQUEST?sg.log("remote assist REMOTE_CONTROL_REQUEST"):t.eventType===Q.REMOTE_CONTROL_RESPONSE?(b.emit(u,{event:c.REMOTE_CONTROL_RESPONSE,data:{}}),sg.log("remote assist REMOTE_CONTROL_RESPONSE ".concat(null===(n=b.sessionSettings)||void 0===n?void 0:n.remote_assist))):t.eventType===Q.REMOTE_CONTROL_TAKE_BACK?(b.emit(u,{event:c.REMOTE_CONTROL_TAKE_BACK,data:{}}),sg.log("remote assist REMOTE_CONTROL_TAKE_BACK")):t.eventType===Q.REMOTE_CONTROL_REJECT?(b.emit(u,{event:c.REMOTE_CONTROL_REJECT,data:{}}),sg.log("remote assist REMOTE_CONTROL_REJECT")):t.eventType===Q.REMOTE_CONTROL_STATUS&&(b.emit(u,{event:c.REMOTE_CONTROL_STATUS,data:{status:t.data.status}}),sg.log("remote assist REMOTE_CONTROL_STATUS"))})),null===(v=this.transferLayerObserverInstance)||void 0===v||v.registerMessageHandler("recv-viewport-size",(function(e,t){if(t.eventType===Q.INTERACTION){var n=t.data.event.type,i=t.data.event.data;(null==i?void 0:i.source)!==F.ViewportResize&&n!==z.Meta||o.publicStore.setState({viewportWidth:i.width,viewportHeight:i.height})}}));var k=function(){var e,t,n;qn.use(Xn.initCanvasAndToolbar),qn.use(Xn.updateCanvasSize),b.emit(u,{event:c.START_REPLAY,data:{sessionId:b.sessionId,user:{id:null===(e=b.sessionLeader)||void 0===e?void 0:e.userId,name:Bn(null!==(n=null===(t=b.sessionLeader)||void 0===t?void 0:t.name)&&void 0!==n?n:"")}}})};Vt.on(zt.START_REPLAY,k),this.removeFrameLevelTracerListener=function(){Vt.off(zt.START_REPLAY,k)}}},{key:"handleCochannelListener",value:function(){var e=this;if(!this.transferLayerObserverInstance)return sg.error("[No-Error]can not find transferLayer"),void np.setIsCobrowseLocked(!1);this.transferLayerObserverInstance.on(u,(function(n){return pt(e,void 0,void 0,_regeneratorRuntime().mark((function e(){var i,r,a,s,h,d,f,p,m,v,y,b,_,k,w,S,C,E,T,O,x,I,A,D,N,P,L,M,z,F,B,U,V,W=this;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n.event!==l.USER_ROSTER){e.next=7;break}N=n.data,P=N.add,L=N.remove,M=N.update,(null==P?void 0:P.length)&&(sg.log("trigger user roster add"),P.forEach((function(e){var n,i,r,a,s,l;if(e.participantType===It.LEADER){var h=Bn(e.name);(null===(n=W.currentParticipant)||void 0===n?void 0:n.participant_type)===It.LEADER&&(lg.log(t.PerformanceLogEnum.LeaderJoined,"zcb leader join success"),lg.logRange(t.PerformanceLogEnum.WSConnectedSuccess,t.PerformanceLogEnum.LeaderJoined),Vt.init({isCoreFrame:!0,role:Nt.LEADER}),sg.log("trigger start record webpage"),Vt.notifyCoreStartRecord({sessionId:Bt.getCoBrowsingConfig("sessionId")||window.CBS_SessionId,sessionSettings:Object.assign({},W.sessionSettings,{ignoredElements:W.options.ignoredElements})}),qn.use(Xn.customerRequestFullDataReplay,P)),W.sessionLeader=e,o.publicStore.setState({leaderName:h}),W.emit(u,{event:c.CUSTOMER_JOINED,data:{sessionId:W.sessionId,callType:W.callType,user:{id:e.userId,name:h}}}),W.persistence=e.persistence,e.persistence&&W.emit(u,{event:c.CUSTOMER_TRANSFERRED,data:{sessionId:W.sessionId,version:Yt(),user:{id:e.userId,name:h}}})}if(e.participantType===It.FOLLOWER){var d=Bn(e.name);if((null===(i=W.currentParticipant)||void 0===i?void 0:i.participant_type)===It.LEADER&&o.publicStore.setState({toolbarHidden:!0}),lg.log(t.PerformanceLogEnum.FollowerJoined,"zcb follower join success"),lg.logRange(t.PerformanceLogEnum.WSConnectedSuccess,t.PerformanceLogEnum.FollowerJoined),W.agentJoined=!0,W.emit(u,{event:c.AGENT_JOINED,data:{sessionId:W.sessionId,callType:W.callType,user:{id:e.userId,name:d}}}),W.agentList.push({name:e.name,id:e.userId}),o.publicStore.setState({followerName:d,agentList:W.agentList}),(null===(s=null===(a=null===(r=W.options.sessionConfig)||void 0===r?void 0:r.session_settings)||void 0===a?void 0:a.multi_tab_session_persistence)||void 0===s?void 0:s.enable)&&(null===(l=W.currentParticipant)||void 0===l?void 0:l.participant_type)===It.LEADER){var f=wp.getSessionCookie("roles")||[];f.includes(It.FOLLOWER)||(f.push(It.FOLLOWER),wp.setSessionCookie({roles:f}))}}}))),(null==M?void 0:M.length)&&(sg.log("trigger user roster update"),M.forEach((function(e){var t,n=Bn(null!==(t=e.name)&&void 0!==t?t:"");W.emit(u,{event:c.PARTICIPANT_CHANGED,data:{sessionId:W.sessionId,user:{id:e.userId,name:n}}})}))),(null==L?void 0:L.length)&&(sg.log("trigger user roster remove"),L.forEach((function(e){var t,n=Bn(e.name);if(e.participantType===It.LEADER&&(e.code===j.LEAVE_ROOM?W.emit(u,{event:c.CUSTOMER_LEFT,data:{sessionId:W.sessionId,user:{id:e.userId,name:n}}}):e.code===j.DISCONNECTED&&W.emit(u,{event:c.CUSTOMER_DISCONNECTED,data:{sessionId:W.sessionId,user:{id:e.userId,name:n}}})),e.participantType===It.FOLLOWER){var i=Bn(e.name);W.agentList=W.agentList.filter((function(t){return t.id!==e.userId})),o.publicStore.setState({agentList:W.agentList}),e.code===j.LEAVE_ROOM?W.emit(u,{event:c.AGENT_LEFT,data:{sessionId:W.sessionId,user:{id:e.userId,name:i}}}):e.code===j.DISCONNECTED&&(null===(t=W.currentParticipant)||void 0===t?void 0:t.participant_type)!==It.FOLLOWER&&W.emit(u,{event:c.AGENT_DISCONNECTED,data:{sessionId:W.sessionId,user:{id:e.userId,name:i}}})}}))),e.next=21;break;case 7:if(n.event!==l.SESSION_STARTED){e.next=20;break}if(this.isCurrentReconnectSession=this.sessionStatus===g.RECONNECTING,sg.log("SESSION_STARTED, callType:".concat(this.callType,", type:").concat(null===(i=this.currentParticipant)||void 0===i?void 0:i.participant_type,",isReconnect:").concat(this.isCurrentReconnectSession,", ").concat((new Date).valueOf())),this.sessionStatus!==g.CANCELING){e.next=14;break}return sg.log("CALL end after session started, end already trigger, ".concat((new Date).valueOf())),"leave"===this.cancelFrom?this.leave():this.end(),e.abrupt("return");case 14:this.sessionStatus=g.STARTED,this.emit(u,{event:c.SESSION_STARTED,data:Wt()?{sessionId:this.sessionId,isReconnect:this.isCurrentReconnectSession}:{sessionId:this.sessionId}}),sg.log("SESSION_STARTED, session status change, ".concat(g.STARTED,", ").concat((new Date).valueOf())),(null===(r=this.currentParticipant)||void 0===r?void 0:r.participant_type)===It.LEADER&&this.emit(u,{event:c.PINCODE_UPDATED,data:{pinCode:this.pinCode,sessionId:this.sessionId}}),e.next=21;break;case 20:n.event===l.SESSION_CLOSED?(this.sessionStatus=g.NOT_CREATED,z=n.data.code,F=n.data.reason,sg.log("SESSION_CLOSED, session status change, ".concat(g.NOT_CREATED,",code:").concat(z,", reason:").concat(F,", ").concat((new Date).valueOf())),z in j?this.emit(u,{event:c.SESSION_LEFT,data:{sessionId:this.sessionId,reason:q[z]}}):this.emit(u,{event:c.SESSION_ENDED,data:{sessionId:this.sessionId,reason:R[z]}}),this.destroy(z!==j.DISCONNECTED)):n.event===l.SESSION_PERSISTED?(sg.log("SESSION_PERSISTED, session status change, code:".concat(null===(a=null==n?void 0:n.data)||void 0===a?void 0:a.code,", reason:").concat(null===(s=null==n?void 0:n.data)||void 0===s?void 0:s.reason,", ").concat((new Date).valueOf())),"visible"===document.visibilityState&&sg.log("SESSION_PERSISTED, current page is visible",["SESSION_PERSISTED_VISIBLE"]),this.emit(u,{event:c.CURRENT_USER_TRANSFER,data:{state:H.TRANSFER_OUT_SUCCESS,sessionId:this.sessionId,version:Yt(),user:{id:null===(h=this.sessionLeader)||void 0===h?void 0:h.userId,name:Bn(null!==(f=null===(d=this.sessionLeader)||void 0===d?void 0:d.name)&&void 0!==f?f:"")}}}),this.destroy(!1)):n.event===l.ERROR?(sg.log("SESSION_ERROR, session status change, code:".concat(null===(p=null==n?void 0:n.data)||void 0===p?void 0:p.code,", errorMsg:").concat(null===(m=null==n?void 0:n.data)||void 0===m?void 0:m.errorMsg,", ").concat((new Date).valueOf())),Wn(null===(v=n.data)||void 0===v?void 0:v.code)?(this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:null===(y=null==n?void 0:n.data)||void 0===y?void 0:y.errorMsg,code:null===(b=null==n?void 0:n.data)||void 0===b?void 0:b.code}}),this.destroy(!1)):(this.sessionStatus=g.CONNECT_FAILED,this.emit(u,{event:c.SESSION_ERROR,data:{sessionId:this.sessionId,errorMsg:null===(_=null==n?void 0:n.data)||void 0===_?void 0:_.errorMsg,code:null===(k=null==n?void 0:n.data)||void 0===k?void 0:k.code}}),this.destroy())):n.event===l.SESSION_CONNECTING?(this.sessionStatus=g.CONNECTING,this.emit(u,{event:c.SESSION_CONNECTING,data:{sessionId:this.sessionId}})):n.event===l.SESSION_RECONNECTING?(this.agentList=[],o.publicStore.setState({agentList:this.agentList}),this.agentJoined&&(this.sessionStatus=g.RECONNECTING,this.emit(u,{event:c.SESSION_RECONNECTING,data:{sessionId:this.sessionId}}))):n.event===l.ROOM_ROSTER?(B=n.data.isRecording,U=n.data.isRecordingPaused,V=this.recordingManager.getRecordingNotifyStatus({isRecording:B,isRecordingPaused:U}),sg.log("ROOM_ROSTER, status update"),V.started&&this.emit(u,{event:c.RECORD_STARTED,data:{sessionId:this.sessionId}}),V.stopped&&this.emit(u,{event:c.RECORD_STOPPED,data:{sessionId:this.sessionId}}),V.paused&&this.emit(u,{event:c.RECORD_PAUSED,data:{sessionId:this.sessionId}}),V.resumed&&this.emit(u,{event:c.RECORD_RESUMED,data:{sessionId:this.sessionId}})):n.event===l.START_RECORD_RESPONSE?this.recordingManager.startRecordCallBack(null===(w=n.data)||void 0===w?void 0:w.success):n.event===l.STOP_RECORD_RESPONSE?this.recordingManager.stopRecordCallBack(null===(S=n.data)||void 0===S?void 0:S.success):n.event===l.PAUSE_RECORD_RESPONSE?this.recordingManager.pauseRecordCallBack(null===(C=n.data)||void 0===C?void 0:C.success):n.event===l.RESUME_RECORD_RESPONSE?this.recordingManager.resumeRecordCallBack(null===(E=n.data)||void 0===E?void 0:E.success):n.event===l.RECORD_APPROVE_REQUEST?this.recordingManager.showRecordingLegalConsentDialog():n.event===l.USER_BE_HOLD_STATUS_CHANGE?(null===(T=n.data)||void 0===T?void 0:T.bHold)?(this.isBHold=!0,(null===(O=n.data)||void 0===O?void 0:O.bHoldType)===re.RECORD_LEGAL_CONSENT&&this.recordingManager.showRecordingLegalConsentDialog()):this.isBHold=!1:n.event===l.LEADER_PAGE_VISIBILITY&&this.emit(u,{event:c.CUSTOMER_FOCUS_LOST,data:{isLost:!(null===(x=null==n?void 0:n.data)||void 0===x?void 0:x.visible),sessionId:this.sessionId,version:Yt(),user:{id:null===(I=this.sessionLeader)||void 0===I?void 0:I.userId,name:Bn(null!==(D=null===(A=this.sessionLeader)||void 0===A?void 0:A.name)&&void 0!==D?D:"")}}});case 21:case"end":return e.stop()}}),e,this)})))}))}},{key:"pause",value:function(){}},{key:"resume",value:function(){}},{key:"cancel",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(sg.log("switch tab: cancel connecting, session status: ".concat(g.STARTED)),this.sessionStatus!==g.STARTED){console.log("cancelling connect session"),this.sessionStatus=g.CANCELING;var t=Wt()?"customer":"agent",n=S.CANCEL_SESSION;sg.log("CALL cancel, reason: ".concat(n,", sessionStatus:").concat(this.sessionStatus,", from:").concat(t,", ").concat((new Date).valueOf())),this.initNo++,this.destroy(e)}}},{key:"end",value:function(){var e,t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],n=Wt()?"customer":"agent",o=this.sessionStatus===g.CANCELING?S.CANCEL_SESSION:S.END_SESSION;if(sg.log("CALL end, reason: ".concat(o,", sessionStatus:").concat(this.sessionStatus,", from:").concat(n,", emitMsg: ").concat(t,", ").concat((new Date).valueOf())),i.sessionController.forbidLocalSession(),this.sessionStatus===g.CONNECTING||this.sessionStatus===g.RECONNECTING)return this.sessionStatus===g.CONNECTING&&wp.shouldToClearWhenError()&&(i.delLocalSession(),wp.clearToInit()),this.cancelFrom="end",this.emit(u,{event:c.SESSION_CANCELING,data:{sessionId:this.sessionId,reason:S.END_SESSION,preSessionStatus:this.sessionStatus}}),this.sessionStatus=g.CANCELING,void sg.log("session status change, ".concat(g.CANCELING));null===(e=this.transferLayerObserverInstance)||void 0===e||e.sendMessage({eventType:Q.END_ROOM,data:{sessionId:this.sessionId}}),this.cancelFrom="",this.destroy(),t&&this.emit(u,{event:c.SESSION_ENDED,data:{sessionId:this.sessionId,reason:o,from:n}})}},{key:"leave",value:function(){var e,t,n=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];if(sg.log("CALL left, reason: ".concat(x.LEAVE_SESSION,", sessionStatus:").concat(this.sessionStatus,", ").concat((new Date).valueOf())),this.sessionStatus===g.CONNECTING||this.sessionStatus===g.RECONNECTING)return this.cancelFrom="leave",this.emit(u,{event:c.SESSION_CANCELING,data:{sessionId:this.sessionId,reason:x.LEAVE_SESSION,preSessionStatus:this.sessionStatus}}),this.sessionStatus=g.CANCELING,sg.log("session status change, ".concat(g.CANCELING)),void(this.isBHold&&(null===(e=this.transferLayerObserverInstance)||void 0===e||e.sendMessage({eventType:Q.LEAVE_ROOM,data:void 0})));null===(t=this.transferLayerObserverInstance)||void 0===t||t.sendMessage({eventType:Q.LEAVE_ROOM,data:void 0}),this.cancelFrom="",this.destroy(),n&&this.emit(u,{event:c.SESSION_LEFT,data:{sessionId:this.sessionId,reason:x.LEAVE_SESSION}})}},{key:"requestBrowserControl",value:function(e){var t,n,i,o,r,a,s,l,c;if(null===(n=null===(t=this.sessionSettings)||void 0===t?void 0:t.remote_assist)||void 0===n?void 0:n.enable)switch(e){case"REMOTE_CONTROL_REQUEST":c=Q.REMOTE_CONTROL_REQUEST,null===(i=this.transferLayerObserverInstance)||void 0===i||i.sendMessage({eventType:c,data:{sessionId:this.sessionId}});break;case"REMOTE_CONTROL_GIVE_UP":c=Q.REMOTE_CONTROL_GIVE_UP,null===(o=this.transferLayerObserverInstance)||void 0===o||o.sendMessage({eventType:c,data:{sessionId:this.sessionId}});break;case"REMOTE_CONTROL_TAKE_BACK":c=Q.REMOTE_CONTROL_TAKE_BACK,null===(r=this.transferLayerObserverInstance)||void 0===r||r.sendMessage({eventType:c,data:{sessionId:this.sessionId,userId:this.remoteControlApproveId}});break;case"REMOTE_CONTROL_RESPONSE":c=Q.REMOTE_CONTROL_RESPONSE,null===(a=this.transferLayerObserverInstance)||void 0===a||a.sendMessage({eventType:c,data:{sessionId:this.sessionId,approveId:this.remoteControlApproveId}});break;case"REMOTE_CONTROL_REJECT":c=Q.REMOTE_CONTROL_REJECT,null===(s=this.transferLayerObserverInstance)||void 0===s||s.sendMessage({eventType:c,data:{sessionId:this.sessionId,userId:this.remoteControlApproveId}});break;case"REMOTE_CONTROL_CANCEL":c=Q.REMOTE_CONTROL_CANCEL,null===(l=this.transferLayerObserverInstance)||void 0===l||l.sendMessage({eventType:c,data:{sessionId:this.sessionId}});break;default:return void console.error("Unknown remote control type: ".concat(e))}}},{key:"leaderPageVisibility",value:function(e){var t;null===(t=this.transferLayerObserverInstance)||void 0===t||t.sendMessage({eventType:Q.LEADER_PAGE_VISIBILITY,data:{visible:e}})}},{key:"updateFlyingCursorPosition",value:function(e){Tp.updatePosition(e)}},{key:"revokeBrowserControl",value:function(){}},{key:"returnBrowserControl",value:function(){}},{key:"startRecord",value:function(){this.sessionStatus===g.STARTED?this.recordingManager.startRecord():sg.warn("startRecord failed session not started")}},{key:"stopRecord",value:function(){this.sessionStatus===g.STARTED?this.recordingManager.stopRecord():sg.warn("stopRecord failed session not started")}},{key:"pauseRecord",value:function(){this.sessionStatus===g.STARTED?this.recordingManager.pauseRecord():sg.warn("pauseRecord failed session not started")}},{key:"resumeRecord",value:function(){this.sessionStatus===g.STARTED?this.recordingManager.resumeRecord():sg.warn("resumeRecord failed session not started")}},{key:"responseRecordingLegalConsent",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.recordingManager.responseRecordingLegalConsent(e,t)}},{key:"destroy",value:function(){var e=this,n=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.destroying=!0,n&&wp.shouldToClearWhenError()&&(i.delLocalSession(),wp.clearToInit()),this.agentJoined=!1,this.isCurrentReconnectSession=!1,this.agentList=[],o.publicStore.setState({agentList:this.agentList}),this.sessionStatus=g.NOT_CREATED,sg.log("CALL destroy, session status change, ".concat(g.NOT_CREATED,", ").concat((new Date).valueOf())),null===i.comAuthController||void 0===i.comAuthController||i.comAuthController.stopRefreshZCBTokenTimer(),qn.use(Xn.endAnotation),Tp.clearFlyingCursor(),this.sessionId&&Vt.unbindReadyTab(this.sessionId),Vt.notifyCoreStopRecord(),this.sessionLeader=null,lg.log(t.PerformanceLogEnum.SessionDestroy),lg.logRange(t.PerformanceLogEnum.AfterJoined,t.PerformanceLogEnum.SessionDestroy),setTimeout((function(){var t,n;null===(t=e.removeFrameLevelTracerListener)||void 0===t||t.call(e),null===(n=e.transferLayerObserverInstance)||void 0===n||n.stop(),e.destroying=!1}),0)}},{key:"sessionFailOver",value:function(){var e;null===(e=this.transferLayerObserverInstance)||void 0===e||e.channelFailOver()}}]),a}(mt);!function(e){e[e.info=0]="info",e[e.debug=1]="debug",e[e.log=2]="log",e[e.warn=3]="warn",e[e.error=4]="error"}(rg||(rg={})),function(e){e.afterInit="afterInit",e.beforeLog="beforeLog",e.afterLog="afterLog",e.beforeReport="beforeReport",e.afterReport="afterReport"}(ag||(ag={}));var ug={},hg={get exports(){return ug},set exports(e){ug=e}};var dg,fg={},pg={get exports(){return fg},set exports(e){fg=e}},gg=ti(Object.freeze({__proto__:null,default:{}}));function mg(){return dg||(dg=1,function(e,t){var n;e.exports=(n=n||function(e,t){var n;if("undefined"!=typeof window&&window.crypto&&(n=window.crypto),"undefined"!=typeof self&&self.crypto&&(n=self.crypto),"undefined"!=typeof globalThis&&globalThis.crypto&&(n=globalThis.crypto),!n&&"undefined"!=typeof window&&window.msCrypto&&(n=window.msCrypto),!n&&void 0!==Qn&&Qn.crypto&&(n=Qn.crypto),!n)try{n=gg}catch(e){}var i=function(){if(n){if("function"==typeof n.getRandomValues)try{return n.getRandomValues(new Uint32Array(1))[0]}catch(e){}if("function"==typeof n.randomBytes)try{return n.randomBytes(4).readInt32LE()}catch(e){}}throw new Error("Native crypto module could not be used to get secure random number.")},o=Object.create||function(){function e(){}return function(t){var n;return e.prototype=t,n=new e,e.prototype=null,n}}(),r={},a=r.lib={},s=a.Base={extend:function(e){var t=o(this);return e&&t.mixIn(e),t.hasOwnProperty("init")&&this.init!==t.init||(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},l=a.WordArray=s.extend({init:function(e,n){e=this.words=e||[],this.sigBytes=n!=t?n:4*e.length},toString:function(e){return(e||u).stringify(this)},concat:function(e){var t=this.words,n=e.words,i=this.sigBytes,o=e.sigBytes;if(this.clamp(),i%4)for(var r=0;r<o;r++){var a=n[r>>>2]>>>24-r%4*8&255;t[i+r>>>2]|=a<<24-(i+r)%4*8}else for(var s=0;s<o;s+=4)t[i+s>>>2]=n[s>>>2];return this.sigBytes+=o,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=s.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(i());return new l.init(t,e)}}),c=r.enc={},u=c.Hex={stringify:function(e){for(var t=e.words,n=e.sigBytes,i=[],o=0;o<n;o++){var r=t[o>>>2]>>>24-o%4*8&255;i.push((r>>>4).toString(16)),i.push((15&r).toString(16))}return i.join("")},parse:function(e){for(var t=e.length,n=[],i=0;i<t;i+=2)n[i>>>3]|=parseInt(e.substr(i,2),16)<<24-i%8*4;return new l.init(n,t/2)}},h=c.Latin1={stringify:function(e){for(var t=e.words,n=e.sigBytes,i=[],o=0;o<n;o++){var r=t[o>>>2]>>>24-o%4*8&255;i.push(String.fromCharCode(r))}return i.join("")},parse:function(e){for(var t=e.length,n=[],i=0;i<t;i++)n[i>>>2]|=(255&e.charCodeAt(i))<<24-i%4*8;return new l.init(n,t)}},d=c.Utf8={stringify:function(e){try{return decodeURIComponent(escape(h.stringify(e)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(e){return h.parse(unescape(encodeURIComponent(e)))}},f=a.BufferedBlockAlgorithm=s.extend({reset:function(){this._data=new l.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=d.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n,i=this._data,o=i.words,r=i.sigBytes,a=this.blockSize,s=r/(4*a),c=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*a,u=e.min(4*c,r);if(c){for(var h=0;h<c;h+=a)this._doProcessBlock(o,h);n=o.splice(0,c),i.sigBytes-=u}return new l.init(n,u)},clone:function(){var e=s.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});a.Hasher=f.extend({cfg:s.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){f.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(e){return function(t,n){return new e.init(n).finalize(t)}},_createHmacHelper:function(e){return function(t,n){return new p.HMAC.init(e,n).finalize(t)}}});var p=r.algo={};return r}(Math),n)}(pg)),fg}!function(e,t){e.exports=mg().enc.Utf8}(hg);var vg,yg={};vg||(vg=1,function(e,t){var n;e.exports=(n=mg(),function(){var e=n,t=e.lib.WordArray;function i(e,n,i){for(var o=[],r=0,a=0;a<n;a++)if(a%4){var s=i[e.charCodeAt(a-1)]<<a%4*2|i[e.charCodeAt(a)]>>>6-a%4*2;o[r>>>2]|=s<<24-r%4*8,r++}return t.create(o,r)}e.enc.Base64={stringify:function(e){var t=e.words,n=e.sigBytes,i=this._map;e.clamp();for(var o=[],r=0;r<n;r+=3)for(var a=(t[r>>>2]>>>24-r%4*8&255)<<16|(t[r+1>>>2]>>>24-(r+1)%4*8&255)<<8|t[r+2>>>2]>>>24-(r+2)%4*8&255,s=0;s<4&&r+.75*s<n;s++)o.push(i.charAt(a>>>6*(3-s)&63));var l=i.charAt(64);if(l)for(;o.length%4;)o.push(l);return o.join("")},parse:function(e){var t=e.length,n=this._map,o=this._reverseMap;if(!o){o=this._reverseMap=[];for(var r=0;r<n.length;r++)o[n.charCodeAt(r)]=r}var a=n.charAt(64);if(a){var s=e.indexOf(a);-1!==s&&(t=s)}return i(e,t,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}}(),n.enc.Base64)}({get exports(){return yg},set exports(e){yg=e}}));var bg=function(e){try{return JSON.stringify(e)}catch(e){return"json stringify failed"}};var _g,kg,wg,Sg=(_g=(new Date).getTime(),kg=performance&&performance.now&&1e3*performance.now()||0,"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=16*Math.random();return _g>0?(t=(_g+t)%16|0,_g=Math.floor(_g/16)):(t=(kg+t)%16|0,kg=Math.floor(kg/16)),("x"===e?t:3&t|8).toString(16)}))),Cg=function(e,t){var n={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(n[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(i=Object.getOwnPropertySymbols(e);o<i.length;o++)t.indexOf(i[o])<0&&Object.prototype.propertyIsEnumerable.call(e,i[o])&&(n[i[o]]=e[i[o]])}return n},Eg=function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2,n="".concat(e);n.length<t;)n="0".concat(n);return n},Tg=function(e){var t=new Date(e),n=t.getUTCFullYear(),i=Eg(t.getUTCMonth()+1),o=Eg(t.getUTCDate()),r=Eg(t.getUTCHours()),a=Eg(t.getUTCMinutes()),s=Eg(t.getUTCSeconds()),l=Eg(t.getUTCMilliseconds(),3);return"".concat(n,"-").concat(i,"-").concat(o," ").concat(r,":").concat(a,":").concat(s,".").concat(l)},Og={version:"000001",flag:"0"},jg=function(e){return e.reduce((function(e,t){var n=function(e){var t=e.message,n=e.logLevel,i=e.tags,o=e.timestamp,r=(e.id,Cg(e,["message","logLevel","tags","timestamp","id"])),a=Object.assign({time:Tg(o),logLevel:rg[n],message:t,tags:i,laplaceSessionId:Sg},r);return bg(a)}(t),i=function(e){for(var t=e.length,n=e.length-1;n>=0;n--){var i=e.charCodeAt(n);i>127&&i<=2047?t++:i>2047&&i<=65535&&(t+=2),i>=56320&&i<=57343&&n--}return t}(n),o=e[e.length-1];return o.currentSize+i>30720?e.push({messages:[n],ids:[t.id],currentSize:i}):(o.messages.push(n),o.ids.push(t.id),o.currentSize+=i),e}),[{messages:[],ids:[],currentSize:0}]).filter((function(e){return e.currentSize>0})).map((function(e){return{messages:e.messages.join("\\n"),ids:e.ids,meta:Og}}))};function xg(e){return new Promise((function(t,n){e.oncomplete=e.onsuccess=function(){return t(e.result)},e.onabort=e.onerror=function(){return n(e.error)}}))}function Rg(e,t){var n=indexedDB.open(e);n.onupgradeneeded=function(){return n.result.createObjectStore(t)};var i=xg(n);return function(e,n){return i.then((function(i){return n(i.transaction(t,e).objectStore(t))}))}}function Ig(){return wg||(wg=Rg("keyval-store","keyval")),wg}function Ag(e,t){return(arguments.length>2&&void 0!==arguments[2]?arguments[2]:Ig())("readwrite",(function(n){return n.put(t,e),xg(n.transaction)}))}function Dg(e){return(arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ig())("readwrite",(function(t){return e.forEach((function(e){return t.delete(e)})),xg(t.transaction)}))}function Ng(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ig())("readwrite",(function(e){return e.clear(),xg(e.transaction)}))}function Pg(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ig();return e("readonly",(function(t){if(t.getAll&&t.getAllKeys)return Promise.all([xg(t.getAllKeys()),xg(t.getAll())]).then((function(e){var t=_slicedToArray(e,2),n=t[0],i=t[1];return n.map((function(e,t){return[e,i[t]]}))}));var n=[];return e("readonly",(function(e){return function(e,t){return e.openCursor().onsuccess=function(){this.result&&(t(this.result),this.result.continue())},xg(e.transaction)}(e,(function(e){return n.push([e.key,e.value])})).then((function(){return n}))}))}))}var Lg=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function a(e){try{l(i.next(e))}catch(e){r(e)}}function s(e){try{l(i.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((i=i.apply(e,t||[])).next())}))},Mg=new(function(){function e(){_classCallCheck(this,e),this.queue=[],this.processing=!1}return _createClass(e,[{key:"enqueue",value:function(e){var t=this;return new Promise((function(n,i){t.queue.push((function(){return Lg(t,void 0,void 0,_regeneratorRuntime().mark((function t(){var o;return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,e();case 3:o=t.sent,n(o),t.next=10;break;case 7:t.prev=7,t.t0=t.catch(0),i(t.t0);case 10:case"end":return t.stop()}}),t,null,[[0,7]])})))})),t.processing||t.processNext()}))}},{key:"processNext",value:function(){return Lg(this,void 0,void 0,_regeneratorRuntime().mark((function e(){var t;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(0!==this.queue.length){e.next=3;break}return this.processing=!1,e.abrupt("return");case 3:return this.processing=!0,t=this.queue.shift(),e.prev=5,e.next=8,t();case 8:e.next=13;break;case 10:e.prev=10,e.t0=e.catch(5),console.error("Task error:",e.t0);case 13:this.processNext();case 14:case"end":return e.stop()}}),e,this,[[5,10]])})))}}]),e}()),zg=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function a(e){try{l(i.next(e))}catch(e){r(e)}}function s(e){try{l(i.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((i=i.apply(e,t||[])).next())}))},Fg=_createClass((function e(t){var n=this;_classCallCheck(this,e),this.set=function(e,t){try{return!n.disableDB&&Mg.enqueue((function(){return zg(n,void 0,void 0,_regeneratorRuntime().mark((function n(){return _regeneratorRuntime().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",Ag(e,t,this.store));case 1:case"end":return n.stop()}}),n,this)})))}))}catch(e){n.disableDB=!0}},this.makeNextId=function(){return n.nextId+=1,n.nextId},this.addLog=function(e){n.addToMemory(e);var t=e.id;return Number.isNaN(t),n.set("".concat(t),e)},this.addToMemory=function(e,t){n.memoryStoreData=t?[].concat(e):n.memoryStoreData.concat(e)},this.syncFromIDB=function(){return zg(n,void 0,void 0,_regeneratorRuntime().mark((function e(){var t,n,i,o,r,a=this;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Mg.enqueue((function(){return zg(a,void 0,void 0,_regeneratorRuntime().mark((function e(){return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Pg(this.store));case 1:case"end":return e.stop()}}),e,this)})))}));case 2:if(n=e.sent,i=n.filter((function(e){var t=_slicedToArray(e,2),n=t[0],i=t[1];return!(null==i?void 0:i.id)&&0!==(null==i?void 0:i.id)||!Number.isInteger(Number(n))})),o=i.map((function(e){return e[0]})),r=n.filter((function(e){var t=_slicedToArray(e,1)[0];return!o.includes(t)})).sort((function(e,t){var n,i;return(null===(n=e[1])||void 0===n?void 0:n.id)-(null===(i=t[1])||void 0===i?void 0:i.id)})).map((function(e){return _slicedToArray(e,2)[1]})),this.addToMemory(r,!0),!(o.length>0)){e.next=10;break}return e.next=10,this.deleteLogs(o);case 10:return this.nextId=0===this.memoryStoreData.length?0:null===(t=this.memoryStoreData[this.memoryStoreData.length-1])||void 0===t?void 0:t.id,e.abrupt("return",this.memoryStoreData);case 12:case"end":return e.stop()}}),e,this)})))},this.getStore=function(){return n.memoryStoreData},this.filterStore=function(e){var t=[e].flatMap((function(e){return e}));return e?n.memoryStoreData.filter((function(e){return t.some((function(t){return"string"==typeof t?e.tags.some((function(e){return t===e})):"function"==typeof t&&t(e)}))})):n.memoryStoreData},this.deleteLogs=function(e){return zg(n,void 0,void 0,_regeneratorRuntime().mark((function t(){var n=this;return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return this.deleteMemoryLogs(e),t.abrupt("return",Mg.enqueue((function(){return zg(n,void 0,void 0,_regeneratorRuntime().mark((function t(){return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",Dg(e.map((function(e){return"".concat(e)})),this.store));case 1:case"end":return t.stop()}}),t,this)})))})));case 2:case"end":return t.stop()}}),t,this)})))},this.deleteLogsAfterReport=function(e){return zg(n,void 0,void 0,_regeneratorRuntime().mark((function t(){return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return this.deleteMemoryLogs(e),t.abrupt("return",Dg(e.map((function(e){return"".concat(e)})),this.store));case 2:case"end":return t.stop()}}),t,this)})))},this.deleteMemoryLogs=function(e){n.memoryStoreData=n.memoryStoreData.filter((function(t){var n;return!(null===(n=e.includes)||void 0===n?void 0:n.call(e,t.id))}))},this.reset=function(){n.memoryStoreData=[],Mg.enqueue((function(){return zg(n,void 0,void 0,_regeneratorRuntime().mark((function e(){return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Ng(this.store));case 1:case"end":return e.stop()}}),e,this)})))}))},this.nextId=0,this.memoryStoreData=[],this.disableDB=!1,Mg.enqueue((function(){return zg(n,void 0,void 0,_regeneratorRuntime().mark((function e(){return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Rg(t,t+"-store"));case 1:case"end":return e.stop()}}),e)})))})).then((function(e){n.store=e}))}));function Bg(e,t,n){var i=e.plugins;return Array.isArray(i)?i.map((function(e){return e[t]})).reduce((function(t,n){var i=null==n?void 0:n(e,t);return null!=i?i:t}),n):n}var Ug=function(e){return new Promise((function(t){var n=new XMLHttpRequest;n.open(e.type||"GET",e.url,!0),n.withCredentials=e.withCredentials,n.onerror=function(n){t({error:n,report:e.reportItem})},n.onreadystatechange=function(){if(4===n.readyState){var i=n.status;t(i>=200&&i<300?{report:e.reportItem}:{error:"Request failed, status: ".concat(i,", responseText: ").concat(n.responseText),report:e.reportItem})}},Object.entries(e.headers).forEach((function(e){var t=_slicedToArray(e,2),i=t[0],o=t[1];o&&i&&n.setRequestHeader(i,o)})),n.send(e.data)}))},Vg="Expected a function",Wg=NaN,Gg="[object Symbol]",Hg=/^\\s+|\\s+$/g,Yg=/^[-+]0x[0-9a-f]+$/i,Xg=/^0b[01]+$/i,Kg=/^0o[0-7]+$/i,qg=parseInt,Jg="object"==_typeof(Qn)&&Qn&&Qn.Object===Object&&Qn,Zg="object"==("undefined"==typeof self?"undefined":_typeof(self))&&self&&self.Object===Object&&self,$g=Jg||Zg||Function("return this")(),Qg=Object.prototype.toString,em=Math.max,tm=Math.min,nm=function(){return $g.Date.now()};function im(e,t,n){var i,o,r,a,s,l,c=0,u=!1,h=!1,d=!0;if("function"!=typeof e)throw new TypeError(Vg);function f(t){var n=i,r=o;return i=o=void 0,c=t,a=e.apply(r,n)}function p(e){var n=e-l;return void 0===l||n>=t||n<0||h&&e-c>=r}function g(){var e=nm();if(p(e))return m(e);s=setTimeout(g,function(e){var n=t-(e-l);return h?tm(n,r-(e-c)):n}(e))}function m(e){return s=void 0,d&&i?f(e):(i=o=void 0,a)}function v(){var e=nm(),n=p(e);if(i=arguments,o=this,l=e,n){if(void 0===s)return function(e){return c=e,s=setTimeout(g,t),u?f(e):a}(l);if(h)return s=setTimeout(g,t),f(l)}return void 0===s&&(s=setTimeout(g,t)),a}return t=am(t)||0,om(n)&&(u=!!n.leading,r=(h="maxWait"in n)?em(am(n.maxWait)||0,t):r,d="trailing"in n?!!n.trailing:d),v.cancel=function(){void 0!==s&&clearTimeout(s),c=0,i=l=o=s=void 0},v.flush=function(){return void 0===s?a:m(nm())},v}function om(e){var t=_typeof(e);return!!e&&("object"==t||"function"==t)}function rm(e){return"symbol"==_typeof(e)||function(e){return!!e&&"object"==_typeof(e)}(e)&&Qg.call(e)==Gg}function am(e){if("number"==typeof e)return e;if(rm(e))return Wg;if(om(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=om(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(Hg,"");var n=Xg.test(e);return n||Kg.test(e)?qg(e.slice(2),n?2:8):Yg.test(e)?Wg:+e}var sm=function(e,t,n){var i=!0,o=!0;if("function"!=typeof e)throw new TypeError(Vg);return om(n)&&(i="leading"in n?!!n.leading:i,o="trailing"in n?!!n.trailing:o),im(e,t,{leading:i,maxWait:t,trailing:o})},lm=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function a(e){try{l(i.next(e))}catch(e){r(e)}}function s(e){try{l(i.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((i=i.apply(e,t||[])).next())}))},cm={databaseName:"laplace-default-db"},um=function(e,t,n,i){var o=Date.now();return Object.assign({message:e,logLevel:n,tags:t,timestamp:o},i)},hm=_createClass((function e(t){var n=this;_classCallCheck(this,e),this.cacheFilter=[],this.log=function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:rg.log,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return lm(n,void 0,void 0,_regeneratorRuntime().mark((function n(){var r,a,s;return _regeneratorRuntime().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:r=[t,this.publicTags].flatMap((function(e){return e})),a=um(e,r,i,Object.assign(Object.assign({},this.publicAttributes),o)),(s=Bg(this,ag.beforeLog,a)).id=this.idbManager.makeNextId(),this.idbManager.addLog(s),Bg(this,ag.afterLog,s);case 6:case"end":return n.stop()}}),n,this)})))},this.deleteLog=function(e,t){if(!Array.isArray(t)||(n.idbManager.deleteLogs(t),e)){var i=n.idbManager.filterStore(e).map((function(e){return e.id}));n.idbManager.deleteLogs(i)}},this.deleteAll=function(){n.idbManager.reset()},this.getLogs=function(e){return n.idbManager.filterStore(e)},this.setReportUrl=function(e){n.reportUrl=e},this.throttleReport=sm((function(e){n.reportByHttps(e),n.cacheFilter=[]}),5e3,{leading:!0,trailing:!0}),this.reportByFilter=function(e){n.cacheFilter=n.cacheFilter.concat(e),n.throttleReport(n.cacheFilter)},this.reportByHttps=function(e){return lm(n,void 0,void 0,_regeneratorRuntime().mark((function t(){var n,i=this;return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=function(){return lm(i,void 0,void 0,_regeneratorRuntime().mark((function t(){var n,i,o;return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if((n=this.idbManager.filterStore(e))&&0!==n.length){t.next=3;break}return t.abrupt("return");case 3:return i=Bg(this,ag.beforeReport,n),o=jg(i),t.abrupt("return",this.commonReport(o));case 6:case"end":return t.stop()}}),t,this)})))},Mg.enqueue(n);case 2:case"end":return t.stop()}}),t)})))},this.directReport=function(e,t){var i,o,r,a,s=null!==(i=t.sampleRate)&&void 0!==i?i:1;if(!(Math.random()>s))return a=t.useRawData?e:Object.assign({message:e,time:Tg(Date.now()),tags:[].concat(_toConsumableArray(null!==(o=null==t?void 0:t.tags)&&void 0!==o?o:[]),_toConsumableArray(n.publicTags)),logLevel:null!==(r=null==t?void 0:t.logLevel)&&void 0!==r?r:rg.log,laplaceSessionId:Sg},n.publicAttributes),n.commonReport([{messages:a,meta:Og}],!1)},this.commonReport=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(n.reportUrl)return Promise.all(e.map((function(e){return{url:n.reportUrl,type:"POST",withCredentials:!1,headers:{},data:bg({messages:e.messages,meta:e.meta}),reportItem:e}})).map(Ug)).then((function(e){var i=e.filter((function(e){return!e.error})).flatMap((function(e){return e.report.ids}));if(Bg(n,ag.afterReport,{removeIds:i}),t)return n.idbManager.deleteLogsAfterReport(i)}))};var i=t.databaseName,o=t.reportUrl,r=void 0===o?"":o,a=t.plugins,s=void 0===a?[]:a,l=t.idbManager,c=t.publicTags,u=void 0===c?[]:c,h=t.publicAttributes,d=void 0===h?{}:h;this.databaseName=i,this.reportUrl=r,this.plugins=s,this.idbManager=l,this.publicTags=u,this.publicAttributes=d,Bg(this,ag.afterInit)}));hm.init=function(e){return lm(void 0,void 0,void 0,_regeneratorRuntime().mark((function t(){var n,i;return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.databaseName,i=new Fg(void 0===n?"laplace-default-db":n),t.next=4,i.syncFromIDB();case 4:return t.abrupt("return",new hm(Object.assign(Object.assign(Object.assign({},cm),e),{idbManager:i})));case 5:case"end":return t.stop()}}),t)})))};var dm,fm,pm={enable:!0,gatewayEndPoint:"",logLevel:{debug:!1,log:!0,info:!1,print:!1,warn:!0,error:!0},logLevelAutoReport:{debug:!0,log:!0,info:!0,warn:!0,error:!0}},gm=(null===window||void 0===window?void 0:window.ZMCoBrowsingConfig)||{},mm={enable:gm.enableZCBClientLog,gatewayEndPoint:gm.gatewayEndPoint},vm=function(){var e,t=null!==(e=mm.gatewayEndPoint)&&void 0!==e?e:pm.gatewayEndPoint;return t||""}(),ym=pm,bm=(dm="",fm=void 0,{setDynamicReportUrl:function(e){dm=e},getDynamicReportUrl:function(){return dm},getCurrentReportUrl:function(){return dm||vm},setDynamicLaplaceEnabled:function(e){fm=e},getDynamicLaplaceEnabled:function(){return fm}}),_m=function(){return void 0!==bm.getDynamicLaplaceEnabled()?bm.getDynamicLaplaceEnabled():!!(null!==(e=mm.enable)&&void 0!==e?e:null==pm?void 0:pm.enable);var e},km="__lodash_hash_undefined__",wm=9007199254740991,Sm="[object Arguments]",Cm="[object Function]",Em="[object GeneratorFunction]",Tm="[object Symbol]",Om=/^\\[object .+?Constructor\\]$/,jm=/^(?:0|[1-9]\\d*)$/,xm="object"==_typeof(Qn)&&Qn&&Qn.Object===Object&&Qn,Rm="object"==("undefined"==typeof self?"undefined":_typeof(self))&&self&&self.Object===Object&&self,Im=xm||Rm||Function("return this")();function Am(e,t){return!!(e?e.length:0)&&function(e,t,n){if(t!=t)return function(e,t,n,i){var o=e.length,r=n+(i?1:-1);for(;i?r--:++r<o;)if(t(e[r],r,e))return r;return-1}(e,Lm,n);var i=n-1,o=e.length;for(;++i<o;)if(e[i]===t)return i;return-1}(e,t,0)>-1}function Dm(e,t,n){for(var i=-1,o=e?e.length:0;++i<o;)if(n(t,e[i]))return!0;return!1}function Nm(e,t){for(var n=-1,i=e?e.length:0,o=Array(i);++n<i;)o[n]=t(e[n],n,e);return o}function Pm(e,t){for(var n=-1,i=t.length,o=e.length;++n<i;)e[o+n]=t[n];return e}function Lm(e){return e!=e}function Mm(e,t){return e.has(t)}function zm(e,t){return function(n){return e(t(n))}}var Fm,Bm=Array.prototype,Um=Function.prototype,Vm=Object.prototype,Wm=Im["__core-js_shared__"],Gm=(Fm=/[^.]+$/.exec(Wm&&Wm.keys&&Wm.keys.IE_PROTO||""))?"Symbol(src)_1."+Fm:"",Hm=Um.toString,Ym=Vm.hasOwnProperty,Xm=Vm.toString,Km=RegExp("^"+Hm.call(Ym).replace(/[\\\\^$.*+?()[\\]{}|]/g,"\\\\$&").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g,"$1.*?")+"$"),qm=Im.Symbol,Jm=zm(Object.getPrototypeOf,Object),Zm=Vm.propertyIsEnumerable,$m=Bm.splice,Qm=qm?qm.isConcatSpreadable:void 0,ev=Object.getOwnPropertySymbols,tv=Math.max,nv=gv(Im,"Map"),iv=gv(Object,"create");function ov(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function rv(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function av(e){var t=-1,n=e?e.length:0;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function sv(e){var t=-1,n=e?e.length:0;for(this.__data__=new av;++t<n;)this.add(e[t])}function lv(e,t){var n=Cv(e)||kv(e)?function(e,t){for(var n=-1,i=Array(e);++n<e;)i[n]=t(n);return i}(e.length,String):[],i=n.length,o=!!i;for(var r in e)!t&&!Ym.call(e,r)||o&&("length"==r||bv(r,i))||n.push(r);return n}function cv(e,t){for(var n,i,o=e.length;o--;)if((n=e[o][0])===(i=t)||n!=n&&i!=i)return o;return-1}function uv(e,t,n,i,o){var r=-1,a=e.length;for(n||(n=yv),o||(o=[]);++r<a;){var s=e[r];t>0&&n(s)?t>1?uv(s,t-1,n,i,o):Pm(o,s):i||(o[o.length]=s)}return o}function hv(e){if(!Ov(e)||(t=e,Gm&&Gm in t))return!1;var t,n=Tv(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?Km:Om;return n.test(function(e){if(null!=e){try{return Hm.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}function dv(e){if(!Ov(e))return function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}(e);var t,n,i,o=(n=(t=e)&&t.constructor,i="function"==typeof n&&n.prototype||Vm,t===i),r=[];for(var a in e)("constructor"!=a||!o&&Ym.call(e,a))&&r.push(a);return r}function fv(e){return function(e,t,n){var i=t(e);return Cv(e)?i:Pm(i,n(e))}(e,xv,vv)}function pv(e,t){var n,i,o=e.__data__;return("string"==(i=_typeof(n=t))||"number"==i||"symbol"==i||"boolean"==i?"__proto__"!==n:null===n)?o["string"==typeof t?"string":"hash"]:o.map}function gv(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return hv(n)?n:void 0}ov.prototype.clear=function(){this.__data__=iv?iv(null):{}},ov.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},ov.prototype.get=function(e){var t=this.__data__;if(iv){var n=t[e];return n===km?void 0:n}return Ym.call(t,e)?t[e]:void 0},ov.prototype.has=function(e){var t=this.__data__;return iv?void 0!==t[e]:Ym.call(t,e)},ov.prototype.set=function(e,t){return this.__data__[e]=iv&&void 0===t?km:t,this},rv.prototype.clear=function(){this.__data__=[]},rv.prototype.delete=function(e){var t=this.__data__,n=cv(t,e);return!(n<0)&&(n==t.length-1?t.pop():$m.call(t,n,1),!0)},rv.prototype.get=function(e){var t=this.__data__,n=cv(t,e);return n<0?void 0:t[n][1]},rv.prototype.has=function(e){return cv(this.__data__,e)>-1},rv.prototype.set=function(e,t){var n=this.__data__,i=cv(n,e);return i<0?n.push([e,t]):n[i][1]=t,this},av.prototype.clear=function(){this.__data__={hash:new ov,map:new(nv||rv),string:new ov}},av.prototype.delete=function(e){return pv(this,e).delete(e)},av.prototype.get=function(e){return pv(this,e).get(e)},av.prototype.has=function(e){return pv(this,e).has(e)},av.prototype.set=function(e,t){return pv(this,e).set(e,t),this},sv.prototype.add=sv.prototype.push=function(e){return this.__data__.set(e,km),this},sv.prototype.has=function(e){return this.__data__.has(e)};var mv=ev?zm(ev,Object):Rv,vv=ev?function(e){for(var t=[];e;)Pm(t,mv(e)),e=Jm(e);return t}:Rv;function yv(e){return Cv(e)||kv(e)||!!(Qm&&e&&e[Qm])}function bv(e,t){return!!(t=null==t?wm:t)&&("number"==typeof e||jm.test(e))&&e>-1&&e%1==0&&e<t}function _v(e){if("string"==typeof e||function(e){return"symbol"==_typeof(e)||jv(e)&&Xm.call(e)==Tm}(e))return e;var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t}function kv(e){return function(e){return jv(e)&&Ev(e)}(e)&&Ym.call(e,"callee")&&(!Zm.call(e,"callee")||Xm.call(e)==Sm)}var wv,Sv,Cv=Array.isArray;function Ev(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=wm}(e.length)&&!Tv(e)}function Tv(e){var t=Ov(e)?Xm.call(e):"";return t==Cm||t==Em}function Ov(e){var t=_typeof(e);return!!e&&("object"==t||"function"==t)}function jv(e){return!!e&&"object"==_typeof(e)}function xv(e){return Ev(e)?lv(e,!0):dv(e)}function Rv(){return[]}wv=function(e,t){return null==e?{}:(t=Nm(uv(t,1),_v),function(e,t){return function(e,t,n){for(var i=-1,o=t.length,r={};++i<o;){var a=t[i],s=e[a];n(s,a)&&(r[a]=s)}return r}(e=Object(e),t,(function(t,n){return n in e}))}(e,function(e,t,n,i){var o,r=-1,a=Am,s=!0,l=e.length,c=[],u=t.length;if(!l)return c;n&&(t=Nm(t,(o=n,function(e){return o(e)}))),i?(a=Dm,s=!1):t.length>=200&&(a=Mm,s=!1,t=new sv(t));e:for(;++r<l;){var h=e[r],d=n?n(h):h;if(h=i||0!==h?h:0,s&&d==d){for(var f=u;f--;)if(t[f]===d)continue e;c.push(h)}else a(t,d,i)||c.push(h)}return c}(fv(e),t)))},Sv=tv(void 0===Sv?wv.length-1:Sv,0);(new Date).getTime();var Iv=[],Av={log:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:rg.log,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function o(){return _regeneratorRuntime().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:Iv.push({message:e,tag:t,logLevel:n,extraProperties:Object.assign({timestamp:Date.now()},i)});case 1:case"end":return o.stop()}}),o)})))},reportByFilter:function(e){},directReport:function(e,t){},getLogs:function(e){},setReportUrl:function(e){bm.setDynamicReportUrl(e)}};function Dv(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function Nv(e,t,n,i,o,r){return Dv((a=Dv(Dv(t,e),Dv(i,r)))<<(s=o)|a>>>32-s,n);var a,s}function Pv(e,t,n,i,o,r,a){return Nv(t&n|~t&i,e,t,o,r,a)}function Lv(e,t,n,i,o,r,a){return Nv(t&i|n&~i,e,t,o,r,a)}function Mv(e,t,n,i,o,r,a){return Nv(t^n^i,e,t,o,r,a)}function zv(e,t,n,i,o,r,a){return Nv(n^(t|~i),e,t,o,r,a)}function Fv(e,t){var n,i,o,r,a;e[t>>5]|=128<<t%32,e[14+(t+64>>>9<<4)]=t;var s=1732584193,l=-271733879,c=-1732584194,u=271733878;for(n=0;n<e.length;n+=16)i=s,o=l,r=c,a=u,s=Pv(s,l,c,u,e[n],7,-680876936),u=Pv(u,s,l,c,e[n+1],12,-389564586),c=Pv(c,u,s,l,e[n+2],17,606105819),l=Pv(l,c,u,s,e[n+3],22,-1044525330),s=Pv(s,l,c,u,e[n+4],7,-176418897),u=Pv(u,s,l,c,e[n+5],12,1200080426),c=Pv(c,u,s,l,e[n+6],17,-1473231341),l=Pv(l,c,u,s,e[n+7],22,-45705983),s=Pv(s,l,c,u,e[n+8],7,1770035416),u=Pv(u,s,l,c,e[n+9],12,-1958414417),c=Pv(c,u,s,l,e[n+10],17,-42063),l=Pv(l,c,u,s,e[n+11],22,-1990404162),s=Pv(s,l,c,u,e[n+12],7,1804603682),u=Pv(u,s,l,c,e[n+13],12,-40341101),c=Pv(c,u,s,l,e[n+14],17,-1502002290),s=Lv(s,l=Pv(l,c,u,s,e[n+15],22,1236535329),c,u,e[n+1],5,-165796510),u=Lv(u,s,l,c,e[n+6],9,-1069501632),c=Lv(c,u,s,l,e[n+11],14,643717713),l=Lv(l,c,u,s,e[n],20,-373897302),s=Lv(s,l,c,u,e[n+5],5,-701558691),u=Lv(u,s,l,c,e[n+10],9,38016083),c=Lv(c,u,s,l,e[n+15],14,-660478335),l=Lv(l,c,u,s,e[n+4],20,-405537848),s=Lv(s,l,c,u,e[n+9],5,568446438),u=Lv(u,s,l,c,e[n+14],9,-1019803690),c=Lv(c,u,s,l,e[n+3],14,-187363961),l=Lv(l,c,u,s,e[n+8],20,1163531501),s=Lv(s,l,c,u,e[n+13],5,-1444681467),u=Lv(u,s,l,c,e[n+2],9,-51403784),c=Lv(c,u,s,l,e[n+7],14,1735328473),s=Mv(s,l=Lv(l,c,u,s,e[n+12],20,-1926607734),c,u,e[n+5],4,-378558),u=Mv(u,s,l,c,e[n+8],11,-2022574463),c=Mv(c,u,s,l,e[n+11],16,1839030562),l=Mv(l,c,u,s,e[n+14],23,-35309556),s=Mv(s,l,c,u,e[n+1],4,-1530992060),u=Mv(u,s,l,c,e[n+4],11,1272893353),c=Mv(c,u,s,l,e[n+7],16,-155497632),l=Mv(l,c,u,s,e[n+10],23,-1094730640),s=Mv(s,l,c,u,e[n+13],4,681279174),u=Mv(u,s,l,c,e[n],11,-358537222),c=Mv(c,u,s,l,e[n+3],16,-722521979),l=Mv(l,c,u,s,e[n+6],23,76029189),s=Mv(s,l,c,u,e[n+9],4,-640364487),u=Mv(u,s,l,c,e[n+12],11,-421815835),c=Mv(c,u,s,l,e[n+15],16,530742520),s=zv(s,l=Mv(l,c,u,s,e[n+2],23,-995338651),c,u,e[n],6,-198630844),u=zv(u,s,l,c,e[n+7],10,1126891415),c=zv(c,u,s,l,e[n+14],15,-1416354905),l=zv(l,c,u,s,e[n+5],21,-57434055),s=zv(s,l,c,u,e[n+12],6,1700485571),u=zv(u,s,l,c,e[n+3],10,-1894986606),c=zv(c,u,s,l,e[n+10],15,-1051523),l=zv(l,c,u,s,e[n+1],21,-2054922799),s=zv(s,l,c,u,e[n+8],6,1873313359),u=zv(u,s,l,c,e[n+15],10,-30611744),c=zv(c,u,s,l,e[n+6],15,-1560198380),l=zv(l,c,u,s,e[n+13],21,1309151649),s=zv(s,l,c,u,e[n+4],6,-145523070),u=zv(u,s,l,c,e[n+11],10,-1120210379),c=zv(c,u,s,l,e[n+2],15,718787259),l=zv(l,c,u,s,e[n+9],21,-343485551),s=Dv(s,i),l=Dv(l,o),c=Dv(c,r),u=Dv(u,a);return[s,l,c,u]}function Bv(e){var t,n="",i=32*e.length;for(t=0;t<i;t+=8)n+=String.fromCharCode(e[t>>5]>>>t%32&255);return n}function Uv(e){var t,n=[];for(n[(e.length>>2)-1]=void 0,t=0;t<n.length;t+=1)n[t]=0;var i=8*e.length;for(t=0;t<i;t+=8)n[t>>5]|=(255&e.charCodeAt(t/8))<<t%32;return n}function Vv(e){var t,n,i="0123456789abcdef",o="";for(n=0;n<e.length;n+=1)t=e.charCodeAt(n),o+=i.charAt(t>>>4&15)+i.charAt(15&t);return o}function Wv(e){return unescape(encodeURIComponent(e))}function Gv(e){return function(e){return Bv(Fv(Uv(e),8*e.length))}(Wv(e))}function Hv(e,t){return function(e,t){var n,i,o=Uv(e),r=[],a=[];for(r[15]=a[15]=void 0,o.length>16&&(o=Fv(o,8*e.length)),n=0;n<16;n+=1)r[n]=909522486^o[n],a[n]=1549556828^o[n];return i=Fv(r.concat(Uv(t)),512+8*t.length),Bv(Fv(a.concat(i),640))}(Wv(e),Wv(t))}function Yv(e,t,n){return t?n?Hv(t,e):function(e,t){return Vv(Hv(e,t))}(t,e):n?Gv(e):Vv(Gv(e))}var Xv=function(e){return Boolean(null==e?void 0:e.log)},Kv=function(e,t){return[e,t].flatMap((function(e){return e})).map((function(e){return"function"==typeof e?e():e})).filter((function(e){return Boolean(e)}))},qv=function(){function e(t){_classCallCheck(this,e),this.cache=new Map,this.limit=t}return _createClass(e,[{key:"get",value:function(e){if(this.cache.has(e)){var t=this.cache.get(e);return this.cache.delete(e),this.cache.set(e,t),t}}},{key:"set",value:function(e,t){if(this.cache.has(e))this.cache.delete(e);else if(this.cache.size>=this.limit){var n=this.cache.keys().next().value;this.cache.delete(n)}this.cache.set(e,t)}},{key:"has",value:function(e){return this.cache.has(e)}},{key:"delete",value:function(e){return this.cache.delete(e)}},{key:"clear",value:function(){this.cache.clear()}},{key:"keys",value:function(){return Array.from(this.cache.keys())}},{key:"values",value:function(){return Array.from(this.cache.values())}}]),e}(),Jv="function",Zv="object",$v="string",Qv="model",ey="name",ty="type",ny="vendor",iy="version",oy="architecture",ry="hardwareConcurrency",ay="console",sy="mobile",ly="tablet",cy="smarttv",uy="wearable",hy="Amazon",dy="Apple",fy="ASUS",py="BlackBerry",gy="Browser",my="Chrome",vy="Firefox",yy="Google",by="Huawei",_y="LG",ky="Microsoft",wy="Motorola",Sy="Opera",Cy="Samsung",Ey="Sharp",Ty="Sony",Oy="Xiaomi",jy="Zebra",xy="Facebook",Ry={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Iy=function(e){return e.toLowerCase()},Ay=function(e,t){return _typeof(e)===$v&&-1!==Iy(t).indexOf(Iy(e))},Dy=function(e,t){return _typeof(e)===$v?(e=e.replace(/^\\s\\s*/,""),"undefined"===_typeof(t)?e:e.substring(0,350)):""},Ny=function(e,t){for(var n in t)if(_typeof(t[n])===Zv&&t[n].length>0){for(var i=0;i<t[n].length;i++)if(Ay(t[n][i],e))return"?"===n?void 0:n}else if(Ay(t[n],e))return"?"===n?void 0:n;return e},Py={browser:[[/(ZoomApps)\\/([\\w\\.]+)/i],[ey,iy],[/\\b(?:crmo|crios)\\/([\\w\\.]+)/i],[iy,[ey,"Chrome"]],[/edg(?:e|ios|a)?\\/([\\w\\.]+)/i],[iy,[ey,"Edge"]],[/(opera mini)\\/([-\\w\\.]+)/i,/(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,/(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i],[ey,iy],[/opios[\\/ ]+([\\w\\.]+)/i],[iy,[ey,Sy+" Mini"]],[/\\bopr\\/([\\w\\.]+)/i],[iy,[ey,Sy]],[/(kindle)\\/([\\w\\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,/(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,/(?:ms|\\()(ie) ([\\w\\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,/(weibo)__([\\d\\.]+)/i],[ey,iy],[/(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i],[iy,[ey,"UC"+gy]],[/microm.+\\bqbcore\\/([\\w\\.]+)/i,/\\bqbcore\\/([\\w\\.]+).+microm/i],[iy,[ey,"WeChat(Win) Desktop"]],[/micromessenger\\/([\\w\\.]+)/i],[iy,[ey,"WeChat"]],[/konqueror\\/([\\w\\.]+)/i],[iy,[ey,"Konqueror"]],[/trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i],[iy,[ey,"IE"]],[/yabrowser\\/([\\w\\.]+)/i],[iy,[ey,"Yandex"]],[/(avast|avg)\\/([\\w\\.]+)/i],[[ey,/(.+)/,"$1 Secure "+gy],iy],[/\\bfocus\\/([\\w\\.]+)/i],[iy,[ey,vy+" Focus"]],[/\\bopt\\/([\\w\\.]+)/i],[iy,[ey,Sy+" Touch"]],[/coc_coc\\w+\\/([\\w\\.]+)/i],[iy,[ey,"Coc Coc"]],[/dolfin\\/([\\w\\.]+)/i],[iy,[ey,"Dolphin"]],[/coast\\/([\\w\\.]+)/i],[iy,[ey,Sy+" Coast"]],[/miuibrowser\\/([\\w\\.]+)/i],[iy,[ey,"MIUI "+gy]],[/fxios\\/([-\\w\\.]+)/i],[iy,[ey,vy]],[/\\bqihu|(qi?ho?o?|360)browser/i],[[ey,"360 "+gy]],[/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i],[[ey,/(.+)/,"$1 "+gy],iy],[/(comodo_dragon)\\/([\\w\\.]+)/i],[[ey,/_/g," "],iy],[/(electron)\\/([\\w\\.]+) safari/i,/(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i],[ey,iy],[/(metasr)[\\/ ]?([\\w\\.]+)/i,/(lbbrowser)/i,/\\[(linkedin)app\\]/i],[ey],[/((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i],[[ey,xy],iy],[/safari (line)\\/([\\w\\.]+)/i,/\\b(line)\\/([\\w\\.]+)\\/iab/i,/(chromium|instagram)[\\/ ]([-\\w\\.]+)/i],[ey,iy],[/\\bgsa\\/([\\w\\.]+) .*safari\\//i],[iy,[ey,"GSA"]],[/headlesschrome(?:\\/([\\w\\.]+)| )/i],[iy,[ey,my+" Headless"]],[/ wv\\).+(chrome)\\/([\\w\\.]+)/i],[[ey,my+" WebView"],iy],[/droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i],[iy,[ey,"Android "+gy]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i],[ey,iy],[/version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i],[iy,[ey,"Mobile Safari"]],[/version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i],[iy,ey],[/webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i],[ey,[iy,Ny,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\\/([\\w\\.]+)/i],[ey,iy],[/(navigator|netscape\\d?)\\/([-\\w\\.]+)/i],[[ey,"Netscape"],iy],[/mobile vr; rv:([\\w\\.]+)\\).+firefox/i],[iy,[ey,vy+" Reality"]],[/ekiohf.+(flow)\\/([\\w\\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,/(firefox)\\/([\\w\\.]+)/i,/(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,/(links) \\(([\\w\\.]+)/i],[ey,iy],[/(cobalt)\\/([\\w\\.]+)/i],[ey,[iy,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i],[[oy,"amd64"]],[/(ia32(?=;))/i],[[oy,Iy]],[/((?:i[346]|x)86)[;\\)]/i],[[oy,"ia32"]],[/\\b(aarch64|arm(v?8e?l?|_?64))\\b/i],[[oy,"arm64"]],[/\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i],[[oy,"armhf"]],[/windows (ce|mobile); ppc;/i],[[oy,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i],[[oy,/ower/,"",Iy]],[/(sun4\\w)[;\\)]/i],[[oy,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i],[[oy,Iy]]],device:[[/\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i],[Qv,[ny,Cy],[ty,ly]],[/\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i,/samsung[- ]([-\\w]+)/i,/sec-(sgh\\w+)/i],[Qv,[ny,Cy],[ty,sy]],[/((ipod|iphone)\\d+,\\d+)/i],[Qv,[ny,dy],[ty,sy]],[/(ipad\\d+,\\d+)/i],[Qv,[ny,dy],[ty,ly]],[/\\((ip(?:hone|od)[\\w ]*);/i],[Qv,[ny,dy],[ty,sy]],[/\\((ipad);[-\\w\\),; ]+apple/i,/applecoremedia\\/[\\w\\.]+ \\((ipad)/i,/\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i],[Qv,[ny,dy],[ty,ly]],[/(macintosh);/i],[Qv,[ny,dy]],[/\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i],[Qv,[ny,by],[ty,ly]],[/(?:huawei|honor)([-\\w ]+)[;\\)]/i,/\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i],[Qv,[ny,by],[ty,sy]],[/\\b(poco[\\w ]+)(?: bui|\\))/i,/\\b; (\\w+) build\\/hm\\1/i,/\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,/\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,/\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i],[[Qv,/_/g," "],[ny,Oy],[ty,sy]],[/\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i],[[Qv,/_/g," "],[ny,Oy],[ty,ly]],[/; (\\w+) bui.+ oppo/i,/\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i],[Qv,[ny,"OPPO"],[ty,sy]],[/vivo (\\w+)(?: bui|\\))/i,/\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i],[Qv,[ny,"Vivo"],[ty,sy]],[/\\b(rmx[12]\\d{3})(?: bui|;|\\))/i],[Qv,[ny,"Realme"],[ty,sy]],[/\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,/\\bmot(?:orola)?[- ](\\w*)/i,/((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i],[Qv,[ny,wy],[ty,sy]],[/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i],[Qv,[ny,wy],[ty,ly]],[/((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i],[Qv,[ny,_y],[ty,ly]],[/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,/\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,/\\blg-?([\\d\\w]+) bui/i],[Qv,[ny,_y],[ty,sy]],[/(ideatab[-\\w ]+)/i,/lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i],[Qv,[ny,"Lenovo"],[ty,ly]],[/(?:maemo|nokia).*(n900|lumia \\d+)/i,/nokia[-_ ]?([-\\w\\.]*)/i],[[Qv,/_/g," "],[ny,"Nokia"],[ty,sy]],[/(pixel c)\\b/i],[Qv,[ny,yy],[ty,ly]],[/droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i],[Qv,[ny,yy],[ty,sy]],[/droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i],[Qv,[ny,Ty],[ty,sy]],[/sony tablet [ps]/i,/\\b(?:sony)?sgp\\w+(?: bui|\\))/i],[[Qv,"Xperia Tablet"],[ny,Ty],[ty,ly]],[/ (kb2005|in20[12]5|be20[12][59])\\b/i,/(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i],[Qv,[ny,"OnePlus"],[ty,sy]],[/(alexa)webm/i,/(kf[a-z]{2}wi)( bui|\\))/i,/(kf[a-z]+)( bui|\\)).+silk\\//i],[Qv,[ny,hy],[ty,ly]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i],[[Qv,/(.+)/g,"Fire Phone $1"],[ny,hy],[ty,sy]],[/(playbook);[-\\w\\),; ]+(rim)/i],[Qv,ny,[ty,ly]],[/\\b((?:bb[a-f]|st[hv])100-\\d)/i,/\\(bb10; (\\w+)/i],[Qv,[ny,py],[ty,sy]],[/(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i],[Qv,[ny,fy],[ty,ly]],[/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i],[Qv,[ny,fy],[ty,sy]],[/(nexus 9)/i],[Qv,[ny,"HTC"],[ty,ly]],[/(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,/(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,/(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i],[ny,[Qv,/_/g," "],[ty,sy]],[/droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i],[Qv,[ny,"Acer"],[ty,ly]],[/droid.+; (m[1-5] note) bui/i,/\\bmz-([-\\w]{2,})/i],[Qv,[ny,"Meizu"],[ty,sy]],[/\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i],[Qv,[ny,Ey],[ty,sy]],[/(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,/(hp) ([\\w ]+\\w)/i,/(asus)-?(\\w+)/i,/(microsoft); (lumia[\\w ]+)/i,/(lenovo)[-_ ]?([-\\w]+)/i,/(jolla)/i,/(oppo) ?([\\w ]+) bui/i],[ny,Qv,[ty,sy]],[/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\\/([\\w\\.]+)/i,/(nook)[\\w ]+build\\/(\\w+)/i,/(dell) (strea[kpr\\d ]*[\\dko])/i,/(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,/(trinity)[- ]*(t\\d{3}) bui/i,/(gigaset)[- ]+(q\\w{1,9}) bui/i,/(vodafone) ([\\w ]+)(?:\\)| bui)/i],[ny,Qv,[ty,ly]],[/(surface duo)/i],[Qv,[ny,ky],[ty,ly]],[/droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i],[Qv,[ny,"Fairphone"],[ty,sy]],[/(u304aa)/i],[Qv,[ny,"AT&T"],[ty,sy]],[/\\bsie-(\\w*)/i],[Qv,[ny,"Siemens"],[ty,sy]],[/\\b(rct\\w+) b/i],[Qv,[ny,"RCA"],[ty,ly]],[/\\b(venue[\\d ]{2,7}) b/i],[Qv,[ny,"Dell"],[ty,ly]],[/\\b(q(?:mv|ta)\\w+) b/i],[Qv,[ny,"Verizon"],[ty,ly]],[/\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i],[Qv,[ny,"Barnes & Noble"],[ty,ly]],[/\\b(tm\\d{3}\\w+) b/i],[Qv,[ny,"NuVision"],[ty,ly]],[/\\b(k88) b/i],[Qv,[ny,"ZTE"],[ty,ly]],[/\\b(nx\\d{3}j) b/i],[Qv,[ny,"ZTE"],[ty,sy]],[/\\b(gen\\d{3}) b.+49h/i],[Qv,[ny,"Swiss"],[ty,sy]],[/\\b(zur\\d{3}) b/i],[Qv,[ny,"Swiss"],[ty,ly]],[/\\b((zeki)?tb.*\\b) b/i],[Qv,[ny,"Zeki"],[ty,ly]],[/\\b([yr]\\d{2}) b/i,/\\b(dragon[- ]+touch |dt)(\\w{5}) b/i],[[ny,"Dragon Touch"],Qv,[ty,ly]],[/\\b(ns-?\\w{0,9}) b/i],[Qv,[ny,"Insignia"],[ty,ly]],[/\\b((nxa|next)-?\\w{0,9}) b/i],[Qv,[ny,"NextBook"],[ty,ly]],[/\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[ny,"Voice"],Qv,[ty,sy]],[/\\b(lvtel\\-)?(v1[12]) b/i],[[ny,"LvTel"],Qv,[ty,sy]],[/\\b(ph-1) /i],[Qv,[ny,"Essential"],[ty,sy]],[/\\b(v(100md|700na|7011|917g).*\\b) b/i],[Qv,[ny,"Envizen"],[ty,ly]],[/\\b(trio[-\\w\\. ]+) b/i],[Qv,[ny,"MachSpeed"],[ty,ly]],[/\\btu_(1491) b/i],[Qv,[ny,"Rotor"],[ty,ly]],[/(shield[\\w ]+) b/i],[Qv,[ny,"Nvidia"],[ty,ly]],[/(sprint) (\\w+)/i],[ny,Qv,[ty,sy]],[/(kin\\.[onetw]{3})/i],[[Qv,/\\./g," "],[ny,ky],[ty,sy]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i],[Qv,[ny,jy],[ty,ly]],[/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i],[Qv,[ny,jy],[ty,sy]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[ny,Qv,[ty,ay]],[/droid.+; (shield) bui/i],[Qv,[ny,"Nvidia"],[ty,ay]],[/(playstation [345portablevi]+)/i],[Qv,[ny,Ty],[ty,ay]],[/\\b(xbox(?: one)?(?!; xbox))[\\); ]/i],[Qv,[ny,ky],[ty,ay]],[/smart-tv.+(samsung)/i],[ny,[ty,cy]],[/hbbtv.+maple;(\\d+)/i],[[Qv,/^/,"SmartTV"],[ny,Cy],[ty,cy]],[/(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i],[[ny,_y],[ty,cy]],[/(apple) ?tv/i],[ny,[Qv,dy+" TV"],[ty,cy]],[/crkey/i],[[Qv,my+"cast"],[ny,yy],[ty,cy]],[/droid.+aft(\\w)( bui|\\))/i],[Qv,[ny,hy],[ty,cy]],[/\\(dtv[\\);].+(aquos)/i,/(aquos-tv[\\w ]+)\\)/i],[Qv,[ny,Ey],[ty,cy]],[/(bravia[\\w ]+)( bui|\\))/i],[Qv,[ny,Ty],[ty,cy]],[/(mitv-\\w{5}) bui/i],[Qv,[ny,Oy],[ty,cy]],[/\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,/hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i],[[ny,Dy],[Qv,Dy],[ty,cy]],[/\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i],[[ty,cy]],[/((pebble))app/i],[ny,Qv,[ty,uy]],[/droid.+; (glass) \\d/i],[Qv,[ny,yy],[ty,uy]],[/droid.+; (wt63?0{2,3})\\)/i],[Qv,[ny,jy],[ty,uy]],[/(quest( 2)?)/i],[Qv,[ny,xy],[ty,uy]],[/(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i],[ny,[ty,"embedded"]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i],[Qv,[ty,sy]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i],[Qv,[ty,ly]],[/\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i],[[ty,ly]],[/(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i],[[ty,sy]],[/(android[-\\w\\. ]{0,9});.+buil/i],[Qv,[ny,"Generic"]]],engine:[[/windows.+ edge\\/([\\w\\.]+)/i],[iy,[ey,"EdgeHTML"]],[/webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i],[iy,[ey,"Blink"]],[/(presto)\\/([\\w\\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,/ekioh(flow)\\/([\\w\\.]+)/i,/(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,/(icab)[\\/ ]([23]\\.[\\d\\.]+)/i],[ey,iy],[/rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i],[iy,ey]],os:[[/microsoft (windows) (vista|xp)/i],[ey,iy],[/(windows) nt 6\\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,/(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i],[ey,[iy,Ny,Ry]],[/(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i],[[ey,"Windows"],[iy,Ny,Ry]],[/ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,/cfnetwork\\/.+darwin/i],[[iy,/_/g,"."],[ey,"iOS"]],[/(mac os x) ?([\\w\\. ]*)/i,/(macintosh|mac_powerpc\\b)(?!.+haiku)/i],[[ey,"Mac OS"],[iy,/_/g,"."]],[/droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i],[iy,ey],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,/(blackberry)\\w*\\/([\\w\\.]*)/i,/(tizen|kaios)[\\/ ]([\\w\\.]+)/i,/\\((series40);/i],[ey,iy],[/\\(bb(10);/i],[iy,[ey,py]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i],[iy,[ey,"Symbian"]],[/mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i],[iy,[ey,vy+" OS"]],[/web0s;.+rt(tv)/i,/\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i],[iy,[ey,"webOS"]],[/crkey\\/([\\d\\.]+)/i],[iy,[ey,my+"cast"]],[/(cros) [\\w]+ ([\\w\\.]+\\w)/i],[[ey,"Chromium OS"],iy],[/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\\);]+)/i,/\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,/(mint)[\\/\\(\\) ]?(\\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,/(hurd|linux) ?([\\w\\.]*)/i,/(gnu) ?([\\w\\.]*)/i,/\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,/(haiku) (\\w+)/i],[ey,iy],[/(sunos) ?([\\w\\.\\d]*)/i],[[ey,"Solaris"],iy],[/((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,/(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,/\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,/(unix) ?([\\w\\.]*)/i],[ey,iy]]},Ly=function(){function e(t){var n;_classCallCheck(this,e),this.ua=(null===(n=window.navigator)||void 0===n?void 0:n.userAgent)||"",this.navigator=(null===window||void 0===window?void 0:window.navigator)||{},t&&(this.ua=t),this.regexes=Py}return _createClass(e,[{key:"rgxMapper",value:function(e,t){for(var n={},i=0,o=0,r=0,a=0,s=void 0,l=void 0,c=void 0;i<t.length&&!l;){var u=t[i],h=t[i+1];for(o=r=0;o<u.length&&!l;)if(l=u[o++].exec(e))for(a=0;a<h.length;a++)c=l[++r],_typeof(s=h[a])===Zv&&s.length>0?2===s.length?_typeof(s[1])==Jv?n[s[0]]=s[1](c):n[s[0]]=s[1]:3===s.length?_typeof(s[1])!==Jv||s[1].exec&&s[1].test?n[s[0]]=c?c.replace(s[1],s[2]):void 0:n[s[0]]=c?s[1](c,s[2]):void 0:4===s.length&&(n[s[0]]=c?s[3](c.replace(s[1],s[2])):void 0):n[s]=c||void 0;i+=2}return n}},{key:"getBrowser",value:function(){var e={};e[ey]=void 0,e[iy]=void 0;var t=this.rgxMapper(this.ua,this.regexes.browser);return e.major=function(e){return _typeof(e)===$v?e.replace(/[^\\d\\.]/g,"").split(".")[0]:void 0}(t.version),Object.assign(e,t),e}},{key:"getCPU",value:function(){var e={};e[oy]=void 0,e[ry]=this.navigator[ry];var t=this.rgxMapper(this.ua,this.regexes.cpu);return Object.assign(e,t),e}},{key:"getDevice",value:function(){var e={};e[ny]=void 0,e[Qv]=void 0,e[ty]=void 0;var t=this.rgxMapper(this.ua,this.regexes.device);return Object.assign(e,t),e}},{key:"getEngine",value:function(){var e={};e[ey]=void 0,e[iy]=void 0;var t=this.rgxMapper(this.ua,this.regexes.engine);return Object.assign(e,t),e}},{key:"getOS",value:function(){var e={};e[ey]=void 0,e[iy]=void 0;var t=this.rgxMapper(this.ua,this.regexes.os);return Object.assign(e,t),e}},{key:"getUA",value:function(){return this.ua}},{key:"setUA",value:function(e){var t=_typeof(e)===$v&&e.length>350?Dy(e,350):e;this.ua=t}},{key:"getResult",value:function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}}}]),e}(),My={log:new qv(30),info:new qv(30),debug:new qv(30),warn:new qv(30),error:new qv(30)},zy=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(null==e?void 0:e.some((function(e){return"NO-TRACKING"===e})))?"0000":tp.getZmTrackingId()},Fy=function(e,t,n){return["%c ".concat(e," %c ").concat(t," %c"),"background:".concat(n,";border:1px solid ").concat(n,"; padding: 1px; border-radius: 2px 0 0 2px; color: #fff;"),"border:1px solid ".concat(n,"; padding: 1px; border-radius: 0 2px 2px 0; color: ").concat(n,";"),"background:transparent"]},By=function(){return pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function e(){var t;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function e(){var t,n,i,o,r,a,s,l,c,u,h;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(l=window.navigator,c=(new Ly).getResult(),l){e.next=4;break}return e.abrupt("return",{});case 4:if(u=Object.assign({appCodeName:l.appCodeName,appName:l.appName,appVersion:l.appVersion,language:l.language,connection:{downlink:null===(t=l.connection)||void 0===t?void 0:t.downlink,downlinkMax:null===(n=l.connection)||void 0===n?void 0:n.downlinkMax,effectiveType:null===(i=l.connection)||void 0===i?void 0:i.effectiveType,rtt:null===(o=l.connection)||void 0===o?void 0:o.rtt,saveData:null===(r=l.connection)||void 0===r?void 0:r.saveData,type:null===(a=l.connection)||void 0===a?void 0:a.type},href:Dt(window.location.href)},c),!(null===(s=l.userAgentData)||void 0===s?void 0:s.getHighEntropyValues)){e.next=19;break}return e.prev=6,e.next=9,l.userAgentData.getHighEntropyValues(["architecture","bitness","fullVersionList","platformVersion","wow64","model","formFactor"]);case 9:h=e.sent,u.os&&(u.os.version=h.platformVersion),u.cpu&&(u.cpu.architecture=h.architecture,u.cpu.bitness=h.bitness),u.mobile=h.mobile,u.userAgentData=JSON.stringify(h),e.next=19;break;case 16:e.prev=16,e.t0=e.catch(6),console.log("get userAgentData error",e.t0);case 19:return e.abrupt("return",u);case 20:case"end":return e.stop()}}),e,null,[[6,16]])})));case 2:t=e.sent,Gy(["navigator"]).logWithReport(JSON.stringify(t));case 4:case"end":return e.stop()}}),e)})))},Uy=function(e,t){var n=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=null,o=0;return function(){for(var r=arguments.length,a=new Array(r),s=0;s<r;s++)a[s]=arguments[s];var l=Date.now();o||!1!==n.leading||(o=l);var c=t-(l-o),u=this;c<=0||c>t?(i&&(clearTimeout(i),i=null),o=l,e.apply(u,a)):i||!1===n.trailing||(i=setTimeout((function(){o=!1===n.leading?0:Date.now(),i=null,e.apply(u,a)}),c))}}(e,t,arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}),i=null,o=null,r=null;return function(){for(var e=arguments.length,a=new Array(e),s=0;s<e;s++)a[s]=arguments[s];i=a,o=this,r||(r=setTimeout((function(){i&&(n.apply(o,i),i=null,r=null)}),t)),n.apply(this,a)}}((function(){_m()&&Av.reportByFilter(["ZCB-CLIENT"])}),1e4);function Vy(e,t){var n,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:rg.log,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return pt(this,void 0,void 0,_regeneratorRuntime().mark((function r(){var a,s,l,c,u,h;return _regeneratorRuntime().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return a=np.getSession(),s=a.userId,l=a.sessionId,c=a.participantType,u=Bt.getCoBrowsingConfig("appKey"),r.next=4,Av.log(e,t,i,Object.assign({host:null!==(n=null===location||void 0===location?void 0:location.host)&&void 0!==n?n:"",zmDeviceId:window.ZCB_ZmDeviceId,sdkVersion:Yt(),info:{uuid:s,appKey:"{E}".concat(u,"{/E}"),sessionId:l,participantType:c}},o));case 4:return h=r.sent,Uy(),r.abrupt("return",h);case 7:case"end":return r.stop()}}),r)})))}var Wy,Gy=function(e){var t=_toConsumableArray(Kv(["ZCB-CLIENT"],e||[]));return{log:function(e,n){return function(e,t,n){var i,o;if(null!==(o=null===(i=null==ym?void 0:ym.logLevel)||void 0===i?void 0:i.log)&&void 0!==o&&o&&Xv(Av)){var r=zy(n),a=Kv([r],t||[]),s=Kv(a,n||[]),l=Yv("".concat(r).concat(e));if(!My.log.has(l))return My.log.set(l,!0),Vy(e,s,rg.log)}}(e,t,n)},logWithReport:function(e,n){return function(e,t,n){var i,o,r;if(null!==(o=null===(i=null==ym?void 0:ym.logLevel)||void 0===i?void 0:i.log)&&void 0!==o&&o&&Xv(Av)&&_m()){var a=zy(n),s=Kv([a],t||[]),l=Kv(s,n||[]),c=Yv("".concat(a).concat(e));if(!My.log.has(c)){My.log.set(c,!0);var u=np.getSession(),h=u.userId,d=u.sessionId,f=u.participantType,p=Bt.getCoBrowsingConfig("appKey");return Av.directReport({message:e,host:null!==(r=null===location||void 0===location?void 0:location.host)&&void 0!==r?r:"",zmDeviceId:window.ZCB_ZmDeviceId,sdkVersion:Yt(),info:{uuid:h,appKey:"{E}".concat(p,"{/E}"),sessionId:d,participantType:f}},{tags:l,logLevel:rg.log})}}}(e,t,n)},info:function(e,n){return function(e,t,n){var i,o;if(null!==(o=null===(i=null==ym?void 0:ym.logLevel)||void 0===i?void 0:i.info)&&void 0!==o&&o&&Xv(Av)){var r=zy(n),a=Kv([r],t||[]),s=Kv(a,n||[]),l=Yv("".concat(r).concat(e));if(!My.info.has(l))return My.info.set(l,!0),Vy(e,s,rg.info)}}(e,t,n)},debug:function(e,n){return function(e,t,n){var i,o;if(null!==(o=null===(i=null==ym?void 0:ym.logLevel)||void 0===i?void 0:i.debug)&&void 0!==o&&o&&Xv(Av)){var r=zy(n),a=Kv([r],t||[]),s=Kv(a,n||[]),l=Yv("".concat(r).concat(e));if(!My.debug.has(l))return My.debug.set(l,!0),Vy(e,s,rg.debug)}}(e,t,n)},error:function(e,n){return function(e,t,n){var i,o;if((i=console).error.apply(i,_toConsumableArray(Fy("laplace-error",e,"#F56C6C"))),(null===(o=null==ym?void 0:ym.logLevel)||void 0===o?void 0:o.error)&&Xv(Av)){var r=zy(n),a=Kv([r],t||[]),s=Kv(a,n||[]),l=Yv("".concat(r).concat(e));if(!My.error.has(l))return My.error.set(l,!0),Vy(e,s,rg.error)}}(e,t,n)},warn:function(e,n){return function(e,t,n){var i,o,r;if((i=console).warn.apply(i,_toConsumableArray(Fy("laplace-warn",e,"#E6A23C"))),null!==(r=null===(o=null==ym?void 0:ym.logLevel)||void 0===o?void 0:o.warn)&&void 0!==r&&r&&Xv(Av)){var a=zy(n),s=Kv([a],t||[]),l=Kv(s,n||[]),c=Yv("".concat(a).concat(e));if(!My.warn.has(c))return My.warn.set(c,!0),Vy(e,l,rg.warn)}}(e,t,n)},print:function(e){return function(e){var t,n;null!==(n=null===(t=null==ym?void 0:ym.logLevel)||void 0===t?void 0:t.print)&&void 0!==n&&n&&console.log(e)}(e)},performance:function(e,n){return function(e,t,n){var i,o;if(null!==(o=null===(i=null==ym?void 0:ym.logLevel)||void 0===i?void 0:i.log)&&void 0!==o&&o&&Xv(Av)){var r=zy(n),a=Kv([r],t||[]);return Vy(e,Kv(a,n||[]),rg.log)}}(e,t,n)},performanceRange:function(e,n,i){return function(e,t,n,i){var o,r;if(null!==(r=null===(o=null==ym?void 0:ym.logLevel)||void 0===o?void 0:o.log)&&void 0!==r&&r&&Xv(Av)){var a=zy(i),s=Kv([a],n||[]);return Vy(e,Kv(s,i||[]),rg.log,t)}}(e,n,t,i)},log_2:function(e,n){return function(e,t,n){var i,o;if(null!==(o=null===(i=null==ym?void 0:ym.logLevel)||void 0===i?void 0:i.log)&&void 0!==o&&o&&Xv(Av)){var r=JSON.stringify(e),a=zy(n),s=Kv([a],t||[]);return Vy(r,Kv(s,n||[]),rg.log)}}(e,t,n)},reportNavigator:function(){By()},setReportUrl:function(e){!function(e){if(bm.setDynamicReportUrl(e),Av&&"function"==typeof Av.setReportUrl){var t=Av.reportUrl;Av.setReportUrl(e),_m()&&e!==t&&Av.reportByFilter(["ZCB-CLIENT"])}}(e)},setLaplaceEnabled:function(e){var t;t=e,bm.setDynamicLaplaceEnabled(t)}}};Gy(["performance-log"]),function(e){e[e.ClientInit=1]="ClientInit",e[e.ClientInitFinished=2]="ClientInitFinished",e[e.CreateSessionStart=3]="CreateSessionStart",e[e.CreateSessionEnd=4]="CreateSessionEnd",e[e.PinCodeRequest=5]="PinCodeRequest",e[e.PinCodeUpdated=6]="PinCodeUpdated",e[e.PingEndpointListDone=7]="PingEndpointListDone",e[e.initWS=8]="initWS",e[e.WSConnected2Channel=9]="WSConnected2Channel",e[e.WSConnectedSuccess=10]="WSConnectedSuccess",e[e.SessionStart=11]="SessionStart",e[e.SessionStarted=12]="SessionStarted",e[e.SessionStartFinish=13]="SessionStartFinish",e[e.StartChannel=14]="StartChannel",e[e.UserRoster=15]="UserRoster",e[e.LeaderJoined=16]="LeaderJoined",e[e.FollowerJoined=17]="FollowerJoined",e[e.CallSessionInit=18]="CallSessionInit",e[e.AfterJoined=19]="AfterJoined",e[e.SessionDestroy=20]="SessionDestroy",e[e.AgentReconnectingInAgentSide=21]="AgentReconnectingInAgentSide",e[e.CustomerDisconnectedInAgentSide=22]="CustomerDisconnectedInAgentSide",e[e.CustomerTimeoutInAgentSide=23]="CustomerTimeoutInAgentSide",e[e.AgentReconnectingSuccessInAgentSide=24]="AgentReconnectingSuccessInAgentSide",e[e.CustomerReconnectingSuccessInAgentSide=25]="CustomerReconnectingSuccessInAgentSide",e[e.AgentJoinedInAgentSide=26]="AgentJoinedInAgentSide",e[e.CustomerJoinedInAgentSide=27]="CustomerJoinedInAgentSide",e[e.StartReplayInAgentSide=28]="StartReplayInAgentSide",e[e.CustomerReconnectingInCustomerSide=29]="CustomerReconnectingInCustomerSide",e[e.AgentDisconnectedInCustomerSide=30]="AgentDisconnectedInCustomerSide",e[e.AgentTimeoutInCustomerSide=31]="AgentTimeoutInCustomerSide",e[e.CustomerReconnectingSuccessInCustomerSide=32]="CustomerReconnectingSuccessInCustomerSide",e[e.AgentReconnectingSuccessInCustomerSide=33]="AgentReconnectingSuccessInCustomerSide"}(Wy||(Wy={}));var Hy,Yy={};_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Yy,Wy.ClientInit,"ClientInit"),Wy.ClientInitFinished,"ClientInitFinished"),Wy.CreateSessionStart,"CreateSessionStart"),Wy.CreateSessionEnd,"CreateSessionEnd"),Wy.PinCodeRequest,"PinCodeRequest"),Wy.PinCodeUpdated,"PinCodeUpdated"),Wy.PingEndpointListDone,"PingEndpointListDone"),Wy.initWS,"initWS"),Wy.WSConnected2Channel,"WSConnected2Channel"),Wy.WSConnectedSuccess,"WSConnectedSuccess"),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Yy,Wy.SessionStart,"SessionStart"),Wy.SessionStarted,"SessionStarted"),Wy.SessionStartFinish,"SessionStartFinish"),Wy.StartChannel,"StartChannel"),Wy.UserRoster,"UserRoster"),Wy.LeaderJoined,"LeaderJoined"),Wy.FollowerJoined,"FollowerJoined"),Wy.CallSessionInit,"CallSessionInit"),Wy.AfterJoined,"AfterJoined"),Wy.SessionDestroy,"SessionDestroy"),_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(Yy,Wy.AgentReconnectingInAgentSide,"AgentReconnectingInAgentSide"),Wy.CustomerDisconnectedInAgentSide,"CustomerDisconnectedInAgentSide"),Wy.CustomerTimeoutInAgentSide,"CustomerTimeoutInAgentSide"),Wy.AgentReconnectingSuccessInAgentSide,"AgentReconnectingSuccessInAgentSide"),Wy.CustomerReconnectingSuccessInAgentSide,"CustomerReconnectingSuccessInAgentSide"),Wy.AgentJoinedInAgentSide,"AgentJoinedInAgentSide"),Wy.CustomerJoinedInAgentSide,"CustomerJoinedInAgentSide"),Wy.StartReplayInAgentSide,"StartReplayInAgentSide"),Wy.CustomerReconnectingInCustomerSide,"CustomerReconnectingInCustomerSide"),Wy.AgentDisconnectedInCustomerSide,"AgentDisconnectedInCustomerSide"),_defineProperty2(_defineProperty2(_defineProperty2(Yy,Wy.AgentTimeoutInCustomerSide,"AgentTimeoutInCustomerSide"),Wy.CustomerReconnectingSuccessInCustomerSide,"CustomerReconnectingSuccessInCustomerSide"),Wy.AgentReconnectingSuccessInCustomerSide,"AgentReconnectingSuccessInCustomerSide"),function(e){e[e.IMAGE=0]="IMAGE",e[e.FONT=1]="FONT"}(Hy||(Hy={})),Gy(["cbs-connection"]);var Xy=[F.Input,B.Annotation],Ky=function(){function e(t){var n=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.8;_classCallCheck(this,e),this.logger=t,this.sample=i,this.cpuState="",this.localMachineTimeDelta=new Map,this.sessionInfo={sessionId:void 0,sessionRegion:void 0,startUrl:void 0},this.incrementalSourceCountMap=new Map,this.eventCacheListMap=new Map,this.handlePostMessage=function(e){if("SESSION_INFO"===e.data.eventType){var t=e.data.data;qy.setSessionInfo(t)}},this.setLocalMathineTimeDelta=function(e){e.connId&&(n.localMachineTimeDelta.set(e.connId,e.delta),n.batch(e.connId))},this.setSessionInfo=function(e){n.sessionInfo=e},this.log=function(e){var t,i,o=e.cId,r=e.event_source;if(o&&Xy.includes(r)){if(n.incrementalSourceCountMap.has(o)||(n.incrementalSourceCountMap.set(o,new Map),n.incrementalSourceCountMap.get(o).set(r,0)),!e.source_count){var a=n.incrementalSourceCountMap.get(o).get(r);if(n.incrementalSourceCountMap.get(o).set(r,a+1),0!==a&&Math.random()>n.sample)return;e.source_count=n.incrementalSourceCountMap.get(o).get(r)}e.cpu_state=n.cpuState;var s=n.localMachineTimeDelta.get(o);if(void 0===s)return n.eventCacheListMap.has(o)||n.eventCacheListMap.set(o,[]),void n.eventCacheListMap.get(o).push(e);var l=e.detime-(e.ptime-s),c=Object.assign(Object.assign({},e),{rtt:l,session_id:n.sessionInfo.sessionId,session_region:n.sessionInfo.sessionRegion,start_url:n.sessionInfo.startUrl,sdk_version:Bt.getCoBrowsingConfig("sdkVersion")});null===(i=null===(t=n.logger)||void 0===t?void 0:t.log_2)||void 0===i||i.call(t,c)}},this.observePressure(),this.addEventListener()}return _createClass(e,[{key:"addEventListener",value:function(){window.addEventListener("message",this.handlePostMessage)}},{key:"removeEventListener",value:function(){window.removeEventListener("message",this.handlePostMessage)}},{key:"observePressure",value:function(){var e=this;"PressureObserver"in window?new window.PressureObserver((function(t){e.cpuState=t[t.length-1].state})).observe("cpu",{sampleInterval:1e3}).catch((function(){console.log("")})):this.cpuState=""}},{key:"batchLog",value:function(e){var t=this;(this.eventCacheListMap.get(e)||[]).forEach((function(e){t.log(e)}))}},{key:"batch",value:function(e){if(e)this.batchLog(e);else{var t,n=_createForOfIteratorHelper(this.eventCacheListMap);try{for(n.s();!(t=n.n()).done;){var i=_slicedToArray(t.value,1)[0];this.batchLog(i)}}catch(e){n.e(e)}finally{n.f()}}}},{key:"delete",value:function(e){this.localMachineTimeDelta.delete(e),this.incrementalSourceCountMap.delete(e),this.eventCacheListMap.delete(e)}},{key:"destroy",value:function(){this.localMachineTimeDelta.clear(),this.incrementalSourceCountMap.clear(),this.eventCacheListMap.clear(),this.sessionInfo={sessionId:void 0,sessionRegion:void 0,startUrl:void 0},this.removeEventListener()}}]),e}(),qy=new Ky(Gy(["cbs-interaction-latency"]));function Jy(e){return"[object Object]"===Object.prototype.toString.call(e)}function Zy(e){return"[object String]"===Object.prototype.toString.call(e)}var $y;function Qy(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=(null==e?void 0:e.customizeOverrides)||{};if(!Jy(n))return{};var i={};return t.forEach((function(e){i[e]={}})),Object.entries(n).forEach((function(e){var n=_slicedToArray(e,2),o=n[0],r=n[1],a=void 0===r?{}:r;Jy(a)&&t.forEach((function(e){var t=a[e];(e===$y.css&&Jy(t)||e===$y.icon&&Zy(t)||e===$y.text&&Zy(t)||e===$y.disabledSwitcher&&function(e){return"[object Boolean]"===Object.prototype.toString.call(e)}(t)||e===$y.position&&"object"===_typeof(t)&&null!==t&&["top","bottom","left","right"].some((function(e){return Zy(t[e])})))&&(i[e][o]=t)}))})),i}!function(e){e.css="stylingOverrides",e.icon="iconOverride",e.text="textOverride",e.disabledSwitcher="disabledComponentOverride",e.position="initPositionOverride"}($y||($y={}));var eb=["background","backgroundImage","content"];function tb(e,t){var n=t.toLowerCase();return eb.includes(e)&&(n.includes("javascript:")||n.includes("<script")||n.includes("data:text/html")||n.includes("expression("))}var nb=Gy(["Insert Data Manager","COMMON"]),ib=function(){function e(t){_classCallCheck(this,e),this._insertCSSRuleData=new Map,this._insertIconSrcData=new Map,this._insertTextData=new Map,this._insertDisabledSwitcherData=new Map,this._insertPositionData=new Map,this._insertDataKeyToInsertData=_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2({},$y.css,this._insertCSSRuleData),$y.icon,this._insertIconSrcData),$y.text,this._insertTextData),$y.disabledSwitcher,this._insertDisabledSwitcherData),$y.position,this._insertPositionData),t&&(nb.log("init insert data"),this.transformConfigData(t))}return _createClass(e,[{key:"transformConfigData",value:function(e){if(!Vn()){try{this.updateInsertData(e,[$y.css,$y.icon,$y.text,$y.disabledSwitcher,$y.position])}catch(e){nb.error("insert data transform error: ".concat(e))}nb.log("insert data count: ".concat(Object.entries(this._insertDataKeyToInsertData).map((function(e){var t=_slicedToArray(e,2),n=t[0],i=t[1];return"".concat(n,": ").concat(_toConsumableArray(i).length)})).join(",")))}}},{key:"updateInsertData",value:function(e,t){var n=this,i=Qy(e,t);t.forEach((function(e){var t=n._insertDataKeyToInsertData[e];null==t||t.clear();var o=i[e];if(o&&t){if(o[$y.css])for(var r in o[$y.css])o[$y.css][r]=n.sanitizeStyleObject(o[$y.css][r]);if(o[$y.icon])for(var a in o[$y.icon])n.isSafeSrc(o[$y.icon][a])||(nb.warn(\'[Security] unsafe image src for "\'.concat(a,\'" with value "\').concat(o[$y.icon][a],\'"\')),delete o[$y.icon][a]);Object.entries(o).forEach((function(n){var i=_slicedToArray(n,2),o=i[0],r=i[1];switch(e){case $y.css:case $y.icon:case $y.text:case $y.disabledSwitcher:case $y.position:t.set(o,r)}}))}else nb.log("no insert data")}))}},{key:"sanitizeStyleObject",value:function(e){var t={};for(var n in e){var i=e[n];"object"===_typeof(i)&&null!==i?t[n]=this.sanitizeStyleObject(i):tb(n,String(i))?nb.warn(\'[Security] Blocked unsafe style for "\'.concat(n,\'" with value "\').concat(i,\'"\')):t[n]=i}return t}},{key:"isSafeSrc",value:function(e){return!e||function(e){if(e.startsWith("data:image/"))return!!/^data:image\\/(png|jpeg|jpg|gif|webp|bmp|x-icon|ico|svg\\+xml);base64,/.test(e);var t=e.split(",")[1];if(!t)return!1;try{var n=atob(t).toLowerCase();return!(n.includes("<script")||n.includes("javascript:")||n.includes("<iframe")||n.includes("<object")||n.includes("onerror=")||n.includes("onload="))}catch(e){return!1}}(e)}},{key:"getInsertCSSRule",value:function(e){return e&&this._insertCSSRuleData.has(e)?this._insertCSSRuleData.get(e):""}},{key:"getInsertIconSrcData",value:function(e){if(e&&this._insertIconSrcData.has(e))return this._insertIconSrcData.get(e)}},{key:"getInsertTextData",value:function(e){return e&&this._insertTextData.has(e)?this._insertTextData.get(e):null}},{key:"getDisabledSwitcherData",value:function(e){return!(!e||!this._insertDisabledSwitcherData.has(e))&&this._insertDisabledSwitcherData.get(e)}},{key:"getPositionData",value:function(e){return e&&this._insertPositionData.has(e)?this._insertPositionData.get(e):null}},{key:"destroy",value:function(){this._insertCSSRuleData.clear(),this._insertIconSrcData.clear(),this._insertTextData.clear(),this._insertDisabledSwitcherData.clear(),this._insertPositionData.clear(),nb.log("insert data destroyed")}}]),e}(),ob=t.makeLogger(["CoBrowsing CoBrowse","COMMON"]),rb=t.performanceLog.logWithBaseTags(["COMMON","COMMON_COBROWSE"]),ab=[g.CONNECTING,g.RECONNECTING,g.PERSISTING],sb=[Ce.INVALID_TOKEN,Ce.INVALID_TOKEN2,Ce.INVALID_TOKEN_3,Ce.INVALID_TOKEN_4,Ce.TOKEN_EXPIRED,Ce.SESSION_NOT_FOUND],lb=function(e){_inherits(r,e);var n=_createSuper(r);function r(e){var t;return _classCallCheck(this,r),(t=n.call(this)).settings=e,t.initGetLocalSession=function(){return pt(_assertThisInitialized2(t),void 0,void 0,_regeneratorRuntime().mark((function e(){var t=this;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.getLocalSession().then((function(e){var n=e.sessionId,o=e.authToken,r=e.pinCode;return pt(t,void 0,void 0,_regeneratorRuntime().mark((function e(){var t,a,s=this;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(n&&o&&r)){e.next=23;break}if(e.prev=1,!Wt()||(null===(t=this.settings.multiTabSessionPersistence)||void 0===t?void 0:t.enable)){e.next=5;break}return e.next=5,Qf.handleDuplicateSession({key:"com_session_existing",onError:function(){s.session.sessionStatus=g.NOT_CREATED,ob.error("New customer page trigger invalid reconnecting.")}});case 5:if(i.comAuthController){e.next=7;break}throw new Error("CALL getLocalSession failed, can not find auth module");case 7:return e.next=9,i.comAuthController.getSessionStatus({sessionId:n,isCallByZCB:!0,authToken:o,retry:{limit:0}});case 9:ob.log("CALL getLocalSession session status change, ".concat(g.RECOVERABLE)),(null===(a=this.settings.multiTabSessionPersistence)||void 0===a?void 0:a.enable)&&!wp.isClosedTab()?this.session.sessionStatus=g.CAN_PERSIST:this.session.sessionStatus=g.RECOVERABLE,this.session.sessionId=n,this.session.authToken=o,this.session.pinCode=r,e.next=21;break;case 16:return e.prev=16,e.t0=e.catch(1),ob.log("customer reconnecting getSessionStatus, maybe will CALL delLocalSession, error: ".concat(JSON.stringify(e.t0))),(wp.shouldToClearWhenError()||e.t0&&"object"===_typeof(e.t0)&&sb.includes(e.t0.code))&&(ob.log("customer reconnecting getSessionStatus, CALL delLocalSession, error: ".concat(JSON.stringify(e.t0))),i.delLocalSession(),wp.clearToInit()),e.abrupt("return",!1);case 21:e.next=25;break;case 23:i.delLocalSession(),wp.clearToInit();case 25:return e.abrupt("return",!0);case 26:case"end":return e.stop()}}),e,this,[[1,16]])})))})));case 1:case"end":return e.stop()}}),e,this)})))},t.setMaxListeners(100),t.initInsertDataStore(t.settings),t.updateZcbSettings(t.settings),o.publicStore.setState(o.comDefaultPublicShape),o.recordingStore.setState(o.defaultRecordingShape),o.publicStore.setState({isCommonMode:!0,insertDataStore:t.insertDataStoreManager}),t}return _createClass(r,[{key:"updateZcbSettings",value:function(e){var t,n,i,o,r;this.settings=Object.assign({},jp,e),this.formatSettings={sessionConfig:{session_settings:{allow_customer_annotation:this.settings.allowCustomerAnnotation,allow_agent_annotation:this.settings.allowAgentAnnotation,mask_data:this.settings.piiMask?{enable:!0,mask_type:null===(t=this.settings.piiMask)||void 0===t?void 0:t.maskType,mask_css_selectors:null===(n=this.settings.piiMask)||void 0===n?void 0:n.maskCssSelectors,mask_html_attribute:null===(i=this.settings.piiMask)||void 0===i?void 0:i.maskHTMLAttributes}:void 0,recording:this.settings.recording,remote_assist:this.settings.remoteAssist?{enable:this.settings.remoteAssist.enable,enable_customer_consent:null===(o=this.settings.remoteAssist.enableCustomerConsent)||void 0===o||o,remote_assist_types:null!==(r=this.settings.remoteAssist.remoteAssistTypes)&&void 0!==r?r:["scroll_page"]}:void 0,multi_tab_session_persistence:this.settings.multiTabSessionPersistence?{enable:this.settings.multiTabSessionPersistence.enable,state_cookie_key:this.settings.multiTabSessionPersistence.stateCookieKey}:void 0}},usePinCodeUI:this.settings.usePinCodeUI,ignoredElements:this.settings.ignoredElements||[]}}},{key:"initInsertDataStore",value:function(e){this.insertDataStoreManager=new ib(e)}},{key:"handleLeaderEvent",value:function(e){var t,n,i,r,a,s,l,u;if(!this.session.destroying||e.event===c.SESSION_ENDED||e.event===c.SESSION_LEFT||e.event===c.CURRENT_USER_TRANSFER&&(null===(t=e.data)||void 0===t?void 0:t.state)===H.TRANSFER_OUT_SUCCESS){if(e.event===c.CUSTOMER_JOINED&&e.data.callType===y.AUTO||this.session.isCurrentReconnectSession?o.publicStore.setState({showEndButton:!0,showLeaveButton:!0,showBorder:!0,showConnectDialog:!1,showReconnectDialog:!1,showPinCodeDialog:!1,showCustomerToolBar:null!==(i=null===(n=this.session.sessionSettings)||void 0===n?void 0:n.allow_customer_annotation)&&void 0!==i&&i,tipsContent:{forceClose:!0}}):e.event===c.AGENT_JOINED&&(o.publicStore.setState({showEndButton:!0,showLeaveButton:!0,showBorder:!0,showConnectDialog:!1,showReconnectDialog:!1,showPinCodeDialog:!1,showCustomerToolBar:null!==(a=null===(r=this.session.sessionSettings)||void 0===r?void 0:r.allow_customer_annotation)&&void 0!==a&&a,tipsContent:{forceClose:!0}}),this.session.callType===y.PERSIST&&this.setTransferTipsState(H.SUCCESS)),e.event===c.CUSTOMER_JOINED&&this.leaderPageVisibility(!0),this.session.isCurrentReconnectSession&&o.publicStore.setState({isRemoteControlling:!1,showRemoteControlRequestDialog:!1,showCustomerRemoteControlStopDialog:!1}),e.event===c.RECORD_STOPPED&&o.recordingStore.setState({isRecording:!1}),e.event===c.RECORD_PAUSED&&o.recordingStore.setState({isRecording:!1}),e.event===c.RECORD_STARTED&&o.recordingStore.setState({isRecording:!0}),e.event===c.RECORD_RESUMED&&o.recordingStore.setState({isRecording:!0}),e.event===c.REMOTE_CONTROL_REQUEST&&((null===(l=null===(s=this.session.sessionSettings)||void 0===s?void 0:s.remote_assist)||void 0===l?void 0:l.enable_customer_consent)?o.publicStore.setState({showRemoteControlRequestDialog:!0,remoteControlApproveId:e.data.remoteControlApproveId}):(this.requestBrowserControl(Q.REMOTE_CONTROL_RESPONSE),o.publicStore.setState({showRemoteControlRequestDialog:!1,isRemoteControlling:!0}))),e.event===c.REMOTE_CONTROL_CANCEL&&o.publicStore.setState({showRemoteControlRequestDialog:!1,isRemoteControlling:!1,tipsContent:{msg:"Agent cancel the remote assist."}}),e.event===c.REMOTE_CONTROL_GIVE_UP&&o.publicStore.setState({showRemoteControlRequestDialog:!1,showCustomerRemoteControlStopDialog:!1,isRemoteControlling:!1,tipsContent:{msg:"Agent stopped the remote assist."}}),e.event===c.REMOTE_CONTROL_STATUS&&4===(null===(u=null==e?void 0:e.data)||void 0===u?void 0:u.status)&&o.publicStore.setState({showRemoteControlRequestDialog:!1,isRemoteControlling:!1,tipsContent:{msg:"Agent cancel the remote assist."}}),e.event===c.SESSION_STARTED&&wp.updateSessionTabNo(!0),e.event===c.SESSION_ENDED){var h=(e.data||{}).reason;ob.log("session ended, reason:".concat(h));var d="";h===S.END_SESSION&&"customer"!==e.data.from&&(d=I.AGENT_END_COBROWSE),o.publicStore.setState(Object.assign(Object.assign({},d?{tipsContent:{msg:d}}:null),{showConnectDialog:!1,showReconnectDialog:!1,isRemoteControlling:!1})),wp.clearAll(),wp.updateSessionTabNo(),this.destroy(100)}if(e.event===c.CURRENT_USER_TRANSFER)(e.data||{}).state===H.TRANSFER_OUT_SUCCESS&&(o.publicStore.setState({showConnectDialog:!1,showReconnectDialog:!1,isRemoteControlling:!1}),this.destroy());if(e.event===c.SESSION_LEFT){var f=(e.data||{}).reason;ob.log("user leave, ".concat(f)),this.destroy()}if(e.event===c.AGENT_DISCONNECTED)o.publicStore.getState().remoteControlApproveId===e.data.user.id&&o.publicStore.setState({showRemoteControlRequestDialog:!1});if(e.event===c.SESSION_CANCELING){var p=e.data||{},g=p.reason,m=p.preSessionStatus,v=p.sessionId;ob.log("user session canceling, reason is: ".concat(g,", preSessionStatus is: ").concat(m,", sessionId is: ").concat(v)),o.publicStore.setState(o.comDefaultPublicShape),o.recordingStore.setState(o.defaultRecordingShape)}}else ob.log("received a leader event during destroy")}},{key:"handleFollowerEvent",value:function(e){var t,n,i;if(e.event===c.SESSION_ENDED&&(o.publicStore.setState({isRemoteControlling:!1}),this.destroy(100)),e.event===c.SESSION_RECONNECTING&&o.publicStore.setState({isRemoteControlling:!1,showRemoteControlWaitingForApproveDialog:!1,showAgentRemoteControlStopDialog:!1}),e.event===c.SESSION_LEFT&&this.destroy(),e.event===c.REMOTE_CONTROL_RESPONSE){o.publicStore.setState({isRemoteControlling:!0,showRemoteControlWaitingForApproveDialog:!1});var r=null===(t=this.session.sessionSettings)||void 0===t?void 0:t.remote_assist;Vt.postMessageToIframes({eventType:"REMOTE_ASSIST_INFO",data:{payload:r}})}if(e.event===c.REMOTE_CONTROL_TAKE_BACK&&o.publicStore.setState({showRemoteControlWaitingForApproveDialog:!1,isRemoteControlling:!1,showAgentRemoteControlStopDialog:!1,tipsContent:{msg:"Customer stopped the remote assist."}}),e.event===c.REMOTE_CONTROL_REJECT&&o.publicStore.setState({showRemoteControlWaitingForApproveDialog:!1,isRemoteControlling:!1,tipsContent:{msg:"Customer reject the remote assist."}}),e.event===c.REMOTE_CONTROL_STATUS&&(2===(null===(n=null==e?void 0:e.data)||void 0===n?void 0:n.status)&&o.publicStore.setState({showRemoteControlWaitingForApproveDialog:!1,isRemoteControlling:!1,showAgentRemoteControlStopDialog:!1,tipsContent:{msg:"Customer stopped the remote assist."}}),o.publicStore.setState({remoteControlStatus:null===(i=null==e?void 0:e.data)||void 0===i?void 0:i.status})),e.event===c.SESSION_CANCELING){var a=e.data||{},s=a.reason,l=a.preSessionStatus,u=a.sessionId;ob.log("user session canceling, reason is: ".concat(s,", preSessionStatus is: ").concat(l,", sessionId is: ").concat(u)),o.publicStore.setState(o.comDefaultPublicShape),o.recordingStore.setState(o.defaultRecordingShape)}e.event===c.CUSTOMER_FOCUS_LOST&&((e.data||{}).isLost?o.comStore.getState().comCurrentPage===h.COM_VIEWER&&o.publicStore.setState({tipsContent:{msg:"The customer has left the current page.",duration:null}}):o.publicStore.setState({tipsContent:{forceClose:!0}}));e.event===c.CUSTOMER_TRANSFERRED&&(o.comStore.getState().comCurrentPage===h.COM_VIEWER&&setTimeout((function(){o.publicStore.setState({tipsContent:{forceClose:!0}}),o.publicStore.setState({tipsContent:{type:"success",msg:"The session has been transferred to this page."}})}),3e3))}},{key:"getParamsFromJwt",value:function(e){if(!e)return ob.error("cannot get, jwt is empty"),{};var t=Xt(e||"",["user_id","role_type","user_name"],ob);return np.setSession({userId:t.user_id,participantType:t.role_type}),{userId:t.user_id,userName:t.user_name,participantType:t.role_type}}},{key:"listenSwitchTabToPersist",value:function(e){var t=this,n=wp.getSessionCookie("roles")||[];ob.log("switch tab: visible ".concat(e.visible,", roles ").concat(n)),n.length<2||(e.visible?this.persistTimer=setTimeout((function(){t.persist()}),0):(clearTimeout(this.persistTimer),this.cancel(),this.setTransferTipsState(H.CANCEL),o.publicStore.setState({tipsContent:{forceClose:!0}})))}},{key:"initLeaderPageVisibilityListener",value:function(){var e,t=this;(null===(e=this.settings.multiTabSessionPersistence)||void 0===e?void 0:e.enable)&&(this.leaderPageVisibilityListener&&this.leaderPageVisibilityListener.stop(),this.leaderPageVisibilityListener=new ip,this.leaderPageVisibilityListener.init(),this.leaderPageVisibilityListener.on("change",(function(e){t.leaderPageVisibility(e),e||o.publicStore.setState({tipsContent:{forceClose:!0}})})))}},{key:"initSwitchTabListener",value:function(){var e,t=this;(null===(e=this.settings.multiTabSessionPersistence)||void 0===e?void 0:e.enable)&&(wp.clearListener(),wp.on("change",(function(e){t.listenSwitchTabToPersist(e)})),wp.init())}},{key:"getLocalSession",value:function(){var e=this;return i.getLocalSession().then((function(t){var n,i,o=t.sessionId,r=t.authToken,a=t.pinCode;if((null===(n=e.settings.multiTabSessionPersistence)||void 0===n?void 0:n.enable)&&(o&&r&&a||(i=navigator.userAgent,/Safari/.test(i)&&!/Chrome/.test(i)))){var s=wp.getSessionCookies(["sid","atk","pcode"])||{};if(s.atk)return{sessionId:s.sid,authToken:s.atk,pinCode:s.pcode}}return{sessionId:o,authToken:r,pinCode:a}}))}},{key:"init",value:function(){var e,t;return pt(this,void 0,void 0,_regeneratorRuntime().mark((function n(){var r,a,s=this;return _regeneratorRuntime().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return o.publicStore.setState({session:this}),r=this.initSession(),this.session=r,(null===(e=this.settings.multiTabSessionPersistence)||void 0===e?void 0:e.enable)&&wp.setCookieKey(null===(t=this.settings.multiTabSessionPersistence)||void 0===t?void 0:t.stateCookieKey),a=this,this.session.on(u,(function(e){return pt(s,void 0,void 0,_regeneratorRuntime().mark((function t(){var n,r,s,l,u,h,d,f,p,g;return _regeneratorRuntime().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!e.event){t.next=12;break}if(u=null===(n=a.session.currentParticipant)||void 0===n?void 0:n.participant_type,h=Object.assign({},e.data),e.event===c.SESSION_ERROR&&(d=e.data||{},f=d.code,p=d.reason,g=Mp(f),this.session.callType===y.PERSIST&&(g=Op.TRANSFER_TO_NEW_TAB_FAILED,this.setTransferTipsState(H.FAIL)),g&&(h.code=g),ob.log("session error trigger, internalCode:".concat(f,", externalCode:").concat(g,",reason:").concat(p,", ").concat((new Date).valueOf())),Wn(null===(r=e.data)||void 0===r?void 0:r.code)||Gn(null===(s=e.data)||void 0===s?void 0:s.code)||(wp.shouldToClearWhenError()&&(i.delLocalSession(),wp.clearToInit()),this.destroy())),u===It.LEADER?(ob.log("customer session event trigger, event: ".concat(e.event,", ").concat((new Date).valueOf())),this.handleLeaderEvent(e)):(ob.log("agent session event trigger, event: ".concat(e.event,", ").concat((new Date).valueOf())),this.handleFollowerEvent(e)),u&&u!==(null===(l=null===o.publicStore||void 0===o.publicStore?void 0:o.publicStore.getState())||void 0===l?void 0:l.participantType)&&o.publicStore.setState({participantType:u}),delete h.callType,h.version=Yt(),u!==It.LEADER||!Un()){t.next=11;break}return ob.log("TA not trigger events"),t.abrupt("return");case 11:m=e.event,[c.SESSION_CANCELING].includes(m)||this.emit(e.event,h);case 12:case"end":return t.stop()}var m}),t,this)})))})),this.initLeaderPageVisibilityListener(),this.initGetLocalSession().then((function(){s.initSwitchTabListener(),s.emit(c.SESSION_INITED,s)})),n.abrupt("return",this);case 9:case"end":return n.stop()}}),n,this)})))}},{key:"getSessionInfo",value:function(){var e,t,n,i;if(!this.session)return ob.error("session not create"),null;if(this.session.sessionStatus===g.NOT_CREATED||this.session.sessionStatus===g.CONNECT_FAILED||this.session.sessionStatus===g.CANCELING){var o=Bt.getCoBrowsingConfig("isLoadFromSDKEntry");return{sessionId:this.session.sessionId,pinCode:this.session.pinCode,sessionStatus:this.session.sessionStatus,authToken:o?"":this.getToken(),authTemplateToken:o?"":this.getZCBTemplateToken(),isRecordingEnable:null===(t=null===(e=this.session)||void 0===e?void 0:e.recordingManager)||void 0===t?void 0:t.getIsRecordingEnable}}return{sessionId:this.session.sessionId,pinCode:this.session.pinCode,sessionStatus:this.session.sessionStatus,authToken:this.getToken()||this.session.authToken,isRecordingEnable:null===(i=null===(n=this.session)||void 0===n?void 0:n.recordingManager)||void 0===i?void 0:i.getIsRecordingEnable}}},{key:"initSession",value:function(){var e=function(){var e=Bt.getCoBrowsingConfig("domain");return"https://".concat(e)}();return new cg(Object.assign({host:e},this.formatSettings))}},{key:"start",value:function(e){var n,i=this.getParamsFromJwt((null==e?void 0:e.sdkToken)||"").userId;if(ob.log("CALL API start flow, ".concat((new Date).valueOf())),np.getCobrowse().isCobrowseLocked?ob.log("[No-Error]duplicate call start, cobrowse session already called, uuid: ".concat(i,", ").concat((new Date).valueOf())):np.setIsCobrowseLocked(!0),!this.session){var r="start failed, session not inited";return ob.error(r),t.cbsConnectionLog({result:0,failedType:"INIT_SESSION_START",message:r}),void np.setIsCobrowseLocked(!1)}if(this.session.sessionStatus===g.CONNECTING||this.session.sessionStatus===g.RECONNECTING||this.session.sessionStatus===g.PERSISTING||this.session.sessionStatus===g.STARTED||this.session.sessionStatus===g.CANCELING){var a=9999,s="";ab.includes(this.session.sessionStatus)&&(a=se.SESSION_CONNECTING,s=Se[se.SESSION_CONNECTING]),this.session.sessionStatus===g.STARTED&&(a=se.DUPLICATE_SESSION,s=Se[se.DUPLICATE_SESSION]),this.session.sessionStatus===g.CANCELING&&(a=se.SESSION_CANCELING,s=Se[se.SESSION_CANCELING]);var l=Mp(a);ob.log("session error trigger from call start, internalCode:".concat(a,", externalCode:").concat(l,",reason:").concat(s,", ").concat((new Date).valueOf()));var u={code:l,errorMsg:s,sessionId:"",version:Yt()};return this.emit(c.SESSION_ERROR,u),ob.log("CALL API start failed, sessionStatus: ".concat(this.session.sessionStatus)),t.cbsConnectionLog({sessionId:this.session.sessionId,participantType:null===(n=this.session.currentParticipant)||void 0===n?void 0:n.participant_type,result:0,failedType:"INIT_SESSION_START",message:"session status is incorrect: ".concat(this.session.sessionStatus)}),void np.setIsCobrowseLocked(!1)}ob.reportNavigator(),rb.log(t.PerformanceLogEnum.SessionStart),o.publicStore.setState({showConnectDialog:!1}),this.formatSettings.usePinCodeUI&&o.publicStore.setState({showPinCodeDialog:!0}),this.session.init({callType:y.START,sessionOptions:e})}},{key:"join",value:function(e){var n=!!e;if(n&&this.getParamsFromJwt((null==e?void 0:e.sdkToken)||""),ob.log("CALL API join flow, ".concat((new Date).valueOf())),np.getCobrowse().isCobrowseLocked){var i=Xt(e.sdkToken||"",["user_id"],ob).user_id;ob.log("[No-Error]duplicate call ".concat(n?"join":"autojoin",", cobrowse session already called, uuid: ").concat(i,", ").concat((new Date).valueOf()))}else np.setIsCobrowseLocked(!0);if(!this.session){var r="join failed, session not inited";return ob.error(r),t.cbsConnectionLog({result:0,failedType:"INIT_SESSION_JOIN",message:r}),void np.setIsCobrowseLocked(!1)}Wt()&&o.publicStore.setState({participantType:It.LEADER}),ob.reportNavigator(),n?(ob.log("CALL API user join flow, ".concat((new Date).valueOf())),o.publicStore.setState({showConnectDialog:!1}),this.session.init({callType:y.JOIN,sessionOptions:e})):this.autoJoin()}},{key:"autoJoin",value:function(){return pt(this,void 0,void 0,_regeneratorRuntime().mark((function e(){var n;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(ob.log("CALL API autojoin flow, ".concat((new Date).valueOf())),this.session){e.next=7;break}return n="autojoin failed, session not inited",ob.error(n),t.cbsConnectionLog({result:0,failedType:"INIT_SESSION_AUTO_JOIN",message:n}),np.setIsCobrowseLocked(!1),e.abrupt("return");case 7:wp.removeSessionCookie("cst"),this.session.init({callType:y.AUTO});case 9:case"end":return e.stop()}}),e,this)})))}},{key:"persist",value:function(){return pt(this,void 0,void 0,_regeneratorRuntime().mark((function e(){var t;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(![].concat(ab,[g.STARTED]).includes(this.session.sessionStatus)){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,this.initGetLocalSession();case 4:if(e.sent){e.next=9;break}return ob.error("persist error: init get local session failed, maybe session expired"),this.session.sessionStatus=g.NOT_CREATED,e.abrupt("return");case 9:if(this.session.sessionId){e.next=12;break}return wp.clearToInit(),e.abrupt("return");case 12:this.setTransferTipsState(H.TRANSFERRING),o.publicStore.setState({callType:y.PERSIST,tipsContent:{msg:"Transferring session. Please stay on this page.",duration:null}}),Wt()&&o.publicStore.setState({participantType:It.LEADER}),ob.log("CALL API persistence flow, ".concat((new Date).valueOf())),ob.reportNavigator(),t=np.getCobrowse(),t.isCobrowseLocked?ob.log("[No-Error]duplicate call persist, cobrowse session already called, ".concat((new Date).valueOf())):np.setIsCobrowseLocked(!0),this.session.init({callType:y.PERSIST});case 20:case"end":return e.stop()}}),e,this)})))}},{key:"pause",value:function(){}},{key:"resume",value:function(){}},{key:"cancel",value:function(){ob.log("switch tab: cancel connecting, session status: ".concat(this.session.sessionStatus)),this.session&&ab.includes(this.session.sessionStatus)&&(ob.log("CALL API cancel"),this.session.cancel())}},{key:"end",value:function(){this.session&&(ob.log("CALL API end"),this.session.end())}},{key:"leave",value:function(){this.session&&(ob.log("CALL API leave"),this.session.leave())}},{key:"destroy",value:function(e){setTimeout((function(){ob.log("CALL destroy, ".concat((new Date).valueOf())),o.publicStore.setState(o.comDefaultPublicShape),o.recordingStore.setState(o.defaultRecordingShape),tp.clearZmTrackingId(),tp.getZmTrackingId(),np.clearSession()}),e||0),null===i.comAuthController||void 0===i.comAuthController||i.comAuthController.clearAutoRefreshToken()}},{key:"failOver",value:function(){var e;null===(e=this.session)||void 0===e||e.sessionFailOver()}},{key:"getToken",value:function(){if(i.comAuthController)return i.comAuthController.getSyncZCBWebToken();ob.error("CALL startRefreshToken failed, can not find auth module")}},{key:"getZCBTemplateToken",value:function(){if(i.comAuthController)return i.comAuthController.getSyncZCBWebTemplateToken();ob.error("CALL getZCBTemplateToken failed, can not find auth module")}},{key:"requestBrowserControl",value:function(e){this.session&&this.session.requestBrowserControl(e)}},{key:"revokeBrowserControl",value:function(){}},{key:"returnBrowserControl",value:function(){}},{key:"startRecord",value:function(){ob.log("CALL API startRecord"),this.session.startRecord()}},{key:"stopRecord",value:function(){ob.log("CALL API stopRecord"),this.session.stopRecord()}},{key:"pauseRecord",value:function(){ob.log("CALL API pauseRecord"),this.session.pauseRecord()}},{key:"resumeRecord",value:function(){ob.log("CALL API resumeRecord"),this.session.resumeRecord()}},{key:"responseRecordingLegalConsent",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];ob.log("CALL API responseRecordingLegalConsent"),this.session.responseRecordingLegalConsent(e,t)}},{key:"leaderPageVisibility",value:function(e){this.session.leaderPageVisibility(e)}},{key:"setTransferTipsState",value:function(e){var t=this.getParamsFromJwt(this.session.authToken||""),n=t.userId,i=void 0===n?"":n,o=t.userName,r=void 0===o?"":o;this.emit(c.CURRENT_USER_TRANSFER,{state:e,sessionId:this.session.sessionId,version:Yt(),user:{id:i,name:null!=r?r:""}})}},{key:"on",value:function(e,t){return _get(_getPrototypeOf(r.prototype),"on",this).call(this,e,t)}},{key:"once",value:function(e,t){return _get(_getPrototypeOf(r.prototype),"once",this).call(this,e,t)}},{key:"off",value:function(e,t){return _get(_getPrototypeOf(r.prototype),"off",this).call(this,e,t)}},{key:"emit",value:function(e,t){return _get(_getPrototypeOf(r.prototype),"emit",this).call(this,e,t)}}]),r}(mt),cb=t.makeLogger(["CoBrowsing Bootstrap","COMMON"]),ub=t.performanceLog.logWithBaseTags(["COMMON","COMMON_BOOTSTRAP"]),hb=function(){function e(t,n){_classCallCheck(this,e),this.options=t,n&&(this.onInitTaskCb=n),this.init()}return _createClass(e,[{key:"init",value:function(){var t,n=this;if(e.cobrowse&&function(e){return e===g.STARTED||e===g.CONNECTING||e===g.RECONNECTING}(null===(t=e.cobrowse.getSessionInfo())||void 0===t?void 0:t.sessionStatus))return cb.warn("call init and there is already an ongoing session, and the new settings will not take effect."),console.warn("There is already an ongoing session, and the new settings will not take effect."),void(this.onInitTaskCb&&this.onInitTaskCb());var i=new lb(this.options);i.on(c.SESSION_INITED,(function(t){e.cobrowse=t,n.onInitTaskCb&&n.onInitTaskCb()})),i.init()}}],[{key:"destroy",value:function(){var t,n;null===(n=null===(t=e.cobrowse)||void 0===t?void 0:t.destroy)||void 0===n||n.call(t),e.cobrowse=null}}]),e}(),db=cg,fb=lb,pb=function(e,n){return pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function i(){var r,a,s,l,c,u,h;return _regeneratorRuntime().wrap((function(i){for(;;)switch(i.prev=i.next){case 0:return cb.log("call init common, ".concat((new Date).valueOf()),["NO-TRACKING"]),c=tp.genZmTrackingId(),Gt()&&Bt.setCoBrowsingConfig({isLoadFromSDKEntry:null===(r=e.isLoadFromSDKEntry)||void 0===r||r,sdkVersion:null===(a=Ht())||void 0===a?void 0:a.sdkVersion,originalSdkVersion:"",domain:null===(s=Ht())||void 0===s?void 0:s.domain,appKey:null===(l=Ht())||void 0===l?void 0:l.appKey}),t.initLaplace({zmTrackingId:c}),ub.log(t.PerformanceLogEnum.ClientInit,"start init ComCoBrowseController, ".concat((new Date).valueOf())),u=Wt(),cb.logWithReport(navigator.userAgent,["browser info",u?"customer":"agent"]),i.prev=7,i.next=10,og({mode:Kp,appKey:Bt.getCoBrowsingConfig("appKey")});case 10:i.next=15;break;case 12:i.prev=12,i.t0=i.catch(7),cb.error("token iframe init failed,error:".concat(i.t0));case 15:return i.prev=15,i.next=18,pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function e(){var t,n;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=tp.getZmTrackingId(),e.next=3,pt(void 0,void 0,void 0,_regeneratorRuntime().mark((function e(){var t,n;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=Bf(),e.next=3,Zf("zmDeviceId");case 3:if(n=e.sent){e.next=9;break}return e.next=7,$f("zmDeviceId",t);case 7:return o.globalConfStore.setState({zmDeviceId:n}),e.abrupt("return",t);case 9:return o.globalConfStore.setState({zmDeviceId:n}),e.abrupt("return",n);case 11:case"end":return e.stop()}}),e)})));case 3:return n=e.sent,window.ZCB_ZmDeviceId=n,e.abrupt("return",{zmTrackingId:t,zmDeviceId:n});case 6:case"end":return e.stop()}}),e)})));case 18:h=i.sent,cb.log("session init, zmTrackingId:".concat(h.zmTrackingId,", zmDeviceId:").concat(h.zmDeviceId,", sdkVersion: ").concat(Yt())),console.log("zmTrackingId",h.zmTrackingId),console.log("zmDeviceId",h.zmDeviceId),i.next=27;break;case 24:i.prev=24,i.t1=i.catch(15),cb.error("globalConf init failed,error:".concat(i.t1));case 27:try{new hb(e,(function(){hb.cobrowse?(ub.log(t.PerformanceLogEnum.ClientInitFinished,"init ComCoBrowseController finished, ".concat((new Date).valueOf())),null==n||n({success:!0,session:hb.cobrowse,sdkInfo:{version:null==Yt?void 0:Yt()}})):null==n||n({success:!1,error:m.UNKNOWN,sdkInfo:{version:null==Yt?void 0:Yt()}})}))}catch(e){cb.error("ZCB inited failed,error:".concat(e)),null==n||n({success:!1,error:m.UNKNOWN,sdkInfo:{version:null==Yt?void 0:Yt()}})}case 28:case"end":return i.stop()}}),i,null,[[7,12],[15,24]])})))},gb=hb,mb=function(e){var t=e.templateToken;i.comAuthController?i.comAuthController.setZCBTemplateToken(t):ob.error("CALL updateTemplateToken failed, can not find auth module")},vb=new mt;vb.setMaxListeners(100);window.location.pathname.includes(qp)&&(ng||(ng=!0,new tg));var yb=function(e){var t={};for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}(c);return e.CoBrowse=fb,e.SESSION_EVENT=yb,e.Session=db,e.getFollowerMockData=xp,e.getLeaderMockData=Rp,e.init=pb,e.initTemplate=mb,e.on=function(e,t){return vb.on(e,t)},e.sessionFailover=function(){var e;return null===(e=null==gb?void 0:gb.cobrowse)||void 0===e?void 0:e.failOver()},Object.defineProperty(e,"__esModule",{value:!0}),e}({},ZCBCoChannel,ZCBCoChannel,ZCBCoChannel,ZCBCoChannel);\n//# sourceMappingURL=https://d1cdksi819e9z7.cloudfront.net/zcb/mcek85sw/zcb-controller.js.map\n';export{e as default};