Files
standardnotes-app-web/dist/javascripts/app.js
2020-07-29 13:16:12 +02:00

15 lines
1.8 MiB
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
!function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=211)}([function(e,t,n){window,e.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/",n(n.s=195)}([function(e,t,n){"use strict";e.exports=n(81)},function(e,t,n){"use strict";(function(e){n.d(t,"m",(function(){return w})),n.d(t,"i",(function(){return C})),n.d(t,"t",(function(){return B})),n.d(t,"r",(function(){return E})),n.d(t,"l",(function(){return _})),n.d(t,"D",(function(){return k})),n.d(t,"f",(function(){return Q})),n.d(t,"q",(function(){return S})),n.d(t,"o",(function(){return x})),n.d(t,"p",(function(){return D})),n.d(t,"s",(function(){return P})),n.d(t,"n",(function(){return M})),n.d(t,"J",(function(){return F})),n.d(t,"K",(function(){return O})),n.d(t,"w",(function(){return R})),n.d(t,"j",(function(){return T})),n.d(t,"G",(function(){return j})),n.d(t,"B",(function(){return H})),n.d(t,"b",(function(){return U})),n.d(t,"k",(function(){return N})),n.d(t,"c",(function(){return L})),n.d(t,"e",(function(){return K})),n.d(t,"C",(function(){return G})),n.d(t,"d",(function(){return $})),n.d(t,"x",(function(){return Y})),n.d(t,"F",(function(){return J})),n.d(t,"H",(function(){return V})),n.d(t,"v",(function(){return z})),n.d(t,"z",(function(){return q})),n.d(t,"y",(function(){return W})),n.d(t,"u",(function(){return X})),n.d(t,"a",(function(){return Z})),n.d(t,"h",(function(){return ee})),n.d(t,"A",(function(){return te})),n.d(t,"g",(function(){return ne})),n.d(t,"I",(function(){return re})),n.d(t,"E",(function(){return ie}));var r=n(0),i=n.n(r),a=n(20),o=n.n(a),s=n(18),c=n.n(s),u=n(16),l=n.n(u),A=n(79),f=n.n(A),h=n(80),p=n.n(h),d=n(23),g=n.n(d);function y(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function v(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){y(a,r,i,o,s,"next",e)}function s(e){y(a,r,i,o,s,"throw",e)}o(void 0)}))}}function m(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return b(e,t);var n=Object.prototype.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)?b(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function I(e){return(I="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function w(){return"undefined"!=typeof window?window:void 0!==e?e:null}function C(e){return Object.keys(e).map((function(t){return e[t]}))}function B(){return null!==w()&&!E()&&!(document&&document.documentMode)||/Edge/.test(navigator.userAgent)&&window.crypto&&!!window.crypto.subtle}function E(){return"undefined"!=typeof navigator&&"ReactNative"===navigator.product}function _(e,t,n){return e.find((function(e){return e[t]===n}))}function k(e,t){return c()(e,t)}function Q(){for(var e=[],t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];for(var i=0,a=n;i<a.length;i++){var o=a[i];e=e.concat(o)}return e}function S(e){return null!==e&&("function"==typeof e||"object"===I(e))}function x(e){return null!==e&&"function"==typeof e}function D(e){return null==e}function P(e){return"string"==typeof e||e instanceof String}function M(e,t){return e>t?e:t}function F(e,t,n){return p()(e.concat(t),(function(e,t){var r,i=m(n);try{for(i.s();!(r=i.n()).done;){var a=r.value;if(e[a]!==t[a])return!1}}catch(e){i.e(e)}finally{i.f()}return!0}))}function O(e){return g()(e)}function R(e){return e[e.length-1]}function T(e,t){var n,r=m(t);try{for(r.s();!(n=r.n()).done;){var i=n.value;e.push(i)}}catch(e){r.e(e)}finally{r.f()}}function j(e,t){var n,r=m(t);try{for(r.s();!(n=r.n()).done;)H(e,n.value)}catch(e){r.e(e)}finally{r.f()}}function H(e,t){var n=e.indexOf(t);-1!==n&&e.splice(n,1)}function U(e,t){return!e.includes(t)&&(e.push(t),!0)}function N(e,t){o()(e,t)}function L(e,t){return e.filter((function(e){return!t.includes(e)})).concat(t.filter((function(t){return!e.includes(t)})))}function K(e,t){return!(e&&!t||!e&&t)&&(e instanceof Date&&t instanceof Date?e.getTime()===t.getTime():e instanceof String&&t instanceof String?e===t:V(e,t))}function G(e,t){e.splice(t,1)}function $(e,t){var n=e.slice();return G(n,t),n}function Y(e){for(var t=[],n=0,r=Object.keys(e);n<r.length;n++){var i=r[n];t.push(e[i])}return t}function J(e){var t,n={},r=m(Object.keys(e).sort());try{for(r.s();!(t=r.n()).done;){var i=t.value;n[i]=e[i]}}catch(e){r.e(e)}finally{r.f()}return Z(n)}function V(e,t){if(!e&&!t)return!0;if(!e||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(var i=0,a=n;i<a.length;i++){var o=a[i];if(e[o]!==t[o])return!1}return!0}function z(e){for(var t={},n=0,r=Object.keys(e);n<r.length;n++){var i=r[n],a=void 0;try{a=JSON.parse(e[i])}catch(t){a=e[i]}t[i]=a}return t}function q(e,t){if(e){var n,r=m(t);try{for(r.s();!(n=r.n()).done;)delete e[n.value]}catch(e){r.e(e)}finally{r.f()}}}function W(e,t){var n,r=Object.assign({},e),i=m(t);try{for(i.s();!(n=i.n()).done;)delete r[n.value]}catch(e){i.e(e)}finally{i.f()}return r}function X(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.map((function(e,t){return 0===t?e.trim().replace(/[\/]*$/g,""):e.trim().replace(/(^[\/]*|[\/]*$)/g,"")})).filter((function(e){return e.length})).join("/")}function Z(e){return e instanceof Date?new Date(e):S(e)?JSON.parse(JSON.stringify(e)):e}function ee(e,t){if(!e||!t)throw"Attempting to deepMerge with null values";return f()(e,t,(function(e,t){if(l()(e))return t})),e}function te(e,t){var n,r={},i=m(t);try{for(i.s();!(n=i.n()).done;){var a=n.value;r[a]=e[a]}}catch(e){i.e(e)}finally{i.f()}return Z(r)}function ne(e){var t,n=m(Object.getOwnPropertyNames(e));try{for(n.s();!(t=n.n()).done;){var r=t.value,i=e[r];i&&"object"===I(i)&&!Object.isFrozen(i)?e[r]=ne(i):e[r]=i}}catch(e){n.e(e)}finally{n.f()}return Object.freeze(e)}function re(e,t){var n=t/4;return e.substring(0,n)}function ie(e){return ae.apply(this,arguments)}function ae(){return(ae=v(i.a.mark((function e(t){return i.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.warn("Sleeping for",t),e.abrupt("return",new Promise((function(e,n){setTimeout((function(){e()}),t)})));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}}).call(this,n(30))},function(e,t,n){"use strict";n.d(t,"e",(function(){return m})),n.d(t,"g",(function(){return b})),n.d(t,"d",(function(){return I})),n.d(t,"f",(function(){return w})),n.d(t,"b",(function(){return C})),n.d(t,"c",(function(){return E})),n.d(t,"a",(function(){return _}));var r=n(28),i=n(3),a=n(9),o=n(1),s=n(5);function c(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return u(e,t);var n=Object.prototype.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)?u(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var l=[s.a.Uuid,s.a.ContentType,s.a.ItemsKeyId,s.a.EncItemKey,s.a.Content,s.a.CreatedAt,s.a.UpdatedAt,s.a.Deleted,s.a.Legacy003AuthHash,s.a.Legacy003AuthParams,s.a.Dirty,s.a.DirtiedDate,s.a.ErrorDecrypting,s.a.ErrorDecryptingChanged,s.a.WaitingForKey,s.a.LastSyncBegan,s.a.LastSyncEnd],A=[s.a.Uuid,s.a.ItemsKeyId,s.a.EncItemKey,s.a.Content,s.a.Legacy003AuthHash,s.a.ErrorDecrypting,s.a.ErrorDecryptingChanged,s.a.WaitingForKey],f=[s.a.Uuid,s.a.ContentType,s.a.ItemsKeyId,s.a.EncItemKey,s.a.Content,s.a.CreatedAt,s.a.UpdatedAt,s.a.Legacy003AuthHash],h=[s.a.Uuid,s.a.ContentType,s.a.ItemsKeyId,s.a.EncItemKey,s.a.Content,s.a.CreatedAt,s.a.UpdatedAt,s.a.Deleted,s.a.Legacy003AuthHash,s.a.Legacy003AuthParams,s.a.Dirty,s.a.DirtiedDate,s.a.ErrorDecrypting,s.a.WaitingForKey],p=[s.a.Uuid,s.a.ContentType,s.a.ItemsKeyId,s.a.EncItemKey,s.a.Content,s.a.CreatedAt,s.a.UpdatedAt,s.a.Deleted,s.a.Legacy003AuthHash],d=[s.a.Uuid,s.a.ContentType,s.a.Content,s.a.UpdatedAt],g=[s.a.Uuid,s.a.Content,s.a.CreatedAt],y=[s.a.Uuid,s.a.Content,s.a.ContentType,s.a.CreatedAt],v=[s.a.Uuid,s.a.ContentType,s.a.UpdatedAt,s.a.Deleted,s.a.Dirty,s.a.LastSyncEnd];function m(e,t){return B(e,l.slice(),void 0,t)}function b(e,t,n,r){var i,a={},o=c(n||t.fields);try{for(o.s();!(i=o.n()).done;){var s=i.value;a[s]=t[s]}}catch(e){o.e(e)}finally{o.f()}if(r)for(var u=0,l=Object.keys(r);u<l.length;u++){var A=l[u];a[A]=r[A]}return C(e,a)}function I(e,t,n){return B(e,function(e){if(e===a.a.FileEncrypted||e===a.a.FileDecrypted||e===a.a.FilePreferEncrypted)return f.slice();if(e===a.a.LocalStoragePreferEncrypted||e===a.a.LocalStorageDecrypted||e===a.a.LocalStorageEncrypted)return h.slice();if(e===a.a.Sync||e===a.a.SyncDecrypted)return p.slice();throw"No payload fields found for intent ".concat(e)}(t),i.a.Constructor,n)}function w(e,t,n){return B(e,function(e){if(e===i.a.FileImport)return f.slice();if(e===i.a.SessionHistory)return d.slice();if(e===i.a.ComponentRetrieved)return g.slice();if(e===i.a.ComponentCreated)return y.slice();if(e===i.a.LocalRetrieved||e===i.a.LocalChanged)return h.slice();if(e===i.a.RemoteRetrieved||e===i.a.ConflictData||e===i.a.ConflictUuid)return p.slice();if(e===i.a.LocalSaved||e===i.a.RemoteSaved)return v.slice();throw"No payload fields found for source ".concat(e)}(t),t,n)}function C(e,t){return B(e,e.fields,e.source,t)}function B(e,t,n,a){var s,u=Object(o.A)(e,t),l=a instanceof r.a?a.fields.slice():Object.keys(a||[]),A=c(l);try{for(A.s();!(s=A.n()).done;){var f=s.value,h=a[f];u[f]=h?Object(o.a)(h):h}}catch(e){A.e(e)}finally{A.f()}var p=Object(o.K)(t.concat(l));return new r.a(u,p,n||i.a.Constructor)}function E(e){return B(e,Object.keys(e))}function _(e,t){return B(e,A.slice(),void 0,t)}},function(e,t,n){"use strict";var r;function i(e){return[r.RemoteRetrieved,r.ComponentRetrieved,r.RemoteActionRetrieved].includes(e)}n.d(t,"a",(function(){return r})),n.d(t,"b",(function(){return i})),function(e){e[e.RemoteRetrieved=1]="RemoteRetrieved",e[e.RemoteSaved=2]="RemoteSaved",e[e.LocalSaved=3]="LocalSaved",e[e.LocalRetrieved=4]="LocalRetrieved",e[e.LocalChanged=5]="LocalChanged",e[e.ComponentRetrieved=6]="ComponentRetrieved",e[e.DesktopInstalled=7]="DesktopInstalled",e[e.RemoteActionRetrieved=8]="RemoteActionRetrieved",e[e.FileImport=9]="FileImport",e[e.RemoteConflict=10]="RemoteConflict",e[e.ImportConflict=11]="ImportConflict",e[e.SavedOrSaving=12]="SavedOrSaving",e[e.DecryptedTransient=13]="DecryptedTransient",e[e.ConflictUuid=14]="ConflictUuid",e[e.ConflictData=15]="ConflictData",e[e.SessionHistory=16]="SessionHistory",e[e.Constructor=17]="Constructor",e[e.ComponentCreated=18]="ComponentCreated",e[e.PreSyncSave=19]="PreSyncSave"}(r||(r={}))},function(e,t,n){"use strict";function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}n.d(t,"b",(function(){return a})),n.d(t,"a",(function(){return i})),n.d(t,"c",(function(){return o}));var i,a="org.standardnotes.sn";function o(e){var t;return(r(t={},i.Note,"note"),r(t,i.Tag,"tag"),r(t,i.SmartTag,"smart tag"),r(t,i.ActionsExtension,"action-based extension"),r(t,i.Component,"component"),r(t,i.Editor,"editor"),r(t,i.Theme,"theme"),r(t,i.ServerExtension,"server extension"),r(t,i.Mfa,"two-factor authentication setting"),r(t,i.FilesafeCredentials,"FileSafe credential"),r(t,i.FilesafeFileMetadata,"FileSafe file"),r(t,i.FilesafeIntegration,"FileSafe integration"),t)[e]}!function(e){e.Any="*",e.Item="SF|Item",e.RootKey="SN|RootKey|NoSync",e.ItemsKey="SN|ItemsKey",e.EncryptedStorage="SN|EncryptedStorage",e.Note="Note",e.Tag="Tag",e.SmartTag="SN|SmartTag",e.Component="SN|Component",e.Editor="SN|Editor",e.ActionsExtension="Extension",e.UserPrefs="SN|UserPreferences",e.Privileges="SN|Privileges",e.HistorySession="SN|HistorySession",e.Theme="SN|Theme",e.Mfa="SF|MFA",e.ServerExtension="SF|Extension",e.FilesafeCredentials="SN|FileSafe|Credentials",e.FilesafeFileMetadata="SN|FileSafe|FileMetadata",e.FilesafeIntegration="SN|FileSafe|Integration",e.ExtensionRepo="SN|ExtensionRepo"}(i||(i={}))},function(e,t,n){"use strict";var r;n.d(t,"a",(function(){return r})),function(e){e.Uuid="uuid",e.ContentType="content_type",e.ItemsKeyId="items_key_id",e.EncItemKey="enc_item_key",e.Content="content",e.CreatedAt="created_at",e.UpdatedAt="updated_at",e.Deleted="deleted",e.Legacy003AuthHash="auth_hash",e.Legacy003AuthParams="auth_params",e.Dirty="dirty",e.DirtiedDate="dirtiedDate",e.WaitingForKey="waitingForKey",e.ErrorDecrypting="errorDecrypting",e.ErrorDecryptingChanged="errorDecryptingValueChanged",e.LastSyncBegan="lastSyncBegan",e.LastSyncEnd="lastSyncEnd"}(r||(r={}))},function(e,t,n){"use strict";(function(e){n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return i})),n.d(t,"e",(function(){return a})),n.d(t,"d",(function(){return g})),n.d(t,"b",(function(){return y}));var r,i,a,o=n(10),s=n(14),c=n(2),u=n(1),l=n(15),A=n(4),f=n(3);function h(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function p(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function d(e,t,n){return t&&p(e.prototype,t),n&&p(e,n),e}!function(e){e[e.UserInteraction=1]="UserInteraction",e[e.Internal=2]="Internal",e[e.NonDirtying=3]="NonDirtying"}(r||(r={})),function(e){e.Pinned="pinned",e.Archived="archived",e.Locked="locked",e.UserModifiedDate="client_updated_at",e.DefaultEditor="defaultEditor",e.MobileRules="mobileRules",e.NotAvailableOnMobile="notAvailableOnMobile",e.MobileActive="mobileActive",e.LastSize="lastSize",e.PrefersPlainEditor="prefersPlainEditor",e.ComponentInstallError="installError"}(i||(i={})),function(e){e[e.KeepEarliest=1]="KeepEarliest"}(a||(a={}));var g=function(){function t(n){var r=this;if(h(this,t),this.protected=!1,this.trashed=!1,this.pinned=!1,this.archived=!1,this.locked=!1,!n.uuid||!n.content_type)throw Error("Cannot create item without both uuid and content_type");if(n.format===o.a.DecryptedBareObject&&(n.enc_item_key||n.items_key_id||n.auth_hash))throw Error("Creating an item from a decrypted payload should not contain enc params");this.payload=n,this.conflictOf=n.safeContent.conflict_of,this.createdAtString=this.created_at&&this.dateToLocalizedString(this.created_at),n.format===o.a.DecryptedBareObject&&(this.updatedAtString=this.dateToLocalizedString(this.userModifiedDate),this.protected=this.payload.safeContent.protected,this.trashed=this.payload.safeContent.trashed,this.pinned=this.getAppDomainValue(i.Pinned),this.archived=this.getAppDomainValue(i.Archived),this.locked=this.getAppDomainValue(i.Locked)),e((function(){Object(u.g)(r)}))}return d(t,[{key:"payloadRepresentation",value:function(e){return Object(c.b)(this.payload,e)}},{key:"hasRelationshipWithItem",value:function(e){var t;return!!(null===(t=this.payload.safeContent.references)||void 0===t?void 0:t.find((function(t){return t.uuid===e.uuid})))}},{key:"getDomainData",value:function(e){var t=this.payload.safeContent.appData;if(t)return t[e]}},{key:"getAppDomainValue",value:function(e){return this.getDomainData(t.DefaultAppDomain())[e]}},{key:"contentKeysToIgnoreWhenCheckingEquality",value:function(){return["conflict_of"]}},{key:"appDataContentKeysToIgnoreWhenCheckingEquality",value:function(){return[i.UserModifiedDate]}},{key:"getContentCopy",value:function(){return JSON.parse(JSON.stringify(this.content))}},{key:"strategyWhenConflictingWithItem",value:function(e){return this.errorDecrypting?s.a.KeepLeftDuplicateRight:this.isSingleton?s.a.KeepLeft:this.deleted?s.a.KeepRight:e.deleted?this.payload.source===f.a.FileImport?s.a.KeepLeft:s.a.KeepRight:v(this,e)?v(this,e,["references"])?Date.now()-this.userModifiedDate.getTime()<2e4?s.a.KeepLeftDuplicateRight:s.a.DuplicateLeftKeepRight:s.a.KeepLeftMergeRefs:s.a.KeepRight}},{key:"isItemContentEqualWith",value:function(e){return m(this.payload.contentObject,e.payload.contentObject,this.contentKeysToIgnoreWhenCheckingEquality(),this.appDataContentKeysToIgnoreWhenCheckingEquality())}},{key:"satisfiesPredicate",value:function(e){return l.a.ItemSatisfiesPredicate(this,e)}},{key:"updatedAtTimestamp",value:function(){var e;return null===(e=this.updated_at)||void 0===e?void 0:e.getTime()}},{key:"dateToLocalizedString",value:function(e){if("undefined"!=typeof Intl&&Intl.DateTimeFormat){if(!t.sharedDateFormatter){var n=navigator.languages&&navigator.languages.length?navigator.languages[0]:navigator.language;t.sharedDateFormatter=new Intl.DateTimeFormat(n,{year:"numeric",month:"short",day:"2-digit",weekday:"long",hour:"2-digit",minute:"2-digit"})}return t.sharedDateFormatter.format(e)}return e.toDateString()+" "+e.toLocaleTimeString()}},{key:"uuid",get:function(){return this.payload.uuid}},{key:"content",get:function(){return this.payload.content}},{key:"safeContent",get:function(){return this.payload.safeContent}},{key:"references",get:function(){return this.payload.safeContent.references||[]}},{key:"deleted",get:function(){return this.payload.deleted}},{key:"content_type",get:function(){return this.payload.content_type}},{key:"created_at",get:function(){return this.payload.created_at}},{key:"updated_at",get:function(){return this.payload.updated_at}},{key:"userModifiedDate",get:function(){var e=this.getAppDomainValue(i.UserModifiedDate);return new Date(e||this.updated_at)}},{key:"dirtiedDate",get:function(){return this.payload.dirtiedDate}},{key:"dirty",get:function(){return this.payload.dirty}},{key:"errorDecrypting",get:function(){return this.payload.errorDecrypting}},{key:"waitingForKey",get:function(){return this.payload.waitingForKey}},{key:"errorDecryptingValueChanged",get:function(){return this.payload.errorDecryptingValueChanged}},{key:"lastSyncBegan",get:function(){return this.payload.lastSyncBegan}},{key:"lastSyncEnd",get:function(){return this.payload.lastSyncEnd}},{key:"auth_hash",get:function(){return this.payload.auth_hash}},{key:"auth_params",get:function(){return this.payload.auth_params}},{key:"neverSynced",get:function(){return!this.updated_at||0===this.updated_at.getTime()}},{key:"isSingleton",get:function(){return!1}},{key:"singletonPredicate",get:function(){throw"Must override SNItem.singletonPredicate"}},{key:"singletonStrategy",get:function(){return a.KeepEarliest}}],[{key:"DefaultAppDomain",value:function(){return A.b}}]),t}(),y=function(){function e(t,n){h(this,e),this.item=t,this.type=n,this.payload=t.payload,this.payload.content&&(this.content=Object(u.a)(this.payload.content))}return d(e,[{key:"getUuid",value:function(){return this.payload.uuid}},{key:"getItem",value:function(){return this.item}},{key:"getResult",value:function(){return this.type===r.NonDirtying?Object(c.b)(this.payload,{content:this.content}):(this.payload.deleted||(this.type===r.UserInteraction?this.userModifiedDate=new Date:this.item.userModifiedDate||(this.userModifiedDate=new Date(this.item.updated_at))),Object(c.b)(this.payload,{content:this.content,dirty:!0,dirtiedDate:new Date}))}},{key:"mergePayload",value:function(e){this.payload=Object(c.g)(this.payload,e),this.payload.content?this.content=Object(u.a)(this.payload.safeContent):this.content=void 0}},{key:"setContent",value:function(e){this.content=Object(u.a)(e)}},{key:"setDeleted",value:function(){this.content=void 0,this.payload=Object(c.b)(this.payload,{content:this.content,deleted:!0})}},{key:"setDomainData",value:function(e,t){this.payload.errorDecrypting||(this.content.appData||(this.content.appData={}),this.content.appData[t]=e)}},{key:"setDomainDataKey",value:function(e,t,n){if(!this.payload.errorDecrypting){this.content.appData||(this.content.appData={});var r=this.content.appData;r[n]||(r[n]={}),r[n][e]=t}}},{key:"setAppDataItem",value:function(e,t){this.setDomainDataKey(e,t,g.DefaultAppDomain())}},{key:"addItemAsRelationship",value:function(e){var t=this.content.references||[];t.find((function(t){return t.uuid===e.uuid}))||t.push({uuid:e.uuid,content_type:e.content_type}),this.content.references=t}},{key:"removeItemAsRelationship",value:function(e){var t=this.content.references||[];t=t.filter((function(t){return t.uuid!==e.uuid})),this.content.references=t}},{key:"lastSyncBegan",set:function(e){this.payload=Object(c.b)(this.payload,{content:this.content,lastSyncBegan:e})}},{key:"errorDecrypting",set:function(e){this.payload=Object(c.b)(this.payload,{content:this.content,errorDecrypting:e})}},{key:"updated_at",set:function(e){this.payload=Object(c.b)(this.payload,{updated_at:e})}},{key:"userModifiedDate",set:function(e){this.setAppDataItem(i.UserModifiedDate,e)}},{key:"conflictOf",set:function(e){this.content.conflict_of=e}},{key:"protected",set:function(e){this.content.protected=e}},{key:"trashed",set:function(e){this.content.trashed=e}},{key:"pinned",set:function(e){this.setAppDataItem(i.Pinned,e)}},{key:"archived",set:function(e){this.setAppDataItem(i.Archived,e)}},{key:"locked",set:function(e){this.setAppDataItem(i.Locked,e)}}]),e}();function v(e,t,n){return n||(n=[]),!m(e.content,t.content,e.contentKeysToIgnoreWhenCheckingEquality().concat(n),e.appDataContentKeysToIgnoreWhenCheckingEquality())}function m(e,t,n,r){if((e=Object(u.F)(e)).appData){var i=e.appData[A.b];Object(u.z)(i,r),i?0===Object.keys(i).length&&delete e.appData:delete e.appData}if(Object(u.z)(e,n),(t=Object(u.F)(t)).appData){var a=t.appData[A.b];Object(u.z)(a,r),a?0===Object.keys(a).length&&delete t.appData:delete t.appData}return Object(u.z)(t,n),JSON.stringify(e)===JSON.stringify(t)}}).call(this,n(77).setImmediate)},function(e,t,n){"use strict";var r;function i(e,t){return Number(e)-Number(t)}n.d(t,"a",(function(){return r})),n.d(t,"b",(function(){return i})),function(e){e.V000Base64Decrypted="000",e.V001="001",e.V002="002",e.V003="003",e.V004="004",e[e.VersionLength=3]="VersionLength"}(r||(r={}))},function(e,t,n){"use strict";var r;n.d(t,"a",(function(){return r})),function(e){e.FullSyncCompleted="sync =full-completed",e.SingleSyncCompleted="sync =single-completed",e.SyncWillBegin="sync =will-begin",e.DownloadFirstSyncCompleted="sync =download-first-completed",e.SyncTakingTooLong="sync =taking-too-long",e.SyncError="sync =error",e.InvalidSession="sync =invalid-session",e.MajorDataChange="major-data-change",e.LocalDataIncrementalLoad="local-data-incremental-load",e.LocalDataLoaded="local-data-loaded",e.EnterOutOfSync="enter-out-of-sync",e.ExitOutOfSync="exit-out-of-sync",e.StatusChanged="status-changed",e.DatabaseWriteError="database-write-error",e.DatabaseReadError="database-read-error"}(r||(r={}))},function(e,t,n){"use strict";var r;function i(e){return e===r.LocalStorageEncrypted||e===r.LocalStorageDecrypted||e===r.LocalStoragePreferEncrypted}function a(e){return e===r.FileEncrypted||e===r.FileDecrypted||e===r.FilePreferEncrypted}function o(e){return e===r.SyncDecrypted||e===r.LocalStorageDecrypted||e===r.FileDecrypted}function s(e){return e===r.Sync||e===r.LocalStorageEncrypted||e===r.FileEncrypted}n.d(t,"a",(function(){return r})),n.d(t,"e",(function(){return i})),n.d(t,"d",(function(){return a})),n.d(t,"c",(function(){return o})),n.d(t,"b",(function(){return s})),function(e){e[e.Sync=0]="Sync",e[e.SyncDecrypted=1]="SyncDecrypted",e[e.LocalStorageEncrypted=2]="LocalStorageEncrypted",e[e.LocalStorageDecrypted=3]="LocalStorageDecrypted",e[e.LocalStoragePreferEncrypted=4]="LocalStoragePreferEncrypted",e[e.FileEncrypted=5]="FileEncrypted",e[e.FileDecrypted=6]="FileDecrypted",e[e.FilePreferEncrypted=7]="FilePreferEncrypted"}(r||(r={}))},function(e,t,n){"use strict";var r;n.d(t,"a",(function(){return r})),function(e){e[e.EncryptedString=0]="EncryptedString",e[e.DecryptedBareObject=1]="DecryptedBareObject",e[e.DecryptedBase64String=2]="DecryptedBase64String",e[e.Deleted=3]="Deleted"}(r||(r={}))},function(e,t,n){"use strict";n.d(t,"b",(function(){return i})),n.d(t,"a",(function(){return a}));var r=n(4);function i(e){return e.map((function(e){return e.uuid}))}function a(e){return e.references||(e.references=[]),e.appData||(e.appData={}),e.appData[r.b]||(e.appData[r.b]={}),e}},function(e,t,n){"use strict";n.d(t,"a",(function(){return h}));var r=n(0),i=n.n(r),a=n(1);function o(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||c(e)||function(){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 s(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=c(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function c(e,t){if(e){if("string"==typeof e)return u(e,t);var n=Object.prototype.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)?u(e,t):void 0}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function l(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function A(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){l(a,r,i,o,s,"next",e)}function s(e){l(a,r,i,o,s,"throw",e)}o(void 0)}))}}function f(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var h=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.eventObservers=[],this.loggingEnabled=!1,this.criticalPromises=[]}var t,n,r,c,u,l;return t=e,(n=[{key:"addEventObserver",value:function(e){var t=this;return this.eventObservers.push(e),function(){Object(a.B)(t.eventObservers,e)}}},{key:"notifyEvent",value:(l=A(i.a.mark((function e(t,n){var r,a,o;return i.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=s(this.eventObservers),e.prev=1,r.s();case 3:if((a=r.n()).done){e.next=9;break}return o=a.value,e.next=7,o(t,n||{});case 7:e.next=3;break;case 9:e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),r.e(e.t0);case 14:return e.prev=14,r.f(),e.finish(14);case 17:case"end":return e.stop()}}),e,this,[[1,11,14,17]])}))),function(e,t){return l.apply(this,arguments)})},{key:"blockDeinit",value:(u=A(i.a.mark((function e(){return i.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Promise.all(this.criticalPromises);case 2:case"end":return e.stop()}}),e,this)}))),function(){return u.apply(this,arguments)})},{key:"deinit",value:function(){this.eventObservers.length=0,this.deviceInterface=void 0}},{key:"executeCriticalFunction",value:(c=A(i.a.mark((function e(t){var n;return i.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t(),this.criticalPromises.push(n),e.abrupt("return",n);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"handleApplicationStage",value:(r=A(i.a.mark((function e(t){return i.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"log",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];if(this.loggingEnabled){var i,a=new Date,s=a.toLocaleTimeString().replace(" PM","").replace(" AM",""),c="".concat(s,".").concat(a.getMilliseconds());n?(n=n.map((function(e){return Array.isArray(e)?e.slice():e})),(i=console).log.apply(i,[c,e].concat(o(n)))):console.log(c,e)}}}])&&f(t.prototype,n),e}()},function(e,t,n){"use strict";n.d(t,"a",(function(){return r})),n.d(t,"c",(function(){return o}));var r,i=n(8);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e){var t;return(t={},a(t,i.a.FullSyncCompleted,r.CompletedFullSync),a(t,i.a.SingleSyncCompleted,r.CompletedIncrementalSync),a(t,i.a.SyncError,r.FailedSync),a(t,i.a.SyncTakingTooLong,r.HighLatencySync),a(t,i.a.EnterOutOfSync,r.EnteredOutOfSync),a(t,i.a.ExitOutOfSync,r.ExitedOutOfSync),a(t,i.a.LocalDataLoaded,r.LocalDataLoaded),a(t,i.a.MajorDataChange,r.MajorDataChange),a(t,i.a.LocalDataIncrementalLoad,r.LocalDataIncrementalLoad),a(t,i.a.StatusChanged,r.SyncStatusChanged),a(t,i.a.SyncWillBegin,r.WillSync),a(t,i.a.InvalidSession,r.InvalidSyncSession),a(t,i.a.DatabaseReadError,r.LocalDatabaseReadError),a(t,i.a.DatabaseWriteError,r.LocalDatabaseWriteError),t)[e]}n.d(t,"b",(function(){return i.a})),function(e){e[e.SignedIn=2]="SignedIn",e[e.SignedOut=3]="SignedOut",e[e.CompletedFullSync=5]="CompletedFullSync",e[e.FailedSync=6]="FailedSync",e[e.HighLatencySync=7]="HighLatencySync",e[e.EnteredOutOfSync=8]="EnteredOutOfSync",e[e.ExitedOutOfSync=9]="ExitedOutOfSync",e[e.Started=10]="Started",e[e.Launched=11]="Launched",e[e.LocalDataLoaded=12]="LocalDataLoaded",e[e.KeyStatusChanged=13]="KeyStatusChanged",e[e.MajorDataChange=14]="MajorDataChange",e[e.CompletedRestart=15]="CompletedRestart",e[e.LocalDataIncrementalLoad=16]="LocalDataIncrementalLoad",e[e.SyncStatusChanged=17]="SyncStatusChanged",e[e.WillSync=18]="WillSync",e[e.InvalidSyncSession=19]="InvalidSyncSession",e[e.LocalDatabaseReadError=20]="LocalDatabaseReadError",e[e.LocalDatabaseWriteError=21]="LocalDatabaseWriteError",e[e.CompletedIncrementalSync=22]="CompletedIncrementalSync"}(r||(r={}))},function(e,t,n){"use strict";var r;n.d(t,"a",(function(){return r})),function(e){e[e.KeepLeft=1]="KeepLeft",e[e.KeepRight=2]="KeepRight",e[e.KeepLeftDuplicateRight=3]="KeepLeftDuplicateRight",e[e.DuplicateLeftKeepRight=4]="DuplicateLeftKeepRight",e[e.KeepLeftMergeRefs=5]="KeepLeftMergeRefs"}(r||(r={}))},function(e,t,n){"use strict";n.d(t,"a",(function(){return s}));var r=n(1);function i(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return a(e,t);var n=Object.prototype.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)?a(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 o,s=!0,c=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return s=e.done,e},e:function(e){c=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(c)throw o}}}}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var s=function(){function e(t,n,r){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.keypath=t,this.operator=n,this.value=r,this.isRecursive()){var i=this.value;this.value=i.map((function(t){return Array.isArray(t)?e.FromArray(t):t}))}else"true"!==this.value&&"false"!==this.value||(this.value=JSON.parse(this.value))}var t,n,a;return t=e,a=[{key:"FromJson",value:function(t){return new e(t.keypath,t.operator,t.value)}},{key:"FromArray",value:function(t){return new e(t[0],t[1],t[2])}},{key:"CompoundPredicate",value:function(t){return new e("ignored","and",t)}},{key:"ObjectSatisfiesPredicate",value:function(e,t){if(Array.isArray(t)&&(t=this.FromArray(t)),t.isRecursive()){if("and"===t.operator){var n,r=i(t.valueAsArray());try{for(r.s();!(n=r.n()).done;){var a=n.value;if(!this.ObjectSatisfiesPredicate(e,a))return!1}}catch(e){r.e(e)}finally{r.f()}return!0}if("or"===t.operator){var o,s=i(t.valueAsArray());try{for(s.s();!(o=s.n()).done;){var c=o.value;if(this.ObjectSatisfiesPredicate(e,c))return!0}}catch(e){s.e(e)}finally{s.f()}return!1}}var u=t.value;if("string"==typeof u&&u.includes(".ago")&&(u=this.DateFromString(u)),"not"===t.operator)return!this.ObjectSatisfiesPredicate(e,u);var l=t.keypath.split(".").reduce((function(e,t){return e&&e[t]}),e),A=[!1,"",null,void 0,NaN];return void 0===l?"!="===t.operator?!A.includes(t.value):A.includes(t.value):"="===t.operator?Array.isArray(l)?JSON.stringify(l)===JSON.stringify(u):l===u:"!="===t.operator?Array.isArray(l)?JSON.stringify(l)!==JSON.stringify(u):l!==u:"<"===t.operator?l<u:">"===t.operator?l>u:"<="===t.operator?l<=u:">="===t.operator?l>=u:"startsWith"===t.operator?l.startsWith(u):"in"===t.operator?-1!==u.indexOf(l):"includes"===t.operator?this.resolveIncludesPredicate(l,u):"matches"===t.operator&&new RegExp(u).test(l)}},{key:"resolveIncludesPredicate",value:function(t,n){if(Object(r.s)(n))return t.includes(n);var a;a=Array.isArray(n)?e.FromArray(n):n;var o,s=i(t);try{for(s.s();!(o=s.n()).done;){var c=o.value;if(this.ObjectSatisfiesPredicate(c,a))return!0}}catch(e){s.e(e)}finally{s.f()}return!1}},{key:"ItemSatisfiesPredicate",value:function(t,n){return Array.isArray(n)&&(n=e.FromArray(n)),this.ObjectSatisfiesPredicate(t,n)}},{key:"ItemSatisfiesPredicates",value:function(e,t){var n,r=i(t);try{for(r.s();!(n=r.n()).done;){var a=n.value;if(!this.ItemSatisfiesPredicate(e,a))return!1}}catch(e){r.e(e)}finally{r.f()}return!0}},{key:"DateFromString",value:function(e){var t=e.split("."),n=t[1],r=new Date,i=parseInt(t[0]);return"days"===n?r.setDate(r.getDate()-i):"hours"===n&&r.setHours(r.getHours()-i),r}}],(n=[{key:"isRecursive",value:function(){return["and","or"].includes(this.operator)}},{key:"arrayRepresentation",value:function(){return[this.keypath,this.operator,this.value]}},{key:"valueAsArray",value:function(){return this.value}}])&&o(t.prototype,n),a&&o(t,a),e}()},function(e,t,n){"use strict";var r=Array.isArray;e.exports=r},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(56),a="object"==("undefined"==typeof self?"undefined":r(self))&&self&&self.Object===Object&&self,o=i||a||Function("return this")();e.exports=o},function(e,t,n){"use strict";var r=n(157)(n(158));e.exports=r},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}e.exports=function(e){var t=r(e);return null!=e&&("object"==t||"function"==t)}},function(e,t,n){"use strict";var r=n(39),i=n(152);e.exports=function(e,t){var n=[];if(!e||!e.length)return n;var a=-1,o=[],s=e.length;for(t=r(t,3);++a<s;){var c=e[a];t(c,a,e)&&(n.push(c),o.push(a))}return i(e,o),n}},function(e,t,n){"use strict";var r=n(94),i=n(99);e.exports=function(e,t){var n=i(e,t);return r(n)?n:void 0}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}e.exports=function(e){return null!=e&&"object"==r(e)}},function(e,t,n){"use strict";var r=n(76);e.exports=function(e){return e&&e.length?r(e):[]}},function(e,t,n){"use strict";var r=n(33),i=n(95),a=n(96),o=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":o&&o in Object(e)?i(e):a(e)}},function(e,t,n){"use strict";e.exports=function(e,t){return e===t||e!=e&&t!=t}},function(e,t,n){"use strict";var r=n(42),i=n(49);e.exports=function(e){return null!=e&&i(e.length)&&!r(e)}},function(e,t,n){"use strict";var r=n(37);e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}},function(e,t,n){"use strict";n.d(t,"a",(function(){return f}));var r=n(11),i=n(5),a=n(3),o=n(7),s=n(1),c=n(10);function u(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return l(e,t);var n=Object.prototype.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)?l(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function A(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var f=function(){function e(t,n,u){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.fields=n||Object.keys(t),this.source=u||a.a.Constructor,this.uuid=t.uuid,!this.uuid&&this.fields.includes(i.a.Uuid))throw Error("uuid is null, yet this payloads fields indicate it shouldnt be.");this.content_type=t.content_type,t.content&&(Object(s.q)(t.content)?this.content=Object(r.a)(t.content):this.content=t.content),this.deleted=t.deleted,this.items_key_id=t.items_key_id,this.enc_item_key=t.enc_item_key,this.created_at=new Date(t.created_at||new Date),this.updated_at=new Date(t.updated_at||new Date(0)),this.dirtiedDate=new Date(t.dirtiedDate),this.dirty=t.dirty,this.errorDecrypting=t.errorDecrypting,this.waitingForKey=t.waitingForKey,this.errorDecryptingValueChanged=t.errorDecryptingValueChanged,this.lastSyncBegan=t.lastSyncBegan?new Date(t.lastSyncBegan):void 0,this.lastSyncEnd=t.lastSyncEnd?new Date(t.lastSyncEnd):void 0,this.auth_hash=t.auth_hash,this.auth_params=t.auth_params,Object(s.s)(this.content)?this.content.startsWith(o.a.V000Base64Decrypted)?this.format=c.a.DecryptedBase64String:this.format=c.a.EncryptedString:Object(s.q)(this.content)?this.format=c.a.DecryptedBareObject:this.format=c.a.Deleted,Object(s.s)(this.content)?this.version=this.content.substring(0,o.a.VersionLength):this.content&&(this.version=this.content.version),Object(s.g)(this)}var t,n;return t=e,(n=[{key:"ejected",value:function(){var e,t=[i.a.Legacy003AuthHash,i.a.Deleted],n=[i.a.DirtiedDate,i.a.ErrorDecrypting,i.a.ErrorDecryptingChanged,i.a.WaitingForKey,i.a.LastSyncBegan,i.a.LastSyncEnd],r={},a=u(this.fields);try{for(a.s();!(e=a.n()).done;){var o=e.value;if(!n.includes(o)){var c=this[o];Object(s.p)(c)&&t.includes(o)||(r[o]=c)}}}catch(e){a.e(e)}finally{a.f()}return r}},{key:"safeContent",get:function(){return this.format===c.a.DecryptedBareObject?this.content:{}}},{key:"references",get:function(){return this.safeReferences}},{key:"safeReferences",get:function(){return this.safeContent.references||[]}},{key:"contentObject",get:function(){if(this.format!==c.a.DecryptedBareObject)throw Error("Attempting to access non-object content as object");return this.content}},{key:"contentString",get:function(){if(this.format===c.a.DecryptedBareObject)throw Error("Attempting to access non-string content as string");return this.content}},{key:"discardable",get:function(){return this.deleted&&!this.dirty}}])&&A(t.prototype,n),e}()},function(e,t,n){"use strict";e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i;i=function(){return this}();try{i=i||new Function("return this")()}catch(e){"object"===("undefined"==typeof window?"undefined":r(window))&&(i=window)}e.exports=i},function(e,t,n){"use strict";var r=n(84),i=n(85),a=n(86),o=n(87),s=n(88);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=o,c.prototype.set=s,e.exports=c},function(e,t,n){"use strict";var r=n(25);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},function(e,t,n){"use strict";var r=n(17).Symbol;e.exports=r},function(e,t,n){"use strict";var r=n(21)(Object,"create");e.exports=r},function(e,t,n){"use strict";var r=n(108);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=/^(?:0|[1-9]\d*)$/;e.exports=function(e,t){var n=r(e);return!!(t=null==t?9007199254740991:t)&&("number"==n||"symbol"!=n&&i.test(e))&&e>-1&&e%1==0&&e<t}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(24),a=n(22);e.exports=function(e){return"symbol"==r(e)||a(e)&&"[object Symbol]"==i(e)}},function(e,t,n){"use strict";var r=n(69),i=n(75)((function(e,t,n){r(e,t,n)}));e.exports=i},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(82),a=n(138),o=n(54),s=n(16),c=n(149);e.exports=function(e){return"function"==typeof e?e:null==e?o:"object"==r(e)?s(e)?a(e[0],e[1]):i(e):c(e)}},function(e,t,n){"use strict";var r=n(31),i=n(89),a=n(90),o=n(91),s=n(92),c=n(93);function u(e){var t=this.__data__=new r(e);this.size=t.size}u.prototype.clear=i,u.prototype.delete=a,u.prototype.get=o,u.prototype.has=s,u.prototype.set=c,e.exports=u},function(e,t,n){"use strict";var r=n(21)(n(17),"Map");e.exports=r},function(e,t,n){"use strict";var r=n(24),i=n(19);e.exports=function(e){if(!i(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},function(e,t,n){"use strict";var r=n(100),i=n(107),a=n(109),o=n(110),s=n(111);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=o,c.prototype.set=s,e.exports=c},function(e,t,n){"use strict";e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}},function(e,t,n){"use strict";var r=n(63),i=n(131),a=n(26);e.exports=function(e){return a(e)?r(e):i(e)}},function(e,t,n){"use strict";var r=n(126),i=n(22),a=Object.prototype,o=a.hasOwnProperty,s=a.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(e){return i(e)&&o.call(e,"callee")&&!s.call(e,"callee")};e.exports=c},function(e,t,n){"use strict";(function(e){function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(17),a=n(127),o="object"==r(t)&&t&&!t.nodeType&&t,s=o&&"object"==r(e)&&e&&!e.nodeType&&e,c=s&&s.exports===o?i.Buffer:void 0,u=(c?c.isBuffer:void 0)||a;e.exports=u}).call(this,n(29)(e))},function(e,t,n){"use strict";var r=n(128),i=n(129),a=n(130),o=a&&a.isTypedArray,s=o?i(o):r;e.exports=s},function(e,t,n){"use strict";e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},function(e,t,n){"use strict";var r=Object.prototype;e.exports=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||r)}},function(e,t,n){"use strict";var r=n(52),i=n(27);e.exports=function(e,t){for(var n=0,a=(t=r(t,e)).length;null!=e&&n<a;)e=e[i(t[n++])];return n&&n==a?e:void 0}},function(e,t,n){"use strict";var r=n(16),i=n(53),a=n(140),o=n(143);e.exports=function(e,t){return r(e)?e:i(e,t)?[e]:a(o(e))}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(16),a=n(37),o=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,s=/^\w*$/;e.exports=function(e,t){if(i(e))return!1;var n=r(e);return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!a(e))||s.test(e)||!o.test(e)||null!=t&&e in Object(t)}},function(e,t,n){"use strict";e.exports=function(e){return e}},function(e,t,n){"use strict";var r=n(71);e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},function(e,t,n){"use strict";(function(t){function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var r="object"==(void 0===t?"undefined":n(t))&&t&&t.Object===Object&&t;e.exports=r}).call(this,n(30))},function(e,t,n){"use strict";var r=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return r.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},function(e,t,n){"use strict";var r=n(112),i=n(22);e.exports=function e(t,n,a,o,s){return t===n||(null==t||null==n||!i(t)&&!i(n)?t!=t&&n!=n:r(t,n,a,o,e,s))}},function(e,t,n){"use strict";var r=n(60),i=n(115),a=n(61);e.exports=function(e,t,n,o,s,c){var u=1&n,l=e.length,A=t.length;if(l!=A&&!(u&&A>l))return!1;var f=c.get(e);if(f&&c.get(t))return f==t;var h=-1,p=!0,d=2&n?new r:void 0;for(c.set(e,t),c.set(t,e);++h<l;){var g=e[h],y=t[h];if(o)var v=u?o(y,g,h,t,e,c):o(g,y,h,e,t,c);if(void 0!==v){if(v)continue;p=!1;break}if(d){if(!i(t,(function(e,t){if(!a(d,t)&&(g===e||s(g,e,n,o,c)))return d.push(t)}))){p=!1;break}}else if(g!==y&&!s(g,y,n,o,c)){p=!1;break}}return c.delete(e),c.delete(t),p}},function(e,t,n){"use strict";var r=n(43),i=n(113),a=n(114);function o(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t<n;)this.add(e[t])}o.prototype.add=o.prototype.push=i,o.prototype.has=a,e.exports=o},function(e,t,n){"use strict";e.exports=function(e,t){return e.has(t)}},function(e,t,n){"use strict";var r=n(17).Uint8Array;e.exports=r},function(e,t,n){"use strict";var r=n(125),i=n(46),a=n(16),o=n(47),s=n(36),c=n(48),u=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=a(e),l=!n&&i(e),A=!n&&!l&&o(e),f=!n&&!l&&!A&&c(e),h=n||l||A||f,p=h?r(e.length,String):[],d=p.length;for(var g in e)!t&&!u.call(e,g)||h&&("length"==g||A&&("offset"==g||"parent"==g)||f&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||s(g,d))||p.push(g);return p}},function(e,t,n){"use strict";e.exports=function(e,t){return function(n){return e(t(n))}}},function(e,t,n){"use strict";var r=n(21)(n(17),"Set");e.exports=r},function(e,t,n){"use strict";var r=n(19);e.exports=function(e){return e==e&&!r(e)}},function(e,t,n){"use strict";e.exports=function(e,t){return function(n){return null!=n&&n[e]===t&&(void 0!==t||e in Object(n))}}},function(e,t,n){"use strict";e.exports=function(e,t,n,r){for(var i=e.length,a=n+(r?1:-1);r?a--:++a<i;)if(t(e[a],a,e))return a;return-1}},function(e,t,n){"use strict";var r=n(40),i=n(70),a=n(162),o=n(164),s=n(19),c=n(74),u=n(73);e.exports=function e(t,n,l,A,f){t!==n&&a(n,(function(a,c){if(f||(f=new r),s(a))o(t,n,c,l,e,A,f);else{var h=A?A(u(t,c),a,c+"",t,n,f):void 0;void 0===h&&(h=a),i(t,c,h)}}),c)}},function(e,t,n){"use strict";var r=n(55),i=n(25);e.exports=function(e,t,n){(void 0===n||i(e[t],n))&&(void 0!==n||t in e)||r(e,t,n)}},function(e,t,n){"use strict";var r=n(21),i=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=i},function(e,t,n){"use strict";var r=n(64)(Object.getPrototypeOf,Object);e.exports=r},function(e,t,n){"use strict";e.exports=function(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}},function(e,t,n){"use strict";var r=n(63),i=n(176),a=n(26);e.exports=function(e){return a(e)?r(e,!0):i(e)}},function(e,t,n){"use strict";var r=n(178),i=n(185);e.exports=function(e){return r((function(t,n){var r=-1,a=n.length,o=a>1?n[a-1]:void 0,s=a>2?n[2]:void 0;for(o=e.length>3&&"function"==typeof o?(a--,o):void 0,s&&i(n[0],n[1],s)&&(o=a<3?void 0:o,a=1),t=Object(t);++r<a;){var c=n[r];c&&e(t,c,r,o)}return t}))}},function(e,t,n){"use strict";var r=n(60),i=n(186),a=n(190),o=n(61),s=n(191),c=n(44);e.exports=function(e,t,n){var u=-1,l=i,A=e.length,f=!0,h=[],p=h;if(n)f=!1,l=a;else if(A>=200){var d=t?null:s(e);if(d)return c(d);f=!1,l=o,p=new r}else p=t?[]:h;e:for(;++u<A;){var g=e[u],y=t?t(g):g;if(g=n||0!==g?g:0,f&&y==y){for(var v=p.length;v--;)if(p[v]===y)continue e;t&&p.push(y),h.push(g)}else l(p,y,n)||(p!==h&&p.push(y),h.push(g))}return h}},function(e,t,n){"use strict";(function(e){var r=void 0!==e&&e||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function a(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new a(i.call(setTimeout,r,arguments),clearTimeout)},t.setInterval=function(){return new a(i.call(setInterval,r,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},a.prototype.unref=a.prototype.ref=function(){},a.prototype.close=function(){this._clearFn.call(r,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(193),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(30))},function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return g}));var r=n(0),i=n.n(r),a=n(12),o=n(13);function s(e){return(s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function u(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){c(a,r,i,o,s,"next",e)}function s(e){c(a,r,i,o,s,"throw",e)}o(void 0)}))}}function l(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function A(e,t,n){return(A="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=d(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function f(e,t){return(f=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function h(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=d(e);if(t){var i=d(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return p(this,n)}}function p(e,t){return!t||"object"!==s(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function d(e){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var g=function(t){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&f(e,t)}(g,t);var n,r,a,s,c,p=h(g);function g(t){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,g),(n=p.call(this)).application=t,e((function(){n.addAppEventObserver()})),n}return n=g,(r=[{key:"deinit",value:function(){this.application=void 0,this.unsubApp(),this.unsubApp=void 0,A(d(g.prototype),"deinit",this).call(this)}},{key:"addAppEventObserver",value:function(){var e=this;this.application.isStarted()&&this.onAppStart(),this.application.isLaunched()&&this.onAppLaunch(),this.unsubApp=this.application.addEventObserver(function(){var t=u(i.a.mark((function t(n){return i.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.onAppEvent(n),n!==o.a.Started){t.next=6;break}return t.next=4,e.onAppStart();case 4:t.next=12;break;case 6:if(n!==o.a.Launched){t.next=11;break}return t.next=9,e.onAppLaunch();case 9:t.next=12;break;case 11:n===o.a.CompletedFullSync?e.onAppFullSync():n===o.a.CompletedIncrementalSync?e.onAppIncrementalSync():n===o.a.KeyStatusChanged&&e.onAppKeyChange();case 12:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}())}},{key:"onAppEvent",value:function(e){}},{key:"onAppStart",value:(c=u(i.a.mark((function e(){return i.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)}))),function(){return c.apply(this,arguments)})},{key:"onAppLaunch",value:(s=u(i.a.mark((function e(){return i.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)}))),function(){return s.apply(this,arguments)})},{key:"onAppKeyChange",value:(a=u(i.a.mark((function e(){return i.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)}))),function(){return a.apply(this,arguments)})},{key:"onAppIncrementalSync",value:function(){}},{key:"onAppFullSync",value:function(){}}])&&l(n.prototype,r),g}(a.a)}).call(this,n(77).setImmediate)},function(e,t,n){"use strict";var r=n(69),i=n(75)((function(e,t,n,i){r(e,t,n,i)}));e.exports=i},function(e,t,n){"use strict";var r=n(76);e.exports=function(e,t){return t="function"==typeof t?t:void 0,e&&e.length?r(e,void 0,t):[]}},function(e,t,n){"use strict";(function(e){function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var n=function(e){var n=Object.prototype,r=n.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",o=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function c(e,t,n,r){var i=t&&t.prototype instanceof A?t:A,a=Object.create(i.prototype),o=new C(r||[]);return a._invoke=function(e,t,n){var r="suspendedStart";return function(i,a){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===i)throw a;return{value:void 0,done:!0}}for(n.method=i,n.arg=a;;){var o=n.delegate;if(o){var s=b(o,n);if(s){if(s===l)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var c=u(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===l)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r="completed",n.method="throw",n.arg=c.arg)}}}(e,n,o),a}function u(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=c;var l={};function A(){}function f(){}function h(){}var p={};p[a]=function(){return this};var d=Object.getPrototypeOf,g=d&&d(d(B([])));g&&g!==n&&r.call(g,a)&&(p=g);var y=h.prototype=A.prototype=Object.create(p);function v(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function m(e,n){var i;this._invoke=function(a,o){function s(){return new n((function(i,s){!function i(a,o,s,c){var l=u(e[a],e,o);if("throw"!==l.type){var A=l.arg,f=A.value;return f&&"object"===t(f)&&r.call(f,"__await")?n.resolve(f.__await).then((function(e){i("next",e,s,c)}),(function(e){i("throw",e,s,c)})):n.resolve(f).then((function(e){A.value=e,s(A)}),(function(e){return i("throw",e,s,c)}))}c(l.arg)}(a,o,i,s)}))}return i=i?i.then(s,s):s()}}function b(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,b(e,t),"throw"===t.method))return l;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return l}var r=u(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,l;var i=r.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,l):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,l)}function I(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function w(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function C(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(I,this),this.reset(!0)}function B(e){if(e){var t=e[a];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,i=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return i.next=i}}return{next:E}}function E(){return{value:void 0,done:!0}}return f.prototype=y.constructor=h,h.constructor=f,h[s]=f.displayName="GeneratorFunction",e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,h):(e.__proto__=h,s in e||(e[s]="GeneratorFunction")),e.prototype=Object.create(y),e},e.awrap=function(e){return{__await:e}},v(m.prototype),m.prototype[o]=function(){return this},e.AsyncIterator=m,e.async=function(t,n,r,i,a){void 0===a&&(a=Promise);var o=new m(c(t,n,r,i),a);return e.isGeneratorFunction(n)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},v(y),y[s]="Generator",y[a]=function(){return this},y.toString=function(){return"[object Generator]"},e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},e.values=B,C.prototype={constructor:C,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(w),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(n,r){return o.type="throw",o.arg=e,t.next=n,r&&(t.method="next",t.arg=void 0),!!r}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],o=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var s=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(s&&c){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var a=i;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var o=a?a.completion:{};return o.type=e,o.arg=t,a?(this.method="next",this.next=a.finallyLoc,l):this.complete(o)},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),l},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),w(n),l}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var i=r.arg;w(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:B(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),l}},e}("object"===t(e)?e.exports:{});try{regeneratorRuntime=n}catch(e){Function("r","regeneratorRuntime = r")(n)}}).call(this,n(29)(e))},function(e,t,n){"use strict";var r=n(83),i=n(137),a=n(67);e.exports=function(e){var t=i(e);return 1==t.length&&t[0][2]?a(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},function(e,t,n){"use strict";var r=n(40),i=n(58);e.exports=function(e,t,n,a){var o=n.length,s=o,c=!a;if(null==e)return!s;for(e=Object(e);o--;){var u=n[o];if(c&&u[2]?u[1]!==e[u[0]]:!(u[0]in e))return!1}for(;++o<s;){var l=(u=n[o])[0],A=e[l],f=u[1];if(c&&u[2]){if(void 0===A&&!(l in e))return!1}else{var h=new r;if(a)var p=a(A,f,l,e,t,h);if(!(void 0===p?i(f,A,3,a,h):p))return!1}}return!0}},function(e,t,n){"use strict";e.exports=function(){this.__data__=[],this.size=0}},function(e,t,n){"use strict";var r=n(32),i=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0||(n==t.length-1?t.pop():i.call(t,n,1),--this.size,0))}},function(e,t,n){"use strict";var r=n(32);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},function(e,t,n){"use strict";var r=n(32);e.exports=function(e){return r(this.__data__,e)>-1}},function(e,t,n){"use strict";var r=n(32);e.exports=function(e,t){var n=this.__data__,i=r(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this}},function(e,t,n){"use strict";var r=n(31);e.exports=function(){this.__data__=new r,this.size=0}},function(e,t,n){"use strict";e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},function(e,t,n){"use strict";e.exports=function(e){return this.__data__.get(e)}},function(e,t,n){"use strict";e.exports=function(e){return this.__data__.has(e)}},function(e,t,n){"use strict";var r=n(31),i=n(41),a=n(43);e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var o=n.__data__;if(!i||o.length<199)return o.push([e,t]),this.size=++n.size,this;n=this.__data__=new a(o)}return n.set(e,t),this.size=n.size,this}},function(e,t,n){"use strict";var r=n(42),i=n(97),a=n(19),o=n(57),s=/^\[object .+?Constructor\]$/,c=Function.prototype,u=Object.prototype,l=c.toString,A=u.hasOwnProperty,f=RegExp("^"+l.call(A).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!a(e)||i(e))&&(r(e)?f:s).test(o(e))}},function(e,t,n){"use strict";var r=n(33),i=Object.prototype,a=i.hasOwnProperty,o=i.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=a.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(e){}var i=o.call(e);return r&&(t?e[s]=n:delete e[s]),i}},function(e,t,n){"use strict";var r=Object.prototype.toString;e.exports=function(e){return r.call(e)}},function(e,t,n){"use strict";var r,i=n(98),a=(r=/[^.]+$/.exec(i&&i.keys&&i.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!a&&a in e}},function(e,t,n){"use strict";var r=n(17)["__core-js_shared__"];e.exports=r},function(e,t,n){"use strict";e.exports=function(e,t){return null==e?void 0:e[t]}},function(e,t,n){"use strict";var r=n(101),i=n(31),a=n(41);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(a||i),string:new r}}},function(e,t,n){"use strict";var r=n(102),i=n(103),a=n(104),o=n(105),s=n(106);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=o,c.prototype.set=s,e.exports=c},function(e,t,n){"use strict";var r=n(34);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},function(e,t,n){"use strict";e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},function(e,t,n){"use strict";var r=n(34),i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return i.call(t,e)?t[e]:void 0}},function(e,t,n){"use strict";var r=n(34),i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:i.call(t,e)}},function(e,t,n){"use strict";var r=n(34);e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},function(e,t,n){"use strict";var r=n(35);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}e.exports=function(e){var t=r(e);return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},function(e,t,n){"use strict";var r=n(35);e.exports=function(e){return r(this,e).get(e)}},function(e,t,n){"use strict";var r=n(35);e.exports=function(e){return r(this,e).has(e)}},function(e,t,n){"use strict";var r=n(35);e.exports=function(e,t){var n=r(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this}},function(e,t,n){"use strict";var r=n(40),i=n(59),a=n(116),o=n(118),s=n(133),c=n(16),u=n(47),l=n(48),A="[object Object]",f=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,h,p,d){var g=c(e),y=c(t),v=g?"[object Array]":s(e),m=y?"[object Array]":s(t),b=(v="[object Arguments]"==v?A:v)==A,I=(m="[object Arguments]"==m?A:m)==A,w=v==m;if(w&&u(e)){if(!u(t))return!1;g=!0,b=!1}if(w&&!b)return d||(d=new r),g||l(e)?i(e,t,n,h,p,d):a(e,t,v,n,h,p,d);if(!(1&n)){var C=b&&f.call(e,"__wrapped__"),B=I&&f.call(t,"__wrapped__");if(C||B){var E=C?e.value():e,_=B?t.value():t;return d||(d=new r),p(E,_,n,h,d)}}return!!w&&(d||(d=new r),o(e,t,n,h,p,d))}},function(e,t,n){"use strict";e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},function(e,t,n){"use strict";e.exports=function(e){return this.__data__.has(e)}},function(e,t,n){"use strict";e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}},function(e,t,n){"use strict";var r=n(33),i=n(62),a=n(25),o=n(59),s=n(117),c=n(44),u=r?r.prototype:void 0,l=u?u.valueOf:void 0;e.exports=function(e,t,n,r,u,A,f){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!A(new i(e),new i(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return a(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var h=s;case"[object Set]":var p=1&r;if(h||(h=c),e.size!=t.size&&!p)return!1;var d=f.get(e);if(d)return d==t;r|=2,f.set(e,t);var g=o(h(e),h(t),r,u,A,f);return f.delete(e),g;case"[object Symbol]":if(l)return l.call(e)==l.call(t)}return!1}},function(e,t,n){"use strict";e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},function(e,t,n){"use strict";var r=n(119),i=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,a,o,s){var c=1&n,u=r(e),l=u.length;if(l!=r(t).length&&!c)return!1;for(var A=l;A--;){var f=u[A];if(!(c?f in t:i.call(t,f)))return!1}var h=s.get(e);if(h&&s.get(t))return h==t;var p=!0;s.set(e,t),s.set(t,e);for(var d=c;++A<l;){var g=e[f=u[A]],y=t[f];if(a)var v=c?a(y,g,f,t,e,s):a(g,y,f,e,t,s);if(!(void 0===v?g===y||o(g,y,n,a,s):v)){p=!1;break}d||(d="constructor"==f)}if(p&&!d){var m=e.constructor,b=t.constructor;m!=b&&"constructor"in e&&"constructor"in t&&!("function"==typeof m&&m instanceof m&&"function"==typeof b&&b instanceof b)&&(p=!1)}return s.delete(e),s.delete(t),p}},function(e,t,n){"use strict";var r=n(120),i=n(122),a=n(45);e.exports=function(e){return r(e,a,i)}},function(e,t,n){"use strict";var r=n(121),i=n(16);e.exports=function(e,t,n){var a=t(e);return i(e)?a:r(a,n(e))}},function(e,t,n){"use strict";e.exports=function(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}},function(e,t,n){"use strict";var r=n(123),i=n(124),a=Object.prototype.propertyIsEnumerable,o=Object.getOwnPropertySymbols,s=o?function(e){return null==e?[]:(e=Object(e),r(o(e),(function(t){return a.call(e,t)})))}:i;e.exports=s},function(e,t,n){"use strict";e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=0,a=[];++n<r;){var o=e[n];t(o,n,e)&&(a[i++]=o)}return a}},function(e,t,n){"use strict";e.exports=function(){return[]}},function(e,t,n){"use strict";e.exports=function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}},function(e,t,n){"use strict";var r=n(24),i=n(22);e.exports=function(e){return i(e)&&"[object Arguments]"==r(e)}},function(e,t,n){"use strict";e.exports=function(){return!1}},function(e,t,n){"use strict";var r=n(24),i=n(49),a=n(22),o={};o["[object Float32Array]"]=o["[object Float64Array]"]=o["[object Int8Array]"]=o["[object Int16Array]"]=o["[object Int32Array]"]=o["[object Uint8Array]"]=o["[object Uint8ClampedArray]"]=o["[object Uint16Array]"]=o["[object Uint32Array]"]=!0,o["[object Arguments]"]=o["[object Array]"]=o["[object ArrayBuffer]"]=o["[object Boolean]"]=o["[object DataView]"]=o["[object Date]"]=o["[object Error]"]=o["[object Function]"]=o["[object Map]"]=o["[object Number]"]=o["[object Object]"]=o["[object RegExp]"]=o["[object Set]"]=o["[object String]"]=o["[object WeakMap]"]=!1,e.exports=function(e){return a(e)&&i(e.length)&&!!o[r(e)]}},function(e,t,n){"use strict";e.exports=function(e){return function(t){return e(t)}}},function(e,t,n){"use strict";(function(e){function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(56),a="object"==r(t)&&t&&!t.nodeType&&t,o=a&&"object"==r(e)&&e&&!e.nodeType&&e,s=o&&o.exports===a&&i.process,c=function(){try{return o&&o.require&&o.require("util").types||s&&s.binding&&s.binding("util")}catch(e){}}();e.exports=c}).call(this,n(29)(e))},function(e,t,n){"use strict";var r=n(50),i=n(132),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return i(e);var t=[];for(var n in Object(e))a.call(e,n)&&"constructor"!=n&&t.push(n);return t}},function(e,t,n){"use strict";var r=n(64)(Object.keys,Object);e.exports=r},function(e,t,n){"use strict";var r=n(134),i=n(41),a=n(135),o=n(65),s=n(136),c=n(24),u=n(57),l=u(r),A=u(i),f=u(a),h=u(o),p=u(s),d=c;(r&&"[object DataView]"!=d(new r(new ArrayBuffer(1)))||i&&"[object Map]"!=d(new i)||a&&"[object Promise]"!=d(a.resolve())||o&&"[object Set]"!=d(new o)||s&&"[object WeakMap]"!=d(new s))&&(d=function(e){var t=c(e),n="[object Object]"==t?e.constructor:void 0,r=n?u(n):"";if(r)switch(r){case l:return"[object DataView]";case A:return"[object Map]";case f:return"[object Promise]";case h:return"[object Set]";case p:return"[object WeakMap]"}return t}),e.exports=d},function(e,t,n){"use strict";var r=n(21)(n(17),"DataView");e.exports=r},function(e,t,n){"use strict";var r=n(21)(n(17),"Promise");e.exports=r},function(e,t,n){"use strict";var r=n(21)(n(17),"WeakMap");e.exports=r},function(e,t,n){"use strict";var r=n(66),i=n(45);e.exports=function(e){for(var t=i(e),n=t.length;n--;){var a=t[n],o=e[a];t[n]=[a,o,r(o)]}return t}},function(e,t,n){"use strict";var r=n(58),i=n(139),a=n(146),o=n(53),s=n(66),c=n(67),u=n(27);e.exports=function(e,t){return o(e)&&s(t)?c(u(e),t):function(n){var o=i(n,e);return void 0===o&&o===t?a(n,e):r(t,o,3)}}},function(e,t,n){"use strict";var r=n(51);e.exports=function(e,t,n){var i=null==e?void 0:r(e,t);return void 0===i?n:i}},function(e,t,n){"use strict";var r=n(141),i=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,a=/\\(\\)?/g,o=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(i,(function(e,n,r,i){t.push(r?i.replace(a,"$1"):n||e)})),t}));e.exports=o},function(e,t,n){"use strict";var r=n(142);e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},function(e,t,n){"use strict";var r=n(43);function i(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function n(){var r=arguments,i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=e.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(i.Cache||r),n}i.Cache=r,e.exports=i},function(e,t,n){"use strict";var r=n(144);e.exports=function(e){return null==e?"":r(e)}},function(e,t,n){"use strict";var r=n(33),i=n(145),a=n(16),o=n(37),s=r?r.prototype:void 0,c=s?s.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(a(t))return i(t,e)+"";if(o(t))return c?c.call(t):"";var n=t+"";return"0"==n&&1/t==-1/0?"-0":n}},function(e,t,n){"use strict";e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}},function(e,t,n){"use strict";var r=n(147),i=n(148);e.exports=function(e,t){return null!=e&&i(e,t,r)}},function(e,t,n){"use strict";e.exports=function(e,t){return null!=e&&t in Object(e)}},function(e,t,n){"use strict";var r=n(52),i=n(46),a=n(16),o=n(36),s=n(49),c=n(27);e.exports=function(e,t,n){for(var u=-1,l=(t=r(t,e)).length,A=!1;++u<l;){var f=c(t[u]);if(!(A=null!=e&&n(e,f)))break;e=e[f]}return A||++u!=l?A:!!(l=null==e?0:e.length)&&s(l)&&o(f,l)&&(a(e)||i(e))}},function(e,t,n){"use strict";var r=n(150),i=n(151),a=n(53),o=n(27);e.exports=function(e){return a(e)?r(o(e)):i(e)}},function(e,t,n){"use strict";e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},function(e,t,n){"use strict";var r=n(51);e.exports=function(e){return function(t){return r(t,e)}}},function(e,t,n){"use strict";var r=n(153),i=n(36),a=Array.prototype.splice;e.exports=function(e,t){for(var n=e?t.length:0,o=n-1;n--;){var s=t[n];if(n==o||s!==c){var c=s;i(s)?a.call(e,s,1):r(e,s)}}return e}},function(e,t,n){"use strict";var r=n(52),i=n(154),a=n(155),o=n(27);e.exports=function(e,t){return t=r(t,e),null==(e=a(e,t))||delete e[o(i(t))]}},function(e,t,n){"use strict";e.exports=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},function(e,t,n){"use strict";var r=n(51),i=n(156);e.exports=function(e,t){return t.length<2?e:r(e,i(t,0,-1))}},function(e,t,n){"use strict";e.exports=function(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(n=n>i?i:n)<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var a=Array(i);++r<i;)a[r]=e[r+t];return a}},function(e,t,n){"use strict";var r=n(39),i=n(26),a=n(45);e.exports=function(e){return function(t,n,o){var s=Object(t);if(!i(t)){var c=r(n,3);t=a(t),n=function(e){return c(s[e],e,s)}}var u=e(t,n,o);return u>-1?s[c?t[u]:u]:void 0}}},function(e,t,n){"use strict";var r=n(68),i=n(39),a=n(159),o=Math.max;e.exports=function(e,t,n){var s=null==e?0:e.length;if(!s)return-1;var c=null==n?0:a(n);return c<0&&(c=o(s+c,0)),r(e,i(t,3),c)}},function(e,t,n){"use strict";var r=n(160);e.exports=function(e){var t=r(e),n=t%1;return t==t?n?t-n:t:0}},function(e,t,n){"use strict";var r=n(161);e.exports=function(e){return e?(e=r(e))===1/0||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},function(e,t,n){"use strict";var r=n(19),i=n(37),a=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,c=/^0o[0-7]+$/i,u=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(i(e))return NaN;if(r(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=r(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(a,"");var n=s.test(e);return n||c.test(e)?u(e.slice(2),n?2:8):o.test(e)?NaN:+e}},function(e,t,n){"use strict";var r=n(163)();e.exports=r},function(e,t,n){"use strict";e.exports=function(e){return function(t,n,r){for(var i=-1,a=Object(t),o=r(t),s=o.length;s--;){var c=o[e?s:++i];if(!1===n(a[c],c,a))break}return t}}},function(e,t,n){"use strict";var r=n(70),i=n(165),a=n(166),o=n(168),s=n(169),c=n(46),u=n(16),l=n(171),A=n(47),f=n(42),h=n(19),p=n(172),d=n(48),g=n(73),y=n(173);e.exports=function(e,t,n,v,m,b,I){var w=g(e,n),C=g(t,n),B=I.get(C);if(B)r(e,n,B);else{var E=b?b(w,C,n+"",e,t,I):void 0,_=void 0===E;if(_){var k=u(C),Q=!k&&A(C),S=!k&&!Q&&d(C);E=C,k||Q||S?u(w)?E=w:l(w)?E=o(w):Q?(_=!1,E=i(C,!0)):S?(_=!1,E=a(C,!0)):E=[]:p(C)||c(C)?(E=w,c(w)?E=y(w):h(w)&&!f(w)||(E=s(C))):_=!1}_&&(I.set(C,E),m(E,C,v,b,I),I.delete(C)),r(e,n,E)}}},function(e,t,n){"use strict";(function(e){function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(17),a="object"==r(t)&&t&&!t.nodeType&&t,o=a&&"object"==r(e)&&e&&!e.nodeType&&e,s=o&&o.exports===a?i.Buffer:void 0,c=s?s.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var n=e.length,r=c?c(n):new e.constructor(n);return e.copy(r),r}}).call(this,n(29)(e))},function(e,t,n){"use strict";var r=n(167);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}},function(e,t,n){"use strict";var r=n(62);e.exports=function(e){var t=new e.constructor(e.byteLength);return new r(t).set(new r(e)),t}},function(e,t,n){"use strict";e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}},function(e,t,n){"use strict";var r=n(170),i=n(72),a=n(50);e.exports=function(e){return"function"!=typeof e.constructor||a(e)?{}:r(i(e))}},function(e,t,n){"use strict";var r=n(19),i=Object.create,a=function(){function e(){}return function(t){if(!r(t))return{};if(i)return i(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();e.exports=a},function(e,t,n){"use strict";var r=n(26),i=n(22);e.exports=function(e){return i(e)&&r(e)}},function(e,t,n){"use strict";var r=n(24),i=n(72),a=n(22),o=Function.prototype,s=Object.prototype,c=o.toString,u=s.hasOwnProperty,l=c.call(Object);e.exports=function(e){if(!a(e)||"[object Object]"!=r(e))return!1;var t=i(e);if(null===t)return!0;var n=u.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&c.call(n)==l}},function(e,t,n){"use strict";var r=n(174),i=n(74);e.exports=function(e){return r(e,i(e))}},function(e,t,n){"use strict";var r=n(175),i=n(55);e.exports=function(e,t,n,a){var o=!n;n||(n={});for(var s=-1,c=t.length;++s<c;){var u=t[s],l=a?a(n[u],e[u],u,n,e):void 0;void 0===l&&(l=e[u]),o?i(n,u,l):r(n,u,l)}return n}},function(e,t,n){"use strict";var r=n(55),i=n(25),a=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var o=e[t];a.call(e,t)&&i(o,n)&&(void 0!==n||t in e)||r(e,t,n)}},function(e,t,n){"use strict";var r=n(19),i=n(50),a=n(177),o=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return a(e);var t=i(e),n=[];for(var s in e)("constructor"!=s||!t&&o.call(e,s))&&n.push(s);return n}},function(e,t,n){"use strict";e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},function(e,t,n){"use strict";var r=n(54),i=n(179),a=n(181);e.exports=function(e,t){return a(i(e,t,r),e+"")}},function(e,t,n){"use strict";var r=n(180),i=Math.max;e.exports=function(e,t,n){return t=i(void 0===t?e.length-1:t,0),function(){for(var a=arguments,o=-1,s=i(a.length-t,0),c=Array(s);++o<s;)c[o]=a[t+o];o=-1;for(var u=Array(t+1);++o<t;)u[o]=a[o];return u[t]=n(c),r(e,this,u)}}},function(e,t,n){"use strict";e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},function(e,t,n){"use strict";var r=n(182),i=n(184)(r);e.exports=i},function(e,t,n){"use strict";var r=n(183),i=n(71),a=n(54),o=i?function(e,t){return i(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:a;e.exports=o},function(e,t,n){"use strict";e.exports=function(e){return function(){return e}}},function(e,t,n){"use strict";var r=Date.now;e.exports=function(e){var t=0,n=0;return function(){var i=r(),a=16-(i-n);if(n=i,a>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(25),a=n(26),o=n(36),s=n(19);e.exports=function(e,t,n){if(!s(n))return!1;var c=r(t);return!!("number"==c?a(n)&&o(t,n.length):"string"==c&&t in n)&&i(n[t],e)}},function(e,t,n){"use strict";var r=n(187);e.exports=function(e,t){return!(null==e||!e.length)&&r(e,t,0)>-1}},function(e,t,n){"use strict";var r=n(68),i=n(188),a=n(189);e.exports=function(e,t,n){return t==t?a(e,t,n):r(e,i,n)}},function(e,t,n){"use strict";e.exports=function(e){return e!=e}},function(e,t,n){"use strict";e.exports=function(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}},function(e,t,n){"use strict";e.exports=function(e,t,n){for(var r=-1,i=null==e?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}},function(e,t,n){"use strict";var r=n(65),i=n(192),a=n(44),o=r&&1/a(new r([,-0]))[1]==1/0?function(e){return new r(e)}:i;e.exports=o},function(e,t,n){"use strict";e.exports=function(){}},function(e,t,n){"use strict";(function(e,t){!function(e,n){if(!e.setImmediate){var r,i,a,o,s,c=1,u={},l=!1,A=e.document,f=Object.getPrototypeOf&&Object.getPrototypeOf(e);f=f&&f.setTimeout?f:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){p(e)}))}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?(o="setImmediate$"+Math.random()+"$",s=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(o)&&p(+t.data.slice(o.length))},e.addEventListener?e.addEventListener("message",s,!1):e.attachEvent("onmessage",s),r=function(t){e.postMessage(o+t,"*")}):e.MessageChannel?((a=new MessageChannel).port1.onmessage=function(e){p(e.data)},r=function(e){a.port2.postMessage(e)}):A&&"onreadystatechange"in A.createElement("script")?(i=A.documentElement,r=function(e){var t=A.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):r=function(e){setTimeout(p,0,e)},f.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var i={callback:e,args:t};return u[c]=i,r(c),c++},f.clearImmediate=h}function h(e){delete u[e]}function p(e){if(l)setTimeout(p,0,e);else{var t=u[e];if(t){l=!0;try{!function(e){var t=e.callback,n=e.args;switch(n.length){case 0:t();break;case 1:t(n[0]);break;case 2:t(n[0],n[1]);break;case 3:t(n[0],n[1],n[2]);break;default:t.apply(void 0,n)}}(t)}finally{h(e),l=!1}}}}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,n(30),n(194))},function(e,t,n){"use strict";var r,i,a=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function c(e){if(r===setTimeout)return setTimeout(e,0);if((r===o||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(t){return r.call(this,e,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:o}catch(e){r=o}try{i="function"==typeof clearTimeout?clearTimeout:s}catch(e){i=s}}();var u,l=[],A=!1,f=-1;function h(){A&&u&&(A=!1,u.length?l=u.concat(l):f=-1,l.length&&p())}function p(){if(!A){var e=c(h);A=!0;for(var t=l.length;t;){for(u=l,l=[];++f<t;)u&&u[f].run();f=-1,t=l.length}u=null,A=!1,function(e){if(i===clearTimeout)return clearTimeout(e);if((i===s||!i)&&clearTimeout)return i=clearTimeout,clearTimeout(e);try{i(e)}catch(t){try{return i.call(null,e)}catch(t){return i.call(this,e)}}}(e)}}function d(e,t){this.fun=e,this.array=t}function g(){}a.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];l.push(new d(e,t)),1!==l.length||A||c(p)},d.prototype.run=function(){this.fun.apply(null,this.array)},a.title="browser",a.browser=!0,a.env={},a.argv=[],a.version="",a.versions={},a.on=g,a.addListener=g,a.once=g,a.off=g,a.removeListener=g,a.removeAllListeners=g,a.emit=g,a.prependListener=g,a.prependOnceListener=g,a.listeners=function(e){return[]},a.binding=function(e){throw new Error("process.binding is not supported")},a.cwd=function(){return"/"},a.chdir=function(e){throw new Error("process.chdir is not supported")},a.umask=function(){return 0}},function(e,t,n){"use strict";n.r(t),n.d(t,"SNApplication",(function(){return ol})),n.d(t,"SNProtocolService",(function(){return zo})),n.d(t,"KeyMode",(function(){return Po})),n.d(t,"SNProtocolOperator001",(function(){return no})),n.d(t,"SNProtocolOperator002",(function(){return fo})),n.d(t,"SNProtocolOperator003",(function(){return wo})),n.d(t,"SNProtocolOperator004",(function(){return Mo})),n.d(t,"DeviceInterface",(function(){return ul})),n.d(t,"SNItem",(function(){return d.d})),n.d(t,"ItemMutator",(function(){return d.b})),n.d(t,"AppDataField",(function(){return d.a})),n.d(t,"SNItemsKey",(function(){return wt})),n.d(t,"SNPredicate",(function(){return k.a})),n.d(t,"SNNote",(function(){return ut})),n.d(t,"NoteMutator",(function(){return lt})),n.d(t,"SNTag",(function(){return Je})),n.d(t,"TagMutator",(function(){return Ve})),n.d(t,"SNSmartTag",(function(){return Ze})),n.d(t,"SNActionsExtension",(function(){return Te})),n.d(t,"Action",(function(){return Qe})),n.d(t,"SNTheme",(function(){return ve})),n.d(t,"SNComponent",(function(){return ue})),n.d(t,"ComponentAction",(function(){return q})),n.d(t,"ComponentMutator",(function(){return le})),n.d(t,"SNEditor",(function(){return Ee})),n.d(t,"SNUserPrefs",(function(){return j})),n.d(t,"UserPrefsMutator",(function(){return H})),n.d(t,"WebPrefKey",(function(){return C})),n.d(t,"MutationType",(function(){return d.c})),n.d(t,"ComponentArea",(function(){return z})),n.d(t,"LiveItem",(function(){return fl})),n.d(t,"SNComponentManager",(function(){return cr})),n.d(t,"HistorySession",(function(){return ls})),n.d(t,"ItemHistory",(function(){return cs})),n.d(t,"ItemHistoryEntry",(function(){return Wo})),n.d(t,"SNPrivileges",(function(){return W})),n.d(t,"ProtectedAction",(function(){return R})),n.d(t,"PrivilegeCredential",(function(){return T})),n.d(t,"PayloadManager",(function(){return mi})),n.d(t,"ItemManager",(function(){return ac})),n.d(t,"SNHttpService",(function(){return En})),n.d(t,"ChallengeService",(function(){return zu})),n.d(t,"PureService",(function(){return Ot.a})),n.d(t,"ApplicationService",(function(){return hl.a})),n.d(t,"SNStorageService",(function(){return Vt})),n.d(t,"StoragePersistencePolicies",(function(){return xt})),n.d(t,"StorageEncryptionPolicies",(function(){return Dt})),n.d(t,"StorageValueModes",(function(){return Pt})),n.d(t,"ValueModesKeys",(function(){return Mt})),n.d(t,"Challenge",(function(){return m})),n.d(t,"ChallengeReason",(function(){return h})),n.d(t,"ChallengeResponse",(function(){return I})),n.d(t,"ChallengeType",(function(){return f})),n.d(t,"challengeTypeToString",(function(){return w})),n.d(t,"ChallengeValue",(function(){return b})),n.d(t,"SNSyncService",(function(){return Ru})),n.d(t,"SyncSources",(function(){return Iu})),n.d(t,"SyncModes",(function(){return bu})),n.d(t,"SyncQueueStrategy",(function(){return mu})),n.d(t,"SortPayloadsByRecentAndContentPriority",(function(){return oc})),n.d(t,"SNSessionManager",(function(){return dn})),n.d(t,"SNMigrationService",(function(){return Oa})),n.d(t,"ButtonType",(function(){return Jt})),n.d(t,"SNHistoryManager",(function(){return Cs})),n.d(t,"SNPrivilegesService",(function(){return js})),n.d(t,"SNSingletonManager",(function(){return Di})),n.d(t,"SNApiService",(function(){return Hn})),n.d(t,"Copy",(function(){return u.a})),n.d(t,"findInArray",(function(){return u.l})),n.d(t,"isNullOrUndefined",(function(){return u.p})),n.d(t,"deepMerge",(function(){return u.h})),n.d(t,"extendArray",(function(){return u.j})),n.d(t,"removeFromIndex",(function(){return u.C})),n.d(t,"subtractFromArray",(function(){return u.G})),n.d(t,"arrayByDifference",(function(){return u.c})),n.d(t,"uniqCombineObjArrays",(function(){return u.J})),n.d(t,"greaterOfTwoDates",(function(){return u.n})),n.d(t,"getGlobalScope",(function(){return u.m})),n.d(t,"removeFromArray",(function(){return u.B})),n.d(t,"addIfUnique",(function(){return u.b})),n.d(t,"dictToArray",(function(){return u.i})),n.d(t,"truncateHexString",(function(){return u.I})),n.d(t,"jsonParseEmbeddedKeys",(function(){return u.v})),n.d(t,"topLevelCompare",(function(){return u.H})),n.d(t,"Uuid",(function(){return p})),n.d(t,"EncryptionIntent",(function(){return Ft.a})),n.d(t,"isLocalStorageIntent",(function(){return Ft.e})),n.d(t,"isFileIntent",(function(){return Ft.d})),n.d(t,"isDecryptedIntent",(function(){return Ft.c})),n.d(t,"intentRequiresEncryption",(function(){return Ft.b})),n.d(t,"ContentType",(function(){return B.a})),n.d(t,"CreateItemFromPayload",(function(){return Qt})),n.d(t,"Uuids",(function(){return s.b})),n.d(t,"FillItemContent",(function(){return s.a})),n.d(t,"ApplicationEvent",(function(){return c.a})),n.d(t,"Environment",(function(){return Tn})),n.d(t,"Platform",(function(){return jn})),n.d(t,"isEnvironmentWebOrDesktop",(function(){return Vn})),n.d(t,"isEnvironmentMobile",(function(){return zn})),n.d(t,"platformFromString",(function(){return Jn})),n.d(t,"SyncEvent",(function(){return bi.a})),n.d(t,"MutableCollection",(function(){return Ir})),n.d(t,"ImmutablePayloadCollection",(function(){return Qr})),n.d(t,"ItemCollection",(function(){return Vs})),n.d(t,"CollectionSort",(function(){return Os})),n.d(t,"CreateMaxPayloadFromAnyObject",(function(){return E.e})),n.d(t,"CreateSourcedPayloadFromObject",(function(){return E.f})),n.d(t,"CreateIntentPayloadFromObject",(function(){return E.d})),n.d(t,"CreateEncryptionParameters",(function(){return E.c})),n.d(t,"PayloadByMerging",(function(){return E.g})),n.d(t,"CopyPayload",(function(){return E.b})),n.d(t,"PayloadSource",(function(){return _.a})),n.d(t,"isPayloadSourceRetrieved",(function(){return _.b})),n.d(t,"ProtocolVersion",(function(){return At.a})),n.d(t,"PayloadFormat",(function(){return et.a})),n.d(t,"PurePayload",(function(){return pl.a})),n.d(t,"PayloadField",(function(){return Gr.a})),n.d(t,"StorageKey",(function(){return _t})),n.d(t,"BaseMigration",(function(){return Ba})),n.d(t,"PrivilegeSessionLength",(function(){return ws}));var r={};n.r(r),n.d(r,"Migration20200115",(function(){return da}));var i,a=n(0),o=n.n(a),s=n(11);!function(e){e[e.PreparingForLaunch_0=0]="PreparingForLaunch_0",e[e.ReadyForLaunch_05=.5]="ReadyForLaunch_05",e[e.StorageDecrypted_09=.9]="StorageDecrypted_09",e[e.Launched_10=1]="Launched_10",e[e.LoadingDatabase_11=1.1]="LoadingDatabase_11",e[e.LoadedDatabase_12=1.2]="LoadedDatabase_12",e[e.FullSyncCompleted_13=1.3]="FullSyncCompleted_13",e[e.SignedIn_30=3]="SignedIn_30"}(i||(i={}));var c=n(13),u=n(1);function l(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function A(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var f,h,p=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,n,r,i;return t=e,(n=[{key:"SetGenerators",value:function(e,t){this.syncUuidFunc=t,this.asyncUuidFunc=e}},{key:"canGenSync",value:function(){return!Object(u.p)(this.syncUuidFunc)}},{key:"GenerateUuid",value:(r=o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.syncUuidFunc){e.next=4;break}return e.abrupt("return",this.syncUuidFunc());case 4:return e.abrupt("return",this.asyncUuidFunc());case 5:case"end":return e.stop()}}),e,this)})),i=function(){var e=this,t=arguments;return new Promise((function(n,i){var a=r.apply(e,t);function o(e){l(a,n,i,o,s,"next",e)}function s(e){l(a,n,i,o,s,"throw",e)}o(void 0)}))},function(){return i.apply(this,arguments)})},{key:"GenerateUuidSynchronously",value:function(){return this.syncUuidFunc()}}])&&A(t,n),e}(),d=n(6);function g(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function y(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function v(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}!function(e){e[e.LocalPasscode=1]="LocalPasscode",e[e.AccountPassword=2]="AccountPassword",e[e.Biometric=3]="Biometric"}(f||(f={})),function(e){e[e.ApplicationUnlock=1]="ApplicationUnlock",e[e.ResaveRootKey=2]="ResaveRootKey",e[e.ProtocolUpgrade=3]="ProtocolUpgrade",e[e.Migration=4]="Migration"}(h||(h={}));var m=function e(t,n){v(this,e),this.types=t,this.reason=n,this.id=(new Date).getTime(),Object.freeze(this)},b=function e(t,n){v(this,e),this.type=t,this.value=n,Object.freeze(this)},I=function(){function e(t,n,r){v(this,e),this.challenge=t,this.values=n,this.artifacts=r,Object.freeze(this)}var t,n;return t=e,(n=[{key:"getValueForType",value:function(e){return this.values.find((function(t){return t.type===e}))}}])&&y(t.prototype,n),e}();function w(e){var t;return(g(t={},f.LocalPasscode,"application passcode"),g(t,f.AccountPassword,"account password"),g(t,f.Biometric,"biometrics"),t)[e]}var C,B=n(4),E=n(2),_=n(3),k=n(15);function Q(e){return(Q="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function S(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function x(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function D(e,t,n){return t&&x(e.prototype,t),n&&x(e,n),e}function P(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&function(e,t){(Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}(e,t)}function M(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=O(e);if(t){var i=O(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return F(this,n)}}function F(e,t){return!t||"object"!==Q(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function O(e){return(O=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}!function(e){e.TagsPanelWidth="tagsPanelWidth",e.NotesPanelWidth="notesPanelWidth",e.EditorWidth="editorWidth",e.EditorLeft="editorLeft",e.EditorMonospaceEnabled="monospaceFont",e.EditorSpellcheck="spellcheck",e.EditorResizersEnabled="marginResizersEnabled",e.SortNotesBy="sortBy",e.SortNotesReverse="sortReverse",e.NotesShowArchived="showArchived",e.NotesHidePinned="hidePinned",e.NotesHideNotePreview="hideNotePreview",e.NotesHideDate="hideDate"}(C||(C={}));var R,T,j=function(e){P(n,e);var t=M(n);function n(){return S(this,n),t.apply(this,arguments)}return D(n,[{key:"getPref",value:function(e){return this.getAppDomainValue(e)}},{key:"isSingleton",get:function(){return!0}},{key:"singletonPredicate",get:function(){return new k.a("content_type","=",this.content_type)}}]),n}(d.d),H=function(e){P(n,e);var t=M(n);function n(){return S(this,n),t.apply(this,arguments)}return D(n,[{key:"setWebPref",value:function(e,t){this.setAppDataItem(e,t)}}]),n}(d.b);function U(e){return(U="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function N(e,t,n){return(N="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=V(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function L(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function K(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function G(e,t,n){return t&&K(e.prototype,t),n&&K(e,n),e}function $(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&function(e,t){(Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}(e,t)}function Y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=V(e);if(t){var i=V(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return J(this,n)}}function J(e,t){return!t||"object"!==U(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function V(e){return(V=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}!function(e){e.ManageExtensions="ActionManageExtensions",e.ManageBackups="ActionManageBackups",e.ViewProtectedNotes="ActionViewProtectedNotes",e.ManagePrivileges="ActionManagePrivileges",e.ManagePasscode="ActionManagePasscode",e.DeleteNote="ActionDeleteNote"}(R||(R={})),function(e){e.AccountPassword="CredentialAccountPassword",e.LocalPasscode="CredentialLocalPasscode"}(T||(T={}));var z,q,W=function(e){$(n,e);var t=Y(n);function n(e){var r;return L(this,n),(r=t.call(this,e)).privilegeMap={},r.privilegeMap=e.safeContent.desktopPrivileges||{},r}return G(n,[{key:"getCredentialsForAction",value:function(e){return this.privilegeMap[e]||[]}},{key:"isCredentialRequiredForAction",value:function(e,t){return this.getCredentialsForAction(e).includes(t)}},{key:"isSingleton",get:function(){return!0}},{key:"singletonPredicate",get:function(){return new k.a("content_type","=",this.content_type)}}]),n}(d.d),X=function(e){$(n,e);var t=Y(n);function n(e,r){var i;return L(this,n),(i=t.call(this,e,r)).privilegeMap={},i.privileges=e,i.privilegeMap=Object(u.a)(i.payload.safeContent.desktopPrivileges||{}),i}return G(n,[{key:"getResult",value:function(){return this.content&&(this.content.desktopPrivileges=this.privilegeMap),N(V(n.prototype),"getResult",this).call(this)}},{key:"setCredentialsForAction",value:function(e,t){this.privilegeMap[e]=t}},{key:"toggleCredentialForAction",value:function(e,t){this.privileges.isCredentialRequiredForAction(e,t)?this.removeCredentialForAction(e,t):this.addCredentialForAction(e,t)}},{key:"removeCredentialForAction",value:function(e,t){Object(u.B)(this.privilegeMap[e],t)}},{key:"addCredentialForAction",value:function(e,t){var n=this.privileges.getCredentialsForAction(e).slice();n.push(t),this.setCredentialsForAction(e,n)}}]),n}(d.b),Z=n(14);function ee(e){return(ee="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function te(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ne(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function re(e,t,n){return t&&ne(e.prototype,t),n&&ne(e,n),e}function ie(e,t,n){return(ie="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=ce(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function ae(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&function(e,t){(Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}(e,t)}function oe(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=ce(e);if(t){var i=ce(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return se(this,n)}}function se(e,t){return!t||"object"!==ee(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function ce(e){return(ce=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}!function(e){e.Editor="editor-editor",e.Themes="themes",e.TagsList="tags-list",e.EditorStack="editor-stack",e.NoteTags="note-tags",e.Rooms="rooms",e.Modal="modal",e.Any="*"}(z||(z={})),function(e){e.SetSize="set-size",e.StreamItems="stream-items",e.StreamContextItem="stream-context-item",e.SaveItems="save-items",e.SelectItem="select-item",e.AssociateItem="associate-item",e.DeassociateItem="deassociate-item",e.ClearSelection="clear-selection",e.CreateItem="create-item",e.CreateItems="create-items",e.DeleteItems="delete-items",e.SetComponentData="set-component-data",e.InstallLocalComponent="install-local-component",e.ToggleActivateComponent="toggle-activate-component",e.RequestPermissions="request-permissions",e.PresentConflictResolution="present-conflict-resolution",e.DuplicateItem="duplicate-item",e.ComponentRegistered="component-registered",e.ActivateThemes="themes",e.Reply="reply",e.SaveSuccess="save-success",e.SaveError="save-error"}(q||(q={}));var ue=function(e){ae(n,e);var t=oe(n);function n(e){var r;return te(this,n),(r=t.call(this,e)).permissions=[],r.componentData=r.payload.safeContent.componentData||{},r.legacy_url=r.payload.safeContent.legacy_url,r.hosted_url=r.payload.safeContent.hosted_url||r.payload.safeContent.url,r.local_url=r.payload.safeContent.local_url,r.valid_until=new Date(r.payload.safeContent.valid_until),r.offlineOnly=r.payload.safeContent.offlineOnly,r.name=r.payload.safeContent.name,r.area=r.payload.safeContent.area,r.package_info=r.payload.safeContent.package_info,r.permissions=r.payload.safeContent.permissions||[],r.active=r.payload.safeContent.active,r.autoupdateDisabled=r.payload.safeContent.autoupdateDisabled,r.disassociatedItemIds=r.payload.safeContent.disassociatedItemIds||[],r.associatedItemIds=r.payload.safeContent.associatedItemIds||[],r.isMobileDefault=r.payload.safeContent.isMobileDefault,r.legacy_url=r.payload.safeContent.hosted_url?void 0:r.payload.safeContent.url,r}return re(n,[{key:"strategyWhenConflictingWithItem",value:function(e){return this.errorDecrypting?ie(ce(n.prototype),"strategyWhenConflictingWithItem",this).call(this,e):Z.a.KeepLeft}},{key:"isEditor",value:function(){return this.area===z.Editor}},{key:"isTheme",value:function(){return this.content_type===B.a.Theme||this.area===z.Themes}},{key:"isDefaultEditor",value:function(){return!0===this.getAppDomainValue(d.a.DefaultEditor)}},{key:"getLastSize",value:function(){return this.getAppDomainValue(d.a.LastSize)}},{key:"acceptsThemes",value:function(){var e;return null===(e=this.payload.safeContent.package_info)||void 0===e?void 0:e.acceptsThemes}},{key:"getClientDataKey",value:function(){return this.legacy_url?this.legacy_url:this.uuid}},{key:"hasValidHostedUrl",value:function(){return this.hosted_url||this.legacy_url}},{key:"contentKeysToIgnoreWhenCheckingEquality",value:function(){return["active","disassociatedItemIds","associatedItemIds"].concat(ie(ce(n.prototype),"contentKeysToIgnoreWhenCheckingEquality",this).call(this))}},{key:"isAssociative",value:function(){return n.associativeAreas().includes(this.area)}},{key:"isExplicitlyEnabledForItem",value:function(e){return-1!==this.associatedItemIds.indexOf(e)}},{key:"isExplicitlyDisabledForItem",value:function(e){return-1!==this.disassociatedItemIds.indexOf(e)}}],[{key:"associativeAreas",value:function(){return[z.Editor]}}]),n}(d.d),le=function(e){ae(n,e);var t=oe(n);function n(){return te(this,n),t.apply(this,arguments)}return re(n,[{key:"associateWithItem",value:function(e){var t=this.typedContent.associatedItemIds||[];Object(u.b)(t,e),this.typedContent.associatedItemIds=t}},{key:"disassociateWithItem",value:function(e){var t=this.typedContent.disassociatedItemIds||[];Object(u.b)(t,e),this.typedContent.disassociatedItemIds=t}},{key:"removeAssociatedItemId",value:function(e){Object(u.B)(this.typedContent.associatedItemIds||[],e)}},{key:"removeDisassociatedItemId",value:function(e){Object(u.B)(this.typedContent.disassociatedItemIds||[],e)}},{key:"setLastSize",value:function(e){this.setAppDataItem(d.a.LastSize,e)}},{key:"typedContent",get:function(){return this.content}},{key:"active",set:function(e){this.typedContent.active=e}},{key:"isMobileDefault",set:function(e){this.typedContent.isMobileDefault=e}},{key:"defaultEditor",set:function(e){this.setAppDataItem(d.a.DefaultEditor,e)}},{key:"componentData",set:function(e){this.typedContent.componentData=e}},{key:"package_info",set:function(e){this.typedContent.package_info=e}},{key:"local_url",set:function(e){this.typedContent.local_url=e}},{key:"hosted_url",set:function(e){this.typedContent.hosted_url=e}},{key:"permissions",set:function(e){this.typedContent.permissions=e}}]),n}(d.b);function Ae(e){return(Ae="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function fe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function he(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function pe(e,t,n){return(pe="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=ye(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function de(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&function(e,t){(Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}(e,t)}function ge(e,t){return!t||"object"!==Ae(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function ye(e){return(ye=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var ve=function(e){de(n,e);var t=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=ye(e);if(t){var i=ye(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return ge(this,n)}}(n);function n(){var e;return fe(this,n),(e=t.apply(this,arguments)).area=z.Themes,e}return function(e,t,n){t&&he(e.prototype,t),n&&he(e,n)}(n,[{key:"isLayerable",value:function(){return this.package_info&&this.package_info.layerable}},{key:"strategyWhenConflictingWithItem",value:function(e){return this.errorDecrypting?pe(ye(n.prototype),"strategyWhenConflictingWithItem",this).call(this,e):Z.a.KeepLeft}},{key:"getMobileRules",value:function(){return this.getAppDomainValue(d.a.MobileRules)||{constants:{},rules:{}}}},{key:"hasMobileRules",value:function(){return this.getAppDomainValue(d.a.MobileRules)}},{key:"getNotAvailOnMobile",value:function(){return this.getAppDomainValue(d.a.NotAvailableOnMobile)}},{key:"isMobileActive",value:function(){return this.getAppDomainValue(d.a.MobileActive)}}]),n}(ue);function me(e){return(me="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function be(e,t){return(be=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Ie(e,t){return!t||"object"!==me(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function we(e){return(we=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}d.b;var Ce,Be,Ee=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&be(e,t)}(n,e);var t=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=we(e);if(t){var i=we(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Ie(this,n)}}(n);function n(e){var r;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,n),(r=t.call(this,e)).notes=[],r.data={},r.url=e.safeContent.url,r.name=e.safeContent.name,r.data=e.safeContent.data||{},r.isDefault=e.safeContent.default,r.systemEditor=e.safeContent.systemEditor,r}return n}(d.d),_e=n(38),ke=n.n(_e);!function(e){e.Encrypted="encrypted",e.Decrypted="decrypted"}(Ce||(Ce={})),function(e){e.Get="get",e.Render="render",e.Show="show",e.Post="post",e.Nested="nested"}(Be||(Be={}));var Qe=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),ke()(this,t),this.running=t.running||!1,this.error=t.error||!1,this.lastExecuted&&(this.lastExecuted=new Date(this.lastExecuted))};function Se(e){return(Se="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function xe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function De(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Pe(e,t,n){return t&&De(e.prototype,t),n&&De(e,n),e}function Me(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&function(e,t){(Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}(e,t)}function Fe(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Re(e);if(t){var i=Re(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Oe(this,n)}}function Oe(e,t){return!t||"object"!==Se(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Re(e){return(Re=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Te=function(e){Me(n,e);var t=Fe(n);function n(e){var r;return xe(this,n),(r=t.call(this,e)).actions=[],r.description=e.safeContent.description,r.url=e.safeContent.url,r.name=e.safeContent.name,r.package_info=e.safeContent.package_info,r.supported_types=e.safeContent.supported_types,r.hidden=e.safeContent.hidden,e.safeContent.actions&&(r.actions=e.safeContent.actions.map((function(e){return new Qe(e)}))),r}return Pe(n,[{key:"actionsWithContextForItem",value:function(e){return this.actions.filter((function(t){return t.context===e.content_type||"Item"===t.context}))}}]),n}(d.d),je=function(e){Me(n,e);var t=Fe(n);function n(){return xe(this,n),t.apply(this,arguments)}return Pe(n,[{key:"description",set:function(e){this.content.description=e}},{key:"supported_types",set:function(e){this.content.supported_types=e}},{key:"actions",set:function(e){this.content.actions=e}},{key:"hidden",set:function(e){this.content.hidden=e}}]),n}(d.b);function He(e){return(He="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Ue(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ne(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Le(e,t,n){return t&&Ne(e.prototype,t),n&&Ne(e,n),e}function Ke(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&function(e,t){(Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}(e,t)}function Ge(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Ye(e);if(t){var i=Ye(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return $e(this,n)}}function $e(e,t){return!t||"object"!==He(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Ye(e){return(Ye=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Je=function(e){Ke(n,e);var t=Ge(n);function n(e){var r;return Ue(this,n),(r=t.call(this,e)).title=r.payload.safeContent.title,r}return Le(n,[{key:"isSmartTag",value:function(){return this.content_type===B.a.SmartTag}},{key:"noteCount",get:function(){return this.payload.safeReferences.length}},{key:"isAllTag",get:function(){return this.payload.safeContent.isAllTag}},{key:"isTrashTag",get:function(){return this.payload.safeContent.isTrashTag}},{key:"isArchiveTag",get:function(){return this.payload.safeContent.isArchiveTag}}],[{key:"arrayToDisplayString",value:function(e){return e.sort((function(e,t){return e.title>t.title?1:-1})).map((function(e){return"#"+e.title})).join(" ")}}]),n}(d.d),Ve=function(e){Ke(n,e);var t=Ge(n);function n(){return Ue(this,n),t.apply(this,arguments)}return Le(n,[{key:"title",set:function(e){this.content.title=e}}]),n}(d.b);function ze(e){return(ze="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function qe(e,t){return(qe=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function We(e,t){return!t||"object"!==ze(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Xe(e){return(Xe=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Ze=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&qe(e,t)}(n,e);var t=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Xe(e);if(t){var i=Xe(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return We(this,n)}}(n);function n(e){var r;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,n),r=t.call(this,e),e.safeContent.predicate&&(r.predicate=k.a.FromJson(e.safeContent.predicate)),r}return n}(Je),et=n(10);function tt(e){return(tt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function nt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function rt(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function it(e,t,n){return t&&rt(e.prototype,t),n&&rt(e,n),e}function at(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&function(e,t){(Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}(e,t)}function ot(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=ct(e);if(t){var i=ct(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return st(this,n)}}function st(e,t){return!t||"object"!==tt(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function ct(e){return(ct=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var ut=function(e){at(n,e);var t=ot(n);function n(e){var r;return nt(this,n),(r=t.call(this,e)).text="",r.hidePreview=!1,r.title=r.payload.safeContent.title,r.text=r.payload.safeContent.text,r.preview_plain=r.payload.safeContent.preview_plain,r.preview_html=r.payload.safeContent.preview_html,r.hidePreview=r.payload.safeContent.hidePreview,e.format===et.a.DecryptedBareObject&&(r.prefersPlainEditor=r.getAppDomainValue(d.a.PrefersPlainEditor)),Object(u.p)(r.payload.safeContent.mobilePrefersPlainEditor)||(r.mobilePrefersPlainEditor=r.payload.safeContent.mobilePrefersPlainEditor),r}return it(n,[{key:"safeText",value:function(){return this.text||""}},{key:"safeTitle",value:function(){return this.title||""}}]),n}(d.d),lt=function(e){at(n,e);var t=ot(n);function n(){return nt(this,n),t.apply(this,arguments)}return it(n,[{key:"typedContent",get:function(){return this.content}},{key:"title",set:function(e){this.typedContent.title=e}},{key:"text",set:function(e){this.typedContent.text=e}},{key:"hidePreview",set:function(e){this.typedContent.hidePreview=e}},{key:"preview_plain",set:function(e){this.typedContent.preview_plain=e}},{key:"preview_html",set:function(e){this.typedContent.preview_html=e}},{key:"prefersPlainEditor",set:function(e){this.setAppDataItem(d.a.PrefersPlainEditor,e)}}]),n}(d.b),At=n(7);function ft(e){return(ft="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function ht(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function pt(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function dt(e,t,n){return t&&pt(e.prototype,t),n&&pt(e,n),e}function gt(e,t,n){return(gt="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=bt(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function yt(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&function(e,t){(Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}(e,t)}function vt(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=bt(e);if(t){var i=bt(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return mt(this,n)}}function mt(e,t){return!t||"object"!==ft(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function bt(e){return(bt=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var It,wt=function(e){yt(n,e);var t=vt(n);function n(){return ht(this,n),t.apply(this,arguments)}return dt(n,[{key:"strategyWhenConflictingWithItem",value:function(e){return this.errorDecrypting?gt(bt(n.prototype),"strategyWhenConflictingWithItem",this).call(this,e):Z.a.KeepLeft}},{key:"version",get:function(){return this.payload.safeContent.version}},{key:"isItemsKey",get:function(){return!0}},{key:"isDefault",get:function(){return this.payload.safeContent.isDefault}},{key:"itemsKey",get:function(){return this.payload.safeContent.itemsKey}},{key:"dataAuthenticationKey",get:function(){if(this.version===At.a.V004)throw"Attempting to access legacy data authentication key.";return this.payload.safeContent.dataAuthenticationKey}}]),n}(d.d),Ct=function(e){yt(n,e);var t=vt(n);function n(){return ht(this,n),t.apply(this,arguments)}return dt(n,[{key:"isDefault",set:function(e){this.content.isDefault=e}}]),n}(d.b);function Bt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Et,_t,kt=(Bt(It={},B.a.Note,ut),Bt(It,B.a.Tag,Je),Bt(It,B.a.ItemsKey,wt),Bt(It,B.a.SmartTag,Ze),Bt(It,B.a.ActionsExtension,Te),Bt(It,B.a.Editor,Ee),Bt(It,B.a.Theme,ve),Bt(It,B.a.Component,ue),Bt(It,B.a.Privileges,W),Bt(It,B.a.UserPrefs,j),It);function Qt(e){return new(kt[e.content_type]||d.d)(e)}function St(e,t){return e?"".concat(e,"-").concat(t):t}!function(e){e.StorageObject="storage",e.LastMigrationTimestamp="last_migration_timestamp"}(Et||(Et={})),function(e){e.RootKeyParams="ROOT_KEY_PARAMS",e.WrappedRootKey="WRAPPED_ROOT_KEY",e.RootKeyWrapperKeyParams="ROOT_KEY_WRAPPER_KEY_PARAMS",e.Session="session",e.User="user",e.ServerHost="server",e.LegacyUuid="uuid",e.LastSyncToken="syncToken",e.PaginationToken="cursorToken",e.BiometricsState="biometrics_state",e.MobilePasscodeTiming="passcode_timing",e.MobileBiometricsTiming="biometrics_timing",e.PrivilegesExpirey="SessionExpiresAtKey",e.PrivilegesSessionLength="SessionLengthKey",e.SessionHistoryPersistable="sessionHistory_persist",e.SessionHistoryRevisions="sessionHistory_revisions",e.SessionHistoryOptimize="sessionHistory_autoOptimize"}(_t||(_t={}));var xt,Dt,Pt,Mt,Ft=n(9),Ot=n(12);function Rt(e){return(Rt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Tt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function jt(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Ht(e,t);var n=Object.prototype.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)?Ht(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function Ht(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Ut(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Nt(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Ut(a,r,i,o,s,"next",e)}function s(e){Ut(a,r,i,o,s,"throw",e)}o(void 0)}))}}function Lt(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Kt(e,t,n){return(Kt="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Yt(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function Gt(e,t){return(Gt=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function $t(e,t){return!t||"object"!==Rt(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Yt(e){return(Yt=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}!function(e){e[e.Default=1]="Default",e[e.Ephemeral=2]="Ephemeral"}(xt||(xt={})),function(e){e[e.Default=1]="Default",e[e.Disabled=2]="Disabled"}(Dt||(Dt={})),function(e){e[e.Default=1]="Default",e[e.Nonwrapped=2]="Nonwrapped"}(Pt||(Pt={})),function(e){e.Wrapped="wrapped",e.Unwrapped="unwrapped",e.Nonwrapped="nonwrapped"}(Mt||(Mt={}));var Jt,Vt=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Gt(e,t)}(P,e);var t,n,r,a,s,c,l,A,f,h,d,g,y,v,m,b,I,w,C,_,k,Q,S,x,D=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Yt(e);if(t){var i=Yt(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return $t(this,n)}}(P);function P(e,t){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,P),(n=D.call(this)).storagePersistable=!1,n.deviceInterface=e,n.namespace=t,n.setPersistencePolicy(xt.Default),n.setEncryptionPolicy(Dt.Default),n}return t=P,n=[{key:"deinit",value:function(){this.deviceInterface=void 0,this.encryptionDelegate=void 0,Kt(Yt(P.prototype),"deinit",this).call(this)}},{key:"handleApplicationStage",value:(x=Nt(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Kt(Yt(P.prototype),"handleApplicationStage",this).call(this,t);case 2:t===i.Launched_10&&(this.storagePersistable=!0);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return x.apply(this,arguments)})},{key:"setPersistencePolicy",value:(S=Nt(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.persistencePolicy=t,this.persistencePolicy!==xt.Ephemeral){e.next=6;break}return e.next=4,this.deviceInterface.removeAllRawStorageValues();case 4:return e.next=6,this.clearAllPayloads();case 6:case"end":return e.stop()}}),e,this)}))),function(e){return S.apply(this,arguments)})},{key:"setEncryptionPolicy",value:(Q=Nt(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.encryptionPolicy=t;case 1:case"end":return e.stop()}}),e,this)}))),function(e){return Q.apply(this,arguments)})},{key:"isEphemeralSession",value:function(){return this.persistencePolicy===xt.Ephemeral}},{key:"initializeFromDisk",value:(k=Nt(o.a.mark((function e(){var t,n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.deviceInterface.getRawStorageValue(this.getPersistenceKey());case 2:t=e.sent,n=t?JSON.parse(t):void 0,this.setInitialValues(n);case 5:case"end":return e.stop()}}),e,this)}))),function(){return k.apply(this,arguments)})},{key:"setInitialValues",value:function(e){e||(e=this.defaultValuesObject()),e[Mt.Unwrapped]||(e[Mt.Unwrapped]={}),this.values=e}},{key:"isStorageWrapped",value:function(){var e=this.values[Mt.Wrapped];return!Object(u.p)(e)&&Object.keys(e).length>0}},{key:"canDecryptWithKey",value:(_=Nt(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.values[Mt.Wrapped],e.next=3,this.decryptWrappedValue(n,t);case 3:return r=e.sent,e.abrupt("return",!r.errorDecrypting);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return _.apply(this,arguments)})},{key:"decryptWrappedValue",value:(C=Nt(o.a.mark((function e(t,n){var r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null==t?void 0:t.content_type){e.next=2;break}throw Error("Attempting to decrypt nonexistent wrapped value");case 2:return r=Object(E.e)(t,{content_type:B.a.EncryptedStorage}),e.next=5,this.encryptionDelegate.payloadByDecryptingPayload(r,n);case 5:return i=e.sent,e.abrupt("return",i);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t){return C.apply(this,arguments)})},{key:"decryptStorage",value:(w=Nt(o.a.mark((function e(){var t,n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.values[Mt.Wrapped],e.next=3,this.decryptWrappedValue(t);case 3:if(!(n=e.sent).errorDecrypting){e.next=6;break}throw Error("Unable to decrypt storage.");case 6:this.values[Mt.Unwrapped]=Object(u.a)(n.contentObject);case 7:case"end":return e.stop()}}),e,this)}))),function(){return w.apply(this,arguments)})},{key:"persistValuesToDisk",value:(I=Nt(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.storagePersistable){e.next=2;break}return e.abrupt("return");case 2:if(this.persistencePolicy!==xt.Ephemeral){e.next=4;break}return e.abrupt("return");case 4:return e.next=6,this.immediatelyPersistValuesToDisk();case 6:t=e.sent,this.values[Mt.Wrapped]=t[Mt.Wrapped];case 8:case"end":return e.stop()}}),e,this)}))),function(){return I.apply(this,arguments)})},{key:"immediatelyPersistValuesToDisk",value:(b=Nt(o.a.mark((function e(){var t=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.executeCriticalFunction(Nt(o.a.mark((function e(){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.generatePersistableValues();case 2:return n=e.sent,e.next=5,t.deviceInterface.setRawStorageValue(t.getPersistenceKey(),JSON.stringify(n));case 5:return e.abrupt("return",n);case 6:case"end":return e.stop()}}),e)})))));case 1:case"end":return e.stop()}}),e,this)}))),function(){return b.apply(this,arguments)})},{key:"generatePersistableValues",value:(m=Nt(o.a.mark((function e(){var t,n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=Object.assign({},this.values),n=t[Mt.Unwrapped],e.t0=E.e,e.next=5,p.GenerateUuid();case 5:return e.t1=e.sent,e.t2=n,e.t3=B.a.EncryptedStorage,e.t4={uuid:e.t1,content:e.t2,content_type:e.t3},r=(0,e.t0)(e.t4),e.next=12,this.encryptionDelegate.payloadByEncryptingPayload(r,Ft.a.LocalStoragePreferEncrypted);case 12:return i=e.sent,t[Mt.Wrapped]=i.ejected(),t[Mt.Unwrapped]=void 0,e.abrupt("return",t);case 16:case"end":return e.stop()}}),e,this)}))),function(){return m.apply(this,arguments)})},{key:"setValue",value:(v=Nt(o.a.mark((function e(t,n){var r,i=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=i.length>2&&void 0!==i[2]?i[2]:Pt.Default,this.values){e.next=3;break}throw Error("Attempting to set storage key ".concat(t," before loading local storage."));case 3:return this.values[this.domainKeyForMode(r)][t]=n,e.abrupt("return",this.persistValuesToDisk());case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return v.apply(this,arguments)})},{key:"getValue",value:(y=Nt(o.a.mark((function e(t){var n,r=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:Pt.Default,this.values){e.next=3;break}throw Error("Attempting to get storage key ".concat(t," before loading local storage."));case 3:if(this.values[this.domainKeyForMode(n)]){e.next=5;break}throw Error("Storage domain mode not available ".concat(n," for key ").concat(t));case 5:return e.abrupt("return",this.values[this.domainKeyForMode(n)][t]);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"removeValue",value:(g=Nt(o.a.mark((function e(t){var n,r=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:Pt.Default,this.values){e.next=3;break}throw Error("Attempting to remove storage key ".concat(t," before loading local storage."));case 3:return delete this.values[this.domainKeyForMode(n)][t],e.abrupt("return",this.persistValuesToDisk());case 5:case"end":return e.stop()}}),e,this)}))),function(e){return g.apply(this,arguments)})},{key:"getStorageEncryptionPolicy",value:function(){return this.encryptionPolicy}},{key:"getPersistenceKey",value:function(){return St(this.namespace,Et.StorageObject)}},{key:"defaultValuesObject",value:function(e,t,n){return P.defaultValuesObject(e,t,n)}},{key:"domainKeyForMode",value:function(e){if(e===Pt.Default)return Mt.Unwrapped;if(e===Pt.Nonwrapped)return Mt.Nonwrapped;throw Error("Invalid mode")}},{key:"clearValues",value:(d=Nt(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.setInitialValues(),e.next=3,this.immediatelyPersistValuesToDisk();case 3:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"getAllRawPayloads",value:(h=Nt(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.deviceInterface.getAllRawDatabasePayloads());case 1:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"savePayload",value:(f=Nt(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.savePayloads([t]));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return f.apply(this,arguments)})},{key:"savePayloads",value:(A=Nt(o.a.mark((function e(t){var n,r,i,a,s,c=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.persistencePolicy!==xt.Ephemeral){e.next=2;break}return e.abrupt("return");case 2:n=[],r=jt(t),e.prev=4,r.s();case 6:if((i=r.n()).done){e.next=21;break}if(!(a=i.value).discardable){e.next=13;break}return e.next=11,this.deletePayloadWithId(a.uuid);case 11:e.next=19;break;case 13:if(a.uuid){e.next=15;break}throw Error("Attempting to persist payload with no uuid");case 15:return e.next=17,this.encryptionDelegate.payloadByEncryptingPayload(a,this.encryptionPolicy===Dt.Default?Ft.a.LocalStoragePreferEncrypted:Ft.a.LocalStorageDecrypted);case 17:s=e.sent,n.push(s.ejected());case 19:e.next=6;break;case 21:e.next=26;break;case 23:e.prev=23,e.t0=e.catch(4),r.e(e.t0);case 26:return e.prev=26,r.f(),e.finish(26);case 29:return e.abrupt("return",this.executeCriticalFunction(Nt(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",c.deviceInterface.saveRawDatabasePayloads(n));case 1:case"end":return e.stop()}}),e)})))));case 30:case"end":return e.stop()}}),e,this,[[4,23,26,29]])}))),function(e){return A.apply(this,arguments)})},{key:"deletePayloads",value:(l=Nt(o.a.mark((function e(t){var n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=jt(t),e.prev=1,n.s();case 3:if((r=n.n()).done){e.next=9;break}return i=r.value,e.next=7,this.deletePayloadWithId(i.uuid);case 7:e.next=3;break;case 9:e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),n.e(e.t0);case 14:return e.prev=14,n.f(),e.finish(14);case 17:case"end":return e.stop()}}),e,this,[[1,11,14,17]])}))),function(e){return l.apply(this,arguments)})},{key:"deletePayloadWithId",value:(c=Nt(o.a.mark((function e(t){var n=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.executeCriticalFunction(Nt(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",n.deviceInterface.removeRawDatabasePayloadWithId(t));case 1:case"end":return e.stop()}}),e)})))));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"clearAllPayloads",value:(s=Nt(o.a.mark((function e(){var t=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.executeCriticalFunction(Nt(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t.deviceInterface.removeAllRawDatabasePayloads());case 1:case"end":return e.stop()}}),e)})))));case 1:case"end":return e.stop()}}),e,this)}))),function(){return s.apply(this,arguments)})},{key:"clearAllData",value:(a=Nt(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all([this.clearValues(),this.clearAllPayloads()]));case 1:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})}],r=[{key:"defaultValuesObject",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return Tt(e={},Mt.Wrapped,t),Tt(e,Mt.Unwrapped,n),Tt(e,Mt.Nonwrapped,r),e}}],n&&Lt(t.prototype,n),r&&Lt(t,r),P}(Ot.a);function zt(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}!function(e){e[e.Info=0]="Info",e[e.Danger=1]="Danger"}(Jt||(Jt={}));var qt=function(){function e(t,n,r,i){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.accessToken=t,this.expireAt=n,this.refreshToken=r,this.validUntil=i}var t,n,r;return t=e,r=[{key:"FromRaw",value:function(t){return new e(t.accessToken,t.expireAt,t.refreshToken,t.validUntil)}},{key:"FromResponse",value:function(t){var n,r,i;return new e(t.token,null===(n=t.session)||void 0===n?void 0:n.expire_at,null===(r=t.session)||void 0===r?void 0:r.refresh_token,null===(i=t.session)||void 0===i?void 0:i.valid_until)}}],(n=[{key:"getExpireAt",value:function(){return this.expireAt||0}},{key:"canExpire",value:function(){return this.getExpireAt()>0}},{key:"isExpired",value:function(){return!!this.canExpire()&&this.getExpireAt()<Date.now()}}])&&zt(t.prototype,n),r&&zt(t,r),e}(),Wt="Your account session is being renewed with the server. Please try your request again.",Xt="This version of the application does not support your\n newer account type. Please upgrade to the latest version\n of Standard Notes to sign in.",Zt="The protocol version associated with your account is\n outdated and no longer supported by this application.\n Please visit standardnotes.org/help/security for more\n information.",en="The encryption version for your account is outdated and\n requires upgrade. You may proceed with login, but are\n advised to perform a security update using the web or\n desktop application. Please visit\n standardnotes.org/help/security for more information.",tn="Your account was created on a platform with higher security\n capabilities than this browser supports. If we attempted\n to generate your login keys here, it would take hours. Please\n use a browser with more up to date security capabilities,\n like Google Chrome or Firefox, to log in.",nn="Unable to login due to insecure password parameters.\n Please visit standardnotes.org/help/security for\n more information.";function rn(e){return"\n Your password must be at least ".concat(e," characters in length.\n For your security, please choose a longer password or,\n ideally, a passphrase, and try again.\n ")}function an(e,t){return"\n Strict Sign In has refused the server's sign-in parameters.\n The latest account version is ".concat(t,", but the server is reporting a \n version of ").concat(e," for your account. If you'd like to proceed\n with sign in anyway, please disable Strict Sign In and try again.\n ")}function on(e){return(on="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function sn(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function cn(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){sn(a,r,i,o,s,"next",e)}function s(e){sn(a,r,i,o,s,"throw",e)}o(void 0)}))}}function un(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function ln(e,t,n){return(ln="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=hn(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function An(e,t){return(An=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function fn(e,t){return!t||"object"!==on(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function hn(e){return(hn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var pn,dn=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&An(e,t)}(h,e);var t,n,r,i,a,s,c,l,A,f=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=hn(e);if(t){var i=hn(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return fn(this,n)}}(h);function h(e,t,n,r){var i;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,h),(i=f.call(this)).protocolService=r,i.storageService=e,i.apiService=t,i.alertService=n,i}return t=h,(n=[{key:"deinit",value:function(){this.protocolService=void 0,this.storageService=void 0,this.apiService=void 0,this.alertService=void 0,this.user=void 0,ln(hn(h.prototype),"deinit",this).call(this)}},{key:"initializeFromDisk",value:(A=cn(o.a.mark((function e(){var t,n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageService.getValue(_t.User);case 2:if(this.user=e.sent,this.user){e.next=8;break}return e.next=6,this.storageService.getValue(_t.LegacyUuid);case 6:(t=e.sent)&&(this.user={uuid:t});case 8:return e.next=10,this.storageService.getValue(_t.Session);case 10:if(!(n=e.sent)){e.next=14;break}return e.next=14,this.setSession(qt.FromRaw(n),!1);case 14:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"setSession",value:(l=cn(o.a.mark((function e(t){var n,r=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=!(r.length>1&&void 0!==r[1])||r[1],e.next=3,this.apiService.setSession(t,n);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"online",value:function(){return!this.offline()}},{key:"offline",value:function(){return Object(u.p)(this.apiService.getSession())}},{key:"getUser",value:function(){return this.user}},{key:"signOut",value:(c=cn(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.user=void 0,e.next=3,this.apiService.getSession();case 3:(t=e.sent)&&t.canExpire()&&this.apiService.signOut();case 5:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"register",value:(s=cn(o.a.mark((function e(t,n){var r,i,a,s,c=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(n.length<8)){e.next=2;break}return e.abrupt("return",{response:this.apiService.createErrorResponse(rn(8))});case 2:return e.next=4,this.protocolService.createRootKey(t,n);case 4:return r=e.sent,i=r.key.serverPassword,a=r.keyParams,s=r.key,e.abrupt("return",this.apiService.register(t,i,a).then(function(){var e=cn(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c.handleAuthResponse(t);case 2:return e.abrupt("return",{response:t,keyParams:a,rootKey:s});case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 9:case"end":return e.stop()}}),e,this)}))),function(e,t){return s.apply(this,arguments)})},{key:"signIn",value:(a=cn(o.a.mark((function e(t,n){var r,i,a,s,c,u,l,A,f,h,p,d,g=this,y=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=y.length>2&&void 0!==y[2]&&y[2],i=y.length>3?y[3]:void 0,a=y.length>4?y[4]:void 0,e.next=5,this.apiService.getAccountKeyParams(t,i,a);case 5:if(!(s=e.sent).error){e.next=8;break}return e.abrupt("return",{response:s});case 8:if(c={pw_cost:s.pw_cost,pw_nonce:s.pw_nonce,identifier:s.identifier,email:s.email,pw_salt:s.pw_salt,version:s.version},(u=this.protocolService.createKeyParams(c))&&u.version){e.next=12;break}return e.abrupt("return",{response:this.apiService.createErrorResponse("Invalid email or password.")});case 12:if(this.protocolService.supportedVersions().includes(u.version)){e.next=18;break}if(!this.protocolService.isVersionNewerThanLibraryVersion(u.version)){e.next=17;break}return e.abrupt("return",{response:this.apiService.createErrorResponse(Xt)});case 17:return e.abrupt("return",{response:this.apiService.createErrorResponse(Zt)});case 18:if(!this.protocolService.isProtocolVersionOutdated(u.version)){e.next=29;break}if(l=this.protocolService.costMinimumForVersion(u.version),!(u.kdfIterations<l)){e.next=22;break}return e.abrupt("return",{response:this.apiService.createErrorResponse(nn)});case 22:return A=en,e.next=26,this.alertService.confirm(A,"Update Recommended","Sign In");case 26:if(e.sent){e.next=29;break}return e.abrupt("return",{response:this.apiService.createErrorResponse("Invalid email or password.")});case 29:if(this.protocolService.platformSupportsKeyDerivation(u)){e.next=31;break}return e.abrupt("return",{response:this.apiService.createErrorResponse(tn)});case 31:if(!r){e.next=35;break}if(f=this.protocolService.getLatestVersion(),u.version===f){e.next=35;break}return e.abrupt("return",{response:this.apiService.createErrorResponse(an(u.version,f))});case 35:return e.next=37,this.protocolService.computeRootKey(n,u).then((function(e){return{rootKey:e,serverPassword:e.serverPassword}}));case 37:return h=e.sent,p=h.rootKey,d=h.serverPassword,e.abrupt("return",this.apiService.signIn(t,d,i,a).then(function(){var e=cn(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,g.handleAuthResponse(t);case 2:return e.abrupt("return",{response:t,keyParams:u,rootKey:p});case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 41:case"end":return e.stop()}}),e,this)}))),function(e,t){return a.apply(this,arguments)})},{key:"changePassword",value:(i=cn(o.a.mark((function e(t,n,r){var i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.apiService.changePassword(t,n,r);case 2:return i=e.sent,e.next=5,this.handleAuthResponse(i);case 5:return e.abrupt("return",i);case 6:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return i.apply(this,arguments)})},{key:"handleAuthResponse",value:(r=cn(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}return e.abrupt("return");case 2:return n=t.user,this.user=n,e.next=6,this.storageService.setValue(_t.User,n);case 6:if(!t.token){e.next=10;break}return r=qt.FromResponse(t),e.next=10,this.setSession(r);case 10:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})}])&&un(t.prototype,n),h}(Ot.a);function gn(e){return(gn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function yn(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function vn(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){yn(a,r,i,o,s,"next",e)}function s(e){yn(a,r,i,o,s,"throw",e)}o(void 0)}))}}function mn(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function bn(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function In(e,t){return(In=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function wn(e,t){return!t||"object"!==gn(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Cn(e){return(Cn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}!function(e){e.Get="get",e.Post="post",e.Patch="patch"}(pn||(pn={}));var Bn,En=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&In(e,t)}(l,e);var t,n,r,i,a,s,c,u=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Cn(e);if(t){var i=Cn(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return wn(this,n)}}(l);function l(){return mn(this,l),u.apply(this,arguments)}return t=l,(n=[{key:"getAbsolute",value:(c=vn(o.a.mark((function e(t,n,r){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.runHttp({url:t,params:n,verb:pn.Get,authentication:r}));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return c.apply(this,arguments)})},{key:"postAbsolute",value:(s=vn(o.a.mark((function e(t,n,r){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.runHttp({url:t,params:n,verb:pn.Post,authentication:r}));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return s.apply(this,arguments)})},{key:"patchAbsolute",value:(a=vn(o.a.mark((function e(t,n,r){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.runHttp({url:t,params:n,verb:pn.Patch,authentication:r}));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return a.apply(this,arguments)})},{key:"runHttp",value:(i=vn(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.createXmlRequest(t),e.abrupt("return",this.runRequest(n,t.verb,t.params));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"createXmlRequest",value:function(e){var t=new XMLHttpRequest;return e.params&&e.verb===pn.Get&&Object.keys(e.params).length>0&&(e.url=this.urlForUrlAndParams(e.url,e.params)),t.open(e.verb,e.url,!0),t.setRequestHeader("Content-type","application/json"),e.authentication&&t.setRequestHeader("Authorization","Bearer "+e.authentication),t}},{key:"runRequest",value:(r=vn(o.a.mark((function e(t,n,r){var i=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,a){t.onreadystatechange=function(){i.stateChangeHandlerForRequest(t,e,a)},n===pn.Post||n===pn.Patch?t.send(JSON.stringify(r)):t.send()})));case 1:case"end":return e.stop()}}),e)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"stateChangeHandlerForRequest",value:function(e,t,n){if(4===e.readyState){var r=e.status,i={status:r};try{var a=JSON.parse(e.responseText);Object.assign(i,a)}catch(e){}r>=200&&r<=299?t(i):(i.error||(i.error={status:r}),n(i))}}},{key:"urlForUrlAndParams",value:function(e,t){var n=Object.keys(t).map((function(e){return e+"="+encodeURIComponent(t[e])})).join("&");return e.includes("?")?e+"&"+n:e+"?"+n}},{key:"isErrorResponseExpiredToken",value:function(e){return 498===e.status}}])&&bn(t.prototype,n),l}(Ot.a);function _n(e){return(_n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function kn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Qn(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?kn(Object(n),!0).forEach((function(t){Sn(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):kn(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Sn(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function xn(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Dn(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){xn(a,r,i,o,s,"next",e)}function s(e){xn(a,r,i,o,s,"throw",e)}o(void 0)}))}}function Pn(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Mn(e,t,n){return(Mn="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Rn(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function Fn(e,t){return(Fn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function On(e,t){return!t||"object"!==_n(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Rn(e){return(Rn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}!function(e){e.LastSyncToken="sync_token",e.PaginationToken="cursor_token",e.IntegrityCheck="compute_integrity",e.IntegrityResult="integrity_hash",e.SyncDlLimit="limit",e.SyncPayloads="items",e.ApiVersion="api"}(Bn||(Bn={}));var Tn,jn,Hn=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Fn(e,t)}(m,e);var t,n,r,i,a,s,c,l,A,f,h,p,d,g,y,v=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Rn(e);if(t){var i=Rn(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return On(this,n)}}(m);function m(e,t){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,m),(n=v.call(this)).registering=!1,n.authenticating=!1,n.changing=!1,n.refreshingSession=!1,n.httpService=e,n.storageService=t,n}return t=m,(n=[{key:"deinit",value:function(){this.httpService=void 0,this.storageService=void 0,this.host=void 0,this.session=void 0,Mn(Rn(m.prototype),"deinit",this).call(this)}},{key:"loadHost",value:(y=Dn(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageService.getValue(_t.ServerHost);case 2:t=e.sent,this.host=t||window._default_sync_server;case 4:case"end":return e.stop()}}),e,this)}))),function(){return y.apply(this,arguments)})},{key:"setHost",value:(g=Dn(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.host=t,e.next=3,this.storageService.setValue(_t.ServerHost,t);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return g.apply(this,arguments)})},{key:"getHost",value:(d=Dn(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.host);case 1:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"setSession",value:(p=Dn(o.a.mark((function e(t){var n,r=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=!(r.length>1&&void 0!==r[1])||r[1],this.session=t,!n){e.next=5;break}return e.next=5,this.storageService.setValue(_t.Session,t);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return p.apply(this,arguments)})},{key:"getSession",value:function(){return this.session}},{key:"path",value:(h=Dn(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getHost();case 2:if(n=e.sent){e.next=5;break}throw"Attempting to build path ".concat(t," with no host.");case 5:if(t){e.next=7;break}throw"Attempting to build path with null path.";case 7:return e.abrupt("return",Object(u.u)(n,t));case 8:case"end":return e.stop()}}),e,this)}))),function(e){return h.apply(this,arguments)})},{key:"params",value:function(e){return ke()(e,Sn({},Bn.ApiVersion,"20200115"))}},{key:"createErrorResponse",value:function(e){return{error:{message:e}}}},{key:"errorResponseWithFallbackMessage",value:function(e,t){return e.error.message||(e.error.message=t),e}},{key:"getAccountKeyParams",value:(f=Dn(o.a.mark((function e(t,n,r){var i,a,s,c=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.path("/auth/params");case 2:return i=e.sent,a=this.params({email:t}),n&&(a[n]=r),e.next=7,this.httpService.getAbsolute(i,a).catch((function(e){return c.errorResponseWithFallbackMessage(e,"A server error occurred while trying to sign in. Please try again.")}));case 7:return s=e.sent,e.abrupt("return",s);case 9:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return f.apply(this,arguments)})},{key:"register",value:(A=Dn(o.a.mark((function e(t,n,r){var i,a,s,c=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.registering){e.next=2;break}return e.abrupt("return",this.createErrorResponse("An existing registration request is already in progress."));case 2:return this.registering=!0,e.next=5,this.path("/auth");case 5:return i=e.sent,a=this.params(Qn({password:n,email:t},r.getPortableValue())),e.next=9,this.httpService.postAbsolute(i,a).catch((function(e){return c.errorResponseWithFallbackMessage(e,"A server error occurred while trying to register. Please try again.")}));case 9:return s=e.sent,this.registering=!1,e.abrupt("return",s);case 12:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return A.apply(this,arguments)})},{key:"signIn",value:(l=Dn(o.a.mark((function e(t,n,r,i){var a,s,c,u=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.authenticating){e.next=2;break}return e.abrupt("return",this.createErrorResponse("An existing sign in request is already in progress."));case 2:return this.authenticating=!0,e.next=5,this.path("/auth/sign_in");case 5:return a=e.sent,s=this.params({email:t,password:n}),r&&(s[r]=i),e.next=10,this.httpService.postAbsolute(a,s).catch((function(e){return u.errorResponseWithFallbackMessage(e,"A server error occurred while trying to sign in. Please try again.")}));case 10:return c=e.sent,this.authenticating=!1,e.abrupt("return",c);case 13:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return l.apply(this,arguments)})},{key:"signOut",value:(c=Dn(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.path("/auth/sign_out");case 2:return t=e.sent,e.abrupt("return",this.httpService.postAbsolute(t,void 0,this.session.accessToken));case 4:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"changePassword",value:(s=Dn(o.a.mark((function e(t,n,r){var i,a,s,c=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.changing){e.next=2;break}return e.abrupt("return",this.createErrorResponse("An existing change password request is already in progress."));case 2:if(!this.refreshingSession){e.next=4;break}return e.abrupt("return",this.createErrorResponse(Wt));case 4:return this.changing=!0,e.next=7,this.path("/auth/change_pw");case 7:return i=e.sent,a=this.params(Qn({current_password:t,new_password:n},r.getPortableValue())),e.next=11,this.httpService.postAbsolute(i,a,this.session.accessToken).catch(function(){var e=Dn(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!c.httpService.isErrorResponseExpiredToken(t)){e.next=2;break}return e.abrupt("return",c.refreshSessionThenRetryRequest({verb:pn.Post,url:i,params:a}));case 2:return e.abrupt("return",c.errorResponseWithFallbackMessage(t,"Something went wrong while changing your password.\n Your password was not changed. Please try again."));case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}());case 11:return s=e.sent,this.changing=!1,e.abrupt("return",s);case 14:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return s.apply(this,arguments)})},{key:"sync",value:(a=Dn(o.a.mark((function e(t,n,r,i){var a,s,c,u,l,A,f,h=this,p=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(s=p.length>4&&void 0!==p[4]&&p[4],c=p.length>5?p[5]:void 0,u=p.length>6?p[6]:void 0,!this.refreshingSession){e.next=5;break}return e.abrupt("return",this.createErrorResponse(Wt));case 5:return e.next=7,this.path("/items/sync");case 7:return l=e.sent,A=this.params((Sn(a={},Bn.SyncPayloads,t.map((function(e){return e.ejected()}))),Sn(a,Bn.LastSyncToken,n),Sn(a,Bn.PaginationToken,r),Sn(a,Bn.IntegrityCheck,s),Sn(a,Bn.SyncDlLimit,i),Sn(a,"content_type",c),Sn(a,"event",u),a)),e.next=11,this.httpService.postAbsolute(l,A,this.session.accessToken).catch(function(){var e=Dn(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!h.httpService.isErrorResponseExpiredToken(t)){e.next=2;break}return e.abrupt("return",h.refreshSessionThenRetryRequest({verb:pn.Post,url:l,params:A}));case 2:return e.abrupt("return",h.errorResponseWithFallbackMessage(t,"Could not connect to server."));case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}());case 11:return f=e.sent,e.abrupt("return",f);case 13:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return a.apply(this,arguments)})},{key:"refreshSessionThenRetryRequest",value:(i=Dn(o.a.mark((function e(t){var n=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.refreshSession().then((function(e){return(null==e?void 0:e.error)?e:n.httpService.runHttp(Qn(Qn({},t),{},{authentication:n.session.accessToken}))})));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"refreshSession",value:(r=Dn(o.a.mark((function e(){var t,n,r,i=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.refreshingSession){e.next=2;break}return e.abrupt("return",this.createErrorResponse(Wt));case 2:return this.refreshingSession=!0,e.next=5,this.path("/session/refresh");case 5:return t=e.sent,n=this.params({access_token:this.session.accessToken,refresh_token:this.session.refreshToken}),e.next=9,this.httpService.postAbsolute(t,n).then(function(){var e=Dn(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=qt.FromResponse(t),e.next=3,i.setSession(n);case 3:return e.abrupt("return",t);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){return i.errorResponseWithFallbackMessage(e,"A server error occurred while trying to refresh your session.\n Please try again.")}));case 9:return r=e.sent,this.refreshingSession=!1,e.abrupt("return",r);case 12:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})}])&&Pn(t.prototype,n),m}(Ot.a),Un=n(18),Nn=n.n(Un),Ln=n(23),Kn=n.n(Ln),Gn=n(20),$n=n.n(Gn);function Yn(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Jn(e){return{"mac-web":jn.MacWeb,"mac-desktop":jn.MacDesktop,"linux-web":jn.LinuxWeb,"linux-desktop":jn.LinuxDesktop,"windows-web":jn.WindowsWeb,"windows-desktop":jn.WindowsDesktop,ios:jn.Ios,android:jn.Android}[e]}function Vn(e){return e===Tn.Web||e===Tn.Desktop}function zn(e){return e===Tn.Mobile}function qn(e){return(qn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Wn(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Xn(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Zn(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Xn(a,r,i,o,s,"next",e)}function s(e){Xn(a,r,i,o,s,"throw",e)}o(void 0)}))}}function er(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return tr(e,t);var n=Object.prototype.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)?tr(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function tr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function nr(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function rr(e,t,n){return(rr="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=or(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function ir(e,t){return(ir=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ar(e,t){return!t||"object"!==qn(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function or(e){return(or=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}!function(e){e[e.Web=1]="Web",e[e.Desktop=2]="Desktop",e[e.Mobile=3]="Mobile"}(Tn||(Tn={})),function(e){e[e.Ios=1]="Ios",e[e.Android=2]="Android",e[e.MacWeb=3]="MacWeb",e[e.MacDesktop=4]="MacDesktop",e[e.WindowsWeb=5]="WindowsWeb",e[e.WindowsDesktop=6]="WindowsDesktop",e[e.LinuxWeb=7]="LinuxWeb",e[e.LinuxDesktop=8]="LinuxDesktop"}(jn||(jn={}));var sr="org.standardnotes.sn.components",cr=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ir(e,t)}(y,e);var t,n,r,i,a,c,l,A,f,h,g=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=or(e);if(t){var i=or(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return ar(this,n)}}(y);function y(e,t,n,r,i,a){var o;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,y),(o=g.call(this)).componentState={},o.streamObservers=[],o.contextStreamObservers=[],o.activeComponents={},o.permissionDialogs=[],o.handlers=[],o.detectFocusChange=function(){var e,t=er(o.itemManager.findItems(Object.keys(o.activeComponents)));try{var n=function(){var t=e.value;if(document.activeElement===o.iframeForComponent(t.uuid))return o.timeout((function(){o.focusChangedForComponent(t)})),"break"};for(t.s();!(e=t.n()).done&&"break"!==n(););}catch(e){t.e(e)}finally{t.f()}},o.onWindowMessage=function(e){e.data.sessionKey&&(o.log("Component manager received message",e.data),o.handleMessage(o.componentForSessionKey(e.data.sessionKey),e.data))},o.timeout=a||setTimeout.bind(window),o.itemManager=e,o.syncService=t,o.alertService=n,o.environment=r,o.platform=i,o.configureForGeneralUsage(),r!==Tn.Mobile&&o.configureForNonMobileUsage(),o}return t=y,(n=[{key:"componentsForArea",value:function(e){return this.components.filter((function(t){return t.area===e}))}},{key:"deinit",value:function(){rr(or(y.prototype),"deinit",this).call(this),this.streamObservers.length=0,this.contextStreamObservers.length=0,this.activeComponents=void 0,this.permissionDialogs.length=0,this.handlers.length=0,this.itemManager=void 0,this.syncService=void 0,this.alertService=void 0,this.removeItemObserver(),this.removeItemObserver=null,window&&!this.isMobile&&(window.removeEventListener("focus",this.detectFocusChange,!0),window.removeEventListener("blur",this.detectFocusChange,!0),window.removeEventListener("message",this.onWindowMessage))}},{key:"setDesktopManager",value:function(e){this.desktopManager=e,this.configureForDesktop()}},{key:"configureForGeneralUsage",value:function(){var e=this;this.removeItemObserver=this.itemManager.addObserver(B.a.Any,(function(t,n,r,i,a){var o=Object(u.f)(t,n,r),s=o.filter((function(e){return e.content_type===B.a.Component||e.content_type===B.a.Theme}));s.length>0&&i!==_.a.RemoteSaved&&e.isDesktop&&e.desktopManager.syncComponentsInstallation(s);var c,l=er(s);try{for(l.s();!(c=l.n()).done;){var A=c.value,f=e.activeComponents[A.uuid];!A.active||A.deleted||f?!A.active&&f&&e.deactivateComponent(A.uuid):e.activateComponent(A.uuid)}}catch(e){l.e(e)}finally{l.f()}i!==_.a.LocalChanged&&e.notifyStreamObservers(o,i,a)}))}},{key:"notifyStreamObservers",value:function(e,t,n){var r,i=this,a=er(this.streamObservers);try{var o=function(){var t=r.value;if(n&&n===t.componentUuid)return"continue";var a=e.filter((function(e){return-1!==t.contentTypes.indexOf(e.content_type)}));if(0===a.length)return"continue";var o=[{name:q.StreamItems,content_types:t.contentTypes.sort()}];i.runWithPermissions(t.componentUuid,o,(function(){i.sendItemsInReply(t.componentUuid,a,t.originalMessage)}))};for(a.s();!(r=a.n()).done;)o()}catch(e){a.e(e)}finally{a.f()}var s,c=[{name:q.StreamContextItem}],u=er(this.contextStreamObservers);try{var l=function(){var r=s.value;if(n&&n===r.componentUuid)return"continue";var a,o=er(i.handlers);try{for(o.s();!(a=o.n()).done;){var u=a.value;if((u.areas.includes(r.area)||u.areas.includes(z.Any))&&u.contextRequestHandler){var l=u.contextRequestHandler(r.componentUuid);if(l&&"continue"===function(){var n=Nn()(e,{uuid:l.uuid});if(n){if(n.deleted)return"continue";i.runWithPermissions(r.componentUuid,c,(function(){i.sendContextItemInReply(r.componentUuid,n,r.originalMessage,t)}))}}())continue}}}catch(e){o.e(e)}finally{o.f()}};for(u.s();!(s=u.n()).done;)l()}catch(e){u.e(e)}finally{u.f()}}},{key:"isNativeExtension",value:function(e){var t=[window._extensions_manager_location,window._batch_manager_location],n=e.hosted_url,r=e.local_url&&e.local_url.replace("sn://","");return t.includes(n)||t.includes(r)}},{key:"configureForNonMobileUsage",value:function(){window.addEventListener?window.addEventListener("focus",this.detectFocusChange,!0):window.attachEvent("onfocusout",this.detectFocusChange),window.addEventListener?window.addEventListener("blur",this.detectFocusChange,!0):window.attachEvent("onblur",this.detectFocusChange),window.addEventListener("message",this.onWindowMessage)}},{key:"configureForDesktop",value:function(){var e=this;this.desktopManager.registerUpdateObserver((function(t){t.active&&t.isTheme()&&e.postActiveThemesToAllComponents()}))}},{key:"postActiveThemesToAllComponents",value:function(){var e,t=er(this.components);try{for(t.s();!(e=t.n()).done;){var n=e.value,r=this.findOrCreateDataForComponent(n.uuid);!n.isTheme()&&n.active&&r.window&&this.postActiveThemesToComponent(n)}}catch(e){t.e(e)}finally{t.f()}}},{key:"getActiveThemes",value:function(){return this.componentsForArea(z.Themes).filter((function(e){return e.active}))}},{key:"urlsForActiveThemes",value:function(){var e,t=[],n=er(this.getActiveThemes());try{for(n.s();!(e=n.n()).done;){var r=e.value,i=this.urlForComponent(r);i&&t.push(i)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"postActiveThemesToComponent",value:function(e){var t={themes:this.urlsForActiveThemes()},n={action:q.ActivateThemes,data:t};this.sendMessageToComponent(e,n)}},{key:"contextItemDidChangeInArea",value:function(e){var t,n=er(this.handlers);try{for(n.s();!(t=n.n()).done;){var r=t.value;if(r.areas.includes(e)||r.areas.includes(z.Any)){var i,a=er(this.contextStreamObservers.filter((function(t){return t.area===e})));try{for(a.s();!(i=a.n()).done;){var o=i.value;if(r.contextRequestHandler){var s=r.contextRequestHandler(o.componentUuid);s&&this.sendContextItemInReply(o.componentUuid,s,o.originalMessage)}}}catch(e){a.e(e)}finally{a.f()}}}}catch(e){n.e(e)}finally{n.f()}}},{key:"isComponentHidden",value:function(e){return this.findOrCreateDataForComponent(e.uuid).hidden}},{key:"setComponentHidden",value:function(e,t){var n=this.findOrCreateDataForComponent(e.uuid);if(t)n.hidden=!0;else if(n.hidden){n.hidden=!1;var r=Nn()(this.contextStreamObservers,{identifier:e.uuid});r&&this.handleStreamContextItemMessage(e,r.originalMessage);var i=Nn()(this.streamObservers,{identifier:e.uuid});i&&this.handleStreamItemsMessage(e,i.originalMessage)}}},{key:"jsonForItem",value:function(e,t,n){var r=n===_.a.RemoteSaved||n===_.a.LocalSaved,i=(e.getDomainData(sr)||{})[t.getClientDataKey()]||{},a={uuid:e.uuid,content_type:e.content_type,created_at:e.created_at,updated_at:e.updated_at,deleted:e.deleted,isMetadataUpdate:r,content:e.content,clientData:i};return this.removePrivatePropertiesFromResponseItems([a],t),a}},{key:"sendItemsInReply",value:function(e,t,n,r){var i=this,a=this.itemManager.findItem(e);this.log("Component manager send items in reply",a,t,n);var o={},s=t.map((function(e){return i.jsonForItem(e,a,r)}));o.items=s,this.replyToMessage(a,n,o)}},{key:"sendContextItemInReply",value:function(e,t,n,r){var i=this.itemManager.findItem(e);this.log("Component manager send context item in reply",i,t,n);var a={item:this.jsonForItem(t,i,r)};this.replyToMessage(i,n,a)}},{key:"replyToMessage",value:function(e,t,n){var r={action:q.Reply,original:t,data:n};this.sendMessageToComponent(e,r)}},{key:"sendMessageToComponent",value:function(e,t){var n=[q.ComponentRegistered,q.ActivateThemes],r=this.findOrCreateDataForComponent(e.uuid);if(!r.hidden||n.includes(t.action)){this.log("Component manager send message to component",e,t);var i=this.urlForComponent(e);i&&r.window||this.alertService.alert("Standard Notes is trying to communicate with ".concat(e.name,",\n but an error is occurring. Please restart this extension and try again.")),i.startsWith("http")||i.startsWith("file")||(i=window.location.href+i),r.window.postMessage(this.isMobile?JSON.stringify(t):t,i)}else this.log("Component disabled for current item, ignoring messages.",e.name)}},{key:"urlForComponent",value:function(e){if(e.offlineOnly&&!this.isDesktop)return null;if(e.offlineOnly||this.isDesktop&&e.local_url)return e.local_url&&e.local_url.replace("sn://",this.desktopManager.getExtServerHost());var t=e.hosted_url||e.legacy_url;if(this.isMobile){var n=this.platform===jn.Ios?"localhost":"10.0.2.2";t=t.replace("localhost",n).replace("sn.local",n)}return t}},{key:"componentForUrl",value:function(e){return this.components.filter((function(t){return t.hosted_url===e||t.legacy_url===e}))[0]}},{key:"sessionKeyForComponent",value:function(e){return this.findOrCreateDataForComponent(e.uuid).sessionKey}},{key:"componentForSessionKey",value:function(e){for(var t,n=this,r=function(){var r=a[i],o=n.componentState[r];if((null==o?void 0:o.sessionKey)===e)return t=n.components.find((function(e){return e.uuid===r})),"break"},i=0,a=Object.keys(this.componentState);i<a.length&&"break"!==r();i++);if(!t){var o,s=er(this.handlers);try{for(s.s();!(o=s.n()).done;){var c=o.value;if(c.componentForSessionKeyHandler&&(t=c.componentForSessionKeyHandler(e)))break}}catch(e){s.e(e)}finally{s.f()}}return t}},{key:"handleMessage",value:function(e,t){var n=this;if(!e)return this.log("Component not defined for message, returning",t),void this.alertService.alert("An extension is trying to communicate with Standard Notes,but there is an error establishing a bridge. Please restart the app and try again.");var r=[q.SaveItems,q.AssociateItem,q.DeassociateItem,q.CreateItem,q.CreateItems,q.DeleteItems,q.SetComponentData];if(this.getReadonlyStateForComponent(e).readonly&&r.includes(t.action))this.alertService.alert("The extension ".concat(e.name," is trying to save, but it is in a locked state and cannot accept changes."));else{if(t.action===q.StreamItems)this.handleStreamItemsMessage(e,t);else if(t.action===q.StreamContextItem)this.handleStreamContextItemMessage(e,t);else if(t.action===q.SetComponentData)this.handleSetComponentDataMessage(e,t);else if(t.action===q.DeleteItems)this.handleDeleteItemsMessage(e,t);else if(t.action===q.CreateItems||t.action===q.CreateItem)this.handleCreateItemsMessage(e,t);else if(t.action===q.SaveItems)this.handleSaveItemsMessage(e,t);else if(t.action===q.ToggleActivateComponent){var i=this.itemManager.findItem(t.data.uuid);this.handleToggleComponentMessage(i,t)}else t.action===q.RequestPermissions?this.handleRequestPermissionsMessage(e,t):t.action===q.InstallLocalComponent?this.handleInstallLocalComponentMessage(e,t):t.action===q.DuplicateItem&&this.handleDuplicateItemMessage(e,t);var a,o=er(this.handlers);try{var s=function(){var r=a.value;r.actionHandler&&(r.areas.includes(e.area)||r.areas.includes(z.Any))&&n.timeout((function(){r.actionHandler(e,t.action,t.data)}))};for(o.s();!(a=o.n()).done;)s()}catch(e){o.e(e)}finally{o.f()}}}},{key:"removePrivatePropertiesFromResponseItems",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!t||!this.isNativeExtension(t)){var r=["autoupdateDisabled","permissions","active"];n&&(r=r.concat(["url","hosted_url","local_url"]));var i,a=er(e);try{for(a.s();!(i=a.n()).done;){var o,s=i.value,c=er(r);try{for(c.s();!(o=c.n()).done;){var u=o.value;delete s.content[u]}}catch(e){c.e(e)}finally{c.f()}}}catch(e){a.e(e)}finally{a.f()}}}},{key:"handleStreamItemsMessage",value:function(e,t){var n=this,r=[{name:q.StreamItems,content_types:t.data.content_types.sort()}];this.runWithPermissions(e.uuid,r,(function(){Nn()(n.streamObservers,{identifier:e.uuid})||n.streamObservers.push({identifier:e.uuid,componentUuid:e.uuid,area:e.area,originalMessage:t,contentTypes:t.data.content_types});var r,i=[],a=er(t.data.content_types);try{for(a.s();!(r=a.n()).done;){var o=r.value;Object(u.j)(i,n.itemManager.nonErroredItemsForContentType(o))}}catch(e){a.e(e)}finally{a.f()}n.sendItemsInReply(e.uuid,i,t)}))}},{key:"handleStreamContextItemMessage",value:function(e,t){var n=this,r=[{name:q.StreamContextItem}];this.runWithPermissions(e.uuid,r,(function(){Nn()(n.contextStreamObservers,{identifier:e.uuid})||n.contextStreamObservers.push({identifier:e.uuid,componentUuid:e.uuid,area:e.area,originalMessage:t});var r,i=er(n.handlersForArea(e.area));try{for(i.s();!(r=i.n()).done;){var a=r.value;if(a.contextRequestHandler){var o=a.contextRequestHandler(e.uuid);o&&n.sendContextItemInReply(e.uuid,o,t)}}}catch(e){i.e(e)}finally{i.f()}}))}},{key:"isItemIdWithinComponentContextJurisdiction",value:function(e,t){return this.itemIdsInContextJurisdictionForComponent(t).includes(e)}},{key:"itemIdsInContextJurisdictionForComponent",value:function(e){var t,n=[],r=er(this.handlersForArea(e.area));try{for(r.s();!(t=r.n()).done;){var i=t.value;if(i.contextRequestHandler){var a=i.contextRequestHandler(e.uuid);a&&n.push(a.uuid)}}}catch(e){r.e(e)}finally{r.f()}return n}},{key:"handlersForArea",value:function(e){return this.handlers.filter((function(t){return t.areas.includes(e)}))}},{key:"handleSaveItemsMessage",value:(h=Zn(o.a.mark((function e(t,n){var r,i,a,c,l,A,f,h,p=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=n.data.items,i=[],a=this.itemIdsInContextJurisdictionForComponent(t),c=r.slice(),l=er(r.slice()),e.prev=5,l.s();case 7:if((A=l.n()).done){e.next=15;break}if(f=A.value,!a.includes(f.uuid)){e.next=13;break}return i.push({name:q.StreamContextItem}),Object(u.B)(c,f),e.abrupt("break",15);case 13:e.next=7;break;case 15:e.next=20;break;case 17:e.prev=17,e.t0=e.catch(5),l.e(e.t0);case 20:return e.prev=20,l.f(),e.finish(20);case 23:c.length>0&&(h=Kn()(c.map((function(e){return e.content_type}))).sort(),i.push({name:q.StreamItems,content_types:h})),this.runWithPermissions(t.uuid,i,Zn(o.a.mark((function e(){var i,a,c,l,A,f;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(p.removePrivatePropertiesFromResponseItems(r,t,!0),i=Object(s.b)(r),a=p.itemManager.findItems(i,!0),c=0,a.forEach((function(e,n){if(e)e.locked&&($n()(r,{uuid:e.uuid}),c++);else{var i=r[n];p.alertService.alert("The extension ".concat(t.name," is trying to save an item with type ")+"".concat(i.content_type,", but that item does not exist .")+"Please restart this extension and try again.")}})),!(c>0)){e.next=10;break}return l=1===c?"item":"items",A=1===c?"is":"are",p.alertService.alert("".concat(c," ").concat(l," you are attempting to save ").concat(A," locked and cannot be edited."),"Items Locked"),e.abrupt("return");case 10:return f=r.map((function(e){return Object(E.f)(e,_.a.ComponentRetrieved)})),e.next=13,p.itemManager.changeItems(i,(function(e){var n=Object(u.D)(f,{uuid:e.getUuid()});e.mergePayload(n);var i=Object(u.D)(r,{uuid:e.getUuid()});if(i.clientData){var a=Object(u.a)(e.getItem().getDomainData(sr)||{});a[t.getClientDataKey()]=i.clientData,e.setDomainData(a,sr)}}),d.c.UserInteraction,_.a.ComponentRetrieved,t.uuid);case 13:p.syncService.sync().then((function(){var e=Object.assign({},n);e.action=q.SaveSuccess,p.replyToMessage(t,n,{}),p.handleMessage(t,e)})).catch((function(){var e=Object.assign({},n);e.action=q.SaveError,p.replyToMessage(t,n,{error:q.SaveError}),p.handleMessage(t,e)}));case 14:case"end":return e.stop()}}),e)}))));case 25:case"end":return e.stop()}}),e,this,[[5,17,20,23]])}))),function(e,t){return h.apply(this,arguments)})},{key:"handleDuplicateItemMessage",value:function(e,t){var n=this,r=t.data.item,i=this.itemManager.findItem(r.uuid),a=[{name:q.StreamItems,content_types:[i.content_type]}];this.runWithPermissions(e.uuid,a,Zn(o.a.mark((function r(){var a;return o.a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,n.itemManager.duplicateItem(i.uuid);case 2:a=r.sent,n.syncService.sync(),n.replyToMessage(e,t,{item:n.jsonForItem(a,e)});case 5:case"end":return r.stop()}}),r)}))))}},{key:"handleCreateItemsMessage",value:function(e,t){var n=this,r=t.data.item?[t.data.item]:t.data.items,i=Kn()(r.map((function(e){return e.content_type}))),a=[{name:q.StreamItems,content_types:i}];this.runWithPermissions(e.uuid,a,Zn(o.a.mark((function i(){var a,s,c,l,A;return o.a.wrap((function(i){for(;;)switch(i.prev=i.next){case 0:n.removePrivatePropertiesFromResponseItems(r,e),a=[],s=er(r),i.prev=3,l=o.a.mark((function t(){var r,i,s,l;return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if((r=c.value).uuid){t.next=5;break}return t.next=4,p.GenerateUuid();case 4:r.uuid=t.sent;case 5:return i=Object(E.f)(r,_.a.ComponentCreated),s=Qt(i),t.next=9,n.itemManager.insertItem(s);case 9:return l=t.sent,t.next=12,n.itemManager.changeItem(l.uuid,(function(t){if(r.clientData){var n=Object(u.a)(l.getDomainData(sr)||{});n[e.getClientDataKey()]=r.clientData,t.setDomainData(n,sr)}}),d.c.UserInteraction,_.a.ComponentCreated,e.uuid);case 12:a.push(l);case 13:case"end":return t.stop()}}),t)})),s.s();case 6:if((c=s.n()).done){i.next=10;break}return i.delegateYield(l(),"t0",8);case 8:i.next=6;break;case 10:i.next=15;break;case 12:i.prev=12,i.t1=i.catch(3),s.e(i.t1);case 15:return i.prev=15,s.f(),i.finish(15);case 18:n.syncService.sync(),A=t.action===q.CreateItem?{item:n.jsonForItem(a[0],e)}:{items:a.map((function(t){return n.jsonForItem(t,e)}))},n.replyToMessage(e,t,A);case 21:case"end":return i.stop()}}),i,null,[[3,12,15,18]])}))))}},{key:"handleDeleteItemsMessage",value:function(e,t){var n=this,r=Kn()(t.data.items.map((function(e){return e.content_type}))).sort(),i=[{name:q.StreamItems,content_types:r}];this.runWithPermissions(e.uuid,i,Zn(o.a.mark((function r(){var i,a,s,c,u,l,A;return o.a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return i=t.data.items,a=1===i.length?"item":"items",s=null,r.next=5,n.alertService.confirm("Are you sure you want to delete ".concat(i.length," ").concat(a,"?"));case 5:if(!r.sent){r.next=35;break}c=er(i),r.prev=8,c.s();case 10:if((u=c.n()).done){r.next=23;break}if(l=u.value,A=n.itemManager.findItem(l.uuid)){r.next=16;break}return n.alertService.alert("The item you are trying to delete cannot be found."),r.abrupt("continue",21);case 16:if(![B.a.Component,B.a.Theme].includes(A.content_type)){r.next=19;break}return r.next=19,n.deactivateComponent(A.uuid);case 19:return r.next=21,n.itemManager.setItemToBeDeleted(A.uuid);case 21:r.next=10;break;case 23:r.next=28;break;case 25:r.prev=25,r.t0=r.catch(8),c.e(r.t0);case 28:return r.prev=28,c.f(),r.finish(28);case 31:n.syncService.sync(),s={deleted:!0},r.next=36;break;case 35:s={deleted:!1};case 36:n.replyToMessage(e,t,s);case 37:case"end":return r.stop()}}),r,null,[[8,25,28,31]])}))))}},{key:"handleRequestPermissionsMessage",value:function(e,t){var n=this;this.runWithPermissions(e.uuid,t.data.permissions,(function(){n.replyToMessage(e,t,{approved:!0})}))}},{key:"handleSetComponentDataMessage",value:function(e,t){var n=this;this.runWithPermissions(e.uuid,[],Zn(o.a.mark((function r(){return o.a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,n.itemManager.changeComponent(e.uuid,(function(e){e.componentData=t.data.componentData}));case 2:n.syncService.sync();case 3:case"end":return r.stop()}}),r)}))))}},{key:"handleToggleComponentMessage",value:(f=Zn(o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.toggleComponent(t);case 2:this.syncService.sync();case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return f.apply(this,arguments)})},{key:"toggleComponent",value:(A=Zn(o.a.mark((function e(t){var n,r,i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.area!==z.Modal){e.next=4;break}this.openModalComponent(t),e.next=39;break;case 4:if(!t.active){e.next=9;break}return e.next=7,this.deactivateComponent(t.uuid);case 7:e.next=39;break;case 9:if(t.content_type!==B.a.Theme){e.next=37;break}return n=t,r=this.getActiveThemes(),e.next=14,this.activateComponent(t.uuid);case 14:if(n.isLayerable()){e.next=35;break}return e.next=17,Object(u.E)(10);case 17:i=er(r),e.prev=18,i.s();case 20:if((a=i.n()).done){e.next=27;break}if(!(s=a.value)||s.isLayerable()){e.next=25;break}return e.next=25,this.deactivateComponent(s.uuid);case 25:e.next=20;break;case 27:e.next=32;break;case 29:e.prev=29,e.t0=e.catch(18),i.e(e.t0);case 32:return e.prev=32,i.f(),e.finish(32);case 35:e.next=39;break;case 37:return e.next=39,this.activateComponent(t.uuid);case 39:case"end":return e.stop()}}),e,this,[[18,29,32,35]])}))),function(e){return A.apply(this,arguments)})},{key:"handleInstallLocalComponentMessage",value:function(e,t){if(this.isNativeExtension(e)){var n=this.itemManager.findItem(t.data.uuid);this.desktopManager.installComponent(n)}}},{key:"runWithPermissions",value:function(e,t,n){var r=this.itemManager.findItem(e);t=Object(u.a)(t);var i,a=r.permissions,s=er(t.slice());try{var c=function(){var e=i.value,n=a.find((function(t){return t.name===e.name}));if(!n)return"continue";var r=e.content_types;if(!r)return Object(u.k)(t,e),"continue";var o,s=er(n.content_types);try{for(s.s();!(o=s.n()).done;){var c=o.value;Object(u.B)(r,c)}}catch(e){s.e(e)}finally{s.f()}0===r.length&&Object(u.k)(t,e)};for(s.s();!(i=s.n()).done;)c()}catch(e){s.e(e)}finally{s.f()}t.length>0?this.promptForPermissions(r,t,function(){var e=Zn(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t&&n();case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()):n()}},{key:"promptForPermissions",value:function(e,t,n){var r,i=this,a={component:e,permissions:t,permissionsString:this.permissionsStringForPermissions(t,e),actionBlock:n,callback:(r=Zn(o.a.mark((function n(r){return o.a.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(!r){n.next=5;break}return i.log("Changing component to expand permissions",e),n.next=4,i.itemManager.changeItem(e.uuid,(function(n){var r,i=Object(u.a)(e.permissions),a=er(t);try{var o=function(){var e=r.value,t=i.find((function(t){return t.name===e.name}));if(t){var n=t.content_types||[];t.content_types=Kn()(n.concat(e.content_types))}else i.push(e)};for(a.s();!(r=a.n()).done;)o()}catch(e){a.e(e)}finally{a.f()}n.permissions=i}));case 4:i.syncService.sync();case 5:i.permissionDialogs=i.permissionDialogs.filter((function(n){return n===a?(n.actionBlock&&n.actionBlock(r),!1):!!(n.component!==e||n.permissions!==t&&(i=t,n.permissions.some((function(e){return!i.find((function(t){return JSON.stringify(t)===JSON.stringify(e)}))}))))||(r&&n.actionBlock&&n.actionBlock(r),!1);var i})),i.permissionDialogs.length>0&&i.presentPermissionsDialog(i.permissionDialogs[0]);case 7:case"end":return n.stop()}}),n)}))),function(e){return r.apply(this,arguments)})},s=Nn()(this.permissionDialogs,{component:e});this.permissionDialogs.push(a),s?this.log("Existing dialog, not presenting."):this.presentPermissionsDialog(a)}},{key:"presentPermissionsDialog",value:function(e){throw"Must override SNComponentManager.presentPermissionsDialog"}},{key:"openModalComponent",value:function(e){throw"Must override SNComponentManager.presentPermissionsDialog"}},{key:"registerHandler",value:function(e){var t=this;return this.handlers.push(e),function(){var n=Nn()(t.handlers,{identifier:e.identifier});n?Object(u.B)(t.handlers,n):t.log("Attempting to deregister non-existing handler")}}},{key:"findOrCreateDataForComponent",value:function(e){var t=this.componentState[e];return t||(t={},this.componentState[e]=t),t}},{key:"setReadonlyStateForComponent",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=this.findOrCreateDataForComponent(e.uuid);r.readonly=t,r.lockReadonly=n}},{key:"getReadonlyStateForComponent",value:function(e){var t=this.findOrCreateDataForComponent(e.uuid);return{readonly:t.readonly,lockReadonly:t.lockReadonly}}},{key:"registerComponentWindow",value:(l=Zn(o.a.mark((function e(t,n){var r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.log("Register component window",t),(r=this.findOrCreateDataForComponent(t.uuid)).window===n&&this.log("Web|componentManager","attempting to re-register same component window."),this.log("Web|componentManager|registerComponentWindow",t),r.window=n,e.next=7,p.GenerateUuid();case 7:r.sessionKey=e.sent,this.sendMessageToComponent(t,{action:q.ComponentRegistered,sessionKey:r.sessionKey,componentData:t.componentData,data:{uuid:t.uuid,environment:(o=this.environment,(Yn(s={},Tn.Web,"web"),Yn(s,Tn.Desktop,"desktop"),Yn(s,Tn.Mobile,"mobile"),s)[o]),platform:(i=this.platform,(Yn(a={},jn.MacWeb,"mac-web"),Yn(a,jn.MacDesktop,"mac-desktop"),Yn(a,jn.LinuxWeb,"linux-web"),Yn(a,jn.LinuxDesktop,"linux-desktop"),Yn(a,jn.WindowsWeb,"windows-web"),Yn(a,jn.WindowsDesktop,"windows-desktop"),Yn(a,jn.Ios,"ios"),Yn(a,jn.Android,"android"),a)[i]),activeThemeUrls:this.urlsForActiveThemes()}}),this.postActiveThemesToComponent(t),this.desktopManager&&this.desktopManager.notifyComponentActivation(t);case 11:case"end":return e.stop()}var i,a,o,s}),e,this)}))),function(e,t){return l.apply(this,arguments)})},{key:"registerComponent",value:function(e){this.log("Registering component",e);var t=this.itemManager.findItem(e);this.activeComponents[e]=t.area;var n,r=er(this.handlers);try{for(r.s();!(n=r.n()).done;){var i,a=n.value;(a.areas.includes(t.area)||a.areas.includes(z.Any))&&(null===(i=a.activationHandler)||void 0===i||i.call(a,e,t))}}catch(e){r.e(e)}finally{r.f()}t.area===z.Themes&&this.postActiveThemesToAllComponents()}},{key:"activateComponent",value:(c=Zn(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.log("Activating component",t),(n=this.itemManager.findItem(t)).active){e.next=5;break}return e.next=5,this.itemManager.changeComponent(n.uuid,(function(e){e.active=!0}));case 5:this.registerComponent(t);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"deregisterComponent",value:function(e){this.log("Degregistering component",e);var t=this.itemManager.findItem(e);delete this.componentState[e];var n=this.activeComponents[e];if(delete this.activeComponents[e],n){var r,i=er(this.handlers);try{for(i.s();!(r=i.n()).done;){var a,o=r.value;(o.areas.includes(n)||o.areas.includes(z.Any))&&(null===(a=o.activationHandler)||void 0===a||a.call(o,e,t))}}catch(e){i.e(e)}finally{i.f()}}this.streamObservers=this.streamObservers.filter((function(t){return t.componentUuid!==e})),this.contextStreamObservers=this.contextStreamObservers.filter((function(t){return t.componentUuid!==e})),n===z.Themes&&this.postActiveThemesToAllComponents()}},{key:"deactivateComponent",value:(a=Zn(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.log("Deactivating component",t),!(null==(r=null===(n=this.itemManager)||void 0===n?void 0:n.findItem(t))?void 0:r.active)){e.next=5;break}return e.next=5,this.itemManager.changeComponent(r.uuid,(function(e){e.active=!1}));case 5:this.findOrCreateDataForComponent(t).sessionKey=void 0,this.deregisterComponent(t);case 7:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"reloadComponent",value:(i=Zn(o.a.mark((function e(t){var n,r,i=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.log("Reloading component",t),r=null===(n=this.itemManager)||void 0===n?void 0:n.findItem(t),e.next=4,this.itemManager.changeComponent(r.uuid,(function(e){e.active=!1}));case 4:return this.deregisterComponent(r.uuid),e.abrupt("return",new Promise((function(e){i.timeout(Zn(o.a.mark((function t(){return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,i.itemManager.changeComponent(r.uuid,(function(e){e.active=!0}));case 2:i.registerComponent(r.uuid),e();case 4:case"end":return t.stop()}}),t)}))))})));case 6:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"deleteComponent",value:(r=Zn(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.itemManager.setItemToBeDeleted(t);case 2:this.syncService.sync();case 3:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"isComponentActive",value:function(e){return e.active}},{key:"iframeForComponent",value:function(e){for(var t=0,n=Array.from(document.getElementsByTagName("iframe"));t<n.length;t++){var r=n[t];if(r.dataset.componentId===e)return r}}},{key:"focusChangedForComponent",value:function(e){var t,n=document.activeElement===this.iframeForComponent(e.uuid),r=er(this.handlers);try{for(r.s();!(t=r.n()).done;){var i=t.value;i.focusHandler&&i.focusHandler(e,n)}}catch(e){r.e(e)}finally{r.f()}}},{key:"handleSetSizeEvent",value:function(e,t){var n=function(e,n){var r=Object(u.s)(n.width)?n.width:"".concat(t.width,"px"),i=Object(u.s)(n.height)?n.height:"".concat(t.height,"px");e&&e.setAttribute("style","width:".concat(r,"; height:").concat(i,";"))};if(e.area===z.Rooms||e.area===z.Modal){var r=e.area===z.Rooms?"inner":"outer",i=document.getElementById("component-content-".concat(r,"-").concat(e.uuid));i&&n(i,t)}else{var a=this.iframeForComponent(e.uuid);if(!a)return;if(n(a,t),e.area===z.EditorStack){var o=a.parentElement;o&&n(o,t)}}}},{key:"editorForNote",value:function(e){var t,n,r=er(this.componentsForArea(z.Editor));try{for(r.s();!(t=r.n()).done;){var i=t.value;if(i.isExplicitlyEnabledForItem(e.uuid))return i}}catch(e){r.e(e)}finally{r.f()}return this.isMobile?e.mobilePrefersPlainEditor||(n=this.getDefaultEditor()):e.prefersPlainEditor||(n=this.getDefaultEditor()),n&&!n.isExplicitlyDisabledForItem(e.uuid)?n:void 0}},{key:"getDefaultEditor",value:function(){var e=this.componentsForArea(z.Editor);return this.isMobile?e.filter((function(e){return e.isMobileDefault}))[0]:e.filter((function(e){return e.isDefaultEditor()}))[0]}},{key:"permissionsStringForPermissions",value:function(e,t){var n="",r=e.length,i=function(e,t){return e>0?e===t-1?2===t?" and ":", and ":", ":""};return e.forEach((function(e,a){if(e.name===q.StreamItems){for(var o=e.content_types.map((function(e){var t=Object(B.c)(e);return t?t+"s":"items of type "+e})),s="",c=0;c<o.length;c++){var u=o[c];s+=i(c,o.length+r-a-1),s+=u}n+=i(a,r),n+=s,o.length>=2&&a<r-1&&(n+=", ")}else if(e.name===q.StreamContextItem){var l,A=(Wn(l={},z.EditorStack,"working note"),Wn(l,z.NoteTags,"working note"),Wn(l,z.Editor,"working note"),l);n+=i(a,r),n+=A[t.area]}})),n+"."}},{key:"isDesktop",get:function(){return this.environment===Tn.Desktop}},{key:"isMobile",get:function(){return this.environment===Tn.Mobile}},{key:"components",get:function(){return this.itemManager.getItems([B.a.Component,B.a.Theme])}}])&&nr(t.prototype,n),y}(Ot.a);function ur(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function lr(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var Ar=function(){function e(t,n,r){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.baseCollection=t,this.applyCollection=n,this.relatedCollectionSet=r}var t,n,r,i;return t=e,(n=[{key:"resultingCollection",value:(r=o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:throw"Must override PayloadDelta.resultingCollection.";case 1:case"end":return e.stop()}}),e)})),i=function(){var e=this,t=arguments;return new Promise((function(n,i){var a=r.apply(e,t);function o(e){ur(a,n,i,o,s,"next",e)}function s(e){ur(a,n,i,o,s,"throw",e)}o(void 0)}))},function(){return i.apply(this,arguments)})},{key:"findBasePayload",value:function(e){return this.baseCollection.find(e)}},{key:"findRelatedPayload",value:function(e,t){var n,r=null===(n=this.relatedCollectionSet)||void 0===n?void 0:n.collectionForSource(t);return null==r?void 0:r.find(e)}}])&&lr(t.prototype,n),e}();function fr(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return hr(e,t);var n=Object.prototype.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)?hr(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function hr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function pr(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var dr=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.directMap={},this.inverseMap={}}var t,n;return t=e,(n=[{key:"makeCopy",value:function(){var t=new e;return t.directMap=Object.assign({},this.directMap),t.inverseMap=Object.assign({},this.inverseMap),t}},{key:"getDirectRelationships",value:function(e){return this.directMap[e]||[]}},{key:"getInverseRelationships",value:function(e){return this.inverseMap[e]||[]}},{key:"establishRelationship",value:function(e,t){this.establishDirectRelationship(e,t),this.establishInverseRelationship(e,t)}},{key:"deestablishRelationship",value:function(e,t){this.deestablishDirectRelationship(e,t),this.deestablishInverseRelationship(e,t)}},{key:"setAllRelationships",value:function(e,t){var n=this.directMap[e]||[];this.directMap[e]=t;var r,i=fr(n);try{for(i.s();!(r=i.n()).done;){var a=r.value;this.deestablishInverseRelationship(e,a)}}catch(e){i.e(e)}finally{i.f()}var o,s=fr(t);try{for(s.s();!(o=s.n()).done;){var c=o.value;this.establishInverseRelationship(e,c)}}catch(e){s.e(e)}finally{s.f()}}},{key:"removeFromMap",value:function(e){var t,n=fr(this.directMap[e]||[]);try{for(n.s();!(t=n.n()).done;){var r=t.value;Object(u.B)(this.inverseMap[r]||[],e)}}catch(e){n.e(e)}finally{n.f()}delete this.directMap[e];var i,a=fr(this.inverseMap[e]||[]);try{for(a.s();!(i=a.n()).done;){var o=i.value;Object(u.B)(this.directMap[o]||[],e)}}catch(e){a.e(e)}finally{a.f()}delete this.inverseMap[e]}},{key:"establishDirectRelationship",value:function(e,t){var n=this.directMap[e]||[];Object(u.b)(n,t),this.directMap[e]=n}},{key:"establishInverseRelationship",value:function(e,t){var n=this.inverseMap[t]||[];Object(u.b)(n,e),this.inverseMap[t]=n}},{key:"deestablishDirectRelationship",value:function(e,t){var n=this.directMap[e]||[];Object(u.B)(n,t),this.directMap[e]=n}},{key:"deestablishInverseRelationship",value:function(e,t){var n=this.inverseMap[t]||[];Object(u.B)(n,e),this.inverseMap[t]=n}}])&&pr(t.prototype,n),e}();function gr(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return yr(e,t);var n=Object.prototype.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)?yr(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function yr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function vr(e){if(null==e)throw new TypeError("Cannot destructure undefined")}function mr(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function br(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var Ir=function(){function e(){var t,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],r=arguments.length>1?arguments[1]:void 0,i=arguments.length>2?arguments[2]:void 0,a=arguments.length>3?arguments[3]:void 0,o=arguments.length>4?arguments[4]:void 0;mr(this,e),this.map={},this.typedMap=(vr(t={}),t),this.dirtyIndex=new Set,this.invalidsIndex=new Set,this.nondeletedIndex=new Set,n?(this.map=r,this.typedMap=i,this.referenceMap=a,this.conflictMap=o):(this.referenceMap=new dr,this.conflictMap=new dr)}var t,n;return t=e,(n=[{key:"uuids",value:function(){return Object.keys(this.map)}},{key:"all",value:function(e){var t=this;if(e){if(Array.isArray(e)){var n,r=[],i=gr(e);try{for(i.s();!(n=i.n()).done;){var a=n.value;Object(u.j)(r,this.typedMap[a]||[])}}catch(e){i.e(e)}finally{i.f()}return r}var o;return(null===(o=this.typedMap[e])||void 0===o?void 0:o.slice())||[]}return Object.keys(this.map).map((function(e){return t.map[e]}))}},{key:"find",value:function(e){return this.map[e]}},{key:"dirtyElements",value:function(){var e=Array.from(this.dirtyIndex);return this.findAll(e)}},{key:"invalidElements",value:function(){var e=Array.from(this.invalidsIndex);return this.findAll(e)}},{key:"nondeletedElements",value:function(){var e=Array.from(this.nondeletedIndex);return this.findAll(e)}},{key:"findAll",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=[],i=gr(e);try{for(i.s();!(t=i.n()).done;){var a=t.value,o=this.map[a];(o||n)&&r.push(o)}}catch(e){i.e(e)}finally{i.f()}return r}},{key:"set",value:function(e){if(0!==(e=Array.isArray(e)?e:[e]).length){var t,n=gr(e);try{for(n.s();!(t=n.n()).done;){var r=t.value;if(this.map[r.uuid]=r,this.setToTypedMap(r),r.dirty?this.dirtyIndex.add(r.uuid):this.dirtyIndex.delete(r.uuid),r.errorDecrypting||r.waitingForKey?this.invalidsIndex.add(r.uuid):this.invalidsIndex.delete(r.uuid),r.deleted)this.referenceMap.removeFromMap(r.uuid),this.nondeletedIndex.delete(r.uuid);else{this.nondeletedIndex.add(r.uuid);var i=r.safeContent.conflict_of;i&&this.conflictMap.establishRelationship(i,r.uuid),this.referenceMap.setAllRelationships(r.uuid,r.references.map((function(e){return e.uuid})))}}}catch(e){n.e(e)}finally{n.f()}}else console.warn("Attempting to set 0 elements onto collection")}},{key:"discard",value:function(e){var t,n=gr(e=Array.isArray(e)?e:[e]);try{for(n.s();!(t=n.n()).done;){var r=t.value;this.conflictMap.removeFromMap(r.uuid),this.referenceMap.removeFromMap(r.uuid),this.deleteFromTypedMap(r),delete this.map[r.uuid]}}catch(e){n.e(e)}finally{n.f()}}},{key:"setToTypedMap",value:function(e){var t=this.typedMap[e.content_type]||[];$n()(t,{uuid:e.uuid}),t.push(e),this.typedMap[e.content_type]=t}},{key:"deleteFromTypedMap",value:function(e){var t=this.typedMap[e.content_type]||[];$n()(t,{uuid:e.uuid}),this.typedMap[e.content_type]=t}},{key:"uuidsThatReferenceUuid",value:function(e){if(!Object(u.s)(e))throw Error("Must use uuid string");return this.referenceMap.getInverseRelationships(e)}},{key:"elementsReferencingElement",value:function(e){var t=this.uuidsThatReferenceUuid(e.uuid);return this.findAll(t)}},{key:"conflictsOf",value:function(e){var t=this.conflictMap.getDirectRelationships(e);return this.findAll(t)}}])&&br(t.prototype,n),e}();function wr(e){return(wr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Cr(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Br(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Er(e,t){return(Er=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _r(e,t){return!t||"object"!==wr(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function kr(e){return(kr=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Qr=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Er(e,t)}(a,e);var t,n,r,i=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=kr(e);if(t){var i=kr(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return _r(this,n)}}(a);function a(){return Cr(this,a),i.apply(this,arguments)}return t=a,r=[{key:"WithPayloads",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0,n=new a;return n.source=t,e.length>0&&n.set(e),Object.freeze(n),n}},{key:"FromCollection",value:function(e){var t=new a(!0,Object.freeze(Object.assign({},e.map)),Object.freeze(Object.assign({},e.typedMap)),Object.freeze(e.referenceMap.makeCopy()),Object.freeze(e.conflictMap.makeCopy()));return Object.freeze(t),t}}],(n=[{key:"payloads",get:function(){return this.all()}}])&&Br(t.prototype,n),r&&Br(t,r),a}(Ir);function Sr(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return xr(e,t);var n=Object.prototype.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)?xr(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function xr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Dr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Pr(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Dr(Object(n),!0).forEach((function(t){Or(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Dr(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Mr(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Fr(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Mr(a,r,i,o,s,"next",e)}function s(e){Mr(a,r,i,o,s,"throw",e)}o(void 0)}))}}function Or(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Rr=Or({},B.a.Note,(function(e,t,n){var r=n.all(B.a.Component).map((function(e){return Qt(e)})).filter((function(e){return e.area===z.Editor})).find((function(t){return t.isExplicitlyEnabledForItem(e.uuid)}));if(r){var i=new le(r,d.c.Internal);return i.associateWithItem(t.uuid),[i.getResult()]}}));function Tr(e,t,n){return jr.apply(this,arguments)}function jr(){return(jr=Fr(o.a.mark((function e(t,n,r){var i,a,s,c,l,A,f;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=[],e.next=3,p.GenerateUuid();case 3:return e.t0=e.sent,e.t1=new Date,a={uuid:e.t0,dirty:!0,dirtiedDate:e.t1,lastSyncBegan:null,lastSyncEnd:null},r&&(a.content=Pr(Pr({},t.safeContent),{},{conflict_of:t.uuid})),s=Object(E.b)(t,a),i.push(s),c=n.elementsReferencingElement(t),e.next=12,Nr(c,[{uuid:s.uuid,content_type:s.content_type}]);case 12:return l=e.sent,Object(u.j)(i,l),(A=Rr[t.content_type])&&(f=A(t,s,n))&&Object(u.j)(i,f),e.abrupt("return",i);case 17:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Hr(e,t){return Ur.apply(this,arguments)}function Ur(){return(Ur=Fr(o.a.mark((function e(t,n){var r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=[],e.t0=E.b,e.t1=t,e.next=5,p.GenerateUuid();case 5:return e.t2=e.sent,e.t3=new Date,e.t4={uuid:e.t2,dirty:!0,dirtiedDate:e.t3,lastSyncBegan:null,lastSyncEnd:null},i=(0,e.t0)(e.t1,e.t4),r.push(i),a=n.elementsReferencingElement(t),e.next=13,Nr(a,[{uuid:i.uuid,content_type:i.content_type}],[t.uuid]);case 13:return s=e.sent,Object(u.j)(r,s),c=Object(E.b)(t,{deleted:!0,dirty:!1,content:void 0}),r.push(c),e.abrupt("return",r);case 18:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Nr(e,t,n){return Lr.apply(this,arguments)}function Lr(){return(Lr=Fr(o.a.mark((function e(t,n,r){var i,a,s,c,u,l,A,f,h,p,d,g;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:i=[],a=Sr(t);try{for(a.s();!(s=a.n()).done;){if(c=s.value,u=c.contentObject.references.slice(),n){l=Sr(n);try{for(l.s();!(A=l.n()).done;)f=A.value,u.push(f)}catch(e){l.e(e)}finally{l.f()}}if(r){h=Sr(r);try{for(h.s();!(p=h.n()).done;)d=p.value,$n()(u,{uuid:d})}catch(e){h.e(e)}finally{h.f()}}g=Object(E.b)(c,{dirty:!0,dirtiedDate:new Date,content:Pr(Pr({},c.safeContent),{},{references:u})}),i.push(g)}}catch(e){a.e(e)}finally{a.f()}return e.abrupt("return",i);case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Kr(e,t){var n=Qt(e),r=Qt(t);return n.isItemContentEqualWith(r)}var Gr=n(5);function $r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Yr(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?$r(Object(n),!0).forEach((function(t){Jr(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):$r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Jr(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Vr(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function zr(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Vr(a,r,i,o,s,"next",e)}function s(e){Vr(a,r,i,o,s,"throw",e)}o(void 0)}))}}function qr(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var Wr=function(){function e(t,n,r,i){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.baseCollection=t,this.basePayload=n,this.applyPayload=r,this.source=i}var t,n,r,i;return t=e,(n=[{key:"resultingCollection",value:(i=zr(o.a.mark((function e(){var t,n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=Qt(this.basePayload),n=Qt(this.applyPayload),r=t.strategyWhenConflictingWithItem(n),e.next=5,this.payloadsByHandlingStrategy(r);case 5:return i=e.sent,e.abrupt("return",Qr.WithPayloads(i,this.source));case 7:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"payloadsByHandlingStrategy",value:(r=zr(o.a.mark((function e(t){var n,r,i,a,s,c,l,A,f,h,p,d;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(n=this.baseCollection.conflictsOf(this.applyPayload.uuid)[0])||!Kr(n,this.applyPayload)){e.next=3;break}return e.abrupt("return",[]);case 3:if(t!==Z.a.KeepLeft){e.next=7;break}return r=Object(u.n)(this.basePayload.updated_at,this.applyPayload.updated_at),i=Object(E.b)(this.basePayload,{updated_at:r,dirty:!0,dirtiedDate:new Date}),e.abrupt("return",[i]);case 7:if(t!==Z.a.KeepRight){e.next=10;break}return a=Object(E.g)(this.applyPayload,this.basePayload,[Gr.a.LastSyncBegan],{lastSyncEnd:new Date}),e.abrupt("return",[a]);case 10:if(t!==Z.a.KeepLeftDuplicateRight){e.next=17;break}return s=Object(u.n)(this.basePayload.updated_at,this.applyPayload.updated_at),c=Object(E.b)(this.basePayload,{updated_at:s,dirty:!0,dirtiedDate:new Date}),e.next=15,Tr(this.applyPayload,this.baseCollection,!0);case 15:return l=e.sent,e.abrupt("return",[c].concat(l));case 17:if(t!==Z.a.DuplicateLeftKeepRight){e.next=23;break}return e.next=20,Tr(this.basePayload,this.baseCollection,!0);case 20:return A=e.sent,f=Object(E.g)(this.applyPayload,this.basePayload,[Gr.a.LastSyncBegan],{lastSyncEnd:new Date}),e.abrupt("return",A.concat([f]));case 23:if(t!==Z.a.KeepLeftMergeRefs){e.next=28;break}return h=Object(u.J)(this.basePayload.contentObject.references,this.applyPayload.contentObject.references,["uuid","content_type"]),p=Object(u.n)(this.basePayload.updated_at,this.applyPayload.updated_at),d=Object(E.b)(this.basePayload,{updated_at:p,dirty:!0,dirtiedDate:new Date,content:Yr(Yr({},this.basePayload.safeContent),{},{references:h})}),e.abrupt("return",[d]);case 28:throw"Unhandled strategy";case 29:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})}])&&qr(t.prototype,n),e}();function Xr(e){return(Xr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Zr(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return ei(e,t);var n=Object.prototype.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)?ei(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function ei(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function ti(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function ni(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){ti(a,r,i,o,s,"next",e)}function s(e){ti(a,r,i,o,s,"throw",e)}o(void 0)}))}}function ri(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ii(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function ai(e,t){return(ai=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function oi(e,t){return!t||"object"!==Xr(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function si(e){return(si=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var ci=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ai(e,t)}(s,e);var t,n,r,i,a=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=si(e);if(t){var i=si(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return oi(this,n)}}(s);function s(){return ri(this,s),a.apply(this,arguments)}return t=s,(n=[{key:"resultingCollection",value:(i=ni(o.a.mark((function e(){var t,n,r,i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=[],n=Zr(this.applyCollection.all()),e.prev=2,n.s();case 4:if((r=n.n()).done){e.next=13;break}return i=r.value,e.next=8,this.payloadsByHandlingPayload(i,t);case 8:a=e.sent,s=a.map((function(e){return Object(E.b)(e,{dirty:!0,dirtiedDate:new Date,deleted:!1})})),Object(u.j)(t,s);case 11:e.next=4;break;case 13:e.next=18;break;case 15:e.prev=15,e.t0=e.catch(2),n.e(e.t0);case 18:return e.prev=18,n.f(),e.finish(18);case 21:return e.abrupt("return",Qr.WithPayloads(t,_.a.FileImport));case 22:case"end":return e.stop()}}),e,this,[[2,15,18,21]])}))),function(){return i.apply(this,arguments)})},{key:"payloadsByHandlingPayload",value:(r=ni(o.a.mark((function e(t,n){var r,i,a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((r=n.find((function(e){return e.contentObject.conflict_of===t.uuid})))||(r=n.find((function(e){return e.uuid===t.uuid}))),r||(r=this.findBasePayload(t.uuid)),r){e.next=5;break}return e.abrupt("return",[t]);case 5:return i=new Wr(this.baseCollection,r,t,_.a.FileImport),e.next=8,i.resultingCollection();case 8:return a=e.sent,e.abrupt("return",a.all());case 10:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})}])&&ii(t.prototype,n),s}(Ar);function ui(e){return(ui="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function li(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Ai(e,t);var n=Object.prototype.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)?Ai(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function Ai(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function fi(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function hi(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){fi(a,r,i,o,s,"next",e)}function s(e){fi(a,r,i,o,s,"throw",e)}o(void 0)}))}}function pi(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function di(e,t,n){return(di="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=vi(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function gi(e,t){return(gi=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function yi(e,t){return!t||"object"!==ui(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function vi(e){return(vi=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var mi=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&gi(e,t)}(f,e);var t,n,r,i,a,c,l,A=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=vi(e);if(t){var i=vi(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return yi(this,n)}}(f);function f(){var e;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,f),(e=A.call(this)).changeObservers=[],e.emitQueue=[],e.collection=new Ir,e}return t=f,(n=[{key:"getMasterCollection",value:function(){return Qr.FromCollection(this.collection)}},{key:"deinit",value:function(){di(vi(f.prototype),"deinit",this).call(this),this.changeObservers.length=0,this.resetState()}},{key:"resetState",value:function(){this.collection=new Ir}},{key:"find",value:function(e){return this.collection.findAll(e)}},{key:"emitCollection",value:(l=hi(o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.emitPayloads(t.all(),t.source,n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return l.apply(this,arguments)})},{key:"emitPayload",value:(c=hi(o.a.mark((function e(t,n,r){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.emitPayloads([t],n,r);case 2:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return c.apply(this,arguments)})},{key:"emitPayloads",value:(a=hi(o.a.mark((function e(t,n,r){var i=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return 0===t.length&&console.warn("Attempting to emit 0 payloads."),e.abrupt("return",new Promise((function(e){i.emitQueue.push({payloads:t,source:n,sourceKey:r,resolve:e}),1===i.emitQueue.length&&i.popQueue()})));case 2:case"end":return e.stop()}}),e)}))),function(e,t,n){return a.apply(this,arguments)})},{key:"popQueue",value:(i=hi(o.a.mark((function e(){var t,n,r,i,a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.emitQueue[0],n=this.mergePayloadsOntoMaster(t.payloads),r=n.changed,i=n.inserted,a=n.discarded,this.notifyChangeObservers(r,i,a,t.source,t.sourceKey),Object(u.B)(this.emitQueue,t),t.resolve(),this.emitQueue.length>0&&this.popQueue();case 6:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"mergePayloadsOntoMaster",value:function(e){var t,n=[],r=[],i=[],a=li(e);try{for(a.s();!(t=a.n()).done;){var o=t.value;if(o.uuid&&o.content_type){var s=this.collection.find(o.uuid),c=s?Object(E.g)(s,o):o;c.discardable?(this.collection.discard(c),i.push(c)):(this.collection.set(c),s?n.push(c):r.push(c))}else console.error("Payload is corrupt:",o)}}catch(e){a.e(e)}finally{a.f()}return{changed:n,inserted:r,discarded:i}}},{key:"addObserver",value:function(e,t){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;Array.isArray(e)||(e=[e]);var i={types:e,priority:r,callback:t};return this.changeObservers.push(i),function(){Object(u.B)(n.changeObservers,i)}}},{key:"notifyChangeObservers",value:function(e,t,n,r,i){var a,o=function(e,t){return t.includes(B.a.Any)?e.slice():e.slice().filter((function(e){return t.includes(e.content_type)}))},s=li(this.changeObservers.slice().sort((function(e,t){return e.priority<t.priority?-1:1})));try{for(s.s();!(a=s.n()).done;){var c=a.value;c.callback(o(e,c.types),o(t,c.types),o(n,c.types),r,i)}}catch(e){s.e(e)}finally{s.f()}}},{key:"importPayloads",value:(r=hi(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=new ci(this.getMasterCollection(),Qr.WithPayloads(t,_.a.FileImport)),e.next=3,n.resultingCollection();case 3:return r=e.sent,e.next=6,this.emitCollection(r);case 6:return e.abrupt("return",Object(s.b)(r.payloads));case 7:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"removePayloadLocally",value:function(e){this.collection.discard(e)}}])&&pi(t.prototype,n),f}(Ot.a),bi=n(8);function Ii(e){return(Ii="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function wi(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Ci(e,t);var n=Object.prototype.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)?Ci(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function Ci(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Bi(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Ei(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Bi(a,r,i,o,s,"next",e)}function s(e){Bi(a,r,i,o,s,"throw",e)}o(void 0)}))}}function _i(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function ki(e,t,n){return(ki="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=xi(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function Qi(e,t){return(Qi=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Si(e,t){return!t||"object"!==Ii(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function xi(e){return(xi=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Di=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Qi(e,t)}(l,e);var t,n,r,i,a,c=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=xi(e);if(t){var i=xi(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Si(this,n)}}(l);function l(e,t){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,l),(n=c.call(this)).resolveQueue=[],n.registeredPredicates=[],n.itemManager=e,n.syncService=t,n.addObservers(),n}return t=l,(n=[{key:"deinit",value:function(){this.syncService=void 0,this.itemManager=void 0,this.resolveQueue.length=0,this.registeredPredicates.length=0,this.removeItemObserver(),this.removeItemObserver=void 0,this.removeSyncObserver(),this.removeSyncObserver=void 0,ki(xi(l.prototype),"deinit",this).call(this)}},{key:"popResolveQueue",value:function(){var e=this.resolveQueue.slice();return this.resolveQueue=[],e}},{key:"addObservers",value:function(){var e=this;this.removeItemObserver=this.itemManager.addObserver(B.a.Any,(function(t,n){n.length>0&&(e.resolveQueue=e.resolveQueue.concat(n))})),this.removeSyncObserver=this.syncService.addEventObserver(function(){var t=Ei(o.a.mark((function t(n){return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n!==bi.a.DownloadFirstSyncCompleted&&n!==bi.a.FullSyncCompleted){t.next=3;break}return t.next=3,e.resolveSingletonsForItems(e.popResolveQueue(),n);case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}())}},{key:"registerPredicate",value:function(e){this.registeredPredicates.push(e)}},{key:"validItemsMatchingPredicate",value:function(e){return this.itemManager.itemsMatchingPredicate(e).filter((function(e){return!e.errorDecrypting}))}},{key:"resolveSingletonsForItems",value:(a=Ei(o.a.mark((function e(t,n){var r,i,a,s,c,l,A,f,h=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=function(e){var t,n=wi(h.registeredPredicates);try{for(n.s();!(t=n.n()).done;){var r=t.value;if(e.satisfiesPredicate(r))return h.validItemsMatchingPredicate(r)}}catch(e){n.e(e)}finally{n.f()}},i=function(e){return e.isSingleton?h.validItemsMatchingPredicate(e.singletonPredicate):null},a=function(e){var t=i(e);return t&&t.length>0?t:r(e)},s=[],c=wi(t),e.prev=5,c.s();case 7:if((l=c.n()).done){e.next=19;break}if(A=l.value,!s.includes(A)){e.next=11;break}return e.abrupt("continue",17);case 11:if(f=a(A),Object(u.j)(s,f||[]),f&&!(f.length<=1)){e.next=15;break}return e.abrupt("continue",17);case 15:return e.next=17,this.handleStrategy(f,A.singletonStrategy);case 17:e.next=7;break;case 19:e.next=24;break;case 21:e.prev=21,e.t0=e.catch(5),c.e(e.t0);case 24:return e.prev=24,c.f(),e.finish(24);case 27:s.length>0&&n===bi.a.FullSyncCompleted&&setTimeout((function(){h.syncService.sync()}));case 28:case"end":return e.stop()}}),e,this,[[5,21,24,27]])}))),function(e,t){return a.apply(this,arguments)})},{key:"handleStrategy",value:(i=Ei(o.a.mark((function e(t,n){var r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n===d.e.KeepEarliest){e.next=2;break}throw"Unhandled singleton strategy";case 2:return r=t.sort((function(e,t){return e.errorDecrypting?1:t.errorDecrypting||e.created_at<t.created_at?-1:1})),i=Object(u.d)(r,0),e.next=6,this.itemManager.setItemsToBeDeleted(Object(s.b)(i));case 6:case"end":return e.stop()}}),e,this)}))),function(e,t){return i.apply(this,arguments)})},{key:"findOrCreateSingleton",value:(r=Ei(o.a.mark((function e(t,n,r){var i=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(){var e=Ei(o.a.mark((function e(a){var c,u,l,A,f,h,d;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!((c=i.validItemsMatchingPredicate(t)).length>0)){e.next=3;break}return e.abrupt("return",a(c[0]));case 3:if(i.syncService.getLastSyncDate()){e.next=14;break}return u=!1,l=i.itemManager.addObserver(n,(function(e,n){if(n.length>0){var r=i.itemManager.subItemsMatchingPredicates(n,[t]);r.length>0&&(u=!0,a(r[0]))}})),e.next=8,i.syncService.sync();case 8:if(l(),!u){e.next=11;break}return e.abrupt("return");case 11:if(!((A=i.validItemsMatchingPredicate(t)).length>0)){e.next=14;break}return e.abrupt("return",a(A[0]));case 14:return f=i.itemManager.itemsMatchingPredicate(t).filter((function(e){return e.errorDecrypting})),e.next=17,i.itemManager.setItemsToBeDeleted(Object(s.b)(f));case 17:return e.t0=E.e,e.next=20,p.GenerateUuid();case 20:return e.t1=e.sent,e.t2=n,e.t3=r,e.t4=new Date,e.t5={uuid:e.t1,content_type:e.t2,content:e.t3,dirty:!0,dirtiedDate:e.t4},h=(0,e.t0)(e.t5),e.next=28,i.itemManager.emitItemFromPayload(h);case 28:if(d=e.sent){e.next=31;break}throw Error("Created singleton item should not be null ".concat(n));case 31:return e.next=33,i.syncService.sync();case 33:return e.abrupt("return",a(d));case 34:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 1:case"end":return e.stop()}}),e)}))),function(e,t,n){return r.apply(this,arguments)})}])&&_i(t.prototype,n),l}(Ot.a);function Pi(e){return(Pi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Mi(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Fi(e,t);var n=Object.prototype.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)?Fi(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function Fi(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Oi(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Ri(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Oi(a,r,i,o,s,"next",e)}function s(e){Oi(a,r,i,o,s,"throw",e)}o(void 0)}))}}function Ti(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function ji(e,t,n){return(ji="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Ni(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function Hi(e,t){return(Hi=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Ui(e,t){return!t||"object"!==Pi(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Ni(e){return(Ni=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Li=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Hi(e,t)}(p,e);var t,n,r,i,a,s,c,u,l,A,f,h=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Ni(e);if(t){var i=Ni(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Ui(this,n)}}(p);function p(e,t,n,r,i,a,o){var s;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,p),(s=h.call(this)).previousPasswords=[],s.itemManager=e,s.alertService=t,s.deviceInterface=n,s.httpService=r,s.modelManager=i,s.protocolService=a,s.syncService=o,s.previousPasswords=[],s}return t=p,(n=[{key:"deinit",value:function(){this.itemManager=void 0,this.alertService=void 0,this.deviceInterface=void 0,this.httpService=void 0,this.modelManager=void 0,this.protocolService=void 0,this.syncService=void 0,this.previousPasswords.length=0,ji(Ni(p.prototype),"deinit",this).call(this)}},{key:"getExtensions",value:function(){return this.itemManager.nonErroredItemsForContentType(B.a.ActionsExtension)}},{key:"extensionsInContextOfItem",value:function(e){return this.getExtensions().filter((function(t){return t.supported_types.includes(e.content_type)||t.actionsWithContextForItem(e).length>0}))}},{key:"loadExtensionInContextOfItem",value:(f=Ri(o.a.mark((function e(t,n){var r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r={content_type:n.content_type,item_uuid:n.uuid},e.next=3,this.httpService.getAbsolute(t.url,r).catch((function(e){return console.error("Error loading extension",e),null}));case 3:if(i=e.sent){e.next=6;break}return e.abrupt("return");case 6:return a=i.description||t.description,s=i.supported_types||t.supported_types,c=i.actions?i.actions.map((function(e){return new Qe(e)})):[],e.next=11,this.itemManager.changeActionsExtension(t.uuid,(function(e){e.description=a,e.supported_types=s,e.actions=c,e.hidden=!1}));case 11:return e.abrupt("return",this.itemManager.findItem(t.uuid));case 12:case"end":return e.stop()}}),e,this)}))),function(e,t){return f.apply(this,arguments)})},{key:"runAction",value:(A=Ri(o.a.mark((function e(t,n,r){var i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:e.t0=t.verb,e.next="get"===e.t0?3:"render"===e.t0?7:"show"===e.t0?11:"post"===e.t0?15:19;break;case 3:return e.next=5,this.handleGetAction(t,r);case 5:return i=e.sent,e.abrupt("break",20);case 7:return e.next=9,this.handleRenderAction(t,r);case 9:return i=e.sent,e.abrupt("break",20);case 11:return e.next=13,this.handleShowAction(t);case 13:return i=e.sent,e.abrupt("break",20);case 15:return e.next=17,this.handlePostAction(t,n);case 17:return i=e.sent,e.abrupt("break",20);case 19:return e.abrupt("break",20);case 20:return e.abrupt("return",i);case 21:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return A.apply(this,arguments)})},{key:"handleGetAction",value:(l=Ri(o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.alertService.confirm("Are you sure you want to replace the current note contents with this action's results?");case 2:if(!e.sent){e.next=7;break}return e.abrupt("return",this.runConfirmedGetAction(t,n));case 7:return e.abrupt("return",{error:{message:"Action canceled by user."}});case 8:case"end":return e.stop()}}),e,this)}))),function(e,t){return l.apply(this,arguments)})},{key:"runConfirmedGetAction",value:(u=Ri(o.a.mark((function e(t,n){var r,i,a=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.httpService.getAbsolute(t.url).catch((function(e){var t=e&&e.error||{message:"An issue occurred while processing this action. Please try again."};return a.alertService.alert(t.message),{error:t}}));case 2:if(!(r=e.sent).error){e.next=5;break}return e.abrupt("return",{response:r});case 5:return e.next=7,this.payloadByDecryptingResponse(r,n);case 7:return i=e.sent,e.next=10,this.modelManager.emitPayload(Object(E.b)(i,{dirty:!0,dirtiedDate:new Date}),_.a.RemoteActionRetrieved);case 10:return this.syncService.sync(),e.abrupt("return",{response:r,item:r.item});case 12:case"end":return e.stop()}}),e,this)}))),function(e,t){return u.apply(this,arguments)})},{key:"handleRenderAction",value:(c=Ri(o.a.mark((function e(t,n){var r,i=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.httpService.getAbsolute(t.url).then(function(){var e=Ri(o.a.mark((function e(t){var r,a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i.payloadByDecryptingResponse(t,n);case 2:if(!(r=e.sent)){e.next=8;break}return e.next=6,i.itemManager.createItem(r.content_type,r.contentObject);case 6:return a=e.sent,e.abrupt("return",{response:t,item:a});case 8:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){var t=e&&e.error||{message:"An issue occurred while processing this action. Please try again."};return i.alertService.alert(t.message),{error:t}}));case 2:return r=e.sent,e.abrupt("return",r);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return c.apply(this,arguments)})},{key:"payloadByDecryptingResponse",value:(s=Ri(o.a.mark((function e(t,n,r){var i,a,s,c,u,l,A,f,h;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=Object(E.e)(t.item),e.next=3,this.protocolService.payloadByDecryptingPayload(i,r);case 3:if((a=e.sent).errorDecrypting){e.next=6;break}return e.abrupt("return",a);case 6:if(t.auth_params){e.next=9;break}return this.alertService.alert("We were unable to decrypt this revision using your current keys, and this revision is missing metadata that would allow us to try different keys to decrypt it. This can likely be fixed with some manual intervention. Please email hello@standardnotes.org for assistance."),e.abrupt("return",void 0);case 9:s=[],c=Mi(this.previousPasswords),e.prev=11,c.s();case 13:if((u=c.n()).done){e.next=30;break}if(l=u.value,!s.includes(l)){e.next=17;break}return e.abrupt("continue",28);case 17:return s.push(l),e.next=20,this.protocolService.computeRootKey(l,t.auth_params);case 20:if(A=e.sent){e.next=23;break}return e.abrupt("continue",28);case 23:return e.next=25,this.payloadByDecryptingResponse(t,n,A);case 25:if(!(f=e.sent)){e.next=28;break}return e.abrupt("return",f);case 28:e.next=13;break;case 30:e.next=35;break;case 32:e.prev=32,e.t0=e.catch(11),c.e(e.t0);case 35:return e.prev=35,c.f(),e.finish(35);case 38:return e.next=40,n();case 40:return h=e.sent,this.previousPasswords.push(h),e.abrupt("return",this.payloadByDecryptingResponse(t,n,r));case 43:case"end":return e.stop()}}),e,this,[[11,32,35,38]])}))),function(e,t,n){return s.apply(this,arguments)})},{key:"handlePostAction",value:(a=Ri(o.a.mark((function e(t,n){var r,i,a,s=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.access_type===Ce.Decrypted,e.next=3,this.outgoingPayloadForItem(n,r);case 3:return i=e.sent,a={items:[i]},e.abrupt("return",this.httpService.postAbsolute(t.url,a).then((function(e){return{response:e}})).catch((function(e){return console.error("Action error response:",e),s.alertService.alert("An issue occurred while processing this action. Please try again."),{response:e}})));case 6:case"end":return e.stop()}}),e,this)}))),function(e,t){return a.apply(this,arguments)})},{key:"handleShowAction",value:(i=Ri(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.deviceInterface.openUrl(t.url),e.abrupt("return",{response:void 0});case 2:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"outgoingPayloadForItem",value:(r=Ri(o.a.mark((function e(t){var n,r,i,a=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=a.length>1&&void 0!==a[1]&&a[1],r=n?Ft.a.FileDecrypted:Ft.a.FileEncrypted,e.next=4,this.protocolService.payloadByEncryptingPayload(t.payloadRepresentation(),r);case 4:return i=e.sent,e.abrupt("return",i.ejected());case 6:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})}])&&Ti(t.prototype,n),p}(Ot.a);function Ki(e){return(Ki="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Gi(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function $i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Yi(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Ji(e,t){return(Ji=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Vi(e,t){return!t||"object"!==Ki(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function zi(e){return(zi=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var qi=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Ji(e,t)}(u,e);var t,n,r,i,a,c=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=zi(e);if(t){var i=zi(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Vi(this,n)}}(u);function u(){return $i(this,u),c.apply(this,arguments)}return t=u,n=[{key:"compare",value:function(e){if(this.version!==e.version)return!1;var t=this.serverPassword&&e.serverPassword;return this.masterKey===e.masterKey&&(!t||this.serverPassword===e.serverPassword)}},{key:"getPersistableValue",value:function(){var e={version:this.version};return this.masterKey&&(e.masterKey=this.masterKey),this.dataAuthenticationKey&&(e.dataAuthenticationKey=this.dataAuthenticationKey),e}},{key:"version",get:function(){if(!this.payload.safeContent.version)throw"Attempting to create key without version.";return this.payload.safeContent.version}},{key:"isRootKey",get:function(){return!0}},{key:"itemsKey",get:function(){return this.masterKey}},{key:"masterKey",get:function(){return this.payload.safeContent.masterKey}},{key:"serverPassword",get:function(){return this.payload.safeContent.serverPassword}},{key:"dataAuthenticationKey",get:function(){return this.payload.safeContent.dataAuthenticationKey}}],r=[{key:"Create",value:(i=o.a.mark((function e(t,n){var r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n){e.next=4;break}return e.next=3,p.GenerateUuid();case 3:n=e.sent;case 4:return t.version||(t.dataAuthenticationKey?t.version=At.a.V002:t.version=At.a.V001),r=Object(E.e)({uuid:n,content_type:B.a.RootKey,content:Object(s.a)(t)}),e.abrupt("return",new u(r));case 7:case"end":return e.stop()}}),e)})),a=function(){var e=this,t=arguments;return new Promise((function(n,r){var a=i.apply(e,t);function o(e){Gi(a,n,r,o,s,"next",e)}function s(e){Gi(a,n,r,o,s,"throw",e)}o(void 0)}))},function(e,t){return a.apply(this,arguments)})}],n&&Yi(t.prototype,n),r&&Yi(t,r),u}(d.d);function Wi(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Xi(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var Zi=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.services=t,this.stageHandlers={},this.registerStageHandlers()}var t,n,r,i,a;return t=e,n=[{key:"registerStageHandler",value:function(e,t){this.stageHandlers[e]=t}},{key:"markDone",value:function(){var e;null===(e=this.onDoneHandler)||void 0===e||e.call(this),this.onDoneHandler=void 0}},{key:"onDone",value:function(e){this.onDoneHandler=e}},{key:"handleStage",value:(i=o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(n=this.stageHandlers[t])){e.next=4;break}return e.next=4,n();case 4:case"end":return e.stop()}}),e,this)})),a=function(){var e=this,t=arguments;return new Promise((function(n,r){var a=i.apply(e,t);function o(e){Wi(a,n,r,o,s,"next",e)}function s(e){Wi(a,n,r,o,s,"throw",e)}o(void 0)}))},function(e){return a.apply(this,arguments)})}],r=[{key:"timestamp",value:function(){throw"Must override"}}],n&&Xi(t.prototype,n),r&&Xi(t,r),e}();function ea(e){return(ea="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function ta(e){return function(e){if(Array.isArray(e))return aa(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||ia(e)||function(){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 na(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=ia(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function ra(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var n=[],r=!0,i=!1,a=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){i=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}return n}}(e,t)||ia(e,t)||function(){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 ia(e,t){if(e){if("string"==typeof e)return aa(e,t);var n=Object.prototype.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)?aa(e,t):void 0}}function aa(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function oa(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function sa(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function ca(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){sa(a,r,i,o,s,"next",e)}function s(e){sa(a,r,i,o,s,"throw",e)}o(void 0)}))}}function ua(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function la(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Aa(e,t){return(Aa=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function fa(e,t){return!t||"object"!==ea(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function ha(e){return(ha=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var pa={WebPasscodeParamsKey:"offlineParams",MobilePasscodeParamsKey:"pc_params",AllAccountKeyParamsKey:"auth_params",WebEncryptedStorageKey:"encryptedStorage",MobileWrappedRootKeyKey:"encrypted_account_keys",AllMigrations:"migrations"},da=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Aa(e,t)}(C,e);var t,n,r,a,c,l,A,d,g,y,v,b,I,w=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=ha(e);if(t){var i=ha(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return fa(this,n)}}(C);function C(){return ua(this,C),w.apply(this,arguments)}return t=C,n=[{key:"registerStageHandlers",value:function(){var e=this;this.registerStageHandler(i.PreparingForLaunch_0,ca(o.a.mark((function t(){return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!Vn(e.services.environment)){t.next=4;break}return t.abrupt("return",e.migrateStorageStructureForWebDesktop());case 4:if(!zn(e.services.environment)){t.next=6;break}return t.abrupt("return",e.migrateStorageStructureForMobile());case 6:case"end":return t.stop()}}),t)})))),this.registerStageHandler(i.StorageDecrypted_09,ca(o.a.mark((function t(){return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.migrateArbitraryRawStorageToManagedStorageAllPlatforms();case 2:return t.next=4,e.migrateSessionStorage();case 4:return t.next=6,e.deleteLegacyStorageValues();case 6:case"end":return t.stop()}}),t)})))),this.registerStageHandler(i.LoadingDatabase_11,ca(o.a.mark((function t(){return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.createDefaultItemsKeyForAllPlatforms();case 2:e.markDone();case 3:case"end":return t.stop()}}),t)}))))}},{key:"migrateStorageStructureForWebDesktop",value:(I=ca(o.a.mark((function e(){var t,n,r,i,a,s,c,l,A,f,h,p,d,g,y,v,m,b,I;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.services.deviceInterface,oa(t={},Mt.Wrapped,{}),oa(t,Mt.Unwrapped,{}),oa(t,Mt.Nonwrapped,{}),r=t,e.next=4,n.getJsonParsedStorageValue(pa.AllAccountKeyParamsKey);case 4:return(i=e.sent)&&(r.nonwrapped[_t.RootKeyParams]=i),e.next=8,n.getJsonParsedStorageValue(pa.WebEncryptedStorageKey);case 8:if(!(a=e.sent)){e.next=36;break}return s=Object(E.e)(a),e.next=13,this.webDesktopHelperGetPasscodeKeyAndDecryptEncryptedStorage(s);case 13:if(c=e.sent,l=c.key,A=c.decryptedStoragePayload,f=c.keyParams,r.nonwrapped[_t.RootKeyWrapperKeyParams]=f.getPortableValue(),h=Object(u.a)(A.contentObject.storage),p=Object(u.v)(h),r.nonwrapped[_t.RootKeyParams]=p[pa.AllAccountKeyParamsKey],d=l,Object(u.p)(p.mk)){e.next=31;break}return e.next=26,this.webDesktopHelperExtractAndWrapAccountKeysFromValueStore(l,p);case 26:g=e.sent,y=g.accountKey,v=g.wrappedKey,d=y,r.nonwrapped[_t.WrappedRootKey]=v;case 31:return e.next=33,this.webDesktopHelperEncryptStorage(d,A,p);case 33:r.wrapped=e.sent,e.next=55;break;case 36:return e.next=38,this.services.deviceInterface.getRawStorageValue("ak");case 38:return m=e.sent,b=Object(u.p)(m)?At.a.V002:At.a.V003,e.t0=qi,e.next=43,this.services.deviceInterface.getRawStorageValue("mk");case 43:return e.t1=e.sent,e.next=46,this.services.deviceInterface.getRawStorageValue("pw");case 46:return e.t2=e.sent,e.t3=m,e.t4=b,e.t5={masterKey:e.t1,serverPassword:e.t2,dataAuthenticationKey:e.t3,version:e.t4},e.next=52,e.t0.Create.call(e.t0,e.t5);case 52:return I=e.sent,e.next=55,this.services.deviceInterface.setKeychainValue(I.getPersistableValue());case 55:return e.next=57,this.allPlatformHelperSetStorageStructure(r);case 57:case"end":return e.stop()}}),e,this)}))),function(){return I.apply(this,arguments)})},{key:"allPlatformHelperSetStorageStructure",value:(b=ca(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return(n=Vt.defaultValuesObject(t.wrapped,t.unwrapped,t.nonwrapped))[Mt.Unwrapped]=void 0,e.next=4,this.services.deviceInterface.setRawStorageValue(St(this.services.namespace,Et.StorageObject),JSON.stringify(n));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return b.apply(this,arguments)})},{key:"webDesktopHelperGetPasscodeKeyAndDecryptEncryptedStorage",value:(v=ca(o.a.mark((function e(t){var n,r,i,a,s,c,u,l,A,p;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.services.deviceInterface.getJsonParsedStorageValue(pa.WebPasscodeParamsKey);case 2:n=e.sent,r=this.services.protocolService.createKeyParams(n),a=!0,c=new m([f.LocalPasscode],h.Migration);case 6:if(!a){e.next=23;break}return e.next=9,this.services.challengeService.promptForChallengeResponseWithCustomValidation(c);case 9:return u=e.sent,l=ra(u,1),A=l[0],p=A.value,e.next=15,this.services.protocolService.computeRootKey(p,r);case 15:return s=e.sent,e.next=18,this.services.protocolService.payloadByDecryptingPayload(t,s);case 18:i=e.sent,a=i.errorDecrypting,this.services.challengeService.setValidationStatusForChallenge(c,A,!i.errorDecrypting),e.next=6;break;case 23:return e.abrupt("return",{decryptedStoragePayload:i,key:s,keyParams:r});case 24:case"end":return e.stop()}}),e,this)}))),function(e){return v.apply(this,arguments)})},{key:"webDesktopHelperExtractAndWrapAccountKeysFromValueStore",value:(y=ca(o.a.mark((function e(t,n){var r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=n.ak?At.a.V003:At.a.V002,e.next=3,qi.Create({masterKey:n.mk,serverPassword:n.pw,dataAuthenticationKey:n.ak,version:i});case 3:if(a=e.sent,delete n.mk,delete n.pw,delete n.ak,s=Object(E.e)(a),!t){e.next=12;break}return e.next=11,this.services.protocolService.payloadByEncryptingPayload(s,Ft.a.LocalStorageEncrypted,t);case 11:c=e.sent;case 12:return e.abrupt("return",{accountKey:a,wrappedKey:null===(r=c)||void 0===r?void 0:r.ejected()});case 13:case"end":return e.stop()}}),e,this)}))),function(e,t){return y.apply(this,arguments)})},{key:"webDesktopHelperEncryptStorage",value:(g=ca(o.a.mark((function e(t,n,r){var i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.services.protocolService.payloadByEncryptingPayload(Object(E.b)(n,{content_type:B.a.EncryptedStorage,content:r}),Ft.a.LocalStoragePreferEncrypted,t);case 2:return i=e.sent,e.abrupt("return",i.ejected());case 4:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return g.apply(this,arguments)})},{key:"migrateStorageStructureForMobile",value:(d=ca(o.a.mark((function e(){var t,n,r,i,a,c,l,A,d,g,y,v,b,I,w,C,_,k,Q,S,x,D,P=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.services.deviceInterface.getJsonParsedStorageValue(pa.MobileWrappedRootKeyKey);case 2:return r=e.sent,e.next=5,this.services.deviceInterface.getJsonParsedStorageValue(pa.AllAccountKeyParamsKey);case 5:return i=e.sent,e.next=8,this.services.deviceInterface.getJsonParsedStorageValue(pa.MobilePasscodeParamsKey);case 8:return a=e.sent,oa(n={},Mt.Nonwrapped,(oa(t={},_t.WrappedRootKey,r),oa(t,_t.RootKeyWrapperKeyParams,a),oa(t,_t.RootKeyParams,i),t)),oa(n,Mt.Unwrapped,{}),oa(n,Mt.Wrapped,{}),c=n,e.next=12,this.services.deviceInterface.getKeychainValue();case 12:if(l=e.sent,!a){e.next=59;break}if(A=this.services.protocolService.createKeyParams(a),d=function(){var e=ca(o.a.mark((function e(){var t,n,r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=l.offline.pw,r=new m([f.LocalPasscode],h.Migration);case 2:if(n&&n.serverPassword===t){e.next=15;break}return e.next=5,P.services.challengeService.promptForChallengeResponseWithCustomValidation(r);case 5:return i=e.sent,a=ra(i,1),s=a[0],c=s.value,e.next=11,P.services.protocolService.computeRootKey(c,A);case 11:n=e.sent,P.services.challengeService.setValidationStatusForChallenge(r,s,n.serverPassword===t),e.next=2;break;case 15:return e.abrupt("return",n);case 16:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),g=l.offline.timing,c.unwrapped[_t.MobilePasscodeTiming]=g,y=l.biometrics_prefs,c.unwrapped[_t.BiometricsState]=y.enabled,c.unwrapped[_t.MobileBiometricsTiming]=y.timing,!r){e.next=39;break}return e.next=24,d();case 24:return v=e.sent,e.next=27,this.services.protocolService.payloadByDecryptingPayload(Object(E.e)(r),v);case 27:return b=e.sent,I=b.contentObject.accountKeys,w=Object(u.p)(I.ak)?At.a.V002:At.a.V003,C=Object(E.b)(b,{content:{masterKey:I.mk,serverPassword:I.pw,dataAuthenticationKey:I.ak,version:I.version||w,accountKeys:null}}),e.next=33,this.services.protocolService.payloadByEncryptingPayload(C,Ft.a.LocalStoragePreferEncrypted,v);case 33:return _=e.sent,c.nonwrapped[_t.WrappedRootKey]=_.ejected(),e.next=37,this.services.deviceInterface.clearKeychainValue();case 37:e.next=57;break;case 39:if(r){e.next=57;break}return e.next=42,d();case 42:return k=e.sent,e.t0=E.e,e.next=46,p.GenerateUuid();case 46:return e.t1=e.sent,e.t2=Object(s.a)(c.unwrapped),e.t3=B.a.EncryptedStorage,e.t4={uuid:e.t1,content:e.t2,content_type:e.t3},Q=(0,e.t0)(e.t4),e.next=53,this.services.protocolService.payloadByEncryptingPayload(Q,Ft.a.LocalStoragePreferEncrypted,k);case 53:return S=e.sent,c.wrapped=S.ejected(),e.next=57,this.services.deviceInterface.clearKeychainValue();case 57:e.next=67;break;case 59:if(!l||!l.mk){e.next=67;break}return x=Object(u.p)(l.ak)?At.a.V002:At.a.V003,e.next=64,qi.Create({masterKey:l.mk,serverPassword:l.pw,dataAuthenticationKey:l.ak,version:l.version||x});case 64:return D=e.sent,e.next=67,this.services.deviceInterface.setKeychainValue(D.getPersistableValue());case 67:return e.next=69,this.allPlatformHelperSetStorageStructure(c);case 69:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"migrateArbitraryRawStorageToManagedStorageAllPlatforms",value:(A=ca(o.a.mark((function e(){var t,n,r,i,a,s,c,l,A,f,h;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.services.deviceInterface.getAllRawStorageKeyValues();case 2:t=e.sent,n=Object(u.x)(pa),r=function(e){try{return JSON.parse(e)}catch(t){return e}},i=this.services.namespace,a=na(t),e.prev=7,a.s();case 9:if((s=a.n()).done){e.next=22;break}if(c=s.value,l=c.key,A=c.value,f=i&&i.length>0&&l.startsWith(i),!n.includes(l)&&!f){e.next=16;break}return e.abrupt("continue",20);case 16:if(Object(u.p)(A)){e.next=20;break}return h=r(A),e.next=20,this.services.storageService.setValue(l,h);case 20:e.next=9;break;case 22:e.next=27;break;case 24:e.prev=24,e.t0=e.catch(7),a.e(e.t0);case 27:return e.prev=27,a.f(),e.finish(27);case 30:case"end":return e.stop()}}),e,this,[[7,24,27,30]])}))),function(){return A.apply(this,arguments)})},{key:"deleteLegacyStorageValues",value:(l=ca(o.a.mark((function e(){var t,n,r,i,a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=["mk","ak","jwt","ephemeral","cachedThemes"],n=[].concat(ta(Object(u.x)(_t)),ta(Object(u.x)(pa)),t),r=na(n),e.prev=3,r.s();case 5:if((i=r.n()).done){e.next=11;break}return a=i.value,e.next=9,this.services.deviceInterface.removeRawStorageValue(a);case 9:e.next=5;break;case 11:e.next=16;break;case 13:e.prev=13,e.t0=e.catch(3),r.e(e.t0);case 16:return e.prev=16,r.f(),e.finish(16);case 19:case"end":return e.stop()}}),e,this,[[3,13,16,19]])}))),function(){return l.apply(this,arguments)})},{key:"migrateSessionStorage",value:(c=ca(o.a.mark((function e(){var t,n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=3,this.services.storageService.getValue("jwt");case 3:if(t=e.sent){e.next=6;break}return e.abrupt("return");case 6:return n=new qt(t),e.next=9,this.services.storageService.setValue(_t.Session,n);case 9:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"createDefaultItemsKeyForAllPlatforms",value:(a=ca(o.a.mark((function e(){var t,n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.services.protocolService.getRootKey();case 2:if(!(t=e.sent)){e.next=19;break}return e.next=6,this.services.protocolService.getRootKeyParams();case 6:return n=e.sent,e.t0=E.e,e.next=10,p.GenerateUuid();case 10:return e.t1=e.sent,e.t2=B.a.ItemsKey,e.t3=Object(s.a)({itemsKey:t.masterKey,dataAuthenticationKey:t.dataAuthenticationKey,version:n.version}),e.t4=new Date,e.t5={uuid:e.t1,content_type:e.t2,content:e.t3,dirty:!0,dirtiedDate:e.t4},r=(0,e.t0)(e.t5),i=Qt(r),e.next=19,this.services.itemManager.emitItemFromPayload(i.payloadRepresentation(),_.a.LocalChanged);case 19:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})}],r=[{key:"timestamp",value:function(){return new Date("2020-01-15").getTime()}}],n&&la(t.prototype,n),r&&la(t,r),C}(Zi);function ga(e){return(ga="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function ya(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function va(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){ya(a,r,i,o,s,"next",e)}function s(e){ya(a,r,i,o,s,"throw",e)}o(void 0)}))}}function ma(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ba(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Ia(e,t){return(Ia=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function wa(e,t){return!t||"object"!==ga(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Ca(e){return(Ca=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Ba=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Ia(e,t)}(c,e);var t,n,r,a,s=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Ca(e);if(t){var i=Ca(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return wa(this,n)}}(c);function c(){return ma(this,c),s.apply(this,arguments)}return t=c,n=[{key:"registerStageHandlers",value:function(){var e=this;this.registerStageHandler(i.PreparingForLaunch_0,va(o.a.mark((function t(){return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.migrateMigrationTimestampAllPlatforms();case 2:e.markDone();case 3:case"end":return t.stop()}}),t)}))))}},{key:"migrateMigrationTimestampAllPlatforms",value:(a=va(o.a.mark((function e(){var t,n,r,i,a,s,c,l,A;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=!1,n=0,r=["migrations","ephemeral","user","cachedThemes","syncToken","encryptedStorage"];case 3:if(!(n<r.length)){e.next=14;break}return i=r[n],e.next=7,this.services.deviceInterface.getRawStorageValue(i);case 7:if(!e.sent){e.next=11;break}return t=!0,e.abrupt("break",14);case 11:n++,e.next=3;break;case 14:return a=St(this.services.namespace,Et.LastMigrationTimestamp),e.next=17,this.services.deviceInterface.getRawStorageValue(a);case 17:if(s=e.sent,(c=!Object(u.p)(s))||!t){e.next=25;break}return l=new Date(0).getTime(),e.next=23,this.services.deviceInterface.setRawStorageValue(a,l);case 23:e.next=32;break;case 25:if(c||t){e.next=31;break}return A=(new Date).getTime(),e.next=29,this.services.deviceInterface.setRawStorageValue(a,A);case 29:e.next=32;break;case 31:case 32:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})}],r=[{key:"timestamp",value:function(){return new Date("2020-01-01").getTime()}}],n&&ba(t.prototype,n),r&&ba(t,r),c}(Zi);function Ea(e){return(Ea="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _a(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return ka(e,t);var n=Object.prototype.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)?ka(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function ka(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Qa(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Sa(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Qa(a,r,i,o,s,"next",e)}function s(e){Qa(a,r,i,o,s,"throw",e)}o(void 0)}))}}function xa(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Da(e,t,n){return(Da="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Fa(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function Pa(e,t){return(Pa=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Ma(e,t){return!t||"object"!==Ea(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Fa(e){return(Fa=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Oa=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Pa(e,t)}(y,e);var t,n,a,s,l,A,f,h,p,d,g=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Fa(e);if(t){var i=Fa(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Ma(this,n)}}(y);function y(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,y),(t=g.call(this)).services=e,t.handledFullSyncStage=!1,t}return t=y,(n=[{key:"deinit",value:function(){this.services=void 0,this.activeMigrations&&(this.activeMigrations.length=0),Da(Fa(y.prototype),"deinit",this).call(this)}},{key:"initialize",value:(d=Sa(o.a.mark((function e(){var t,n=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.runBaseMigration();case 2:return e.next=4,this.getRequiredMigrations();case 4:this.activeMigrations=e.sent,this.activeMigrations.length>0&&(t=Object(u.w)(this.activeMigrations)).onDone(Sa(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.saveLastMigrationTimestamp(t.constructor.timestamp());case 2:case"end":return e.stop()}}),e)}))));case 6:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"handleApplicationStage",value:(p=Sa(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Da(Fa(y.prototype),"handleApplicationStage",this).call(this,t);case 2:return e.next=4,this.handleStage(t);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return p.apply(this,arguments)})},{key:"handleApplicationEvent",value:(h=Sa(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t!==c.a.SignedIn){e.next=5;break}return e.next=3,this.handleStage(i.SignedIn_30);case 3:e.next=10;break;case 5:if(t!==c.a.CompletedFullSync){e.next=10;break}if(this.handledFullSyncStage){e.next=10;break}return this.handledFullSyncStage=!0,e.next=10,this.handleStage(i.FullSyncCompleted_13);case 10:case"end":return e.stop()}}),e,this)}))),function(e){return h.apply(this,arguments)})},{key:"runBaseMigration",value:(f=Sa(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=new Ba(this.services),e.next=3,t.handleStage(i.PreparingForLaunch_0);case 3:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"getRequiredMigrations",value:(A=Sa(o.a.mark((function e(){var t,n,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getLastMigrationTimestamp();case 2:t=e.sent,n=[],i=Object.keys(r).map((function(e){return r[e]})).sort((function(e,t){var n=e.timestamp(),r=t.timestamp();return n<r?-1:n>r?1:0})),a=_a(i);try{for(a.s();!(s=a.n()).done;)(c=s.value).timestamp()>t&&n.push(new c(this.services))}catch(e){a.e(e)}finally{a.f()}return e.abrupt("return",n);case 8:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"getTimeStampKey",value:function(){return St(this.services.namespace,Et.LastMigrationTimestamp)}},{key:"getLastMigrationTimestamp",value:(l=Sa(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.services.deviceInterface.getRawStorageValue(this.getTimeStampKey());case 2:if(t=e.sent,!Object(u.p)(t)){e.next=5;break}throw"Timestamp should not be null. Be sure to run base migration first.";case 5:return e.abrupt("return",JSON.parse(t));case 6:case"end":return e.stop()}}),e,this)}))),function(){return l.apply(this,arguments)})},{key:"saveLastMigrationTimestamp",value:(s=Sa(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.services.deviceInterface.setRawStorageValue(this.getTimeStampKey(),JSON.stringify(t));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"handleStage",value:(a=Sa(o.a.mark((function e(t){var n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=_a(this.activeMigrations),e.prev=1,n.s();case 3:if((r=n.n()).done){e.next=9;break}return i=r.value,e.next=7,i.handleStage(t);case 7:e.next=3;break;case 9:e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),n.e(e.t0);case 14:return e.prev=14,n.f(),e.finish(14);case 17:case"end":return e.stop()}}),e,this,[[1,11,14,17]])}))),function(e){return a.apply(this,arguments)})}])&&xa(t.prototype,n),y}(Ot.a);function Ra(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Ta(e){return new La(e)}var ja,Ha,Ua,Na,La=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.content=t}var t,n;return t=e,(n=[{key:"getPortableValue",value:function(){return Object(At.b)(this.version,At.a.V003)>=0?Object(u.y)(this.content,["pw_cost"]):this.content}},{key:"isKeyParamsObject",get:function(){return!0}},{key:"kdfIterations",get:function(){return this.content.pw_cost}},{key:"seed",get:function(){return this.content.pw_nonce}},{key:"identifier",get:function(){return this.content.identifier||this.content.email}},{key:"salt",get:function(){return this.content.pw_salt}},{key:"version",get:function(){return this.content.version}}])&&Ra(t.prototype,n),e}();function Ka(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Ga(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Ka(a,r,i,o,s,"next",e)}function s(e){Ka(a,r,i,o,s,"throw",e)}o(void 0)}))}}function $a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Ya(e){return(Ya="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Ja(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Va(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Ja(a,r,i,o,s,"next",e)}function s(e){Ja(a,r,i,o,s,"throw",e)}o(void 0)}))}}function za(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function qa(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Wa(e,t,n){return(Wa="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=eo(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function Xa(e,t){return(Xa=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Za(e,t){return!t||"object"!==Ya(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function eo(e){return(eo=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}!function(e){e[e.SaltSeedLength=128]="SaltSeedLength",e[e.PbkdfMinCost=3e3]="PbkdfMinCost",e[e.PbkdfOutputLength=512]="PbkdfOutputLength",e[e.EncryptionKeyLength=256]="EncryptionKeyLength"}(ja||(ja={})),function(e){e[e.SaltSeedLength=128]="SaltSeedLength",e[e.PbkdfMinCost=3e3]="PbkdfMinCost",e[e.PbkdfOutputLength=768]="PbkdfOutputLength",e[e.EncryptionKeyLength=256]="EncryptionKeyLength",e[e.EncryptionIvLength=128]="EncryptionIvLength"}(Ha||(Ha={})),function(e){e[e.SaltSeedLength=256]="SaltSeedLength",e[e.PbkdfCost=11e4]="PbkdfCost",e[e.PbkdfOutputLength=768]="PbkdfOutputLength",e[e.EncryptionKeyLength=256]="EncryptionKeyLength",e[e.EncryptionIvLength=128]="EncryptionIvLength"}(Ua||(Ua={})),function(e){e[e.ArgonSaltSeedLength=256]="ArgonSaltSeedLength",e[e.ArgonSaltLength=128]="ArgonSaltLength",e[e.ArgonIterations=5]="ArgonIterations",e[e.ArgonMemLimit=67108864]="ArgonMemLimit",e[e.ArgonOutputKeyBytes=64]="ArgonOutputKeyBytes",e[e.EncryptionKeyLength=256]="EncryptionKeyLength",e[e.EncryptionNonceLength=192]="EncryptionNonceLength"}(Na||(Na={}));var to="00000000000000000000000000000000",no=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Xa(e,t)}(h,e);var t,n,r,i,a,s,c,u,l,A,f=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=eo(e);if(t){var i=eo(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Za(this,n)}}(h);function h(){return za(this,h),f.apply(this,arguments)}return t=h,(n=[{key:"getEncryptionDisplayName",value:function(){return"AES-256"}},{key:"generateNewItemsKeyContent",value:(A=Va(o.a.mark((function e(){var t,n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=ja.EncryptionKeyLength,e.next=3,this.crypto.generateRandomKey(t);case 3:return n=e.sent,r={itemsKey:n,version:this.version},e.abrupt("return",r);case 6:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"createRootKey",value:(l=Va(o.a.mark((function e(t,n){var r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=ja.PbkdfMinCost,e.next=3,this.crypto.generateRandomKey(ja.SaltSeedLength);case 3:return i=e.sent,e.next=6,this.crypto.unsafeSha1(t+"SN"+i);case 6:return a=e.sent,e.next=9,this.deriveKey(n,a,r);case 9:return s=e.sent,c=Ta({email:t,pw_cost:r,pw_nonce:i,pw_salt:a,version:this.version}),e.abrupt("return",{key:s,keyParams:c});case 12:case"end":return e.stop()}}),e,this)}))),function(e,t){return l.apply(this,arguments)})},{key:"computeRootKey",value:(u=Va(o.a.mark((function e(t,n){var r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.deriveKey(t,n.salt,n.kdfIterations);case 2:return r=e.sent,e.abrupt("return",r);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return u.apply(this,arguments)})},{key:"decryptString",value:(c=Va(o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.crypto.aes256CbcDecrypt(t,to,n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return c.apply(this,arguments)})},{key:"encryptString",value:(s=Va(o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.crypto.aes256CbcEncrypt(t,to,n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return s.apply(this,arguments)})},{key:"generateEncryptedParameters",value:(a=Va(o.a.mark((function e(t,n,r){var i,a,s,c,u,l,A;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n!==et.a.DecryptedBareObject&&n!==et.a.DecryptedBase64String){e.next=2;break}return e.abrupt("return",Wa(eo(h.prototype),"generateEncryptedParameters",this).call(this,t,n,r));case 2:if(n===et.a.EncryptedString){e.next=4;break}throw"Unsupport format for generateEncryptedParameters ".concat(n);case 4:if(r){e.next=6;break}throw"Attempting to generateEncryptedParameters with no itemsKey.";case 6:return e.next=8,this.crypto.generateRandomKey(2*ja.EncryptionKeyLength);case 8:return i=e.sent,e.next=11,this.encryptString(i,r.itemsKey);case 11:return a=e.sent,e.next=14,this.firstHalfOfKey(i);case 14:return s=e.sent,e.next=17,this.secondHalfOfKey(i);case 17:return c=e.sent,e.next=20,this.encryptString(JSON.stringify(t.content),s);case 20:return u=e.sent,l=r.version+u,e.next=24,this.crypto.hmac256(l,c);case 24:return A=e.sent,e.abrupt("return",Object(E.c)({uuid:t.uuid,items_key_id:r instanceof wt?r.uuid:void 0,content:l,enc_item_key:a,auth_hash:A}));case 26:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return a.apply(this,arguments)})},{key:"generateDecryptedParameters",value:(i=Va(o.a.mark((function e(t,n){var r,i,a,s,c,u,l;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((r=t.format)!==et.a.DecryptedBareObject&&r!==et.a.DecryptedBase64String){e.next=3;break}return e.abrupt("return",Wa(eo(h.prototype),"generateDecryptedParameters",this).call(this,t,n));case 3:if(t.enc_item_key){e.next=6;break}return console.error("Missing item encryption key, skipping decryption."),e.abrupt("return",t);case 6:return i=t.enc_item_key,i=this.version+i,a=this.encryptionComponentsFromString(i,n.itemsKey),e.next=11,this.decryptString(a.ciphertext,a.key);case 11:if(s=e.sent){e.next=15;break}return console.error("Error decrypting parameters",t),e.abrupt("return",Object(E.a)(t,{errorDecrypting:!0,errorDecryptingValueChanged:!t.errorDecrypting}));case 15:return e.next=17,this.firstHalfOfKey(s);case 17:return c=e.sent,u=this.encryptionComponentsFromString(t.contentString,c),e.next=21,this.decryptString(u.ciphertext,u.key);case 21:if(l=e.sent){e.next=26;break}return e.abrupt("return",Object(E.a)(t,{errorDecrypting:!0,errorDecryptingValueChanged:!t.errorDecrypting}));case 26:return e.abrupt("return",Object(E.a)(t,{content:JSON.parse(l),items_key_id:void 0,enc_item_key:void 0,errorDecrypting:!1,errorDecryptingValueChanged:!0===t.errorDecrypting,waitingForKey:!1}));case 27:case"end":return e.stop()}}),e,this)}))),function(e,t){return i.apply(this,arguments)})},{key:"encryptionComponentsFromString",value:function(e,t){var n=e.substring(0,At.a.VersionLength);return{ciphertext:e.substring(At.a.VersionLength,e.length),version:n,key:t}}},{key:"deriveKey",value:(r=Va(o.a.mark((function e(t,n,r){var i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.crypto.pbkdf2(t,n,r,ja.PbkdfOutputLength);case 2:return i=e.sent,e.next=5,this.splitKey(i,2);case 5:return a=e.sent,e.next=8,qi.Create({serverPassword:a[0],masterKey:a[1],version:this.version});case 8:return s=e.sent,e.abrupt("return",s);case 10:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"version",get:function(){return At.a.V001}}])&&qa(t.prototype,n),h}(function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.crypto=t}var t,n,r,i,a,c,u;return t=e,(n=[{key:"firstHalfOfKey",value:(u=Ga(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t.substring(0,t.length/2));case 1:case"end":return e.stop()}}),e)}))),function(e){return u.apply(this,arguments)})},{key:"secondHalfOfKey",value:(c=Ga(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t.substring(t.length/2,t.length));case 1:case"end":return e.stop()}}),e)}))),function(e){return c.apply(this,arguments)})},{key:"splitKey",value:function(e,t){for(var n=e.length/t,r=[],i=0;i<t;i++){var a=e.slice(n*i,n*(i+1));r.push(a)}return r}},{key:"createItemsKey",value:(a=Ga(o.a.mark((function e(){var t,n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.generateNewItemsKeyContent();case 2:return t=e.sent,e.t0=E.e,e.next=6,p.GenerateUuid();case 6:return e.t1=e.sent,e.t2=B.a.ItemsKey,e.t3=Object(s.a)(t),e.t4={uuid:e.t1,content_type:e.t2,content:e.t3},n=(0,e.t0)(e.t4),e.abrupt("return",Qt(n));case 12:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"generateEncryptedParameters",value:(i=Ga(o.a.mark((function e(t,n,r){var i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n!==et.a.DecryptedBareObject){e.next=4;break}return e.abrupt("return",Object(E.c)({content:t.content}));case 4:if(n!==et.a.DecryptedBase64String){e.next=13;break}return i=JSON.stringify(t.content),e.next=8,this.crypto.base64Encode(i);case 8:return a=e.sent,s=At.a.V000Base64Decrypted+a,e.abrupt("return",Object(E.c)({content:s}));case 13:throw"Must override generateEncryptedParameters to handle format ".concat(n,".");case 14:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return i.apply(this,arguments)})},{key:"generateDecryptedParameters",value:(r=Ga(o.a.mark((function e(t,n){var r,i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((r=t.format)!==et.a.DecryptedBareObject){e.next=5;break}return e.abrupt("return",t);case 5:if(r!==et.a.DecryptedBase64String){e.next=20;break}return i=t.contentString.substring(At.a.VersionLength,t.contentString.length),e.prev=7,e.next=10,this.crypto.base64Decode(i);case 10:s=e.sent,a=JSON.parse(s),e.next=17;break;case 14:e.prev=14,e.t0=e.catch(7),a=t.content;case 17:return e.abrupt("return",Object(E.a)(t,{content:a}));case 20:throw"Must override generateDecryptedParameters to handle format ".concat(r,".");case 21:case"end":return e.stop()}}),e,this,[[7,14]])}))),function(e,t){return r.apply(this,arguments)})}])&&$a(t.prototype,n),e}());function ro(e){return(ro="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function io(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function ao(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){io(a,r,i,o,s,"next",e)}function s(e){io(a,r,i,o,s,"throw",e)}o(void 0)}))}}function oo(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function so(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function co(e,t,n){return(co="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Ao(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function uo(e,t){return(uo=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function lo(e,t){return!t||"object"!==ro(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Ao(e){return(Ao=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var fo=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&uo(e,t)}(d,e);var t,n,r,i,a,s,c,u,l,A,f,h,p=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Ao(e);if(t){var i=Ao(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return lo(this,n)}}(d);function d(){return oo(this,d),p.apply(this,arguments)}return t=d,(n=[{key:"generateNewItemsKeyContent",value:(h=ao(o.a.mark((function e(){var t,n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=Ha.EncryptionKeyLength,e.next=3,this.crypto.generateRandomKey(t);case 3:return n=e.sent,e.next=6,this.crypto.generateRandomKey(t);case 6:return r=e.sent,i={itemsKey:n,dataAuthenticationKey:r,version:this.version},e.abrupt("return",i);case 9:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"createRootKey",value:(f=ao(o.a.mark((function e(t,n){var r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=Ha.PbkdfMinCost,e.next=3,this.crypto.generateRandomKey(Ha.SaltSeedLength);case 3:return i=e.sent,e.next=6,this.crypto.unsafeSha1(t+":"+i);case 6:return a=e.sent,e.next=9,this.deriveKey(n,a,r);case 9:return s=e.sent,c=Ta({email:t,pw_cost:r,pw_nonce:i,pw_salt:a,version:this.version}),e.abrupt("return",{key:s,keyParams:c});case 12:case"end":return e.stop()}}),e,this)}))),function(e,t){return f.apply(this,arguments)})},{key:"computeRootKey",value:(A=ao(o.a.mark((function e(t,n){var r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.deriveKey(t,n.salt,n.kdfIterations);case 2:return r=e.sent,e.abrupt("return",r);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return A.apply(this,arguments)})},{key:"decryptString002",value:(l=ao(o.a.mark((function e(t,n,r){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.crypto.aes256CbcDecrypt(t,r,n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return l.apply(this,arguments)})},{key:"encryptString002",value:(u=ao(o.a.mark((function e(t,n,r){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.crypto.aes256CbcEncrypt(t,r,n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return u.apply(this,arguments)})},{key:"encryptTextParams",value:(c=ao(o.a.mark((function e(t,n,r,i,a){var s,c,u,l,A;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.crypto.generateRandomKey(Ha.EncryptionIvLength);case 2:return s=e.sent,e.next=5,this.encryptString002(t,n,s);case 5:return c=e.sent,u=[a,i,s,c].join(":"),e.next=9,this.crypto.hmac256(u,r);case 9:return l=e.sent,A=[a,l,i,s,c].join(":"),e.abrupt("return",A);case 12:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r,i){return c.apply(this,arguments)})},{key:"decryptTextParams",value:(s=ao(o.a.mark((function e(t,n,r,i,a,s){var c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r){e.next=2;break}throw"Attempting to decryptTextParams with null encryptionKey";case 2:return e.next=4,this.crypto.hmac256(t,s);case 4:if(c=e.sent,!1!==this.crypto.timingSafeEqual(a,c)){e.next=8;break}return console.error("Auth hash does not match, returning null."),e.abrupt("return",null);case 8:return e.abrupt("return",this.decryptString002(n,r,i));case 9:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r,i,a){return s.apply(this,arguments)})},{key:"generateEncryptedParameters",value:(a=ao(o.a.mark((function e(t,n,r){var i,a,s,c,u;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n!==et.a.DecryptedBareObject&&n!==et.a.DecryptedBase64String){e.next=2;break}return e.abrupt("return",co(Ao(d.prototype),"generateEncryptedParameters",this).call(this,t,n,r));case 2:if(n===et.a.EncryptedString){e.next=4;break}throw"Unsupport format for generateEncryptedParameters ".concat(n);case 4:if(r&&r.itemsKey){e.next=6;break}throw"Attempting to generateEncryptedParameters with no itemsKey.";case 6:return e.next=8,this.crypto.generateRandomKey(2*Ha.EncryptionKeyLength);case 8:return i=e.sent,e.next=11,this.encryptTextParams(i,r.itemsKey,r.dataAuthenticationKey,t.uuid,r.version);case 11:return a=e.sent,e.next=14,this.firstHalfOfKey(i);case 14:return s=e.sent,e.next=17,this.secondHalfOfKey(i);case 17:return c=e.sent,e.next=20,this.encryptTextParams(JSON.stringify(t.content),s,c,t.uuid,r.version);case 20:return u=e.sent,e.abrupt("return",Object(E.c)({uuid:t.uuid,items_key_id:r instanceof wt?r.uuid:void 0,content:u,enc_item_key:a}));case 22:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return a.apply(this,arguments)})},{key:"generateDecryptedParameters",value:(i=ao(o.a.mark((function e(t,n){var r,i,a,s,c,u,l,A,f;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((r=t.format)!==et.a.DecryptedBareObject&&r!==et.a.DecryptedBase64String){e.next=3;break}return e.abrupt("return",co(Ao(d.prototype),"generateDecryptedParameters",this).call(this,t,n));case 3:if(t.enc_item_key){e.next=6;break}return console.error("Missing item encryption key, skipping decryption."),e.abrupt("return",t);case 6:if(n&&n.itemsKey){e.next=8;break}throw"Attempting to generateDecryptedParameters with no itemsKey.";case 8:return i=t.enc_item_key,a=this.encryptionComponentsFromString002(i,n.itemsKey,n.dataAuthenticationKey),e.next=12,this.decryptTextParams(a.ciphertextToAuth,a.contentCiphertext,a.encryptionKey,a.iv,a.authHash,a.authKey);case 12:if(s=e.sent){e.next=16;break}return console.error("Error decrypting item_key parameters",t),e.abrupt("return",Object(E.a)(t,{errorDecrypting:!0,errorDecryptingValueChanged:!t.errorDecrypting}));case 16:return e.next=18,this.firstHalfOfKey(s);case 18:return c=e.sent,e.next=21,this.secondHalfOfKey(s);case 21:return u=e.sent,l=this.encryptionComponentsFromString002(t.contentString,c,u),e.next=25,this.decryptTextParams(l.ciphertextToAuth,l.contentCiphertext,l.encryptionKey,l.iv,l.authHash,l.authKey);case 25:if(A=e.sent){e.next=30;break}return e.abrupt("return",Object(E.a)(t,{errorDecrypting:!0,errorDecryptingValueChanged:!t.errorDecrypting}));case 30:return e.prev=30,e.t0=JSON,e.next=34,this.crypto.base64Decode(l.authParams);case 34:e.t1=e.sent,f=e.t0.parse.call(e.t0,e.t1),e.next=40;break;case 38:e.prev=38,e.t2=e.catch(30);case 40:return e.abrupt("return",Object(E.a)(t,{content:JSON.parse(A),items_key_id:void 0,enc_item_key:void 0,auth_params:f,errorDecrypting:!1,errorDecryptingValueChanged:!0===t.errorDecrypting,waitingForKey:!1}));case 41:case"end":return e.stop()}}),e,this,[[30,38]])}))),function(e,t){return i.apply(this,arguments)})},{key:"deriveKey",value:(r=ao(o.a.mark((function e(t,n,r){var i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.crypto.pbkdf2(t,n,r,Ha.PbkdfOutputLength);case 2:return i=e.sent,e.next=5,this.splitKey(i,3);case 5:return a=e.sent,e.next=8,qi.Create({serverPassword:a[0],masterKey:a[1],dataAuthenticationKey:a[2],version:this.version});case 8:return s=e.sent,e.abrupt("return",s);case 10:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"encryptionComponentsFromString002",value:function(e,t,n){var r=e.split(":");return{encryptionVersion:r[0],authHash:r[1],uuid:r[2],iv:r[3],contentCiphertext:r[4],authParams:r[5],ciphertextToAuth:[r[0],r[2],r[3],r[4]].join(":"),encryptionKey:t,authKey:n}}},{key:"version",get:function(){return At.a.V002}}])&&so(t.prototype,n),d}(no);function ho(e){return(ho="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function po(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function go(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){po(a,r,i,o,s,"next",e)}function s(e){po(a,r,i,o,s,"throw",e)}o(void 0)}))}}function yo(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function vo(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function mo(e,t){return(mo=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function bo(e,t){return!t||"object"!==ho(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Io(e){return(Io=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var wo=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&mo(e,t)}(c,e);var t,n,r,i,a,s=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Io(e);if(t){var i=Io(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return bo(this,n)}}(c);function c(){return yo(this,c),s.apply(this,arguments)}return t=c,(n=[{key:"computeRootKey",value:(a=go(o.a.mark((function e(t,n){var r,i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=Ua.PbkdfCost,i=this.version,e.next=4,this.generateSalt(n.identifier,i,r,n.seed);case 4:return a=e.sent,e.next=7,this.deriveKey(t,a,r);case 7:return s=e.sent,e.abrupt("return",s);case 9:case"end":return e.stop()}}),e,this)}))),function(e,t){return a.apply(this,arguments)})},{key:"createRootKey",value:(i=go(o.a.mark((function e(t,n){var r,i,a,s,c,u;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.version,i=Ua.PbkdfCost,e.next=4,this.crypto.generateRandomKey(Ua.SaltSeedLength);case 4:return a=e.sent,e.next=7,this.generateSalt(t,r,i,a);case 7:return s=e.sent,e.next=10,this.deriveKey(n,s,i);case 10:return c=e.sent,u=Ta({identifier:t,pw_cost:i,pw_nonce:a,version:r}),e.abrupt("return",{key:c,keyParams:u});case 13:case"end":return e.stop()}}),e,this)}))),function(e,t){return i.apply(this,arguments)})},{key:"generateSalt",value:(r=go(o.a.mark((function e(t,n,r,i){var a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.crypto.sha256([t,"SF",n,r,i].join(":"));case 2:return a=e.sent,e.abrupt("return",a);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t,n,i){return r.apply(this,arguments)})},{key:"version",get:function(){return At.a.V003}}])&&vo(t.prototype,n),c}(fo);function Co(e){return(Co="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Bo(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Eo(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Bo(a,r,i,o,s,"next",e)}function s(e){Bo(a,r,i,o,s,"throw",e)}o(void 0)}))}}function _o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ko(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Qo(e,t,n){return(Qo="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Do(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function So(e,t){return(So=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function xo(e,t){return!t||"object"!==Co(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Do(e){return(Do=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Po,Mo=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&So(e,t)}(g,e);var t,n,r,i,a,s,c,l,A,f,h,p,d=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Do(e);if(t){var i=Do(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return xo(this,n)}}(g);function g(){return _o(this,g),d.apply(this,arguments)}return t=g,(n=[{key:"getEncryptionDisplayName",value:function(){return"XChaCha20"}},{key:"generateNewItemsKeyContent",value:(p=Eo(o.a.mark((function e(){var t,n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.crypto.generateRandomKey(Na.EncryptionKeyLength);case 2:return t=e.sent,n={itemsKey:t,version:this.version},e.abrupt("return",n);case 5:case"end":return e.stop()}}),e,this)}))),function(){return p.apply(this,arguments)})},{key:"generateSalt004",value:(h=Eo(o.a.mark((function e(t,n){var r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.crypto.sha256([t,n].join(":"));case 2:return r=e.sent,e.abrupt("return",Object(u.I)(r,Na.ArgonSaltLength));case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return h.apply(this,arguments)})},{key:"computeRootKey",value:(f=Eo(o.a.mark((function e(t,n){var r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.generateSalt004(n.identifier,n.seed);case 2:return r=e.sent,e.next=5,this.deriveKey(t,r,Na.ArgonIterations);case 5:return i=e.sent,e.abrupt("return",i);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t){return f.apply(this,arguments)})},{key:"createRootKey",value:(A=Eo(o.a.mark((function e(t,n){var r,i,a,s,c,u;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.version,i=Na.ArgonIterations,e.next=4,this.crypto.generateRandomKey(Na.ArgonSaltSeedLength);case 4:return a=e.sent,e.next=7,this.generateSalt004(t,a);case 7:return s=e.sent,e.next=10,this.deriveKey(n,s,i);case 10:return c=e.sent,u=Ta({identifier:t,pw_cost:i,pw_nonce:a,version:r}),e.abrupt("return",{key:c,keyParams:u});case 13:case"end":return e.stop()}}),e,this)}))),function(e,t){return A.apply(this,arguments)})},{key:"encryptString004",value:(l=Eo(o.a.mark((function e(t,n,r,i){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r){e.next=2;break}throw"encryptString null nonce";case 2:if(n){e.next=4;break}throw"encryptString null rawKey";case 4:return e.abrupt("return",this.crypto.xchacha20Encrypt(t,r,n,JSON.stringify(i)));case 5:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return l.apply(this,arguments)})},{key:"decryptString004",value:(c=Eo(o.a.mark((function e(t,n,r,i){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.crypto.xchacha20Decrypt(t,r,n,JSON.stringify(i)));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return c.apply(this,arguments)})},{key:"generateEncryptedProtocolString",value:(s=Eo(o.a.mark((function e(t,n,r){var i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.crypto.generateRandomKey(Na.EncryptionNonceLength);case 2:return i=e.sent,a=this.version,e.next=6,this.encryptString004(t,n,i,{u:r,v:a});case 6:return s=e.sent,c=[a,i,s].join(":"),e.abrupt("return",c);case 9:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return s.apply(this,arguments)})},{key:"generateEncryptedParameters",value:(a=Eo(o.a.mark((function e(t,n,r){var i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n!==et.a.DecryptedBareObject&&n!==et.a.DecryptedBase64String){e.next=2;break}return e.abrupt("return",Qo(Do(g.prototype),"generateEncryptedParameters",this).call(this,t,n,r));case 2:if(n===et.a.EncryptedString){e.next=4;break}throw"Unsupport format for generateEncryptedParameters ".concat(n);case 4:if(t.uuid){e.next=6;break}throw"payload.uuid cannot be null";case 6:if(r&&r.itemsKey){e.next=8;break}throw"Attempting to generateEncryptedParameters with no itemsKey.";case 8:return e.next=10,this.crypto.generateRandomKey(Na.EncryptionKeyLength);case 10:return i=e.sent,a=JSON.stringify(t.content),e.next=14,this.generateEncryptedProtocolString(a,i,t.uuid);case 14:return s=e.sent,e.next=17,this.generateEncryptedProtocolString(i,r.itemsKey,t.uuid);case 17:return c=e.sent,e.abrupt("return",Object(E.c)({uuid:t.uuid,items_key_id:r instanceof wt?r.uuid:void 0,content:s,enc_item_key:c}));case 19:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return a.apply(this,arguments)})},{key:"generateDecryptedParameters",value:(i=Eo(o.a.mark((function e(t,n){var r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((r=t.format)!==et.a.DecryptedBareObject&&r!==et.a.DecryptedBase64String){e.next=3;break}return e.abrupt("return",Qo(Do(g.prototype),"generateDecryptedParameters",this).call(this,t,n));case 3:if(t.uuid){e.next=5;break}throw"encryptedParameters.uuid cannot be null";case 5:if(n&&n.itemsKey){e.next=7;break}throw"Attempting to generateDecryptedParameters with no itemsKey.";case 7:return i=this.deconstructEncryptedPayloadString(t.enc_item_key),e.next=10,this.decryptString004(i.ciphertext,n.itemsKey,i.nonce,{u:t.uuid,v:i.version});case 10:if(a=e.sent){e.next=14;break}return console.error("Error decrypting itemKey parameters",t),e.abrupt("return",Object(E.a)(t,{errorDecrypting:!0,errorDecryptingValueChanged:!t.errorDecrypting}));case 14:return s=this.deconstructEncryptedPayloadString(t.contentString),e.next=17,this.decryptString004(s.ciphertext,a,s.nonce,{u:t.uuid,v:s.version});case 17:if(c=e.sent){e.next=22;break}return e.abrupt("return",Object(E.a)(t,{errorDecrypting:!0,errorDecryptingValueChanged:!t.errorDecrypting}));case 22:return e.abrupt("return",Object(E.a)(t,{content:JSON.parse(c),items_key_id:void 0,enc_item_key:void 0,errorDecrypting:!1,errorDecryptingValueChanged:!0===t.errorDecrypting,waitingForKey:!1}));case 23:case"end":return e.stop()}}),e,this)}))),function(e,t){return i.apply(this,arguments)})},{key:"deconstructEncryptedPayloadString",value:function(e){var t=e.split(":");return{version:t[0],nonce:t[1],ciphertext:t[2]}}},{key:"deriveKey",value:(r=Eo(o.a.mark((function e(t,n,r){var i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.crypto.argon2(t,n,r,Na.ArgonMemLimit,Na.ArgonOutputKeyBytes);case 2:return i=e.sent,a=this.splitKey(i,2),s=a[0],c=a[1],e.abrupt("return",qi.Create({masterKey:s,serverPassword:c,version:this.version}));case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"version",get:function(){return At.a.V004}}])&&ko(t.prototype,n),g}(wo);function Fo(e){return(Fo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Oo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var n=[],r=!0,i=!1,a=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){i=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}return n}}(e,t)||To(e,t)||function(){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 Ro(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=To(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function To(e,t){if(e){if("string"==typeof e)return jo(e,t);var n=Object.prototype.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)?jo(e,t):void 0}}function jo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Ho(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Uo(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function No(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Uo(a,r,i,o,s,"next",e)}function s(e){Uo(a,r,i,o,s,"throw",e)}o(void 0)}))}}function Lo(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Ko(e,t,n){return(Ko="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Jo(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function Go(e,t){return(Go=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function $o(e,t){return!t||"object"!==Fo(t)&&"function"!=typeof t?Yo(e):t}function Yo(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Jo(e){return(Jo=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}!function(e){e[e.RootKeyNone=0]="RootKeyNone",e[e.RootKeyOnly=1]="RootKeyOnly",e[e.RootKeyPlusWrapper=2]="RootKeyPlusWrapper",e[e.WrapperOnly=3]="WrapperOnly"}(Po||(Po={}));var Vo=At.a.V003,zo=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Go(e,t)}(ne,e);var t,n,r,i,a,l,A,f,h,d,g,y,v,m,b,I,w,C,k,Q,S,x,D,P,M,F,O,R,T,j,H,U,N,L,K,G,$,Y,J,V,z,q,W,X,Z,ee,te=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Jo(e);if(t){var i=Jo(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return $o(this,n)}}(ne);function ne(e,t,n,r,i){var a;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,ne),(a=te.call(this)).operators={},a.keyMode=Po.RootKeyNone,a.keyObservers=[],a.itemManager=e,a.modelManager=t,a.deviceInterface=n,a.storageService=r,a.crypto=i,Object(u.r)()?p.SetGenerators(a.crypto.generateUUID,void 0):p.SetGenerators(a.crypto.generateUUID,a.crypto.generateUUIDSync),Object.defineProperty(Yo(a),"rootKey",{enumerable:!1,writable:!0}),a.removeItemsObserver=a.itemManager.addObserver([B.a.ItemsKey],(function(e,t){t.length>0&&a.decryptErroredItems()})),a}return t=ne,(n=[{key:"deinit",value:function(){this.itemManager=void 0,this.modelManager=void 0,this.deviceInterface=void 0,this.storageService=void 0,this.crypto.deinit(),this.crypto=void 0,this.operators={},this.keyObservers.length=0,this.removeItemsObserver(),this.removeItemsObserver=null,this.rootKey=void 0,Ko(Jo(ne.prototype),"deinit",this).call(this)}},{key:"initialize",value:(ee=No(o.a.mark((function e(){var t,n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getWrappedRootKey();case 2:return t=e.sent,e.next=5,this.getAccountKeyParams();case 5:return n=e.sent,e.next=8,this.hasRootKeyWrapper();case 8:if(r=e.sent,i=!Object(u.p)(t)||!Object(u.p)(n),!r||!i){e.next=14;break}this.keyMode=Po.RootKeyPlusWrapper,e.next=27;break;case 14:if(!r||i){e.next=18;break}this.keyMode=Po.WrapperOnly,e.next=27;break;case 18:if(r||!i){e.next=22;break}this.keyMode=Po.RootKeyOnly,e.next=27;break;case 22:if(r||i){e.next=26;break}this.keyMode=Po.RootKeyNone,e.next=27;break;case 26:throw"Invalid key mode condition";case 27:if(this.keyMode!==Po.RootKeyOnly){e.next=33;break}return e.next=30,this.getRootKeyFromKeychain();case 30:return this.rootKey=e.sent,e.next=33,this.notifyObserversOfKeyChange();case 33:case"end":return e.stop()}}),e,this)}))),function(){return ee.apply(this,arguments)})},{key:"getDefaultOperatorEncryptionDisplayName",value:function(){return this.defaultOperator().getEncryptionDisplayName()}},{key:"getLatestVersion",value:function(){return At.a.V004}},{key:"hasAccount",value:function(){switch(this.keyMode){case Po.RootKeyNone:case Po.WrapperOnly:return!1;case Po.RootKeyOnly:case Po.RootKeyPlusWrapper:return!0;default:throw Error("Unhandled keyMode value '".concat(this.keyMode,"'."))}}},{key:"getUserVersion",value:(Z=No(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getAccountKeyParams();case 2:return t=e.sent,e.abrupt("return",t&&t.version);case 4:case"end":return e.stop()}}),e,this)}))),function(){return Z.apply(this,arguments)})},{key:"upgradeAvailable",value:(X=No(o.a.mark((function e(){var t,n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.accountUpgradeAvailable();case 2:return t=e.sent,e.next=5,this.passcodeUpgradeAvailable();case 5:return n=e.sent,e.abrupt("return",t||n);case 7:case"end":return e.stop()}}),e,this)}))),function(){return X.apply(this,arguments)})},{key:"accountUpgradeAvailable",value:(W=No(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getUserVersion();case 2:if(t=e.sent){e.next=5;break}return e.abrupt("return",!1);case 5:return e.abrupt("return",t!==this.getLatestVersion());case 6:case"end":return e.stop()}}),e,this)}))),function(){return W.apply(this,arguments)})},{key:"passcodeUpgradeAvailable",value:(q=No(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getRootKeyWrapperKeyParams();case 2:if(t=e.sent){e.next=5;break}return e.abrupt("return",!1);case 5:return e.abrupt("return",t.version!==this.getLatestVersion());case 6:case"end":return e.stop()}}),e,this)}))),function(){return q.apply(this,arguments)})},{key:"platformSupportsKeyDerivation",value:function(e){return Object(At.b)(e.version,At.a.V004)>=0||!!Object(u.t)()||Object(u.r)()}},{key:"supportedVersions",value:function(){return[At.a.V001,At.a.V002,At.a.V003,At.a.V004]}},{key:"isVersionNewerThanLibraryVersion",value:function(e){var t=this.getLatestVersion();return 1===Object(At.b)(e,t)}},{key:"isProtocolVersionOutdated",value:function(e){var t,n=(Ho(t={},At.a.V001,Date.parse("2018-01-01")),Ho(t,At.a.V002,Date.parse("2020-01-01")),t)[e];return!!n&&(new Date).getTime()>n}},{key:"costMinimumForVersion",value:function(e){if(Object(At.b)(e,At.a.V003)>=0)throw"Cost minimums only apply to versions <= 002";if(e===At.a.V001)return ja.PbkdfMinCost;if(e===At.a.V002)return Ha.PbkdfMinCost;throw"Invalid version for cost minimum: ".concat(e)}},{key:"createOperatorForLatestVersion",value:function(){return this.createOperatorForVersion(this.getLatestVersion())}},{key:"createOperatorForVersion",value:function(e){if(e===At.a.V001)return new no(this.crypto);if(e===At.a.V002)return new fo(this.crypto);if(e===At.a.V003)return new wo(this.crypto);if(e===At.a.V004)return new Mo(this.crypto);if(e===At.a.V000Base64Decrypted)return this.createOperatorForLatestVersion();throw"Unable to find operator for version ".concat(e)}},{key:"operatorForVersion",value:function(e){var t=e,n=this.operators[t];return n||(n=this.createOperatorForVersion(e),this.operators[t]=n),n}},{key:"defaultOperator",value:function(){return this.operatorForVersion(this.getLatestVersion())}},{key:"computeRootKey",value:(z=No(o.a.mark((function e(t,n){var r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.version,i=this.operatorForVersion(r),e.abrupt("return",i.computeRootKey(t,n));case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return z.apply(this,arguments)})},{key:"createRootKey",value:(V=No(o.a.mark((function e(t,n){var r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.defaultOperator(),e.abrupt("return",r.createRootKey(t,n));case 2:case"end":return e.stop()}}),e,this)}))),function(e,t){return V.apply(this,arguments)})},{key:"payloadContentFormatForIntent",value:function(e,t){if(t){if(e===Ft.a.Sync||e===Ft.a.FileEncrypted||e===Ft.a.FilePreferEncrypted||e===Ft.a.LocalStorageEncrypted||e===Ft.a.LocalStoragePreferEncrypted)return et.a.EncryptedString;throw"Unhandled encrypted case in protocolService.payloadContentFormatForIntent."}if(e===Ft.a.LocalStorageDecrypted||e===Ft.a.LocalStoragePreferEncrypted||e===Ft.a.FileDecrypted||e===Ft.a.FilePreferEncrypted)return et.a.DecryptedBareObject;if(e===Ft.a.SyncDecrypted)return et.a.DecryptedBase64String;throw"Unhandled decrypted case in protocolService.payloadContentFormatForIntent."}},{key:"payloadByEncryptingPayload",value:(J=No(o.a.mark((function e(t,n,r){var i,a,s,c,l;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.errorDecrypting){e.next=2;break}return e.abrupt("return",t);case 2:if(!t.deleted){e.next=4;break}return e.abrupt("return",t);case 4:if(!Object(u.p)(n)){e.next=6;break}throw"Attempting to encrypt payload with null intent";case 6:if(r||Object(Ft.c)(n)){e.next=10;break}return e.next=9,this.keyToUseForEncryptionOfPayload(t,n);case 9:r=e.sent;case 10:if(r||!Object(Ft.b)(n)){e.next=12;break}throw Error("Attempting to generate encrypted payload with no key.");case 12:if(t.format===et.a.DecryptedBareObject){e.next=14;break}throw"Attempting to encrypt already encrypted payload.";case 14:if(t.content){e.next=16;break}throw"Attempting to encrypt payload with no content.";case 16:if(t.uuid){e.next=18;break}throw"Attempting to encrypt payload with no uuid.";case 18:return i=r?r.version:this.getLatestVersion(),a=this.payloadContentFormatForIntent(n,r),s=this.operatorForVersion(i),e.next=23,s.generateEncryptedParameters(t,a,r);case 23:if(c=e.sent){e.next=26;break}throw"Unable to generate encryption parameters";case 26:return l=Object(E.d)(t,n,c),e.abrupt("return",l);case 28:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return J.apply(this,arguments)})},{key:"payloadsByEncryptingPayloads",value:(Y=No(o.a.mark((function e(t,n){var r,i,a,s,c,l;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=[],i=Ro(t),e.prev=2,i.s();case 4:if((a=i.n()).done){e.next=13;break}return s=a.value,c=Object(u.o)(n)?n(s):n,e.next=9,this.payloadByEncryptingPayload(s,c);case 9:l=e.sent,r.push(l);case 11:e.next=4;break;case 13:e.next=18;break;case 15:e.prev=15,e.t0=e.catch(2),i.e(e.t0);case 18:return e.prev=18,i.f(),e.finish(18);case 21:return e.abrupt("return",r);case 22:case"end":return e.stop()}}),e,this,[[2,15,18,21]])}))),function(e,t){return Y.apply(this,arguments)})},{key:"payloadByDecryptingPayload",value:($=No(o.a.mark((function e(t,n){var r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.content){e.next=2;break}throw"Attempting to decrypt payload that has no content.";case 2:if((r=t.format)!==et.a.DecryptedBareObject){e.next=5;break}return e.abrupt("return",t);case 5:if(n||r!==et.a.EncryptedString){e.next=11;break}return e.next=8,this.keyToUseForDecryptionOfPayload(t);case 8:if(n=e.sent){e.next=11;break}return e.abrupt("return",Object(E.e)(t,{waitingForKey:!0,errorDecrypting:!0}));case 11:return i=t.version,a=this.operatorForVersion(i),s=Object(E.c)(t),e.next=16,a.generateDecryptedParameters(s,n);case 16:return c=e.sent,e.abrupt("return",Object(E.e)(t,c));case 18:case"end":return e.stop()}}),e,this)}))),function(e,t){return $.apply(this,arguments)})},{key:"payloadsByDecryptingPayloads",value:(G=No(o.a.mark((function e(t,n){var r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=[],i=Ro(t),e.prev=2,i.s();case 4:if((a=i.n()).done){e.next=29;break}if(s=a.value){e.next=9;break}return r.push(s),e.abrupt("continue",27);case 9:if(!0!==s.deleted||!Object(u.p)(s.content)){e.next=12;break}return r.push(s),e.abrupt("continue",27);case 12:if(Object(u.s)(s.content)){e.next=16;break}return r.push(s),e.abrupt("continue",27);case 16:return e.prev=16,e.next=19,this.payloadByDecryptingPayload(s,n);case 19:c=e.sent,r.push(c),e.next=27;break;case 23:e.prev=23,e.t0=e.catch(16),r.push(Object(E.e)(s,{errorDecrypting:!0,errorDecryptingValueChanged:!s.errorDecrypting})),console.error("Error decrypting payload",s,e.t0);case 27:e.next=4;break;case 29:e.next=34;break;case 31:e.prev=31,e.t1=e.catch(2),i.e(e.t1);case 34:return e.prev=34,i.f(),e.finish(34);case 37:return e.abrupt("return",r);case 38:case"end":return e.stop()}}),e,this,[[2,31,34,37],[16,23]])}))),function(e,t){return G.apply(this,arguments)})},{key:"decryptErroredItems",value:(K=No(o.a.mark((function e(){var t,n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(0!==(t=this.itemManager.invalidItems).length){e.next=3;break}return e.abrupt("return");case 3:return n=t.map((function(e){return e.payloadRepresentation()})),e.next=6,this.payloadsByDecryptingPayloads(n);case 6:return r=e.sent,e.next=9,this.modelManager.emitPayloads(r,_.a.LocalChanged);case 9:case"end":return e.stop()}}),e,this)}))),function(){return K.apply(this,arguments)})},{key:"payloadsByDecryptingBackupFile",value:(L=No(o.a.mark((function e(t,n){var r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=t.keyParams||t.auth_params,i=t.items,a=i.map((function(e){return Object(E.f)(e,_.a.FileImport)})),!r){e.next=12;break}return e.next=6,this.computeRootKey(n,r);case 6:return c=e.sent,e.next=9,this.payloadsByDecryptingPayloads(a,c);case 9:s=e.sent,e.next=13;break;case 12:s=a;case 13:return e.abrupt("return",s);case 14:case"end":return e.stop()}}),e,this)}))),function(e,t){return L.apply(this,arguments)})},{key:"createKeyParams",value:function(e){return e.version||(e.version=At.a.V002),Ta(e)}},{key:"createBackupFile",value:(N=No(o.a.mark((function e(t){var n,r,i,a,s,c,u,l,A,f,h,p,d=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=d.length>1&&void 0!==d[1]?d[1]:Ft.a.FilePreferEncrypted,r=d.length>2&&void 0!==d[2]&&d[2],i=t||this.itemManager.items,!r||0!==i.length){e.next=5;break}return e.abrupt("return",void 0);case 5:a=[],s=Ro(i),e.prev=7,s.s();case 9:if((c=s.n()).done){e.next=22;break}if(!(u=c.value).errorDecrypting){e.next=15;break}a.push(u.payload),e.next=20;break;case 15:return l=Object(E.f)(u.payload,_.a.FileImport),e.next=18,this.payloadByEncryptingPayload(l,n);case 18:A=e.sent,a.push(A);case 20:e.next=9;break;case 22:e.next=27;break;case 24:e.prev=24,e.t0=e.catch(7),s.e(e.t0);case 27:return e.prev=27,s.f(),e.finish(27);case 30:return f={items:a.map((function(e){return e.ejected()}))},e.next=33,this.getRootKeyParams();case 33:return(h=e.sent)&&n!==Ft.a.FileDecrypted&&(f.keyParams=h.getPortableValue()),p=2,e.abrupt("return",JSON.stringify(f,null,p));case 37:case"end":return e.stop()}}),e,this,[[7,24,27,30]])}))),function(e){return N.apply(this,arguments)})},{key:"onKeyStatusChange",value:function(e){var t=this;return this.keyObservers.push(e),function(){Object(u.B)(t.keyObservers,e)}}},{key:"notifyObserversOfKeyChange",value:(U=No(o.a.mark((function e(){var t,n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=Ro(this.keyObservers),e.prev=1,t.s();case 3:if((n=t.n()).done){e.next=9;break}return r=n.value,e.next=7,r();case 7:e.next=3;break;case 9:e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),t.e(e.t0);case 14:return e.prev=14,t.f(),e.finish(14);case 17:case"end":return e.stop()}}),e,this,[[1,11,14,17]])}))),function(){return U.apply(this,arguments)})},{key:"getRootKeyFromKeychain",value:(H=No(o.a.mark((function e(){var t,n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.deviceInterface.getKeychainValue();case 2:if(t=e.sent,!Object(u.p)(t)){e.next=5;break}return e.abrupt("return",void 0);case 5:return e.next=7,qi.Create(t);case 7:return n=e.sent,e.abrupt("return",n);case 9:case"end":return e.stop()}}),e,this)}))),function(){return H.apply(this,arguments)})},{key:"saveRootKeyToKeychain",value:(j=No(o.a.mark((function e(){var t,n=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!Object(u.p)(this.rootKey)){e.next=2;break}throw"Attempting to non-existent root key to the keychain.";case 2:if(this.keyMode===Po.RootKeyOnly){e.next=4;break}throw"Should not be persisting wrapped key to keychain.";case 4:return t=this.rootKey.getPersistableValue(),e.abrupt("return",this.executeCriticalFunction((function(){return n.deviceInterface.setKeychainValue(t)})));case 6:case"end":return e.stop()}}),e,this)}))),function(){return j.apply(this,arguments)})},{key:"hasRootKeyWrapper",value:(T=No(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getRootKeyWrapperKeyParams();case 2:return t=e.sent,e.abrupt("return",!Object(u.p)(t));case 4:case"end":return e.stop()}}),e,this)}))),function(){return T.apply(this,arguments)})},{key:"hasPasscode",value:function(){return this.keyMode===Po.WrapperOnly||this.keyMode===Po.RootKeyPlusWrapper}},{key:"rootKeyNeedsUnwrapping",value:(R=No(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.hasRootKeyWrapper();case 2:if(e.t0=e.sent,!e.t0){e.next=5;break}e.t0=Object(u.p)(this.rootKey);case 5:return e.abrupt("return",e.t0);case 6:case"end":return e.stop()}}),e,this)}))),function(){return R.apply(this,arguments)})},{key:"getRootKeyWrapperKeyParams",value:(O=No(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageService.getValue(_t.RootKeyWrapperKeyParams,Pt.Nonwrapped);case 2:if(t=e.sent){e.next=5;break}return e.abrupt("return",void 0);case 5:return e.abrupt("return",this.createKeyParams(t));case 6:case"end":return e.stop()}}),e,this)}))),function(){return O.apply(this,arguments)})},{key:"getWrappedRootKey",value:(F=No(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.storageService.getValue(_t.WrappedRootKey,Pt.Nonwrapped));case 1:case"end":return e.stop()}}),e,this)}))),function(){return F.apply(this,arguments)})},{key:"getRootKeyParams",value:(M=No(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.keyMode!==Po.WrapperOnly){e.next=4;break}return e.abrupt("return",this.getRootKeyWrapperKeyParams());case 4:if(this.keyMode!==Po.RootKeyOnly&&this.keyMode!==Po.RootKeyPlusWrapper){e.next=8;break}return e.abrupt("return",this.getAccountKeyParams());case 8:if(this.keyMode!==Po.RootKeyNone){e.next=12;break}return e.abrupt("return",void 0);case 12:throw"Unhandled key mode for getRootKeyParams ".concat(this.keyMode);case 13:case"end":return e.stop()}}),e,this)}))),function(){return M.apply(this,arguments)})},{key:"getAccountKeyParams",value:(P=No(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageService.getValue(_t.RootKeyParams,Pt.Nonwrapped);case 2:if(t=e.sent){e.next=5;break}return e.abrupt("return",void 0);case 5:return e.abrupt("return",this.createKeyParams(t));case 6:case"end":return e.stop()}}),e,this)}))),function(){return P.apply(this,arguments)})},{key:"validateWrappingKey",value:(D=No(o.a.mark((function e(t){var n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getWrappedRootKey();case 2:if(n=e.sent,this.keyMode!==Po.WrapperOnly){e.next=7;break}return e.abrupt("return",this.storageService.canDecryptWithKey(t));case 7:if(this.keyMode!==Po.RootKeyOnly&&this.keyMode!==Po.RootKeyPlusWrapper){e.next=15;break}return r=Object(E.e)(n),e.next=11,this.payloadByDecryptingPayload(r,t);case 11:return i=e.sent,e.abrupt("return",!i.errorDecrypting);case 15:throw"Unhandled case in validateWrappingKey";case 16:case"end":return e.stop()}}),e,this)}))),function(e){return D.apply(this,arguments)})},{key:"computeWrappingKey",value:(x=No(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getRootKeyWrapperKeyParams();case 2:return n=e.sent,e.next=5,this.computeRootKey(t,n);case 5:return r=e.sent,e.abrupt("return",r);case 7:case"end":return e.stop()}}),e,this)}))),function(e){return x.apply(this,arguments)})},{key:"unwrapRootKey",value:(S=No(o.a.mark((function e(t){var n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.keyMode!==Po.WrapperOnly){e.next=3;break}return this.rootKey=t,e.abrupt("return");case 3:if(this.keyMode===Po.RootKeyPlusWrapper){e.next=5;break}throw"Invalid key mode condition for unwrapping.";case 5:return e.next=7,this.getWrappedRootKey();case 7:return n=e.sent,r=Object(E.e)(n),e.next=11,this.payloadByDecryptingPayload(r,t);case 11:if(!(i=e.sent).errorDecrypting){e.next=16;break}throw Error("Unable to decrypt root key with provided wrapping key.");case 16:return e.next=18,qi.Create(i.contentObject,i.uuid);case 18:return this.rootKey=e.sent,e.next=21,this.notifyObserversOfKeyChange();case 21:case"end":return e.stop()}}),e,this)}))),function(e){return S.apply(this,arguments)})},{key:"setNewRootKeyWrapper",value:(Q=No(o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.keyMode!==Po.RootKeyNone){e.next=4;break}this.keyMode=Po.WrapperOnly,e.next=9;break;case 4:if(this.keyMode!==Po.RootKeyOnly){e.next=8;break}this.keyMode=Po.RootKeyPlusWrapper,e.next=9;break;case 8:throw Error("Attempting to set wrapper on already wrapped key.");case 9:return e.next=11,this.deviceInterface.clearKeychainValue();case 11:if(this.keyMode!==Po.WrapperOnly&&this.keyMode!==Po.RootKeyPlusWrapper){e.next=26;break}if(this.keyMode!==Po.WrapperOnly){e.next=18;break}return this.rootKey=t,e.next=16,this.reencryptItemsKeys();case 16:e.next=20;break;case 18:return e.next=20,this.wrapAndPersistRootKey(t);case 20:return e.next=22,this.storageService.setValue(_t.RootKeyWrapperKeyParams,n.getPortableValue(),Pt.Nonwrapped);case 22:return e.next=24,this.notifyObserversOfKeyChange();case 24:e.next=27;break;case 26:throw Error("Invalid keyMode on setNewRootKeyWrapper");case 27:case"end":return e.stop()}}),e,this)}))),function(e,t){return Q.apply(this,arguments)})},{key:"wrapAndPersistRootKey",value:(k=No(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=Object(E.e)(this.rootKey,{content:this.rootKey.getPersistableValue()}),e.next=3,this.payloadByEncryptingPayload(n,Ft.a.LocalStorageEncrypted,t);case 3:return r=e.sent,e.next=6,this.storageService.setValue(_t.WrappedRootKey,r.ejected(),Pt.Nonwrapped);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return k.apply(this,arguments)})},{key:"removeRootKeyWrapper",value:(C=No(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.keyMode===Po.WrapperOnly||this.keyMode===Po.RootKeyPlusWrapper){e.next=2;break}throw"Attempting to remove root key wrapper on unwrapped key.";case 2:return this.keyMode===Po.WrapperOnly?(this.keyMode=Po.RootKeyNone,this.rootKey=void 0):this.keyMode===Po.RootKeyPlusWrapper&&(this.keyMode=Po.RootKeyOnly),e.next=5,this.storageService.removeValue(_t.WrappedRootKey,Pt.Nonwrapped);case 5:return e.next=7,this.storageService.removeValue(_t.RootKeyWrapperKeyParams,Pt.Nonwrapped);case 7:if(this.keyMode!==Po.RootKeyOnly){e.next=10;break}return e.next=10,this.saveRootKeyToKeychain();case 10:return e.next=12,this.notifyObserversOfKeyChange();case 12:case"end":return e.stop()}}),e,this)}))),function(){return C.apply(this,arguments)})},{key:"setNewRootKey",value:(w=No(o.a.mark((function e(t,n,r){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n){e.next=2;break}throw Error("keyParams must be supplied if setting root key.");case 2:if(this.rootKey!==t){e.next=4;break}throw Error("Attempting to set root key as same current value.");case 4:if(this.keyMode!==Po.WrapperOnly){e.next=8;break}this.keyMode=Po.RootKeyPlusWrapper,e.next=16;break;case 8:if(this.keyMode!==Po.RootKeyNone){e.next=12;break}this.keyMode=Po.RootKeyOnly,e.next=16;break;case 12:if(this.keyMode!==Po.RootKeyOnly&&this.keyMode!==Po.RootKeyPlusWrapper){e.next=15;break}e.next=16;break;case 15:throw Error("Unhandled key mode for setNewRootKey ".concat(this.keyMode));case 16:return this.rootKey=t,e.next=19,this.storageService.setValue(_t.RootKeyParams,n.getPortableValue(),Pt.Nonwrapped);case 19:if(this.keyMode!==Po.RootKeyOnly){e.next=24;break}return e.next=22,this.saveRootKeyToKeychain();case 22:e.next=29;break;case 24:if(this.keyMode!==Po.RootKeyPlusWrapper){e.next=29;break}if(r){e.next=27;break}throw Error("wrappingKey must be supplied");case 27:return e.next=29,this.wrapAndPersistRootKey(r);case 29:return e.next=31,this.notifyObserversOfKeyChange();case 31:return e.next=33,this.reencryptItemsKeys();case 33:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return w.apply(this,arguments)})},{key:"getRootKey",value:(I=No(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.rootKey);case 1:case"end":return e.stop()}}),e,this)}))),function(){return I.apply(this,arguments)})},{key:"clearLocalKeyState",value:(b=No(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.deviceInterface.clearKeychainValue();case 2:return e.next=4,this.storageService.removeValue(_t.WrappedRootKey,Pt.Nonwrapped);case 4:return e.next=6,this.storageService.removeValue(_t.RootKeyWrapperKeyParams,Pt.Nonwrapped);case 6:return e.next=8,this.storageService.removeValue(_t.RootKeyParams,Pt.Nonwrapped);case 8:return this.keyMode=Po.RootKeyNone,this.rootKey=void 0,e.next=12,this.notifyObserversOfKeyChange();case 12:case"end":return e.stop()}}),e,this)}))),function(){return b.apply(this,arguments)})},{key:"validateAccountPassword",value:(m=No(o.a.mark((function e(t){var n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getRootKeyParams();case 2:return n=e.sent,e.next=5,this.computeRootKey(t,n);case 5:if(r=e.sent,!(i=r.compare(this.rootKey))){e.next=11;break}return e.abrupt("return",{valid:i,artifacts:{rootKey:r}});case 11:return e.abrupt("return",{valid:!1});case 12:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"validatePasscode",value:(v=No(o.a.mark((function e(t){var n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getRootKeyWrapperKeyParams();case 2:return n=e.sent,e.next=5,this.computeRootKey(t,n);case 5:return r=e.sent,e.next=8,this.validateWrappingKey(r);case 8:if(!(i=e.sent)){e.next=13;break}return e.abrupt("return",{valid:i,artifacts:{wrappingKey:r}});case 13:return e.abrupt("return",{valid:!1});case 14:case"end":return e.stop()}}),e,this)}))),function(e){return v.apply(this,arguments)})},{key:"contentTypeUsesRootKeyEncryption",value:function(e){return e===B.a.ItemsKey||e===B.a.EncryptedStorage}},{key:"keyToUseForEncryptionOfPayload",value:(y=No(o.a.mark((function e(t,n){var r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!Object(u.p)(n)){e.next=2;break}throw"Intent must be supplied when looking up key for encryption of item.";case 2:if(!this.contentTypeUsesRootKeyEncryption(t.content_type)){e.next=15;break}return e.next=5,this.getRootKey();case 5:if(r=e.sent){e.next=12;break}if(!Object(Ft.b)(n)){e.next=11;break}throw"Root key encryption is required but no root key is available.";case 11:return e.abrupt("return",void 0);case 12:return e.abrupt("return",r);case 15:return e.abrupt("return",this.getDefaultItemsKey());case 16:case"end":return e.stop()}}),e,this)}))),function(e,t){return y.apply(this,arguments)})},{key:"keyToUseForDecryptionOfPayload",value:(g=No(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.contentTypeUsesRootKeyEncryption(t.content_type)){e.next=2;break}return e.abrupt("return",this.getRootKey());case 2:if(!t.items_key_id){e.next=5;break}return n=this.itemsKeyForPayload(t),e.abrupt("return",n);case 5:if((r=t.version)!==this.getLatestVersion()){e.next=8;break}throw"No associated key found for item encrypted with latest protocol version.";case 8:return e.abrupt("return",this.defaultItemsKeyForItemVersion(r));case 9:case"end":return e.stop()}}),e,this)}))),function(e){return g.apply(this,arguments)})},{key:"onSyncEvent",value:(d=No(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t!==c.b.FullSyncCompleted){e.next=3;break}return e.next=3,this.handleFullSyncCompletion();case 3:if(t!==c.b.DownloadFirstSyncCompleted){e.next=6;break}return e.next=6,this.handleDownloadFirstSyncCompletion();case 6:case"end":return e.stop()}}),e,this)}))),function(e){return d.apply(this,arguments)})},{key:"handleDownloadFirstSyncCompletion",value:(h=No(o.a.mark((function e(){var t,n,r,i,a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=this.latestItemsKeys(),n=t.filter((function(e){return e.neverSynced})),r=t.find((function(e){return!e.neverSynced&&e.isDefault})),Object(u.p)(r)){e.next=9;break}return e.next=7,this.itemManager.setItemsToBeDeleted(Object(s.b)(n));case 7:e.next=20;break;case 9:return e.next=11,this.getRootKey();case 11:if(!(i=e.sent)){e.next=20;break}if(!((a=n.filter((function(e){return e.version!==i.version}))).length>0)){e.next=17;break}return e.next=17,this.itemManager.setItemsToBeDeleted(Object(s.b)(a));case 17:if(0!==this.latestItemsKeys().length){e.next=20;break}return e.next=20,this.createNewDefaultItemsKey();case 20:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"handleFullSyncCompletion",value:(f=No(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.getDefaultItemsKey()){e.next=6;break}return e.next=4,this.createNewDefaultItemsKey();case 4:if(this.keyMode!==Po.WrapperOnly){e.next=6;break}return e.abrupt("return",this.repersistAllItems());case 6:case"end":return e.stop()}}),e,this)}))),function(){return f.apply(this,arguments)})},{key:"repersistAllItems",value:(A=No(o.a.mark((function e(){var t,n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.itemManager.items,n=t.map((function(e){return Object(E.e)(e)})),e.abrupt("return",this.storageService.savePayloads(n));case 3:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"latestItemsKeys",value:function(){return this.itemManager.itemsKeys()}},{key:"itemsKeyForPayload",value:function(e){return this.latestItemsKeys().find((function(t){return t.uuid===e.items_key_id}))}},{key:"getDefaultItemsKey",value:function(){var e=this.latestItemsKeys();return 1===e.length?e[0]:e.find((function(e){return e.isDefault}))}},{key:"reencryptItemsKeys",value:(l=No(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!((t=this.latestItemsKeys()).length>0)){e.next=4;break}return e.next=4,this.itemManager.setItemsDirty(Object(s.b)(t));case 4:case"end":return e.stop()}}),e,this)}))),function(){return l.apply(this,arguments)})},{key:"defaultItemsKeyForItemVersion",value:(a=No(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.latestItemsKeys().find((function(e){return e.version===t})));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"createNewDefaultItemsKey",value:(i=No(o.a.mark((function e(){var t,n,r,i,a,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getRootKey();case 2:if(t=e.sent,n=t?t.version:this.getLatestVersion(),!(Object(At.b)(n,Vo)<=0)){e.next=16;break}return e.t0=E.e,e.next=8,p.GenerateUuid();case 8:e.t1=e.sent,e.t2=B.a.ItemsKey,e.t3=Object(s.a)({itemsKey:t.masterKey,dataAuthenticationKey:t.dataAuthenticationKey,version:n}),e.t4={uuid:e.t1,content_type:e.t2,content:e.t3},i=(0,e.t0)(e.t4),r=Qt(i),e.next=19;break;case 16:return e.next=18,this.operatorForVersion(n).createItemsKey();case 18:r=e.sent;case 19:if(!(a=this.getDefaultItemsKey())){e.next=23;break}return e.next=23,this.itemManager.changeItemsKey(a.uuid,(function(e){e.isDefault=!1}));case 23:return e.next=25,this.itemManager.insertItem(r);case 25:return c=e.sent,e.next=28,this.itemManager.changeItemsKey(c.uuid,(function(e){e.isDefault=!0}));case 28:return e.abrupt("return",c);case 29:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"changePassword",value:(r=No(o.a.mark((function e(t,n,r,i){var a,s,c,u,l,A,f,h,p,d,g=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Promise.all([this.getRootKey(),this.getRootKeyParams()]);case 2:return a=e.sent,s=Oo(a,2),c=s[0],u=s[1],l=this.getDefaultItemsKey(),e.next=9,this.computeRootKey(n,u);case 9:if(A=e.sent,c.compare(A)){e.next=12;break}return e.abrupt("return",[Error("Invalid password.")]);case 12:return e.next=14,this.createRootKey(t,r);case 14:return f=e.sent,h=f.key,p=f.keyParams,e.next=19,this.setNewRootKey(h,p,i);case 19:return e.next=21,this.createNewDefaultItemsKey();case 21:return d=e.sent,e.abrupt("return",[null,{currentServerPassword:A.serverPassword,newRootKey:h,newKeyParams:p,rollback:function(){var e=No(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,g.setNewRootKey(c,u,i);case 2:return e.next=4,Promise.all([g.itemManager.setItemToBeDeleted(d.uuid),g.itemManager.changeItem(l.uuid,(function(e){e.isDefault=!0}))]);case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()}]);case 23:case"end":return e.stop()}}),e,this)}))),function(e,t,n,i){return r.apply(this,arguments)})}])&&Lo(t.prototype,n),ne}(Ot.a);function qo(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var Wo=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.defaultContentKeyToDiffOn="text",this.textCharDiffLength=0,this.hasPreviousEntry=!1;var n=t.updated_at;Object(u.s)(n)&&(n=new Date(n)),this.payload=Object(E.b)(t,{updated_at:n})}var t,n;return t=e,(n=[{key:"setPreviousEntry",value:function(e){this.hasPreviousEntry=null!=e,this.payload.contentObject[this.defaultContentKeyToDiffOn]&&(this.textCharDiffLength=e?this.payload.contentObject[this.defaultContentKeyToDiffOn].length-e.payload.contentObject[this.defaultContentKeyToDiffOn].length:this.payload.contentObject[this.defaultContentKeyToDiffOn].length)}},{key:"operationVector",value:function(){return void 0!==this.textCharDiffLength?this.hasPreviousEntry&&0!==this.textCharDiffLength?this.textCharDiffLength<0?-1:1:0:1}},{key:"deltaSize",value:function(){return void 0!==this.textCharDiffLength?Math.abs(this.textCharDiffLength):1}},{key:"isSameAsEntry",value:function(e){if(!e)return!1;var t=Qt(this.payload),n=Qt(e.payload);return t.isItemContentEqualWith(n)}}])&&qo(t.prototype,n),e}();function Xo(e){return(Xo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Zo(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function es(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function ts(e,t){return(ts=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ns(e,t){return!t||"object"!==Xo(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function rs(e){return(rs=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var is=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ts(e,t)}(i,e);var t,n,r=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=rs(e);if(t){var i=rs(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return ns(this,n)}}(i);function i(){return Zo(this,i),r.apply(this,arguments)}return t=i,(n=[{key:"previewTitle",value:function(){return this.payload.updated_at.toLocaleString()}},{key:"previewSubTitle",value:function(){return this.hasPreviousEntry?this.textCharDiffLength<0?"".concat(-1*this.textCharDiffLength," characters removed"):this.textCharDiffLength>0?"".concat(this.textCharDiffLength," characters added"):"Title or metadata changed":"".concat(this.textCharDiffLength," characters loaded")}}])&&es(t.prototype,n),i}(Wo);function as(e){var t,n,r,i=(t={},n=B.a.Note,r=is,n in t?Object.defineProperty(t,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[n]=r,t)[e[Gr.a.ContentType]];if(!i)throw"Invalid item history class";return new i(e)}function os(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function ss(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var cs=function(){function e(t){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.entries=[],t){var n,r=function(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return os(e,t);var n=Object.prototype.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)?os(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}(t);try{for(r.s();!(n=r.n()).done;){var i=n.value;i.setPreviousEntry(this.getLastEntry()),this.entries.push(i)}}catch(e){r.e(e)}finally{r.f()}}}var t,n,r;return t=e,r=[{key:"FromJson",value:function(t){return new e(t.entries.map((function(e){return as(e.payload)})))}}],(n=[{key:"getLastEntry",value:function(){return this.entries[this.entries.length-1]}},{key:"addHistoryEntryForItem",value:function(e){var t=as(e),n=this.getLastEntry();if(t.setPreviousEntry(n),!t.isSameAsEntry(n))return this.entries.push(t),t}},{key:"clear",value:function(){this.entries.length=0}},{key:"optimize",value:function(){var e=this,t=[],n=function(e){return e.deltaSize()>15},r=function(r,i,a){if(a)t.push(r);else{var o=t.indexOf(r);-1!==o&&t.splice(o,1)}if(a&&n(r)&&-1===r.operationVector()){var s=e.entries[i-1];s&&t.push(s)}};this.entries.forEach((function(t,i){if(0===i||i===e.entries.length-1)r(t,i,!0);else{var a=n(t);r(t,i,a)}})),this.entries=this.entries.filter((function(e,n){return-1!==t.indexOf(e)}))}}])&&ss(t.prototype,n),r&&ss(t,r),e}();function us(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var ls=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.itemRevisionThreshold=60,this.content=t,this.content||(this.content={itemUUIDToItemHistoryMapping:{}})}var t,n,r;return t=e,r=[{key:"FromJson",value:function(t){if(t){var n=t.content;return Object.keys(n.itemUUIDToItemHistoryMapping).forEach((function(e){var t=n.itemUUIDToItemHistoryMapping[e];n.itemUUIDToItemHistoryMapping[e]=cs.FromJson(t)})),new e(n)}return new e}}],(n=[{key:"addEntryForPayload",value:function(e){return this.historyForItem(e.uuid).addHistoryEntryForItem(e)}},{key:"historyForItem",value:function(e){var t=this.content.itemUUIDToItemHistoryMapping[e];return t||(t=new cs,this.content.itemUUIDToItemHistoryMapping[e]=t),t}},{key:"clearItemHistory",value:function(e){this.historyForItem(e.uuid).clear()}},{key:"clearAllHistory",value:function(){this.content.itemUUIDToItemHistoryMapping={}}},{key:"setItemRevisionThreshold",value:function(e){this.itemRevisionThreshold=e}},{key:"optimizeHistoryForItem",value:function(e){var t=this.historyForItem(e);t.entries.length>this.itemRevisionThreshold&&t.optimize()}}])&&us(t.prototype,n),r&&us(t,r),e}();function As(e){return(As="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function fs(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function hs(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function ps(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){hs(a,r,i,o,s,"next",e)}function s(e){hs(a,r,i,o,s,"throw",e)}o(void 0)}))}}function ds(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function gs(e,t,n){return(gs="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=ms(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function ys(e,t){return(ys=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function vs(e,t){return!t||"object"!==As(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function ms(e){return(ms=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var bs,Is,ws,Cs=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&ys(e,t)}(h,e);var t,n,r,i,a,s,c,l,A,f=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=ms(e);if(t){var i=ms(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return vs(this,n)}}(h);function h(e,t,n,r){var i;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,h),(i=f.call(this)).contentTypes=[],i.persistable=!1,i.autoOptimize=!1,i.itemManager=e,i.storageService=t,i.contentTypes=n,i.timeout=r,i}return t=h,(n=[{key:"deinit",value:function(){this.itemManager=void 0,this.storageService=void 0,this.contentTypes.length=0,this.historySession=void 0,this.timeout=null,this.removeChangeObserver&&(this.removeChangeObserver(),this.removeChangeObserver=null),gs(ms(h.prototype),"deinit",this).call(this)}},{key:"initializeFromDisk",value:(A=ps(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageService.getValue(_t.SessionHistoryPersistable);case 2:return this.persistable=e.sent,e.next=5,this.storageService.getValue(_t.SessionHistoryRevisions).then((function(e){return ls.FromJson(e)}));case 5:return this.historySession=e.sent,e.next=8,this.storageService.getValue(_t.SessionHistoryOptimize);case 8:t=e.sent,Object(u.p)(t)?this.autoOptimize=!0:this.autoOptimize=t,this.addChangeObserver();case 11:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"addChangeObserver",value:function(){var e=this;this.removeChangeObserver=this.itemManager.addObserver(this.contentTypes,(function(t,n,r,i){var a=Object(u.f)(t,n,r);if(i!==_.a.LocalChanged){var o,s=function(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return fs(e,t);var n=Object.prototype.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)?fs(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}(a);try{for(s.s();!(o=s.n()).done;){var c=o.value;try{c.deleted||c.errorDecrypting||e.addHistoryEntryForItem(c)}catch(e){console.error("Unable to add item history entry:",e)}}}catch(e){s.e(e)}finally{s.f()}}}))}},{key:"isDiskEnabled",value:function(){return this.persistable}},{key:"isAutoOptimizeEnabled",value:function(){return this.autoOptimize}},{key:"saveToDisk",value:(l=ps(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.persistable){e.next=2;break}return e.abrupt("return");case 2:this.storageService.setValue(_t.SessionHistoryRevisions,this.historySession);case 3:case"end":return e.stop()}}),e,this)}))),function(){return l.apply(this,arguments)})},{key:"setSessionItemRevisionThreshold",value:function(e){this.historySession.setItemRevisionThreshold(e)}},{key:"addHistoryEntryForItem",value:(c=ps(o.a.mark((function e(t){var n,r,i=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=Object(E.f)(t,_.a.SessionHistory),r=this.historySession.addEntryForPayload(n),this.autoOptimize&&this.historySession.optimizeHistoryForItem(t.uuid),r&&this.persistable&&(this.saveTimeout&&(this.timeout.hasOwnProperty("cancel")?this.timeout.cancel(this.saveTimeout):clearTimeout(this.saveTimeout)),this.saveTimeout=this.timeout((function(){i.saveToDisk()}),2e3));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"historyForItem",value:function(e){return this.historySession.historyForItem(e.uuid)}},{key:"clearHistoryForItem",value:(s=ps(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.historySession.clearItemHistory(t),e.abrupt("return",this.saveToDisk());case 2:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"clearAllHistory",value:(a=ps(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.historySession.clearAllHistory(),e.abrupt("return",this.storageService.removeValue(_t.SessionHistoryRevisions));case 2:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"toggleDiskSaving",value:(i=ps(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.persistable=!this.persistable,!this.persistable){e.next=6;break}this.storageService.setValue(_t.SessionHistoryPersistable,!0),this.saveToDisk(),e.next=8;break;case 6:return this.storageService.setValue(_t.SessionHistoryPersistable,!1),e.abrupt("return",this.storageService.removeValue(_t.SessionHistoryRevisions));case 8:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"toggleAutoOptimize",value:(r=ps(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.autoOptimize=!this.autoOptimize,this.autoOptimize?this.storageService.setValue(_t.SessionHistoryOptimize,!0):this.storageService.setValue(_t.SessionHistoryOptimize,!1);case 2:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})}])&&ds(t.prototype,n),h}(Ot.a);function Bs(e){return(Bs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Es(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return _s(e,t);var n=Object.prototype.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)?_s(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function _s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function ks(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Qs(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){ks(a,r,i,o,s,"next",e)}function s(e){ks(a,r,i,o,s,"throw",e)}o(void 0)}))}}function Ss(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function xs(e,t,n){return(xs="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Ms(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function Ds(e,t){return(Ds=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Ps(e,t){return!t||"object"!==Bs(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Ms(e){return(Ms=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Fs(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}!function(e){e[e.None=0]="None",e[e.FiveMinutes=300]="FiveMinutes",e[e.OneHour=3600]="OneHour",e[e.OneWeek=604800]="OneWeek"}(ws||(ws={}));var Os,Rs=(Fs(bs={},T.AccountPassword,{label:"Account Password",prompt:"Please enter your account password."}),Fs(bs,T.LocalPasscode,{label:"Local Passcode",prompt:"Please enter your local passcode."}),bs),Ts=(Fs(Is={},R.ManageExtensions,{label:"Manage Extensions"}),Fs(Is,R.ManageBackups,{label:"Download/Import Backups"}),Fs(Is,R.ViewProtectedNotes,{label:"View Protected Notes"}),Fs(Is,R.ManagePrivileges,{label:"Manage Privileges"}),Fs(Is,R.ManagePasscode,{label:"Manage Passcode"}),Fs(Is,R.DeleteNote,{label:"Delete Notes"}),Is),js=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Ds(e,t)}(g,e);var t,n,r,i,a,c,u,l,A,f,h,p,d=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Ms(e);if(t){var i=Ms(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Ps(this,n)}}(g);function g(e,t,n,r,i,a){var o;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,g),(o=d.call(this)).availableActions=[],o.availableCredentials=[],o.itemManager=e,o.syncService=t,o.singletonManager=n,o.protocolService=r,o.storageService=i,o.sessionManager=a,o.loadDefaults(),o}return t=g,(n=[{key:"deinit",value:function(){this.itemManager=void 0,this.syncService=void 0,this.singletonManager=void 0,this.protocolService=void 0,this.storageService=void 0,this.sessionManager=void 0,xs(Ms(g.prototype),"deinit",this).call(this)}},{key:"loadDefaults",value:function(){this.availableActions=Object.keys(R).map((function(e){return R[e]})),this.availableCredentials=[T.AccountPassword,T.LocalPasscode]}},{key:"getAvailableActions",value:function(){return this.availableActions}},{key:"getAvailableCredentials",value:function(){return this.availableCredentials}},{key:"netCredentialsForAction",value:(p=Qs(o.a.mark((function e(t){var n,r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPrivileges();case 2:n=e.sent,r=n.getCredentialsForAction(t),i=[],a=Es(r),e.prev=6,a.s();case 8:if((s=a.n()).done){e.next=24;break}if((c=s.value)!==T.AccountPassword){e.next=17;break}return e.next=13,this.sessionManager.online();case 13:e.sent&&i.push(c),e.next=22;break;case 17:if(c!==T.LocalPasscode){e.next=22;break}return e.next=20,this.protocolService.hasRootKeyWrapper();case 20:e.sent&&i.push(c);case 22:e.next=8;break;case 24:e.next=29;break;case 26:e.prev=26,e.t0=e.catch(6),a.e(e.t0);case 29:return e.prev=29,a.f(),e.finish(29);case 32:return e.abrupt("return",i);case 33:case"end":return e.stop()}}),e,this,[[6,26,29,32]])}))),function(e){return p.apply(this,arguments)})},{key:"getPrivileges",value:(h=Qs(o.a.mark((function e(){var t,n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=B.a.Privileges,n=new k.a("content_type","=",t),e.abrupt("return",this.singletonManager.findOrCreateSingleton(n,t,Object(s.a)({})));case 3:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"setSessionLength",value:(f=Qs(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t,i=void 0,(i=new Date).setSeconds(i.getSeconds()+r),n=i,e.next=4,this.storageService.setValue(_t.PrivilegesExpirey,n);case 4:return e.next=6,this.storageService.setValue(_t.PrivilegesSessionLength,t);case 6:case"end":return e.stop()}var r,i}),e,this)}))),function(e){return f.apply(this,arguments)})},{key:"clearSession",value:(A=Qs(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.setSessionLength(ws.None));case 1:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"getSelectedSessionLength",value:(l=Qs(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageService.getValue(_t.PrivilegesSessionLength);case 2:if(!(t=e.sent)){e.next=7;break}return e.abrupt("return",t);case 7:return e.abrupt("return",ws.None);case 8:case"end":return e.stop()}}),e,this)}))),function(){return l.apply(this,arguments)})},{key:"getSessionExpirey",value:(u=Qs(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageService.getValue(_t.PrivilegesExpirey);case 2:if(!(t=e.sent)){e.next=7;break}return e.abrupt("return",new Date(t));case 7:return e.abrupt("return",new Date);case 8:case"end":return e.stop()}}),e,this)}))),function(){return u.apply(this,arguments)})},{key:"actionHasPrivilegesConfigured",value:(c=Qs(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.netCredentialsForAction(t);case 2:return e.t0=e.sent.length,e.abrupt("return",e.t0>0);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"actionRequiresPrivilege",value:(a=Qs(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getSessionExpirey();case 2:if(!(e.sent>new Date)){e.next=5;break}return e.abrupt("return",!1);case 5:return e.next=7,this.netCredentialsForAction(t);case 7:return n=e.sent,e.abrupt("return",n.length>0);case 9:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"authenticateAction",value:(i=Qs(o.a.mark((function e(t,n){var r,i,a,s,c,u;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.netCredentialsForAction(t);case 2:r=e.sent,i=[],a=[],s=Es(r),e.prev=6,s.s();case 8:if((c=s.n()).done){e.next=16;break}return u=c.value,e.next=12,this.verifyAuthenticationParameters(u,n[u]);case 12:e.sent?i.push(u):a.push(u);case 14:e.next=8;break;case 16:e.next=21;break;case 18:e.prev=18,e.t0=e.catch(6),s.e(e.t0);case 21:return e.prev=21,s.f(),e.finish(21);case 24:return e.abrupt("return",{success:0===a.length,successfulCredentials:i,failedCredentials:a});case 25:case"end":return e.stop()}}),e,this,[[6,18,21,24]])}))),function(e,t){return i.apply(this,arguments)})},{key:"verifyAuthenticationParameters",value:(r=Qs(o.a.mark((function e(t,n){var r,i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t!==T.AccountPassword){e.next=8;break}return e.next=3,this.protocolService.validateAccountPassword(n);case 3:return r=e.sent,i=r.valid,e.abrupt("return",i);case 8:if(t!==T.LocalPasscode){e.next=14;break}return e.next=11,this.protocolService.validatePasscode(n);case 11:return a=e.sent,s=a.valid,e.abrupt("return",s);case 14:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"displayInfoForCredential",value:function(e){return Rs[e]}},{key:"displayInfoForAction",value:function(e){return Ts[e]}},{key:"getSessionLengthOptions",value:function(){return[{value:ws.None,label:"Don't Remember"},{value:ws.FiveMinutes,label:"5 Minutes"},{value:ws.OneHour,label:"1 Hour"},{value:ws.OneWeek,label:"1 Week"}]}}])&&Ss(t.prototype,n),g}(Ot.a);function Hs(e){return(Hs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Us(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Ns(e,t);var n=Object.prototype.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)?Ns(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function Ns(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Ls(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ks(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Gs(e,t,n){return(Gs="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Js(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function $s(e,t){return($s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Ys(e,t){return!t||"object"!==Hs(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Js(e){return(Js=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}!function(e){e.CreatedAt="created_at",e.UpdatedAt="userModifiedDate",e.Title="title"}(Os||(Os={}));var Vs=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&$s(e,t)}(i,e);var t,n,r=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Js(e);if(t){var i=Js(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Ys(this,n)}}(i);function i(){var e;return Ls(this,i),(e=r.apply(this,arguments)).displaySortBy={},e.displayFilter={},e.filteredMap={},e.sortedMap={},e}return t=i,(n=[{key:"set",value:function(e){e=Array.isArray(e)?e:[e],Gs(Js(i.prototype),"set",this).call(this,e),this.filterSortElements(e)}},{key:"discard",value:function(e){e=Array.isArray(e)?e:[e],Gs(Js(i.prototype),"discard",this).call(this,e),this.filterSortElements(e)}},{key:"setDisplayOptions",value:function(e,t,n,r){var i=this.displaySortBy[e],a=this.displayFilter[e];if(!i||i.key!==t||i.dir!==n||a||r){this.displaySortBy[e]=t?{key:t,dir:n}:void 0,this.displayFilter[e]=r,this.filteredMap[e]={},this.sortedMap[e]=[];var o=this.all(e);o.length>0&&this.filterSortElements(o)}}},{key:"displayElements",value:function(e){var t=this.sortedMap[e];if(!t)throw Error("Attempting to access display elements for \n non-configured content type ".concat(e));return t.slice()}},{key:"filterSortElements",value:function(e){if(0!==Object.keys(this.displaySortBy).length){var t,n=new Set,r=Us(e);try{for(r.s();!(t=r.n()).done;){var i=t.value,a=i.content_type,o=this.displaySortBy[a];if(o){var s=this.displayFilter[a],c=this.filteredMap[a],l=this.sortedMap[a],A=!(i.deleted||!this.map[i.uuid])&&(!s||s(i)),f=c[i.uuid];if(A)if(Object(u.p)(f))l.push(i),n.add(a);else{var h=l[f],p=h[o.key],d=i[o.key];l[f]=i;var g=h.pinned!==i.pinned;Object(u.e)(p,d)&&!g||n.add(a)}else Object(u.p)(f)||(delete c[i.uuid],l[f]=void 0,n.add(a))}}}catch(e){r.e(e)}finally{r.f()}var y,v=Us(n.values());try{for(v.s();!(y=v.n()).done;){var m=y.value;this.resortContentType(m)}}catch(e){v.e(e)}finally{v.f()}}}},{key:"resortContentType",value:function(e){var t,n=this.sortedMap[e],r=this.displaySortBy[e],i=this.filteredMap[e],a=[],o=0,s=Us(n.sort((function(e,t){return function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!t)return-1;if(!n)return 1;if(!i){if(t.pinned&&n.pinned)return e(t,n,!0);if(t.pinned)return-1;if(n.pinned)return 1}var a=t[r.key]||"",o=n[r.key]||"",s=1;if("asc"===r.dir&&(s*=-1),r.key===Os.Title){if(a=a.toLowerCase(),o=o.toLowerCase(),0===a.length&&0===o.length)return 0;if(0===a.length&&0!==o.length)return 1*s;if(0!==a.length&&0===o.length)return-1*s;s*=-1}return a>o?-1*s:a<o?1*s:0}(e,t)})));try{for(s.s();!(t=s.n()).done;){var c=t.value;c&&(a.push(c),i[c.uuid]=o,o++)}}catch(e){s.e(e)}finally{s.f()}this.sortedMap[e]=a}}])&&Ks(t.prototype,n),i}(Ir);function zs(e){return(zs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function qs(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Ws(e,t);var n=Object.prototype.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)?Ws(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function Ws(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Xs(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Zs(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Xs(a,r,i,o,s,"next",e)}function s(e){Xs(a,r,i,o,s,"throw",e)}o(void 0)}))}}function ec(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function tc(e,t){return(tc=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function nc(e,t){return!t||"object"!==zs(t)&&"function"!=typeof t?rc(e):t}function rc(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function ic(e){return(ic=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var ac=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&tc(e,t)}(R,e);var t,n,r,i,a,c,l,A,f,h,g,y,v,m,b,I,w,C,Q,S,x,D,P,M,F,O=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=ic(e);if(t){var i=ic(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return nc(this,n)}}(R);function R(e){var t,n,r,i;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,R),(t=O.call(this)).observers=[],t.modelManager=e,t.createCollection(),t.unsubChangeObserver=t.modelManager.addObserver(B.a.Any,t.onPayloadChange.bind(rc(t))),t.systemSmartTags=(n=Object(E.e)({uuid:"all-notes",content_type:B.a.SmartTag,content:Object(s.a)({title:"All notes",isSystemTag:!0,isAllTag:!0,predicate:k.a.FromArray(["content_type","=",B.a.Note])})}),r=Object(E.e)({uuid:"archived-notes",content_type:B.a.SmartTag,content:Object(s.a)({title:"Archived",isSystemTag:!0,isArchiveTag:!0,predicate:k.a.FromArray(["archived","=",JSON.stringify(!0)])})}),i=Object(E.e)({uuid:"trashed-notes",content_type:B.a.SmartTag,content:Object(s.a)({title:"Trash",isSystemTag:!0,isTrashTag:!0,predicate:k.a.FromArray(["trashed","=",JSON.stringify(!0)])})}),[Qt(n),Qt(r),Qt(i)]),t}return t=R,(n=[{key:"setDisplayOptions",value:function(e,t,n,r){this.collection.setDisplayOptions(e,t,n,r)}},{key:"getDisplayableItems",value:function(e){return this.collection.displayElements(e)}},{key:"deinit",value:function(){this.unsubChangeObserver(),this.unsubChangeObserver=void 0,this.modelManager=void 0,this.collection=void 0}},{key:"resetState",value:function(){this.createCollection()}},{key:"createCollection",value:function(){this.collection=new Vs,this.collection.setDisplayOptions(B.a.Note,Os.CreatedAt,"dsc"),this.collection.setDisplayOptions(B.a.Tag,Os.Title,"asc"),this.collection.setDisplayOptions(B.a.ItemsKey,Os.CreatedAt,"asc"),this.collection.setDisplayOptions(B.a.Component,Os.CreatedAt,"asc"),this.collection.setDisplayOptions(B.a.SmartTag,Os.Title,"asc")}},{key:"findItem",value:function(e){return this.collection.find(e)}},{key:"findItems",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this.collection.findAll(e,t)}},{key:"itemsKeys",value:function(){return this.collection.displayElements(B.a.ItemsKey)}},{key:"addObserver",value:function(e,t){var n=this;Array.isArray(e)||(e=[e]);var r={contentType:e,callback:t};return this.observers.push(r),function(){Object(u.B)(n.observers,r)}}},{key:"itemsReferencingItem",value:function(e){if(!Object(u.s)(e))throw Error("Must use uuid string");var t=this.collection.uuidsThatReferenceUuid(e);return this.findItems(t)}},{key:"referencesForItem",value:function(e){if(!Object(u.s)(e))throw Error("Must use uuid string");var t=this.findItem(e).references.map((function(e){return e.uuid}));return this.findItems(t)}},{key:"onPayloadChange",value:(F=Zs(o.a.mark((function e(t,n,r,i,a){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.setPayloads(t,n,r,i,a));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r,i){return F.apply(this,arguments)})},{key:"setPayloads",value:(M=Zs(o.a.mark((function e(t,n,r,i,a){var s,c,u,l,A,f,h;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:s=t.map((function(e){return Qt(e)})),c=n.map((function(e){return Qt(e)})),(u=s.concat(c)).length>0&&this.collection.set(u),l=r.map((function(e){return Qt(e)})),A=qs(l);try{for(A.s();!(f=A.n()).done;)h=f.value,this.collection.discard(h)}catch(e){A.e(e)}finally{A.f()}return e.next=9,this.notifyObservers(s,c,l,i,a);case 9:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r,i){return M.apply(this,arguments)})},{key:"notifyObservers",value:(P=Zs(o.a.mark((function e(t,n,r,i,a){var s,c,u,l,A,f,h,p;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:s=function(e,t){return e.filter((function(e){return t.includes(B.a.Any)||t.includes(e.content_type)}))},c=this.observers.slice(),u=qs(c),e.prev=3,u.s();case 5:if((l=u.n()).done){e.next=16;break}if(A=l.value,f=s(t,A.contentType),h=s(n,A.contentType),p=s(r,A.contentType),0!==f.length||0!==h.length||0!==p.length){e.next=12;break}return e.abrupt("continue",14);case 12:return e.next=14,A.callback(f,h,p,i,a);case 14:e.next=5;break;case 16:e.next=21;break;case 18:e.prev=18,e.t0=e.catch(3),u.e(e.t0);case 21:return e.prev=21,u.f(),e.finish(21);case 24:case"end":return e.stop()}}),e,this,[[3,18,21,24]])}))),function(e,t,n,r,i){return P.apply(this,arguments)})},{key:"changeItem",value:(D=Zs(o.a.mark((function e(t,n){var r,i,a,s,c=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=c.length>2&&void 0!==c[2]?c[2]:d.c.UserInteraction,i=c.length>3&&void 0!==c[3]?c[3]:_.a.LocalChanged,a=c.length>4?c[4]:void 0,Object(u.s)(t)){e.next=5;break}throw Error("Invalid uuid for changeItem");case 5:return e.next=7,this.changeItems([t],n,r,i,a);case 7:return s=e.sent,e.abrupt("return",s[0]);case 9:case"end":return e.stop()}}),e,this)}))),function(e,t){return D.apply(this,arguments)})},{key:"createMutatorForItem",value:function(e,t){return e.content_type===B.a.Note?new lt(e,t):e.content_type===B.a.Tag?new Ve(e,t):e.content_type===B.a.Component?new le(e,t):e.content_type===B.a.ActionsExtension?new je(e,t):e.content_type===B.a.ItemsKey?new Ct(e,t):e.content_type===B.a.Privileges?new X(e,t):e.content_type===B.a.UserPrefs?new H(e,t):new d.b(e,t)}},{key:"changeItems",value:(x=Zs(o.a.mark((function e(t,n){var r,i,a,s,c,u,l,A,f,h,p,g=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=g.length>2&&void 0!==g[2]?g[2]:d.c.UserInteraction,i=g.length>3&&void 0!==g[3]?g[3]:_.a.LocalChanged,a=g.length>4?g[4]:void 0,s=this.findItems(t,!0),c=[],u=qs(s),e.prev=6,u.s();case 8:if((l=u.n()).done){e.next=18;break}if(A=l.value){e.next=12;break}throw Error("Attempting to change non-existant item");case 12:f=this.createMutatorForItem(A,r),n&&n(f),h=f.getResult(),c.push(h);case 16:e.next=8;break;case 18:e.next=23;break;case 20:e.prev=20,e.t0=e.catch(6),u.e(e.t0);case 23:return e.prev=23,u.f(),e.finish(23);case 26:return e.next=28,this.modelManager.emitPayloads(c,i,a);case 28:return p=this.findItems(c.map((function(e){return e.uuid}))),e.abrupt("return",p);case 30:case"end":return e.stop()}}),e,this,[[6,20,23,26]])}))),function(e,t){return x.apply(this,arguments)})},{key:"changeNote",value:(S=Zs(o.a.mark((function e(t,n){var r,i,a,s,c,u=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=u.length>2&&void 0!==u[2]?u[2]:d.c.UserInteraction,i=u.length>3&&void 0!==u[3]?u[3]:_.a.LocalChanged,a=u.length>4?u[4]:void 0,s=this.findItem(t)){e.next=6;break}throw Error("Attempting to change non-existant note");case 6:return c=new lt(s,r),e.abrupt("return",this.applyTransform(c,n,i,a));case 8:case"end":return e.stop()}}),e,this)}))),function(e,t){return S.apply(this,arguments)})},{key:"changeComponent",value:(Q=Zs(o.a.mark((function e(t,n){var r,i,a,s,c,u=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=u.length>2&&void 0!==u[2]?u[2]:d.c.UserInteraction,i=u.length>3&&void 0!==u[3]?u[3]:_.a.LocalChanged,a=u.length>4?u[4]:void 0,s=this.findItem(t)){e.next=6;break}throw Error("Attempting to change non-existant component");case 6:return c=new le(s,r),e.abrupt("return",this.applyTransform(c,n,i,a));case 8:case"end":return e.stop()}}),e,this)}))),function(e,t){return Q.apply(this,arguments)})},{key:"changeActionsExtension",value:(C=Zs(o.a.mark((function e(t,n){var r,i,a,s,c,u=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=u.length>2&&void 0!==u[2]?u[2]:d.c.UserInteraction,i=u.length>3&&void 0!==u[3]?u[3]:_.a.LocalChanged,a=u.length>4?u[4]:void 0,s=this.findItem(t)){e.next=6;break}throw Error("Attempting to change non-existant extension");case 6:return c=new je(s,r),e.abrupt("return",this.applyTransform(c,n,i,a));case 8:case"end":return e.stop()}}),e,this)}))),function(e,t){return C.apply(this,arguments)})},{key:"changeItemsKey",value:(w=Zs(o.a.mark((function e(t,n){var r,i,a,s,c,u=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=u.length>2&&void 0!==u[2]?u[2]:d.c.UserInteraction,i=u.length>3&&void 0!==u[3]?u[3]:_.a.LocalChanged,a=u.length>4?u[4]:void 0,s=this.findItem(t)){e.next=6;break}throw Error("Attempting to change non-existant itemsKey");case 6:return c=new Ct(s,r),e.abrupt("return",this.applyTransform(c,n,i,a));case 8:case"end":return e.stop()}}),e,this)}))),function(e,t){return w.apply(this,arguments)})},{key:"applyTransform",value:(I=Zs(o.a.mark((function e(t,n){var r,i,a,s=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]?s[2]:_.a.LocalChanged,i=s.length>3?s[3]:void 0,n(t),a=t.getResult(),e.abrupt("return",this.modelManager.emitPayload(a,r,i));case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return I.apply(this,arguments)})},{key:"setItemDirty",value:(b=Zs(o.a.mark((function e(t){var n,r,i=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=i.length>1&&void 0!==i[1]&&i[1],Object(u.s)(t)){e.next=3;break}throw Error("Must use uuid when setting item dirty");case 3:return e.next=5,this.setItemsDirty([t],n);case 5:return r=e.sent,e.abrupt("return",r[0]);case 7:case"end":return e.stop()}}),e,this)}))),function(e){return b.apply(this,arguments)})},{key:"setItemsDirty",value:(m=Zs(o.a.mark((function e(t){var n,r=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]&&r[1],Object(u.s)(t[0])){e.next=3;break}throw Error("Must use uuid when setting item dirty");case 3:return e.abrupt("return",this.changeItems(t,void 0,n?d.c.UserInteraction:d.c.Internal));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return m.apply(this,arguments)})},{key:"getDirtyItems",value:function(){return this.collection.dirtyElements().filter((function(e){return!e.errorDecrypting||e.deleted}))}},{key:"insertItem",value:(v=Zs(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.payload,e.next=3,this.emitItemFromPayload(n);case 3:return r=e.sent,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return v.apply(this,arguments)})},{key:"duplicateItem",value:(y=Zs(o.a.mark((function e(t){var n,r,i,a,s,c=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=c.length>1&&void 0!==c[1]&&c[1],r=this.findItem(t),i=Object(E.e)(r),e.next=5,Tr(i,this.modelManager.getMasterCollection(),n);case 5:return a=e.sent,e.next=8,this.modelManager.emitPayloads(a,_.a.LocalChanged);case 8:return s=this.findItem(a[0].uuid),e.abrupt("return",s);case 10:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"createItem",value:(g=Zs(o.a.mark((function e(t,n){var r,i,a,c=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=c.length>2&&void 0!==c[2]&&c[2],i=c.length>3?c[3]:void 0,t){e.next=4;break}throw"Attempting to create item with no contentType";case 4:return e.t0=E.e,e.next=7,p.GenerateUuid();case 7:return e.t1=e.sent,e.t2=t,e.t3=n?Object(s.a)(n):void 0,e.t4=r,e.t5={uuid:e.t1,content_type:e.t2,content:e.t3,dirty:e.t4},e.t6=i,a=(0,e.t0)(e.t5,e.t6),e.next=16,this.modelManager.emitPayload(a,_.a.Constructor);case 16:return e.abrupt("return",this.findItem(a.uuid));case 17:case"end":return e.stop()}}),e,this)}))),function(e,t){return g.apply(this,arguments)})},{key:"createTemplateItem",value:(h=Zs(o.a.mark((function e(t,n){var r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=E.e,e.next=3,p.GenerateUuid();case 3:return e.t1=e.sent,e.t2=t,e.t3=Object(s.a)(n||{}),e.t4={uuid:e.t1,content_type:e.t2,content:e.t3},r=(0,e.t0)(e.t4),e.abrupt("return",Qt(r));case 9:case"end":return e.stop()}}),e)}))),function(e,t){return h.apply(this,arguments)})},{key:"emitItemFromPayload",value:(f=Zs(o.a.mark((function e(t){var n,r=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]?r[1]:_.a.Constructor,e.next=3,this.modelManager.emitPayload(t,n);case 3:return e.abrupt("return",this.findItem(t.uuid));case 4:case"end":return e.stop()}}),e,this)}))),function(e){return f.apply(this,arguments)})},{key:"emitItemsFromPayloads",value:(A=Zs(o.a.mark((function e(t){var n,r,i=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=i.length>1&&void 0!==i[1]?i[1]:_.a.Constructor,e.next=3,this.modelManager.emitPayloads(t,n);case 3:return r=Object(s.b)(t),e.abrupt("return",this.findItems(r));case 5:case"end":return e.stop()}}),e,this)}))),function(e){return A.apply(this,arguments)})},{key:"setItemToBeDeleted",value:(l=Zs(o.a.mark((function e(t){var n,r,i,a,s,c,u;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.collection.uuidsThatReferenceUuid(t),r=this.findItem(t),e.next=4,this.changeItem(t,(function(e){e.setDeleted()}));case 4:i=e.sent,a=qs(n),e.prev=6,a.s();case 8:if((s=a.n()).done){e.next=16;break}if(c=s.value,!(u=this.findItem(c))){e.next=14;break}return e.next=14,this.changeItem(u.uuid,(function(e){e.removeItemAsRelationship(r)}));case 14:e.next=8;break;case 16:e.next=21;break;case 18:e.prev=18,e.t0=e.catch(6),a.e(e.t0);case 21:return e.prev=21,a.f(),e.finish(21);case 24:return e.abrupt("return",i);case 25:case"end":return e.stop()}}),e,this,[[6,18,21,24]])}))),function(e){return l.apply(this,arguments)})},{key:"setItemsToBeDeleted",value:(c=Zs(o.a.mark((function e(t){var n,r,i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=[],r=qs(t),e.prev=2,r.s();case 4:if((i=r.n()).done){e.next=12;break}return a=i.value,e.next=8,this.setItemToBeDeleted(a);case 8:s=e.sent,n.push(s);case 10:e.next=4;break;case 12:e.next=17;break;case 14:e.prev=14,e.t0=e.catch(2),r.e(e.t0);case 17:return e.prev=17,r.f(),e.finish(17);case 20:return e.abrupt("return",n);case 21:case"end":return e.stop()}}),e,this,[[2,14,17,20]])}))),function(e){return c.apply(this,arguments)})},{key:"getItems",value:function(e){return this.collection.all(e)}},{key:"nonErroredItemsForContentType",value:function(e){return this.collection.all(e).filter((function(e){return!e.errorDecrypting&&!e.waitingForKey}))}},{key:"itemsMatchingPredicate",value:function(e){return this.itemsMatchingPredicates([e])}},{key:"itemsMatchingPredicates",value:function(e){return this.subItemsMatchingPredicates(this.items,e)}},{key:"subItemsMatchingPredicates",value:function(e,t){return e.filter((function(e){if(e.deleted)return!1;var n,r=qs(t);try{for(r.s();!(n=r.n()).done;){var i=n.value;if(!e.satisfiesPredicate(i))return!1}}catch(e){r.e(e)}finally{r.f()}return!0}))}},{key:"findTagByTitle",value:function(e){return Object(u.D)(this.tags,{title:e})}},{key:"findOrCreateTagByTitle",value:(a=Zs(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.findTagByTitle(t),e.t0=n,e.t0){e.next=6;break}return e.next=5,this.createItem(B.a.Tag,Object(s.a)({title:t}),!0);case 5:e.t0=e.sent;case 6:return e.abrupt("return",e.t0);case 7:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"notesMatchingSmartTag",value:function(e){var t=[new k.a("content_type","=",B.a.Note),e.predicate];if(!e.isTrashTag){var n=new k.a("content.trashed","=",!1);t.push(n)}return this.itemsMatchingPredicates(t)}},{key:"emptyTrash",value:(i=Zs(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.trashedItems,e.abrupt("return",this.setItemsToBeDeleted(Object(s.b)(t)));case 2:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"getSmartTags",value:function(){var e=this.collection.displayElements(B.a.SmartTag);return this.systemSmartTags.concat(e)}},{key:"removeAllItemsFromMemory",value:(r=Zs(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=Object(s.b)(this.items),e.next=3,this.changeItems(t,(function(e){e.setDeleted()}),d.c.NonDirtying);case 3:this.resetState(),this.modelManager.resetState();case 5:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})},{key:"removeItemLocally",value:function(e){this.collection.discard(e),this.modelManager.removePayloadLocally(e.payload)}},{key:"items",get:function(){return this.collection.all()}},{key:"nonDeletedItems",get:function(){return this.collection.nondeletedElements()}},{key:"invalidItems",get:function(){return this.collection.invalidElements()}},{key:"notes",get:function(){return this.collection.displayElements(B.a.Note)}},{key:"tags",get:function(){return this.collection.displayElements(B.a.Tag)}},{key:"components",get:function(){return this.collection.displayElements(B.a.Component)}},{key:"trashSmartTag",get:function(){return this.systemSmartTags.find((function(e){return e.isTrashTag}))}},{key:"trashedItems",get:function(){return this.notesMatchingSmartTag(this.trashSmartTag)}},{key:"noteCount",get:function(){return this.collection.all(B.a.Note).length}}])&&ec(t.prototype,n),R}(Ot.a);function oc(e,t){return e.sort((function(e,n){var r=new Date(n.updated_at).getTime()-new Date(e.updated_at).getTime(),i=0,a=0;return t&&(i=t.indexOf(e.content_type),a=t.indexOf(n.content_type),-1===i&&(i=t.length),-1===a&&(a=t.length)),i===a?r:i<a?-1:1}))}function sc(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var cc=function(){function e(t,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.inProgress=!1,this.completedUpload=0,this.totalUpload=0,this.downloaded=0,this.databaseLoadCurrent=0,this.databaseLoadTotal=0,this.databaseLoadDone=!1,this.syncing=!1,this.interval=t,this.receiver=n}var t,n;return t=e,(n=[{key:"deinit",value:function(){this.stopTimingMonitor()}},{key:"setSyncInProgress",value:function(e){this.inProgress=!0}},{key:"setUploadStatus",value:function(e,t){this.completedUpload=e,this.totalUpload=t,this.receiver(bi.a.StatusChanged)}},{key:"setDownloadStatus",value:function(e){this.downloaded+=e,this.receiver(bi.a.StatusChanged)}},{key:"setDatabaseLoadStatus",value:function(e,t,n){this.databaseLoadCurrent=e,this.databaseLoadTotal=t,this.databaseLoadDone=n,n?this.receiver(bi.a.LocalDataLoaded):this.receiver(bi.a.LocalDataIncrementalLoad)}},{key:"getStats",value:function(){return{uploadCompletionCount:this.completedUpload,uploadTotalCount:this.totalUpload,downloadCount:this.downloaded,localDataDone:this.databaseLoadDone,localDataCurrent:this.databaseLoadCurrent,localDataTotal:this.databaseLoadTotal}}},{key:"setDidBegin",value:function(){this.syncing=!0,this.syncStart=new Date}},{key:"setDidEnd",value:function(){this.syncing=!1,this.syncEnd=new Date}},{key:"startTimingMonitor",value:function(){var e=this;this.timingMonitor&&this.stopTimingMonitor(),this.timingMonitor=this.interval((function(){e.secondsSinceSyncStart>5&&(e.receiver(bi.a.SyncTakingTooLong),e.stopTimingMonitor())}),500)}},{key:"stopTimingMonitor",value:function(){Object.prototype.hasOwnProperty.call(this.interval,"cancel")?this.interval.cancel(this.timingMonitor):clearInterval(this.timingMonitor),this.timingMonitor=null}},{key:"hasError",value:function(){return!!this.error}},{key:"setError",value:function(e){this.error=e}},{key:"clearError",value:function(){this.error=null}},{key:"reset",value:function(){this.downloaded=0,this.completedUpload=0,this.totalUpload=0,this.inProgress=!1,this.syncing=!1,this.error=null,this.stopTimingMonitor(),this.receiver(bi.a.StatusChanged)}},{key:"syncInProgress",get:function(){return!0===this.syncing}},{key:"secondsSinceSyncStart",get:function(){return((new Date).getTime()-this.syncStart.getTime())/1e3}}])&&sc(t.prototype,n),e}();function uc(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function lc(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var Ac=function(){function e(t,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.discordance=0,this.outOfSync=!1,this.receiver=t,this.maxDiscordance=n,this.reset()}var t,n,r,i;return t=e,(n=[{key:"isOutOfSync",value:function(){return this.outOfSync}},{key:"reset",value:function(){this.lastPreSyncSave=void 0,this.lastSyncDate=void 0,this.discordance=0,this.outOfSync=!1}},{key:"getLastClientIntegrityHash",value:function(){return this.lastClientHash}},{key:"clearIntegrityHashes",value:function(){this.lastClientHash=void 0,this.lastServerHash=void 0}},{key:"setIntegrityHashes",value:(r=o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.lastClientHash=t,this.lastServerHash=n,n&&0!==n.length&&t&&t!==n?(this.discordance++,this.discordance>=this.maxDiscordance&&!this.outOfSync&&(this.outOfSync=!0,this.receiver(bi.a.EnterOutOfSync))):(this.outOfSync&&(this.outOfSync=!1,this.receiver(bi.a.ExitOutOfSync)),this.discordance=0);case 4:case"end":return e.stop()}}),e,this)})),i=function(){var e=this,t=arguments;return new Promise((function(n,i){var a=r.apply(e,t);function o(e){uc(a,n,i,o,s,"next",e)}function s(e){uc(a,n,i,o,s,"throw",e)}o(void 0)}))},function(e,t){return i.apply(this,arguments)})},{key:"needsSync",get:function(){return this.discordance>0&&this.discordance<this.maxDiscordance}}])&&lc(t.prototype,n),e}();function fc(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function hc(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var pc=function(){function e(t,n,r,i,a){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.apiService=t,this.protocolService=n,this.contentType=r,this.customEvent=i,this.limit=a,this.progress={retrievedPayloads:[]}}var t,n,r,i;return t=e,(n=[{key:"run",value:(r=o.a.mark((function e(){var t,n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.apiService.sync([],this.progress.lastSyncToken,this.progress.paginationToken,this.limit||500,!1,this.contentType,this.customEvent);case 2:return t=e.sent,n=t.retrieved_items.map((function(e){return Object(E.f)(e,_.a.RemoteRetrieved)})),e.next=6,this.protocolService.payloadsByDecryptingPayloads(n);case 6:if(r=e.sent,this.progress.retrievedPayloads=this.progress.retrievedPayloads.concat(r),this.progress.lastSyncToken=t.sync_token,this.progress.paginationToken=t.cursor_token,!t.cursor_token){e.next=14;break}return e.abrupt("return",this.run());case 14:return e.abrupt("return",this.progress.retrievedPayloads);case 15:case"end":return e.stop()}}),e,this)})),i=function(){var e=this,t=arguments;return new Promise((function(n,i){var a=r.apply(e,t);function o(e){fc(a,n,i,o,s,"next",e)}function s(e){fc(a,n,i,o,s,"throw",e)}o(void 0)}))},function(){return i.apply(this,arguments)})}])&&hc(t.prototype,n),e}();function dc(e){return(dc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function gc(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return yc(e,t);var n=Object.prototype.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)?yc(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function yc(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function vc(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function mc(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){vc(a,r,i,o,s,"next",e)}function s(e){vc(a,r,i,o,s,"throw",e)}o(void 0)}))}}function bc(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ic(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function wc(e,t){return(wc=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Cc(e,t){return!t||"object"!==dc(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Bc(e){return(Bc=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Ec=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&wc(e,t)}(c,e);var t,n,r,i,a,s=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Bc(e);if(t){var i=Bc(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Cc(this,n)}}(c);function c(){return bc(this,c),s.apply(this,arguments)}return t=c,(n=[{key:"resultingCollection",value:(a=mc(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.applyCollection.source!==_.a.ConflictUuid){e.next=4;break}return e.abrupt("return",this.collectionsByHandlingUuidConflicts());case 4:if(this.applyCollection.source!==_.a.ConflictData){e.next=8;break}return e.abrupt("return",this.collectionsByHandlingDataConflicts());case 8:throw"Unhandled conflict type ".concat(this.applyCollection.source);case 9:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"collectionsByHandlingDataConflicts",value:(i=mc(o.a.mark((function e(){var t,n,r,i,a,s,c,l,A;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=[],n=gc(this.applyCollection.all()),e.prev=2,n.s();case 4:if((r=n.n()).done){e.next=21;break}if(i=r.value,a=this.findBasePayload(i.uuid)){e.next=10;break}return t.push(i),e.abrupt("continue",19);case 10:if((s=this.findRelatedPayload(i.uuid,_.a.DecryptedTransient))||i.deleted){e.next=13;break}throw"Unable to find decrypted counterpart for data conflict.";case 13:return c=new Wr(this.baseCollection,a,s||i,_.a.ConflictData),e.next=16,c.resultingCollection();case 16:l=e.sent,A=l.all(),Object(u.j)(t,A);case 19:e.next=4;break;case 21:e.next=26;break;case 23:e.prev=23,e.t0=e.catch(2),n.e(e.t0);case 26:return e.prev=26,n.f(),e.finish(26);case 29:return e.abrupt("return",Qr.WithPayloads(t,_.a.RemoteRetrieved));case 30:case"end":return e.stop()}}),e,this,[[2,23,26,29]])}))),function(){return i.apply(this,arguments)})},{key:"collectionsByHandlingUuidConflicts",value:(r=mc(o.a.mark((function e(){var t,n,r,i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=[],n=gc(this.applyCollection.all()),e.prev=2,n.s();case 4:if((r=n.n()).done){e.next=13;break}return i=r.value,a=this.findRelatedPayload(i.uuid,_.a.DecryptedTransient),e.next=9,Hr(a,this.baseCollection);case 9:s=e.sent,Object(u.j)(t,s);case 11:e.next=4;break;case 13:e.next=18;break;case 15:e.prev=15,e.t0=e.catch(2),n.e(e.t0);case 18:return e.prev=18,n.f(),e.finish(18);case 21:return e.abrupt("return",Qr.WithPayloads(t,_.a.RemoteRetrieved));case 22:case"end":return e.stop()}}),e,this,[[2,15,18,21]])}))),function(){return r.apply(this,arguments)})}])&&Ic(t.prototype,n),c}(Ar);function _c(e){return(_c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function kc(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Qc(e,t);var n=Object.prototype.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)?Qc(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function Qc(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Sc(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function xc(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Dc(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Pc(e,t){return(Pc=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Mc(e,t){return!t||"object"!==_c(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Fc(e){return(Fc=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var Oc=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Pc(e,t)}(s,e);var t,n,r,i,a=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Fc(e);if(t){var i=Fc(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Mc(this,n)}}(s);function s(){return xc(this,s),a.apply(this,arguments)}return t=s,(n=[{key:"resultingCollection",value:(r=o.a.mark((function e(){var t,n,r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=[],n=kc(this.applyCollection.all());try{for(n.s();!(r=n.n()).done;)i=r.value,a=this.findBasePayload(i.uuid),s=a?a.deleted:i.deleted,c=Object(E.f)(i,_.a.RemoteSaved,{lastSyncEnd:new Date,deleted:s}),t.push(c)}catch(e){n.e(e)}finally{n.f()}return e.abrupt("return",Qr.WithPayloads(t,_.a.RemoteSaved));case 4:case"end":return e.stop()}}),e,this)})),i=function(){var e=this,t=arguments;return new Promise((function(n,i){var a=r.apply(e,t);function o(e){Sc(a,n,i,o,s,"next",e)}function s(e){Sc(a,n,i,o,s,"throw",e)}o(void 0)}))},function(){return i.apply(this,arguments)})}])&&Dc(t.prototype,n),s}(Ar);function Rc(e){return(Rc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Tc(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return jc(e,t);var n=Object.prototype.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)?jc(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function jc(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Hc(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Uc(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Nc(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Lc(e,t){return(Lc=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Kc(e,t){return!t||"object"!==Rc(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Gc(e){return(Gc=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var $c=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Lc(e,t)}(s,e);var t,n,r,i,a=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Gc(e);if(t){var i=Gc(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Kc(this,n)}}(s);function s(){return Uc(this,s),a.apply(this,arguments)}return t=s,(n=[{key:"resultingCollection",value:(r=o.a.mark((function e(){var t,n,r,i,a,s,c,l,A,f,h,p,d,g,y,v,m;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=[],n=[],r=Tc(this.applyCollection.all()),e.prev=3,r.s();case 5:if((i=r.n()).done){e.next=24;break}if(a=i.value,s=this.findRelatedPayload(a.uuid,_.a.SavedOrSaving),c=this.findRelatedPayload(a.uuid,_.a.DecryptedTransient)){e.next=14;break}if(a.deleted){e.next=12;break}throw"Cannot find decrypted for non-deleted payload.";case 12:return t.push(a),e.abrupt("continue",22);case 14:if(!s){e.next=17;break}return n.push(c),e.abrupt("continue",22);case 17:if(!(l=this.findBasePayload(a.uuid))||!l.dirty){e.next=21;break}return n.push(c),e.abrupt("continue",22);case 21:t.push(c);case 22:e.next=5;break;case 24:e.next=29;break;case 26:e.prev=26,e.t0=e.catch(3),r.e(e.t0);case 29:return e.prev=29,r.f(),e.finish(29);case 32:A=[],f=0,h=n;case 34:if(!(f<h.length)){e.next=51;break}if(p=h[f],d=this.findRelatedPayload(p.uuid,_.a.DecryptedTransient)){e.next=39;break}return e.abrupt("continue",48);case 39:if(g=this.findBasePayload(p.uuid)){e.next=42;break}return e.abrupt("continue",48);case 42:return y=new Wr(this.baseCollection,g,d,_.a.ConflictData),e.next=45,y.resultingCollection();case 45:v=e.sent,m=v.all(),Object(u.j)(A,m);case 48:f++,e.next=34;break;case 51:return e.abrupt("return",Qr.WithPayloads(t.concat(A),_.a.RemoteRetrieved));case 52:case"end":return e.stop()}}),e,this,[[3,26,29,32]])})),i=function(){var e=this,t=arguments;return new Promise((function(n,i){var a=r.apply(e,t);function o(e){Hc(a,n,i,o,s,"next",e)}function s(e){Hc(a,n,i,o,s,"throw",e)}o(void 0)}))},function(){return i.apply(this,arguments)})}])&&Nc(t.prototype,n),s}(Ar);function Yc(e){return e===_.a.RemoteRetrieved?$c:e===_.a.RemoteSaved?Oc:e===_.a.ConflictData||e===_.a.ConflictUuid?Ec:void 0}function Jc(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var Vc=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.collections=t,Object.freeze(this)}var t,n;return t=e,(n=[{key:"collectionForSource",value:function(e){return this.collections.find((function(t){return t.source===e}))}}])&&Jc(t.prototype,n),e}();function zc(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function qc(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){zc(a,r,i,o,s,"next",e)}function s(e){zc(a,r,i,o,s,"throw",e)}o(void 0)}))}}function Wc(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var Xc,Zc=function(){function e(t,n,r,i){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.response=t,this.baseCollection=r,this.relatedCollectionSet=new Vc([Qr.WithPayloads(n,_.a.DecryptedTransient),Qr.WithPayloads(i,_.a.SavedOrSaving)])}var t,n,r,i;return t=e,(n=[{key:"collectionsByProcessingResponse",value:(i=qc(o.a.mark((function e(){var t,n,r,i,a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=[],e.next=3,this.collectionByProcessingPayloads(this.response.retrievedPayloads,_.a.RemoteRetrieved);case 3:return(n=e.sent).all().length>0&&t.push(n),e.next=7,this.collectionByProcessingPayloads(this.response.savedPayloads,_.a.RemoteSaved);case 7:if((r=e.sent).all().length>0&&t.push(r),!(this.response.uuidConflictPayloads.length>0)){e.next=14;break}return e.next=12,this.collectionByProcessingPayloads(this.response.uuidConflictPayloads,_.a.ConflictUuid);case 12:(i=e.sent).all().length>0&&t.push(i);case 14:if(!(this.response.dataConflictPayloads.length>0)){e.next=19;break}return e.next=17,this.collectionByProcessingPayloads(this.response.dataConflictPayloads,_.a.ConflictData);case 17:(a=e.sent).all().length>0&&t.push(a);case 19:return e.abrupt("return",t);case 20:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"collectionByProcessingPayloads",value:(r=qc(o.a.mark((function e(t,n){var r,i,a,s,c,u=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=Qr.WithPayloads(t,n),i=Yc(n),a=new i(this.baseCollection,r,this.relatedCollectionSet),e.next=5,a.resultingCollection();case 5:return s=e.sent,c=s.all().map((function(e){var t=u.finalDirtyStateForPayload(e);return Object(E.b)(e,{dirty:t,dirtiedDate:t?new Date:void 0})})),e.abrupt("return",Qr.WithPayloads(c,n));case 8:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"finalDirtyStateForPayload",value:function(e){var t=this.baseCollection.find(e.uuid);return t?e.dirtiedDate&&e.dirtiedDate>t.dirtiedDate?e.dirty:t.dirtiedDate>t.lastSyncBegan:e.dirty}}])&&Wc(t.prototype,n),e}();function eu(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}!function(e){e.ConflictingData="sync_conflict",e.UuidConflict="uuid_conflict"}(Xc||(Xc={}));var tu,nu=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.rawResponse=t,this.savedPayloads=this.filterRawItemArray(t.saved_items).map((function(e){return Object(E.f)(e,_.a.RemoteSaved)})),this.retrievedPayloads=this.filterRawItemArray(t.retrieved_items).map((function(e){return Object(E.f)(e,_.a.RemoteRetrieved)})),this.dataConflictPayloads=this.filterRawItemArray(this.rawDataConflictItems).map((function(e){return Object(E.f)(e,_.a.ConflictData)})),this.uuidConflictPayloads=this.filterRawItemArray(this.rawUuidConflictItems).map((function(e){return Object(E.f)(e,_.a.ConflictUuid)})),this.deletedPayloads=this.allProcessedPayloads.filter((function(e){return e.discardable})),Object(u.g)(this)}var t,n;return t=e,(n=[{key:"filterRawItemArray",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.filter((function(e){return!!e.uuid}))}},{key:"error",get:function(){return this.rawResponse.error}},{key:"status",get:function(){return this.rawResponse.status}},{key:"lastSyncToken",get:function(){return this.rawResponse[Bn.LastSyncToken]}},{key:"paginationToken",get:function(){return this.rawResponse[Bn.PaginationToken]}},{key:"integrityHash",get:function(){return this.rawResponse[Bn.IntegrityResult]}},{key:"checkIntegrity",get:function(){return this.integrityHash&&!this.paginationToken}},{key:"numberOfItemsInvolved",get:function(){return this.allProcessedPayloads.length}},{key:"allProcessedPayloads",get:function(){return this.savedPayloads.concat(this.retrievedPayloads).concat(this.dataConflictPayloads).concat(this.uuidConflictPayloads)}},{key:"rawUuidConflictItems",get:function(){return this.rawConflictObjects.filter((function(e){return e.type===Xc.UuidConflict})).map((function(e){return e.unsaved_item||e.item}))}},{key:"rawDataConflictItems",get:function(){return this.rawConflictObjects.filter((function(e){return e.type===Xc.ConflictingData})).map((function(e){return e.server_item||e.item}))}},{key:"rawConflictObjects",get:function(){var e=this.rawResponse.conflicts||[],t=this.rawResponse.unsaved||[];return e.concat(t)}},{key:"hasError",get:function(){return!Object(u.p)(this.rawResponse.error)}}])&&eu(t.prototype,n),e}();function ru(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function iu(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function au(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}!function(e){e[e.Response=1]="Response",e[e.StatusChanged=2]="StatusChanged"}(tu||(tu={}));var ou=function(){function e(t,n,r,i,a,o){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.responses=[],this.payloads=t,this.lastSyncToken=r,this.paginationToken=i,this.checkIntegrity=a,this.apiService=o,this.receiver=n,this.pendingPayloads=t}var t,n,r,i;return t=e,(n=[{key:"popPayloads",value:function(e){var t=this.pendingPayloads.slice(0,e);return Object(u.G)(this.pendingPayloads,t),t}},{key:"run",value:(r=o.a.mark((function e(){var t,n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.popPayloads(this.upLimit),e.next=3,this.apiService.sync(t,this.lastSyncToken,this.paginationToken,this.downLimit,this.checkIntegrity,void 0,void 0);case 3:return n=e.sent,r=new nu(n),this.responses.push(r),this.lastSyncToken=r.lastSyncToken,this.paginationToken=r.paginationToken,e.next=10,this.receiver(tu.Response,r);case 10:if(this.done){e.next=12;break}return e.abrupt("return",this.run());case 12:case"end":return e.stop()}}),e,this)})),i=function(){var e=this,t=arguments;return new Promise((function(n,i){var a=r.apply(e,t);function o(e){iu(a,n,i,o,s,"next",e)}function s(e){iu(a,n,i,o,s,"throw",e)}o(void 0)}))},function(){return i.apply(this,arguments)})},{key:"pendingUploadCount",value:function(){return this.pendingPayloads.length}},{key:"totalUploadCount",value:function(){return this.payloads.length}},{key:"payloadsSavedOrSaving",get:function(){return Object(u.c)(this.payloads,this.pendingPayloads)}},{key:"done",get:function(){return 0===this.pendingPayloads.length&&!this.paginationToken}},{key:"upLimit",get:function(){return 150}},{key:"downLimit",get:function(){return 150}},{key:"numberOfItemsInvolved",get:function(){var e,t=0,n=function(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return ru(e,t);var n=Object.prototype.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)?ru(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}(this.responses);try{for(n.s();!(e=n.n()).done;)t+=e.value.numberOfItemsInvolved}catch(e){n.e(e)}finally{n.f()}return t}}])&&au(t.prototype,n),e}();function su(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function cu(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var uu=function(){function e(t,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.payloads=t,this.receiver=n}var t,n,r,i;return t=e,(n=[{key:"run",value:(r=o.a.mark((function e(){var t,n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.payloads.map((function(e){return Object(E.f)(e,_.a.LocalSaved,{dirty:!1,lastSyncEnd:new Date})})),n=Object(u.a)(t),r=new nu({saved_items:n}),e.next=5,this.receiver(tu.Response,r);case 5:case"end":return e.stop()}}),e,this)})),i=function(){var e=this,t=arguments;return new Promise((function(n,i){var a=r.apply(e,t);function o(e){su(a,n,i,o,s,"next",e)}function s(e){su(a,n,i,o,s,"throw",e)}o(void 0)}))},function(){return i.apply(this,arguments)})}])&&cu(t.prototype,n),e}();function lu(e){return(lu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Au(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return fu(e,t);var n=Object.prototype.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)?fu(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function fu(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function hu(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function pu(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function du(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function gu(e,t){return(gu=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function yu(e,t){return!t||"object"!==lu(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function vu(e){return(vu=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var mu,bu,Iu,wu=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&gu(e,t)}(s,e);var t,n,r,i,a=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=vu(e);if(t){var i=vu(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return yu(this,n)}}(s);function s(){return pu(this,s),a.apply(this,arguments)}return t=s,(n=[{key:"resultingCollection",value:(r=o.a.mark((function e(){var t,n,r,i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=[],n=Au(this.applyCollection.all()),e.prev=2,n.s();case 4:if((r=n.n()).done){e.next=19;break}if(i=r.value,t.push(i),a=this.findBasePayload(i.uuid)){e.next=10;break}return e.abrupt("continue",17);case 10:if(!Kr(i,a)){e.next=13;break}return e.abrupt("continue",17);case 13:return e.next=15,Tr(a,this.baseCollection,!0);case 15:s=e.sent,Object(u.j)(t,s);case 17:e.next=4;break;case 19:e.next=24;break;case 21:e.prev=21,e.t0=e.catch(2),n.e(e.t0);case 24:return e.prev=24,n.f(),e.finish(24);case 27:return e.abrupt("return",Qr.WithPayloads(t,_.a.RemoteRetrieved));case 28:case"end":return e.stop()}}),e,this,[[2,21,24,27]])})),i=function(){var e=this,t=arguments;return new Promise((function(n,i){var a=r.apply(e,t);function o(e){hu(a,n,i,o,s,"next",e)}function s(e){hu(a,n,i,o,s,"throw",e)}o(void 0)}))},function(){return i.apply(this,arguments)})}])&&du(t.prototype,n),s}(Ar);function Cu(e){return(Cu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Bu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Eu(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Bu(Object(n),!0).forEach((function(t){_u(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Bu(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _u(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ku(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Qu(e,t);var n=Object.prototype.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)?Qu(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function Qu(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Su(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function xu(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Su(a,r,i,o,s,"next",e)}function s(e){Su(a,r,i,o,s,"throw",e)}o(void 0)}))}}function Du(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function Pu(e,t,n){return(Pu="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Ou(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function Mu(e,t){return(Mu=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Fu(e,t){return!t||"object"!==Cu(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Ou(e){return(Ou=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}!function(e){e[e.ResolveOnNext=1]="ResolveOnNext",e[e.ForceSpawnNew=2]="ForceSpawnNew"}(mu||(mu={})),function(e){e[e.Default=1]="Default",e[e.DownloadFirst=2]="DownloadFirst"}(bu||(bu={})),function(e){e[e.External=1]="External",e[e.SpawnQueue=2]="SpawnQueue",e[e.ResolveQueue=3]="ResolveQueue",e[e.MoreDirtyItems=4]="MoreDirtyItems",e[e.AfterDownloadFirst=5]="AfterDownloadFirst",e[e.IntegrityCheck=6]="IntegrityCheck",e[e.ResolveOutOfSync=7]="ResolveOutOfSync"}(Iu||(Iu={}));var Ru=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Mu(e,t)}(j,e);var t,n,r,i,a,c,l,A,f,h,p,g,y,v,m,b,I,w,C,k,Q,S,x,D,P,M,F,O,R,T=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Ou(e);if(t){var i=Ou(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Fu(this,n)}}(j);function j(e,t,n,r,i,a,o){var s;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,j),(s=T.call(this)).resolveQueue=[],s.spawnQueue=[],s.completedOnlineDownloadFirstSync=!1,s.majorChangeThreshold=15,s.maxDiscordance=5,s.locked=!1,s.databaseLoaded=!1,s.localLoadPriorty=[B.a.ItemsKey,B.a.UserPrefs,B.a.Privileges,B.a.Component,B.a.Theme],s.nonEncryptedTypes=[B.a.Mfa,B.a.ServerExtension],s.itemManager=e,s.sessionManager=t,s.protocolService=n,s.modelManager=i,s.storageService=r,s.apiService=a,s.interval=o,s.initializeStatus(),s.initializeState(),s}return t=j,(n=[{key:"onNewDatabaseCreated",value:(R=xu(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getLastSyncToken();case 2:if(!e.sent){e.next=5;break}return e.next=5,this.clearSyncPositionTokens();case 5:case"end":return e.stop()}}),e,this)}))),function(){return R.apply(this,arguments)})},{key:"deinit",value:function(){this.sessionManager=void 0,this.itemManager=void 0,this.protocolService=void 0,this.modelManager=void 0,this.storageService=void 0,this.apiService=void 0,this.interval=void 0,this.state.reset(),this.opStatus.reset(),this.state=void 0,this.opStatus=void 0,this.resolveQueue.length=0,this.spawnQueue.length=0,Pu(Ou(j.prototype),"deinit",this).call(this)}},{key:"initializeStatus",value:function(){var e=this;this.opStatus=new cc(this.interval,(function(t){e.notifyEvent(t)}))}},{key:"initializeState",value:function(){var e=this;this.state=new Ac((function(t){t===bi.a.EnterOutOfSync?e.notifyEvent(bi.a.EnterOutOfSync):t===bi.a.ExitOutOfSync&&e.notifyEvent(bi.a.ExitOutOfSync)}),this.maxDiscordance)}},{key:"lockSyncing",value:function(){this.locked=!0}},{key:"unlockSyncing",value:function(){this.locked=!1}},{key:"isOutOfSync",value:function(){return this.state.isOutOfSync()}},{key:"getLastSyncDate",value:function(){return this.state.lastSyncDate}},{key:"getStatus",value:function(){return this.opStatus}},{key:"resetSyncState",value:function(){this.state.reset()}},{key:"isDatabaseLoaded",value:function(){return this.databaseLoaded}},{key:"getDatabasePayloads",value:(O=xu(o.a.mark((function e(){var t=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.storageService.getAllRawPayloads().catch((function(e){throw t.notifyEvent(bi.a.DatabaseReadError,e),e})));case 1:case"end":return e.stop()}}),e,this)}))),function(){return O.apply(this,arguments)})},{key:"loadDatabasePayloads",value:(F=xu(o.a.mark((function e(t){var n,r,i,a,s,c,l,A,f,h,p;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.databaseLoaded){e.next=2;break}throw"Attempting to initialize already initialized local database.";case 2:if(0!==t.length){e.next=6;break}return this.databaseLoaded=!0,this.opStatus.setDatabaseLoadStatus(0,0,!0),e.abrupt("return");case 6:return n=t.map((function(e){return Object(E.e)(e)})),r=oc(n,this.localLoadPriorty),i=r.filter((function(e){return e.content_type===B.a.ItemsKey})),Object(u.G)(r,i),e.next=12,this.protocolService.payloadsByDecryptingPayloads(i);case 12:return a=e.sent,e.next=15,this.modelManager.emitPayloads(a,_.a.LocalRetrieved);case 15:s=r.length,c=100,l=Math.ceil(s/c),A=0;case 19:if(!(A<l)){e.next=32;break}return f=A*c,h=r.slice(f,f+c),e.next=24,this.protocolService.payloadsByDecryptingPayloads(h);case 24:return p=e.sent,e.next=27,this.modelManager.emitPayloads(p,_.a.LocalRetrieved);case 27:this.notifyEvent(bi.a.LocalDataIncrementalLoad),this.opStatus.setDatabaseLoadStatus(f,s,!1);case 29:A++,e.next=19;break;case 32:this.databaseLoaded=!0,this.opStatus.setDatabaseLoadStatus(0,0,!0);case 34:case"end":return e.stop()}}),e,this)}))),function(e){return F.apply(this,arguments)})},{key:"setLastSyncToken",value:(M=xu(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.syncToken=t,e.abrupt("return",this.storageService.setValue(_t.LastSyncToken,t));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return M.apply(this,arguments)})},{key:"setPaginationToken",value:(P=xu(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.cursorToken=t,!t){e.next=5;break}return e.abrupt("return",this.storageService.setValue(_t.PaginationToken,t));case 5:return e.abrupt("return",this.storageService.removeValue(_t.PaginationToken));case 6:case"end":return e.stop()}}),e,this)}))),function(e){return P.apply(this,arguments)})},{key:"getLastSyncToken",value:(D=xu(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.syncToken){e.next=4;break}return e.next=3,this.storageService.getValue(_t.LastSyncToken);case 3:this.syncToken=e.sent;case 4:return e.abrupt("return",this.syncToken);case 5:case"end":return e.stop()}}),e,this)}))),function(){return D.apply(this,arguments)})},{key:"getPaginationToken",value:(x=xu(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.cursorToken){e.next=4;break}return e.next=3,this.storageService.getValue(_t.PaginationToken);case 3:this.cursorToken=e.sent;case 4:return e.abrupt("return",this.cursorToken);case 5:case"end":return e.stop()}}),e,this)}))),function(){return x.apply(this,arguments)})},{key:"clearSyncPositionTokens",value:(S=xu(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.syncToken=void 0,this.cursorToken=void 0,e.next=4,this.storageService.removeValue(_t.LastSyncToken);case 4:return e.next=6,this.storageService.removeValue(_t.PaginationToken);case 6:case"end":return e.stop()}}),e,this)}))),function(){return S.apply(this,arguments)})},{key:"itemsNeedingSync",value:(Q=xu(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.itemManager.getDirtyItems(),e.abrupt("return",t);case 2:case"end":return e.stop()}}),e,this)}))),function(){return Q.apply(this,arguments)})},{key:"alternateUuidForItem",value:(k=xu(o.a.mark((function e(t){var n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.itemManager.findItem(t),r=Object(E.e)(n),e.next=4,Hr(r,this.modelManager.getMasterCollection());case 4:return i=e.sent,e.next=7,this.modelManager.emitPayloads(i,_.a.LocalChanged);case 7:return e.next=9,this.persistPayloads(i);case 9:return e.abrupt("return",this.itemManager.findItem(i[0].uuid));case 10:case"end":return e.stop()}}),e,this)}))),function(e){return k.apply(this,arguments)})},{key:"markAllItemsAsNeedingSync",value:(C=xu(o.a.mark((function e(t){var n,r,i,a,s,c;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.log("Marking all items as needing sync"),!t){e.next=20;break}n=this.itemManager.items.filter((function(e){return!e.errorDecrypting})).slice(),r=ku(n),e.prev=4,r.s();case 6:if((i=r.n()).done){e.next=12;break}return a=i.value,e.next=10,this.alternateUuidForItem(a.uuid);case 10:e.next=6;break;case 12:e.next=17;break;case 14:e.prev=14,e.t0=e.catch(4),r.e(e.t0);case 17:return e.prev=17,r.f(),e.finish(17);case 20:return s=this.itemManager.items,c=s.map((function(e){return Object(E.e)(e,{dirty:!0,dirtiedDate:new Date})})),e.next=24,this.modelManager.emitPayloads(c,_.a.LocalChanged);case 24:return e.next=26,this.persistPayloads(c);case 26:case"end":return e.stop()}}),e,this,[[4,14,17,20]])}))),function(e){return C.apply(this,arguments)})},{key:"popPayloadsNeedingPreSyncSave",value:(w=xu(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.state.lastPreSyncSave){e.next=3;break}return e.abrupt("return",t);case 3:return r=t.filter((function(e){return!e.dirtiedDate||e.dirtiedDate>n})),this.state.lastPreSyncSave=new Date,e.abrupt("return",r);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return w.apply(this,arguments)})},{key:"queueStrategyResolveOnNext",value:function(){var e=this;return new Promise((function(t,n){e.resolveQueue.push({resolve:t,reject:n})}))}},{key:"queueStrategyForceSpawnNew",value:function(e){var t=this;return new Promise((function(n,r){t.spawnQueue.push({resolve:n,reject:r,options:e})}))}},{key:"popSpawnQueue",value:function(){if(0===this.spawnQueue.length)return null;var e=this.spawnQueue[0];return Object(u.C)(this.spawnQueue,0),this.log("Syncing again from spawn queue"),this.sync(Eu({queueStrategy:mu.ForceSpawnNew,source:Iu.SpawnQueue},e.options)).then((function(){e.resolve()})).catch((function(){e.reject()}))}},{key:"payloadsByPreparingForServer",value:(I=xu(o.a.mark((function e(t){var n=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.protocolService.payloadsByEncryptingPayloads(t,(function(e){return n.nonEncryptedTypes.includes(e.content_type)?Ft.a.SyncDecrypted:Ft.a.Sync})));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return I.apply(this,arguments)})},{key:"downloadFirstSync",value:(b=xu(o.a.mark((function e(t,n){var r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=5,i=0;case 2:if(!(i<r)){e.next=14;break}return e.next=5,this.sync(Eu({mode:bu.DownloadFirst,queueStrategy:mu.ForceSpawnNew},n)).catch(console.error);case 5:if(!this.completedOnlineDownloadFirstSync){e.next=9;break}return e.abrupt("return");case 9:return e.next=11,Object(u.E)(t);case 11:i++,e.next=2;break;case 14:console.error("Failed downloadFirstSync after ".concat(r," tries"));case 15:case"end":return e.stop()}}),e,this)}))),function(e,t){return b.apply(this,arguments)})},{key:"sync",value:(m=xu(o.a.mark((function e(){var t,n,r,i,a,c,l,A,f,h,p,g,y,v,m,b,I,w,C,B,E,k,Q=this,S=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=S.length>0&&void 0!==S[0]?S[0]:{},!this.locked){e.next=4;break}return this.log("Sync Locked"),e.abrupt("return");case 4:return n=function(){return Q.syncLock},r=function(){Q.syncLock=!0},i=function(){Q.syncLock=!1},a=this.opStatus.syncInProgress,c=this.databaseLoaded,(l=!n())&&c&&!a&&r(),t.source||(t.source=Iu.External),e.next=14,this.itemsNeedingSync();case 14:return A=e.sent,f=A.filter((function(e){return e.neverSynced&&e.deleted})),Object(u.G)(A,f),h=A.map((function(e){return e.payloadRepresentation()})),e.next=20,this.popPayloadsNeedingPreSyncSave(h);case 20:return p=e.sent,e.next=23,this.persistPayloads(p);case 23:if(g=this.resolveQueue.slice(),y=Object(u.p)(t.queueStrategy)?mu.ResolveOnNext:t.queueStrategy,!a&&c&&l){e.next=36;break}if(this.log(l?a?"Attempting to sync while existing sync in progress.":"Attempting to sync before local database has loaded.":"Another function call has begun preparing for sync."),y!==mu.ResolveOnNext){e.next=31;break}return e.abrupt("return",this.queueStrategyResolveOnNext());case 31:if(y!==mu.ForceSpawnNew){e.next=35;break}return e.abrupt("return",this.queueStrategyForceSpawnNew({mode:t.mode,checkIntegrity:t.checkIntegrity,source:t.source}));case 35:throw"Unhandled timing strategy ".concat(y);case 36:if(this.opStatus.setDidBegin(),this.notifyEvent(bi.a.SyncWillBegin),Object(u.G)(this.resolveQueue,g),v=new Date,!(A.length>0)){e.next=43;break}return e.next=43,this.itemManager.changeItems(Object(s.b)(A),(function(e){e.lastSyncBegan=v}),d.c.NonDirtying,_.a.PreSyncSave);case 43:if(m=this.sessionManager.online(),o=t.mode,b=m&&!Q.completedOnlineDownloadFirstSync?bu.DownloadFirst:Object(u.p)(o)?bu.Default:o,I=[],b!==bu.Default){e.next=58;break}if(!m||this.completedOnlineDownloadFirstSync){e.next=49;break}throw Error("Attempting to default mode sync without having completed initial.");case 49:if(!m){e.next=55;break}return e.next=52,this.payloadsByPreparingForServer(h);case 52:I=e.sent,e.next=56;break;case 55:I=h;case 56:e.next=59;break;case 58:b===bu.DownloadFirst&&(I=[]);case 59:if(!m){e.next=65;break}return e.next=62,this.syncOnlineOperation(I,t.checkIntegrity,t.source,b);case 62:w=e.sent,e.next=68;break;case 65:return e.next=67,this.syncOfflineOperation(I,t.source,b);case 67:w=e.sent;case 68:return e.next=70,w.run();case 70:if(this.opStatus.setDidEnd(),i(),!this.opStatus.hasError()){e.next=74;break}return e.abrupt("return");case 74:if(this.opStatus.reset(),this.state.lastSyncDate=new Date,w instanceof ou&&w.numberOfItemsInvolved>=this.majorChangeThreshold&&this.notifyEvent(bi.a.MajorDataChange),!(f.length>0)){e.next=80;break}return e.next=80,this.handleNeverSyncedDeleted(f);case 80:if(b===bu.DownloadFirst){e.next=83;break}return e.next=83,this.notifyEvent(bi.a.FullSyncCompleted,{source:t.source});case 83:if(b!==bu.DownloadFirst){e.next=91;break}return m&&(this.completedOnlineDownloadFirstSync=!0),e.next=87,this.notifyEvent(bi.a.DownloadFirstSyncCompleted);case 87:return e.next=89,this.sync({source:Iu.AfterDownloadFirst,checkIntegrity:!0,awaitAll:t.awaitAll});case 89:e.next=117;break;case 91:if(this.popSpawnQueue()||!(this.resolveQueue.length>0)){e.next=99;break}if(this.log("Syncing again from resolve queue"),C=this.sync({source:Iu.ResolveQueue,checkIntegrity:t.checkIntegrity}),!t.awaitAll){e.next=97;break}return e.next=97,C;case 97:e.next=117;break;case 99:return e.next=101,this.itemsNeedingSync();case 101:if(e.t0=e.sent.length,!(e.t0>0)){e.next=107;break}return e.next=105,this.sync({source:Iu.MoreDirtyItems,checkIntegrity:t.checkIntegrity,awaitAll:t.awaitAll});case 105:e.next=117;break;case 107:if(!(w instanceof ou&&w.checkIntegrity)){e.next=116;break}if(!this.state.needsSync||!w.done){e.next=114;break}if(this.log("Syncing again from integrity check"),B=this.sync({checkIntegrity:!0,queueStrategy:mu.ForceSpawnNew,source:Iu.IntegrityCheck,awaitAll:t.awaitAll}),!t.awaitAll){e.next=114;break}return e.next=114,B;case 114:e.next=117;break;case 116:this.state.clearIntegrityHashes();case 117:E=ku(g);try{for(E.s();!(k=E.n()).done;)k.value.resolve()}catch(e){E.e(e)}finally{E.f()}case 119:case"end":return e.stop()}var o}),e,this)}))),function(){return m.apply(this,arguments)})},{key:"syncOnlineOperation",value:(v=xu(o.a.mark((function e(t,n,r,i){var a,s=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.log("Syncing online user","source:",r,"integrity check",n,"mode:",i,"payloads:",t),e.t0=ou,e.t1=t,e.t2=function(){var e=xu(o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t!==tu.Response){e.next=10;break}if(!n.hasError){e.next=6;break}return e.next=4,s.handleErrorServerResponse(n);case 4:e.next=8;break;case 6:return e.next=8,s.handleSuccessServerResponse(a,n);case 8:e.next=13;break;case 10:if(t!==tu.StatusChanged){e.next=13;break}return e.next=13,s.handleStatusChange(a);case 13:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),e.next=6,this.getLastSyncToken();case 6:return e.t3=e.sent,e.next=9,this.getPaginationToken();case 9:return e.t4=e.sent,e.t5=n,e.t6=this.apiService,a=new e.t0(e.t1,e.t2,e.t3,e.t4,e.t5,e.t6),e.abrupt("return",a);case 14:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return v.apply(this,arguments)})},{key:"syncOfflineOperation",value:(y=xu(o.a.mark((function e(t,n,r){var i,a=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.log("Syncing offline user","source:",n,"mode:",r,"payloads:",t),i=new uu(t,function(){var e=xu(o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t!==tu.Response){e.next=3;break}return e.next=3,a.handleOfflineResponse(n);case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()),e.abrupt("return",i);case 3:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return y.apply(this,arguments)})},{key:"handleStatusChange",value:(g=xu(o.a.mark((function e(t){var n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=t.pendingUploadCount(),r=t.totalUploadCount(),i=r-n,this.opStatus.setUploadStatus(i,r);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return g.apply(this,arguments)})},{key:"handleOfflineResponse",value:(p=xu(o.a.mark((function e(t){var n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.log("Offline Sync Response",t.rawResponse),!((n=t.savedPayloads).length>0)){e.next=8;break}return e.next=5,this.modelManager.emitPayloads(n,_.a.LocalSaved);case 5:return r=this.modelManager.find(Object(s.b)(n)),e.next=8,this.persistPayloads(r);case 8:if(!((i=t.deletedPayloads).length>0)){e.next=12;break}return e.next=12,this.deletePayloads(i);case 12:return this.opStatus.clearError(),this.opStatus.setDownloadStatus(t.retrievedPayloads.length),e.next=16,this.notifyEvent(bi.a.SingleSyncCompleted,t);case 16:case"end":return e.stop()}}),e,this)}))),function(e){return p.apply(this,arguments)})},{key:"handleErrorServerResponse",value:(h=xu(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.log("Sync Error",t),401===t.status&&this.notifyEvent(bi.a.InvalidSession),this.opStatus.setError(t.error),this.notifyEvent(bi.a.SyncError,t.error);case 4:case"end":return e.stop()}}),e,this)}))),function(e){return h.apply(this,arguments)})},{key:"handleSuccessServerResponse",value:(f=xu(o.a.mark((function e(t,n){var r,i,a,s,c,l,A,f,h,p,d,g,y,v;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._simulate_latency){e.next=3;break}return e.next=3,Object(u.E)(this._simulate_latency.latency);case 3:this.log("Online Sync Response",n.rawResponse),this.setLastSyncToken(n.lastSyncToken),this.setPaginationToken(n.paginationToken),this.opStatus.clearError(),this.opStatus.setDownloadStatus(n.retrievedPayloads.length),r=[],i=ku(n.allProcessedPayloads),e.prev=10,i.s();case 12:if((a=i.n()).done){e.next=22;break}if(!(s=a.value).deleted&&s.fields.includes(Gr.a.Content)){e.next=16;break}return e.abrupt("continue",20);case 16:return e.next=18,this.protocolService.payloadByDecryptingPayload(s);case 18:c=e.sent,r.push(c);case 20:e.next=12;break;case 22:e.next=27;break;case 24:e.prev=24,e.t0=e.catch(10),i.e(e.t0);case 27:return e.prev=27,i.f(),e.finish(27);case 30:return l=this.modelManager.getMasterCollection(),A=new Zc(n,r,l,t.payloadsSavedOrSaving),e.next=34,A.collectionsByProcessingResponse();case 34:f=e.sent,h=ku(f),e.prev=36,h.s();case 38:if((p=h.n()).done){e.next=47;break}return d=p.value,e.next=42,this.modelManager.emitCollection(d);case 42:return g=this.modelManager.find(d.uuids()),e.next=45,this.persistPayloads(g);case 45:e.next=38;break;case 47:e.next=52;break;case 49:e.prev=49,e.t1=e.catch(36),h.e(e.t1);case 52:return e.prev=52,h.f(),e.finish(52);case 55:if(!((y=n.deletedPayloads).length>0)){e.next=59;break}return e.next=59,this.deletePayloads(y);case 59:return e.next=61,this.notifyEvent(bi.a.SingleSyncCompleted,n);case 61:if(!n.checkIntegrity){e.next=67;break}return e.next=64,this.computeDataIntegrityHash();case 64:return v=e.sent,e.next=67,this.state.setIntegrityHashes(v,n.integrityHash);case 67:case"end":return e.stop()}}),e,this,[[10,24,27,30],[36,49,52,55]])}))),function(e,t){return f.apply(this,arguments)})},{key:"handleNeverSyncedDeleted",value:(A=xu(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.map((function(e){return e.payloadRepresentation({dirty:!1})})),e.next=3,this.modelManager.emitPayloads(n,_.a.LocalChanged);case 3:return e.next=5,this.persistPayloads(n);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return A.apply(this,arguments)})},{key:"persistPayloads",value:(l=xu(o.a.mark((function e(t){var n=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(0!==t.length){e.next=2;break}return e.abrupt("return");case 2:return e.abrupt("return",this.storageService.savePayloads(t).catch((function(e){throw n.notifyEvent(bi.a.DatabaseWriteError,e),e})));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"deletePayloads",value:(c=xu(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.persistPayloads(t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"computeDataIntegrityHash",value:(a=xu(o.a.mark((function e(){var t,n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,t=this.itemManager.nonDeletedItems.sort((function(e,t){return t.updated_at.getTime()-e.updated_at.getTime()})),n=t.map((function(e){return e.updatedAtTimestamp()})),r=n.join(","),e.abrupt("return",this.protocolService.crypto.sha256(r));case 7:return e.prev=7,e.t0=e.catch(0),console.error("Error computing data integrity hash",e.t0),e.abrupt("return",void 0);case 11:case"end":return e.stop()}}),e,this,[[0,7]])}))),function(){return a.apply(this,arguments)})},{key:"resolveOutOfSync",value:(i=xu(o.a.mark((function e(){var t,n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=new pc(this.apiService,this.protocolService,void 0,"resolve-out-of-sync"),e.next=3,t.run();case 3:return n=e.sent,r=new wu(this.modelManager.getMasterCollection(),Qr.WithPayloads(n,_.a.RemoteRetrieved)),e.next=7,r.resultingCollection();case 7:return i=e.sent,e.next=10,this.modelManager.emitCollection(i);case 10:return e.next=12,this.persistPayloads(i.payloads);case 12:return e.abrupt("return",this.sync({checkIntegrity:!0,source:Iu.ResolveOutOfSync}));case 13:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"statelessDownloadAllItems",value:(r=xu(o.a.mark((function e(t,n){var r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=new pc(this.apiService,this.protocolService,t,n),e.next=3,r.run();case 3:return i=e.sent,e.abrupt("return",i.map((function(e){return Qt(e)})));case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"ut_setDatabaseLoaded",value:function(e){this.databaseLoaded=e}},{key:"ut_clearLastSyncDate",value:function(){this.state.lastSyncDate=void 0}},{key:"ut_beginLatencySimulator",value:function(e){this._simulate_latency={latency:e||1e3,enabled:!0}}},{key:"ut_endLatencySimulator",value:function(){this._simulate_latency=null}}])&&Du(t.prototype,n),j}(Ot.a);function Tu(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var ju=function(){function e(t,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.challenge=t,this.resolve=n,this.validValues=[],this.invalidValues=[],this.artifacts={}}var t,n;return t=e,(n=[{key:"complete",value:function(e){var t,n;e||(e=new I(this.challenge,this.validValues,this.artifacts)),null===(t=this.resolve)||void 0===t||t.call(this,e),null===(n=this.onComplete)||void 0===n||n.call(this)}},{key:"cancel",value:function(){var e,t;null===(e=this.resolve)||void 0===e||e.call(this,null),null===(t=this.onCancel)||void 0===t||t.call(this)}},{key:"isFinished",value:function(){return this.validValues.length===this.challenge.types.length}},{key:"setValueStatus",value:function(e,t,n){var r,i,a=t?this.validValues:this.invalidValues,o=a.find((function(t){return t.type===e.type}));o&&Object(u.B)(a,o),a.push(e),Object.assign(this.artifacts,n),this.isFinished()?this.complete():t?null===(r=this.onValidValue)||void 0===r||r.call(this,e):null===(i=this.onInvalidValue)||void 0===i||i.call(this,e)}}])&&Tu(t.prototype,n),e}();function Hu(e){return(Hu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Uu(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Nu(e,t);var n=Object.prototype.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)?Nu(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function Nu(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Lu(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Ku(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Lu(a,r,i,o,s,"next",e)}function s(e){Lu(a,r,i,o,s,"throw",e)}o(void 0)}))}}function Gu(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function $u(e,t,n){return($u="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Vu(e)););return e}(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(n):i.value}})(e,t,n||e)}function Yu(e,t){return(Yu=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Ju(e,t){return!t||"object"!==Hu(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function Vu(e){return(Vu=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var zu=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Yu(e,t)}(l,e);var t,n,r,i,a,s,c,u=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=Vu(e);if(t){var i=Vu(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return Ju(this,n)}}(l);function l(e,t){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,l),(n=u.call(this)).challengeOperations={},n.storageService=e,n.protocolService=t,n}return t=l,(n=[{key:"deinit",value:function(){this.storageService=void 0,this.protocolService=void 0,this.sendChallenge=void 0,$u(Vu(l.prototype),"deinit",this).call(this)}},{key:"promptForChallengeResponse",value:function(e){var t=this;return new Promise((function(n){t.createOrGetChallengeOperation(e,n)}))}},{key:"promptForChallengeResponseWithCustomValidation",value:function(e){var t=this.createOrGetChallengeOperation(e);return new Promise((function(e){t.customValidator=e}))}},{key:"validateChallengeValue",value:function(e){switch(e.type){case f.LocalPasscode:return this.protocolService.validatePasscode(e.value);case f.AccountPassword:return this.protocolService.validateAccountPassword(e.value);case f.Biometric:return Promise.resolve({valid:!0===e.value})}}},{key:"getLaunchChallenge",value:(c=Ku(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=[],this.protocolService.hasPasscode()&&t.push(f.LocalPasscode),e.next=5,this.hasBiometricsEnabled();case 5:if(e.sent&&t.push(f.Biometric),!(t.length>0)){e.next=11;break}return e.abrupt("return",new m(t,h.ApplicationUnlock));case 11:return e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"isPasscodeLocked",value:function(){return this.protocolService.rootKeyNeedsUnwrapping()}},{key:"hasBiometricsEnabled",value:(s=Ku(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageService.getValue(_t.BiometricsState,Pt.Nonwrapped);case 2:return t=e.sent,e.abrupt("return",Boolean(t));case 4:case"end":return e.stop()}}),e,this)}))),function(){return s.apply(this,arguments)})},{key:"enableBiometrics",value:(a=Ku(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageService.setValue(_t.BiometricsState,!0,Pt.Nonwrapped);case 2:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"disableBiometrics",value:(i=Ku(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageService.setValue(_t.BiometricsState,!1,Pt.Nonwrapped);case 2:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"setChallengeCallbacks",value:function(e,t,n,r,i){var a=this.getChallengeOperation(e);a.onValidValue=t,a.onInvalidValue=n,a.onComplete=r,a.onCancel=i}},{key:"createOrGetChallengeOperation",value:function(e,t){var n=this.getChallengeOperation(e);return n||(n=new ju(e,t),this.challengeOperations[e.id]=n,this.sendChallenge(e)),n.resolve=t,n}},{key:"getChallengeOperation",value:function(e){return this.challengeOperations[e.id]}},{key:"deleteChallengeOperation",value:function(e){delete this.challengeOperations[e.challenge.id]}},{key:"cancelChallenge",value:function(e){var t=this.challengeOperations[e.id];t.cancel(),this.deleteChallengeOperation(t)}},{key:"submitValuesForChallenge",value:(r=Ku(o.a.mark((function e(t,n){var r,i,a,s,c,u,l;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(0!==n.length){e.next=2;break}throw Error("Attempting to submit 0 values for challenge");case 2:if(!(r=this.getChallengeOperation(t)).customValidator){e.next=7;break}r.customValidator(n),e.next=28;break;case 7:i=Uu(n),e.prev=8,i.s();case 10:if((a=i.n()).done){e.next=20;break}return s=a.value,e.next=14,this.validateChallengeValue(s);case 14:c=e.sent,u=c.valid,l=c.artifacts,this.setValidationStatusForChallenge(t,s,u,l);case 18:e.next=10;break;case 20:e.next=25;break;case 22:e.prev=22,e.t0=e.catch(8),i.e(e.t0);case 25:return e.prev=25,i.f(),e.finish(25);case 28:case"end":return e.stop()}}),e,this,[[8,22,25,28]])}))),function(e,t){return r.apply(this,arguments)})},{key:"setValidationStatusForChallenge",value:function(e,t,n,r){var i=this.getChallengeOperation(e);i.setValueStatus(t,n,r),i.isFinished()&&this.deleteChallengeOperation(i)}}])&&Gu(t.prototype,n),l}(Ot.a);function qu(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var n=[],r=!0,i=!1,a=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){i=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}return n}}(e,t)||tl(e,t)||function(){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 Wu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Xu(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Wu(Object(n),!0).forEach((function(t){Zu(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Wu(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Zu(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function el(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=tl(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}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 a,o=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function tl(e,t){if(e){if("string"==typeof e)return nl(e,t);var n=Object.prototype.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)?nl(e,t):void 0}}function nl(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function rl(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function il(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){rl(a,r,i,o,s,"next",e)}function s(e){rl(a,r,i,o,s,"throw",e)}o(void 0)}))}}function al(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var ol=function(){function e(t,n,r,i,a,o,s,c){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.eventHandlers=[],this.services=[],this.streamRemovers=[],this.serviceObservers=[],this.managedSubscribers=[],this.createdNewDatabase=!1,this.started=!1,this.launched=!1,this.dealloced=!1,!r)throw Error("Device Interface must be supplied.");if(!t)throw Error("Environment must be supplied when creating an application.");if(!n)throw Error("Platform must be supplied when creating an application.");if(!i)throw Error("Crypto has to be supplied when creating an application.");if(!a)throw Error("AlertService must be supplied when creating an application.");this.environment=t,this.platform=n,this.namespace=o||"",this.deviceInterface=r,this.crypto=i,this.alertService=a,this.swapClasses=s,this.skipClasses=c,this.constructServices()}var t,n,r,a,l,A,g,y,v,b,I,w,C,k,Q,S,x,D,P,M,F,O,R,T,j,H,U,N,L,K,G,$,Y,J,V,z,q,W,X,Z,ee,te,ne,re,ie,ae,oe,se,ce,ue,le,Ae,fe,he,pe,de;return t=e,(n=[{key:"prepareForLaunch",value:(de=il(o.a.mark((function e(t){var n,r=this;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.setLaunchCallback(t),e.next=3,this.deviceInterface.openDatabase().catch((function(e){r.notifyEvent(c.a.LocalDatabaseReadError,e)}));case 3:return n=e.sent,this.createdNewDatabase=(null==n?void 0:n.isNewDatabase)||!1,e.next=7,this.migrationService.initialize();case 7:return e.next=9,this.handleStage(i.PreparingForLaunch_0);case 9:return e.next=11,this.storageService.initializeFromDisk();case 11:return e.next=13,this.protocolService.initialize();case 13:return e.next=15,this.handleStage(i.ReadyForLaunch_05);case 15:return this.started=!0,e.next=18,this.notifyEvent(c.a.Started);case 18:case"end":return e.stop()}}),e,this)}))),function(e){return de.apply(this,arguments)})},{key:"setLaunchCallback",value:function(e){this.challengeService.sendChallenge=e.receiveChallenge}},{key:"launch",value:(pe=il(o.a.mark((function e(){var t,n,r,a,s,u=this,l=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=l.length>0&&void 0!==l[0]&&l[0],this.launched=!1,e.next=4,this.challengeService.getLaunchChallenge();case 4:if(!(n=e.sent)){e.next=13;break}return e.next=8,this.challengeService.promptForChallengeResponse(n);case 8:if(r=e.sent){e.next=11;break}throw Error("Launch challenge was cancelled.");case 11:return e.next=13,this.handleLaunchChallengeResponse(r);case 13:if(!this.storageService.isStorageWrapped()){e.next=16;break}return e.next=16,this.storageService.decryptStorage();case 16:return e.next=18,this.handleStage(i.StorageDecrypted_09);case 18:return e.next=20,this.apiService.loadHost();case 20:return e.next=22,this.sessionManager.initializeFromDisk();case 22:return this.historyManager.initializeFromDisk(),this.launched=!0,e.next=26,this.notifyEvent(c.a.Launched);case 26:return e.next=28,this.handleStage(i.Launched_10);case 28:return e.next=30,this.syncService.getDatabasePayloads();case 30:return a=e.sent,e.next=33,this.handleStage(i.LoadingDatabase_11);case 33:if(!this.createdNewDatabase){e.next=36;break}return e.next=36,this.syncService.onNewDatabaseCreated();case 36:if(s=this.syncService.loadDatabasePayloads(a).then(il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!u.dealloced){e.next=2;break}throw"Application has been destroyed.";case 2:return e.next=4,u.handleStage(i.LoadedDatabase_12);case 4:return u.beginAutoSyncTimer(),e.abrupt("return",u.syncService.sync({mode:bu.DownloadFirst}));case 6:case"end":return e.stop()}}),e)})))),!t){e.next=40;break}return e.next=40,s;case 40:case"end":return e.stop()}}),e,this)}))),function(){return pe.apply(this,arguments)})},{key:"handleLaunchChallengeResponse",value:(he=il(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.challenge.types.includes(f.LocalPasscode)){e.next=9;break}if(n=t.artifacts.wrappingKey){e.next=7;break}return r=t.getValueForType(f.LocalPasscode),e.next=6,this.protocolService.computeWrappingKey(r.value);case 6:n=e.sent;case 7:return e.next=9,this.protocolService.unwrapRootKey(n);case 9:case"end":return e.stop()}}),e,this)}))),function(e){return he.apply(this,arguments)})},{key:"beginAutoSyncTimer",value:function(){var e=this;this.autoSyncInterval=this.deviceInterface.interval((function(){e.syncService.log("Syncing from autosync"),e.sync()}),3e4)}},{key:"handleStage",value:(fe=il(o.a.mark((function e(t){var n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=el(this.services),e.prev=1,n.s();case 3:if((r=n.n()).done){e.next=9;break}return i=r.value,e.next=7,i.handleApplicationStage(t);case 7:e.next=3;break;case 9:e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),n.e(e.t0);case 14:return e.prev=14,n.f(),e.finish(14);case 17:case"end":return e.stop()}}),e,this,[[1,11,14,17]])}))),function(e){return fe.apply(this,arguments)})},{key:"addEventObserver",value:function(e,t){var n=this,r={callback:e,singleEvent:t};return this.eventHandlers.push(r),function(){Object(u.B)(n.eventHandlers,r)}}},{key:"addSingleEventObserver",value:function(e,t){var n=function(){var n=il(o.a.mark((function n(r){return o.a.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:r===e&&t(e);case 1:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}();return this.addEventObserver(n,e)}},{key:"notifyEvent",value:(Ae=il(o.a.mark((function e(t,n){var r,i,a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=el(this.eventHandlers.slice()),e.prev=1,r.s();case 3:if((i=r.n()).done){e.next=15;break}if(!(a=i.value).singleEvent||a.singleEvent!==t){e.next=10;break}return e.next=8,a.callback(t,n||{});case 8:e.next=13;break;case 10:if(a.singleEvent){e.next=13;break}return e.next=13,a.callback(t,n||{});case 13:e.next=3;break;case 15:e.next=20;break;case 17:e.prev=17,e.t0=e.catch(1),r.e(e.t0);case 20:return e.prev=20,r.f(),e.finish(20);case 23:this.migrationService.handleApplicationEvent(t);case 24:case"end":return e.stop()}}),e,this,[[1,17,20,23]])}))),function(e,t){return Ae.apply(this,arguments)})},{key:"isDatabaseLoaded",value:function(){return this.syncService.isDatabaseLoaded()}},{key:"savePayload",value:(le=il(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=Object(E.b)(t,{dirty:!0,dirtiedDate:new Date}),e.next=3,this.modelManager.emitPayload(n,_.a.LocalChanged);case 3:return e.next=5,this.syncService.sync();case 5:case"end":return e.stop()}}),e,this)}))),function(e){return le.apply(this,arguments)})},{key:"findItem",value:function(e){return this.itemManager.findItem(e)}},{key:"allItems",value:function(){return this.itemManager.items}},{key:"findItems",value:function(e){return this.itemManager.itemsMatchingPredicate(e)}},{key:"getAll",value:function(e){return this.itemManager.findItems(e)}},{key:"mergeItem",value:(ue=il(o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.itemManager.emitItemFromPayload(t.payloadRepresentation(),n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return ue.apply(this,arguments)})},{key:"createManagedItem",value:(ce=il(o.a.mark((function e(t,n){var r,i,a,s=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]&&s[2],i=s.length>3?s[3]:void 0,e.next=4,this.itemManager.createItem(t,n,r,i);case 4:return a=e.sent,e.abrupt("return",a);case 6:case"end":return e.stop()}}),e,this)}))),function(e,t){return ce.apply(this,arguments)})},{key:"createTemplateItem",value:(se=il(o.a.mark((function e(t,n){var r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.itemManager.createTemplateItem(t,n);case 2:return r=e.sent,e.abrupt("return",r);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return se.apply(this,arguments)})},{key:"createItemFromPayload",value:function(e){return Qt(e)}},{key:"createPayloadFromObject",value:function(e){return Object(E.e)(e)}},{key:"getLastSyncDate",value:function(){return this.syncService.getLastSyncDate()}},{key:"getSyncStatus",value:function(){return this.syncService.getStatus()}},{key:"setItemNeedsSync",value:(oe=il(o.a.mark((function e(t){var n,r=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]&&r[1],e.abrupt("return",this.itemManager.setItemDirty(t.uuid,n));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return oe.apply(this,arguments)})},{key:"setItemsNeedsSync",value:(ae=il(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.itemManager.setItemsDirty(Object(s.b)(t)));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return ae.apply(this,arguments)})},{key:"deleteItem",value:(ie=il(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.itemManager.setItemToBeDeleted(t.uuid);case 2:return e.abrupt("return",this.sync());case 3:case"end":return e.stop()}}),e,this)}))),function(e){return ie.apply(this,arguments)})},{key:"deleteItemLocally",value:(re=il(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.itemManager.removeItemLocally(t);case 1:case"end":return e.stop()}}),e,this)}))),function(e){return re.apply(this,arguments)})},{key:"emptyTrash",value:(ne=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.itemManager.emptyTrash();case 2:return e.abrupt("return",this.sync());case 3:case"end":return e.stop()}}),e,this)}))),function(){return ne.apply(this,arguments)})},{key:"getTrashedItems",value:function(){return this.itemManager.trashedItems}},{key:"setDisplayOptions",value:function(e,t,n,r){this.itemManager.setDisplayOptions(e,t,n,r)}},{key:"getDisplayableItems",value:function(e){return this.itemManager.getDisplayableItems(e)}},{key:"insertItem",value:(te=il(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.itemManager.insertItem(t);case 2:return n=e.sent,e.next=5,this.itemManager.changeItems([n.uuid]);case 5:return e.abrupt("return",this.findItem(t.uuid));case 6:case"end":return e.stop()}}),e,this)}))),function(e){return te.apply(this,arguments)})},{key:"saveItem",value:(ee=il(o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=this.itemManager.findItem(t)){e.next=3;break}throw Error("Attempting to save non-inserted item");case 3:if(n.dirty){e.next=6;break}return e.next=6,this.itemManager.changeItem(t);case 6:return e.next=8,this.syncService.sync();case 8:case"end":return e.stop()}}),e,this)}))),function(e){return ee.apply(this,arguments)})},{key:"changeAndSaveItem",value:(Z=il(o.a.mark((function e(t,n){var r,i,a,s=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=s.length>2&&void 0!==s[2]&&s[2],i=s.length>3?s[3]:void 0,a=s.length>4?s[4]:void 0,Object(u.s)(t)){e.next=5;break}throw Error("Must use uuid to change item");case 5:return e.next=7,this.itemManager.changeItems([t],n,r?d.c.UserInteraction:void 0,i);case 7:return e.next=9,this.syncService.sync(a);case 9:return e.abrupt("return",this.findItem(t));case 10:case"end":return e.stop()}}),e,this)}))),function(e,t){return Z.apply(this,arguments)})},{key:"changeAndSaveItems",value:(X=il(o.a.mark((function e(t,n){var r,i,a,s=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>2&&void 0!==s[2]&&s[2],i=s.length>3?s[3]:void 0,a=s.length>4?s[4]:void 0,e.next=5,this.itemManager.changeItems(t,n,r?d.c.UserInteraction:void 0,i);case 5:return e.next=7,this.syncService.sync(a);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t){return X.apply(this,arguments)})},{key:"changeItem",value:(W=il(o.a.mark((function e(t,n){var r,i=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=i.length>2&&void 0!==i[2]&&i[2],Object(u.s)(t)){e.next=3;break}throw Error("Must use uuid to change item");case 3:return e.next=5,this.itemManager.changeItems([t],n,r?d.c.UserInteraction:void 0);case 5:return e.abrupt("return",this.findItem(t));case 6:case"end":return e.stop()}}),e,this)}))),function(e,t){return W.apply(this,arguments)})},{key:"changeItems",value:(q=il(o.a.mark((function e(t,n){var r,i=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=i.length>2&&void 0!==i[2]&&i[2],e.abrupt("return",this.itemManager.changeItems(t,n,r?d.c.UserInteraction:void 0));case 2:case"end":return e.stop()}}),e,this)}))),function(e,t){return q.apply(this,arguments)})},{key:"getItems",value:function(e){return this.itemManager.getItems(e)}},{key:"notesMatchingSmartTag",value:function(e){return this.itemManager.notesMatchingSmartTag(e)}},{key:"referencesForItem",value:function(e,t){var n=this.itemManager.referencesForItem(e.uuid);return t&&(n=n.filter((function(e){return(null==e?void 0:e.content_type)===t}))),n}},{key:"referencingForItem",value:function(e,t){var n=this.itemManager.itemsReferencingItem(e.uuid);return t&&(n=n.filter((function(e){return(null==e?void 0:e.content_type)===t}))),n}},{key:"findTagByTitle",value:function(e){return this.itemManager.findTagByTitle(e)}},{key:"findOrCreateTag",value:(z=il(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.itemManager.findOrCreateTagByTitle(t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return z.apply(this,arguments)})},{key:"getSmartTags",value:function(){return this.itemManager.getSmartTags()}},{key:"getNoteCount",value:function(){return this.itemManager.noteCount}},{key:"streamItems",value:function(e,t){var n=this,r=this.itemManager.addObserver(e,(function(e,n,r,i){var a=e.concat(n).concat(r);t(a,i)})),i=this.itemManager.getItems(e);return i.length>0&&t(i),this.streamRemovers.push(r),function(){r(),Object(u.B)(n.streamRemovers,r)}}},{key:"setHost",value:(V=il(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiService.setHost(t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return V.apply(this,arguments)})},{key:"getHost",value:(J=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.apiService.getHost());case 1:case"end":return e.stop()}}),e,this)}))),function(){return J.apply(this,arguments)})},{key:"getUser",value:function(){if(!this.launched)throw"Attempting to access user before application unlocked";return this.sessionManager.getUser()}},{key:"getProtocolEncryptionDisplayName",value:function(){return this.protocolService.getDefaultOperatorEncryptionDisplayName()}},{key:"getUserVersion",value:(Y=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.protocolService.getUserVersion());case 1:case"end":return e.stop()}}),e,this)}))),function(){return Y.apply(this,arguments)})},{key:"protocolUpgradeAvailable",value:($=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.protocolService.upgradeAvailable());case 1:case"end":return e.stop()}}),e,this)}))),function(){return $.apply(this,arguments)})},{key:"isEncryptionAvailable",value:(G=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",!Object(u.p)(this.getUser())||this.hasPasscode());case 1:case"end":return e.stop()}}),e,this)}))),function(){return G.apply(this,arguments)})},{key:"upgradeProtocolVersion",value:(K=il(o.a.mark((function e(){var t,n,r,i,a,s,c,u,l,A,p;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.hasPasscode(),n=!this.noAccount(),r=[],t&&r.push(f.LocalPasscode),n&&r.push(f.AccountPassword),i=new m(r,h.ProtocolUpgrade),e.next=8,this.challengeService.promptForChallengeResponse(i);case 8:if(a=e.sent){e.next=11;break}return e.abrupt("return",{canceled:!0});case 11:if(s=this.alertService.blockingDialog("Your account's encryption version is being upgraded. Do not close the application until this process completes."),e.prev=12,t&&(u=a.getValueForType(f.LocalPasscode),c=u.value),!n){e.next=22;break}return l=a.getValueForType(f.AccountPassword),A=l.value,e.next=19,this.changePassword(A,A,c,{validatePasswordStrength:!1});case 19:if(!(null==(p=e.sent)?void 0:p.error)){e.next=22;break}return e.abrupt("return",{error:p.error});case 22:if(!c){e.next=25;break}return e.next=25,this.changePasscode(c);case 25:return e.abrupt("return",{success:!0});case 28:return e.prev=28,e.t0=e.catch(12),e.abrupt("return",{error:e.t0});case 31:return e.prev=31,s(),e.finish(31);case 34:case"end":return e.stop()}}),e,this,[[12,28,31,34]])}))),function(){return K.apply(this,arguments)})},{key:"noAccount",value:function(){return!this.hasAccount()}},{key:"hasAccount",value:function(){return this.protocolService.hasAccount()}},{key:"importData",value:(L=il(o.a.mark((function e(t,n){var r,i,a,s,c,u,l=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=l.length>2&&void 0!==l[2]&&l[2],e.next=3,this.protocolService.payloadsByDecryptingBackupFile(t,n);case 3:return i=e.sent,a=i.filter((function(e){return!e.errorDecrypting})).map((function(e){return e.content_type===B.a.Component&&e.safeContent.active?Object(E.b)(e,{content:Xu(Xu({},e.safeContent),{},{active:!1})}):e})),e.next=7,this.modelManager.importPayloads(a);case 7:if(s=e.sent,c=this.sync(),!r){e.next=12;break}return e.next=12,c;case 12:return u=this.getAll(s),e.abrupt("return",{affectedItems:u,errorCount:i.length-a.length});case 14:case"end":return e.stop()}}),e,this)}))),function(e,t){return L.apply(this,arguments)})},{key:"createBackupFile",value:(N=il(o.a.mark((function e(t,n){var r,i=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=i.length>2&&void 0!==i[2]&&i[2],e.abrupt("return",this.protocolService.createBackupFile(t,n,r));case 2:case"end":return e.stop()}}),e,this)}))),function(e,t){return N.apply(this,arguments)})},{key:"isEphemeralSession",value:function(){return this.storageService.isEphemeralSession()}},{key:"lockSyncing",value:function(){this.syncService.lockSyncing()}},{key:"unlockSyncing",value:function(){this.syncService.unlockSyncing()}},{key:"sync",value:(U=il(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.syncService.sync(t));case 1:case"end":return e.stop()}}),e,this)}))),function(e){return U.apply(this,arguments)})},{key:"isOutOfSync",value:(H=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.syncService.isOutOfSync());case 1:case"end":return e.stop()}}),e,this)}))),function(){return H.apply(this,arguments)})},{key:"resolveOutOfSync",value:(j=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.syncService.resolveOutOfSync());case 1:case"end":return e.stop()}}),e,this)}))),function(){return j.apply(this,arguments)})},{key:"setValue",value:(T=il(o.a.mark((function e(t,n,r){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.storageService.setValue(t,n,r));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return T.apply(this,arguments)})},{key:"getValue",value:(R=il(o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.storageService.getValue(t,n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return R.apply(this,arguments)})},{key:"removeValue",value:(O=il(o.a.mark((function e(t,n){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.storageService.removeValue(t,n));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return O.apply(this,arguments)})},{key:"clearDatabase",value:(F=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.storageService.clearAllPayloads());case 1:case"end":return e.stop()}}),e,this)}))),function(){return F.apply(this,arguments)})},{key:"rewriteItemsKeys",value:(M=il(o.a.mark((function e(){var t,n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.itemManager.itemsKeys(),n=t.map((function(e){return e.payloadRepresentation()})),e.next=4,this.storageService.deletePayloads(n);case 4:return e.next=6,this.syncService.persistPayloads(n);case 6:case"end":return e.stop()}}),e,this)}))),function(){return M.apply(this,arguments)})},{key:"prepareForDeinit",value:(P=il(o.a.mark((function e(){var t,n,r=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=r.length>0&&void 0!==r[0]?r[0]:0,n=Promise.all(this.services.map((function(e){return e.blockDeinit()}))),0!==t){e.next=7;break}return e.next=5,n;case 5:e.next=9;break;case 7:return e.next=9,Promise.race([n,Object(u.E)(t)]);case 9:case"end":return e.stop()}}),e,this)}))),function(){return P.apply(this,arguments)})},{key:"promptForCustomChallenge",value:function(e){var t;return null===(t=this.challengeService)||void 0===t?void 0:t.promptForChallengeResponse(e)}},{key:"setChallengeCallbacks",value:function(e){var t=e.challenge,n=e.onValidValue,r=e.onInvalidValue,i=e.onComplete,a=e.onCancel;return this.challengeService.setChallengeCallbacks(t,n,r,i,a)}},{key:"submitValuesForChallenge",value:function(e,t){return this.challengeService.submitValuesForChallenge(e,t)}},{key:"cancelChallenge",value:function(e){this.challengeService.cancelChallenge(e)}},{key:"deinit",value:function(){clearInterval(this.autoSyncInterval);var e,t=el(this.serviceObservers);try{for(t.s();!(e=t.n()).done;)(0,e.value)()}catch(e){t.e(e)}finally{t.f()}var n,r=el(this.managedSubscribers);try{for(r.s();!(n=r.n()).done;)(0,n.value)()}catch(e){r.e(e)}finally{r.f()}var i,a=el(this.services);try{for(a.s();!(i=a.n()).done;)i.value.deinit()}catch(e){a.e(e)}finally{a.f()}this.deviceInterface.deinit(),this.deviceInterface=void 0,this.crypto=void 0,this.createdNewDatabase=!1,this.services.length=0,this.serviceObservers.length=0,this.managedSubscribers.length=0,this.streamRemovers.length=0,this.clearServices(),this.dealloced=!0,this.started=!1}},{key:"getWrappingKeyIfNecessary",value:(D=il(o.a.mark((function e(t){var n,r,i,a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.hasPasscode()){e.next=2;break}return e.abrupt("return",{});case 2:if(t){e.next=11;break}return n=new m([f.LocalPasscode],h.ResaveRootKey),e.next=6,this.challengeService.promptForChallengeResponse(n);case 6:if(r=e.sent){e.next=9;break}return e.abrupt("return",{canceled:!0});case 9:i=r.getValueForType(f.LocalPasscode),t=i.value;case 11:return e.next=13,this.protocolService.computeWrappingKey(t);case 13:return a=e.sent,e.abrupt("return",{wrappingKey:a});case 15:case"end":return e.stop()}}),e,this)}))),function(e){return D.apply(this,arguments)})},{key:"register",value:(x=il(o.a.mark((function e(t,n){var r,i,a,s,u,l=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=l.length>2&&void 0!==l[2]&&l[2],i=!(l.length>3&&void 0!==l[3])||l[3],e.next=4,this.getWrappingKeyIfNecessary();case 4:if(a=e.sent,s=a.wrappingKey,!a.canceled){e.next=9;break}return e.abrupt("return");case 9:return this.lockSyncing(),e.next=12,this.sessionManager.register(t,n);case 12:if((u=e.sent).response.error){e.next=35;break}return e.next=16,this.protocolService.setNewRootKey(u.rootKey,u.keyParams,s);case 16:return this.syncService.resetSyncState(),e.next=19,this.storageService.setPersistencePolicy(r?xt.Ephemeral:xt.Default);case 19:if(!i){e.next=24;break}return e.next=22,this.syncService.markAllItemsAsNeedingSync(!0);case 22:e.next=27;break;case 24:return this.itemManager.removeAllItemsFromMemory(),e.next=27,this.clearDatabase();case 27:return e.next=29,this.notifyEvent(c.a.SignedIn);case 29:return this.unlockSyncing(),e.next=32,this.syncService.downloadFirstSync(300);case 32:this.protocolService.decryptErroredItems(),e.next=36;break;case 35:this.unlockSyncing();case 36:return e.abrupt("return",u.response);case 37:case"end":return e.stop()}}),e,this)}))),function(e,t){return x.apply(this,arguments)})},{key:"signIn",value:(S=il(o.a.mark((function e(t,n){var r,i,a,s,u,l,A,f,h,p,d=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=d.length>2&&void 0!==d[2]&&d[2],i=d.length>3&&void 0!==d[3]&&d[3],a=d.length>4?d[4]:void 0,s=d.length>5?d[5]:void 0,u=!(d.length>6&&void 0!==d[6])||d[6],l=d.length>7&&void 0!==d[7]&&d[7],e.next=8,this.getWrappingKeyIfNecessary();case 8:if(A=e.sent,f=A.wrappingKey,!A.canceled){e.next=13;break}return e.abrupt("return");case 13:return this.lockSyncing(),e.next=16,this.sessionManager.signIn(t,n,r,a,s);case 16:if((h=e.sent).response.error){e.next=45;break}return e.next=20,this.protocolService.setNewRootKey(h.rootKey,h.keyParams,f);case 20:return this.syncService.resetSyncState(),e.next=23,this.storageService.setPersistencePolicy(i?xt.Ephemeral:xt.Default);case 23:if(!u){e.next=28;break}return e.next=26,this.syncService.markAllItemsAsNeedingSync(!0);case 26:e.next=31;break;case 28:return this.itemManager.removeAllItemsFromMemory(),e.next=31,this.clearDatabase();case 31:return e.next=33,this.notifyEvent(c.a.SignedIn);case 33:if(this.unlockSyncing(),p=this.syncService.downloadFirstSync(1e3,{checkIntegrity:!0,awaitAll:l}),!l){e.next=42;break}return e.next=38,p;case 38:return e.next=40,this.protocolService.decryptErroredItems();case 40:e.next=43;break;case 42:this.protocolService.decryptErroredItems();case 43:e.next=46;break;case 45:this.unlockSyncing();case 46:return e.abrupt("return",h.response);case 47:case"end":return e.stop()}}),e,this)}))),function(e,t){return S.apply(this,arguments)})},{key:"changePassword",value:(Q=il(o.a.mark((function e(t,n,r){var i,a,s,c,u,l,A,f,h,p,d,g,y,v=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=v.length>3&&void 0!==v[3]?v[3]:{},void 0!==(a=i.validatePasswordStrength)&&!a){e.next=4;break}if(!(n.length<8)){e.next=4;break}return e.abrupt("return",{error:Error(rn(8))});case 4:return e.next=6,this.getWrappingKeyIfNecessary(r);case 6:if(s=e.sent,c=s.wrappingKey,!s.canceled){e.next=11;break}return e.abrupt("return",{});case 11:return e.next=13,this.protocolService.changePassword(this.getUser().email,t,n,c);case 13:if(u=e.sent,l=qu(u,2),A=l[0],f=l[1],!A){e.next=19;break}return e.abrupt("return",{error:A});case 19:return h=f.currentServerPassword,p=f.newRootKey,d=f.newKeyParams,g=f.rollback,e.next=22,this.syncService.sync({awaitAll:!0});case 22:if(this.protocolService.getDefaultItemsKey().updated_at.getTime()>0){e.next=29;break}return e.next=26,g();case 26:return e.next=28,this.syncService.sync({awaitAll:!0});case 28:return e.abrupt("return",{error:Error("Could not connect to server.")});case 29:return this.lockSyncing(),e.next=32,this.sessionManager.changePassword(h,p.serverPassword,d);case 32:if(!(y=e.sent).error){e.next=38;break}return e.next=36,g();case 36:return e.next=38,this.syncService.sync({awaitAll:!0});case 38:return this.unlockSyncing(),e.abrupt("return",y);case 40:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return Q.apply(this,arguments)})},{key:"signOut",value:(k=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.sessionManager.signOut();case 2:return e.next=4,this.protocolService.clearLocalKeyState();case 4:return e.next=6,this.storageService.clearAllData();case 6:return e.next=8,this.notifyEvent(c.a.SignedOut);case 8:return e.next=10,this.prepareForDeinit();case 10:this.deinit();case 11:case"end":return e.stop()}}),e,this)}))),function(){return k.apply(this,arguments)})},{key:"validateAccountPassword",value:(C=il(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.protocolService.validateAccountPassword(t);case 2:return n=e.sent,r=n.valid,e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)}))),function(e){return C.apply(this,arguments)})},{key:"isStarted",value:function(){return this.started}},{key:"isLaunched",value:function(){return this.launched}},{key:"hasBiometrics",value:(w=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.challengeService.hasBiometricsEnabled());case 1:case"end":return e.stop()}}),e,this)}))),function(){return w.apply(this,arguments)})},{key:"enableBiometrics",value:(I=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.challengeService.enableBiometrics());case 1:case"end":return e.stop()}}),e,this)}))),function(){return I.apply(this,arguments)})},{key:"disableBiometrics",value:(b=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.challengeService.disableBiometrics());case 1:case"end":return e.stop()}}),e,this)}))),function(){return b.apply(this,arguments)})},{key:"hasPasscode",value:function(){return this.protocolService.hasPasscode()}},{key:"isLocked",value:(v=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.started){e.next=2;break}return e.abrupt("return",!0);case 2:return e.abrupt("return",this.challengeService.isPasscodeLocked());case 3:case"end":return e.stop()}}),e,this)}))),function(){return v.apply(this,arguments)})},{key:"lock",value:(y=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=3,this.prepareForDeinit(500);case 3:return e.abrupt("return",this.deinit());case 4:case"end":return e.stop()}}),e,this)}))),function(){return y.apply(this,arguments)})},{key:"setPasscode",value:(g=il(o.a.mark((function e(t){var n,r,i,a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.generateUuid();case 2:return n=e.sent,e.next=5,this.protocolService.createRootKey(n,t);case 5:return r=e.sent,i=r.key,a=r.keyParams,e.next=10,this.protocolService.setNewRootKeyWrapper(i,a);case 10:return e.next=12,this.rewriteItemsKeys();case 12:return e.next=14,this.syncService.sync();case 14:case"end":return e.stop()}}),e,this)}))),function(e){return g.apply(this,arguments)})},{key:"removePasscode",value:(A=il(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.protocolService.removeRootKeyWrapper();case 2:return e.next=4,this.rewriteItemsKeys();case 4:case"end":return e.stop()}}),e,this)}))),function(){return A.apply(this,arguments)})},{key:"changePasscode",value:(l=il(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.removePasscode();case 2:return e.abrupt("return",this.setPasscode(t));case 3:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"getStorageEncryptionPolicy",value:function(){return this.storageService.getStorageEncryptionPolicy()}},{key:"setStorageEncryptionPolicy",value:(a=il(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageService.setEncryptionPolicy(t);case 2:return e.abrupt("return",this.protocolService.repersistAllItems());case 3:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"generateUuid",value:function(){return p.GenerateUuid()}},{key:"changeDeviceInterface",value:(r=il(o.a.mark((function e(t){var n,r,i;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.deviceInterface=t,n=el(this.services);try{for(n.s();!(r=n.n()).done;)(i=r.value).deviceInterface&&(i.deviceInterface=t)}catch(e){n.e(e)}finally{n.f()}case 3:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"constructServices",value:function(){this.createModelManager(),this.createItemManager(),this.createStorageManager(),this.createProtocolService();var e={payloadByEncryptingPayload:this.protocolService.payloadByEncryptingPayload.bind(this.protocolService),payloadByDecryptingPayload:this.protocolService.payloadByDecryptingPayload.bind(this.protocolService)};this.storageService.encryptionDelegate=e,this.createChallengeService(),this.createMigrationService(),this.createHttpManager(),this.createApiService(),this.createSessionManager(),this.createSyncManager(),this.createSingletonManager(),this.createComponentManager(),this.createPrivilegesService(),this.createHistoryManager(),this.createActionsManager()}},{key:"clearServices",value:function(){this.migrationService=void 0,this.alertService=void 0,this.httpService=void 0,this.modelManager=void 0,this.protocolService=void 0,this.storageService=void 0,this.apiService=void 0,this.sessionManager=void 0,this.syncService=void 0,this.challengeService=void 0,this.singletonManager=void 0,this.componentManager=void 0,this.privilegesService=void 0,this.actionsManager=void 0,this.historyManager=void 0,this.itemManager=void 0,this.services=[]}},{key:"createMigrationService",value:function(){this.migrationService=new Oa({protocolService:this.protocolService,deviceInterface:this.deviceInterface,storageService:this.storageService,challengeService:this.challengeService,itemManager:this.itemManager,environment:this.environment,namespace:this.namespace}),this.services.push(this.migrationService)}},{key:"createApiService",value:function(){this.apiService=new Hn(this.httpService,this.storageService),this.services.push(this.apiService)}},{key:"createItemManager",value:function(){this.itemManager=new ac(this.modelManager),this.services.push(this.itemManager)}},{key:"createComponentManager",value:function(){this.shouldSkipClass(cr)||(this.componentManager=new cr(this.itemManager,this.syncService,this.alertService,this.environment,this.platform,this.deviceInterface.timeout),this.services.push(this.componentManager))}},{key:"createHttpManager",value:function(){this.httpService=new En,this.services.push(this.httpService)}},{key:"createModelManager",value:function(){this.modelManager=new mi,this.services.push(this.modelManager)}},{key:"createSingletonManager",value:function(){this.singletonManager=new Di(this.itemManager,this.syncService),this.services.push(this.singletonManager)}},{key:"createStorageManager",value:function(){this.storageService=new Vt(this.deviceInterface,this.namespace),this.services.push(this.storageService)}},{key:"createProtocolService",value:function(){var e=this;this.protocolService=new zo(this.itemManager,this.modelManager,this.deviceInterface,this.storageService,this.crypto),this.protocolService.onKeyStatusChange(il(o.a.mark((function t(){return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.notifyEvent(c.a.KeyStatusChanged);case 2:case"end":return t.stop()}}),t)})))),this.services.push(this.protocolService)}},{key:"createSessionManager",value:function(){this.sessionManager=new dn(this.storageService,this.apiService,this.alertService,this.protocolService),this.services.push(this.sessionManager)}},{key:"createSyncManager",value:function(){var e=this;this.syncService=new Ru(this.itemManager,this.sessionManager,this.protocolService,this.storageService,this.modelManager,this.apiService,this.deviceInterface.interval);var t=function(){var t=il(o.a.mark((function t(n){var r;return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!(r=Object(c.c)(n))){t.next=4;break}return t.next=4,e.notifyEvent(r);case 4:return t.next=6,e.protocolService.onSyncEvent(n);case 6:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),n=this.syncService.addEventObserver(t);this.serviceObservers.push(n),this.services.push(this.syncService)}},{key:"createChallengeService",value:function(){this.challengeService=new zu(this.storageService,this.protocolService),this.services.push(this.challengeService)}},{key:"createPrivilegesService",value:function(){this.privilegesService=new js(this.itemManager,this.syncService,this.singletonManager,this.protocolService,this.storageService,this.sessionManager),this.services.push(this.privilegesService)}},{key:"createHistoryManager",value:function(){this.historyManager=new Cs(this.itemManager,this.storageService,[B.a.Note],this.deviceInterface.timeout),this.services.push(this.historyManager)}},{key:"createActionsManager",value:function(){this.actionsManager=new Li(this.itemManager,this.alertService,this.deviceInterface,this.httpService,this.modelManager,this.protocolService,this.syncService),this.services.push(this.actionsManager)}},{key:"shouldSkipClass",value:function(e){return this.skipClasses&&this.skipClasses.includes(e)}},{key:"getClass",value:function(e){var t=this.swapClasses&&this.swapClasses.find((function(t){return t.swap===e}));return t?t.with:e}}])&&al(t.prototype,n),e}();function sl(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function cl(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var ul=function(){function e(t,n,r){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.namespace=t,this.timeout=n||setTimeout.bind(Object(u.m)()),this.interval=r||setInterval.bind(Object(u.m)())}var t,n,r,i;return t=e,(n=[{key:"deinit",value:function(){this.timeout=null,this.interval=null}},{key:"getJsonParsedStorageValue",value:(r=o.a.mark((function e(t){var n;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getRawStorageValue(t);case 2:return n=e.sent,e.abrupt("return",n?JSON.parse(n):n);case 4:case"end":return e.stop()}}),e,this)})),i=function(){var e=this,t=arguments;return new Promise((function(n,i){var a=r.apply(e,t);function o(e){sl(a,n,i,o,s,"next",e)}function s(e){sl(a,n,i,o,s,"throw",e)}o(void 0)}))},function(e){return i.apply(this,arguments)})},{key:"keychainStorageKey",get:function(){return this.namespace?"".concat(this.namespace,"-").concat("keychain"):"keychain"}}])&&cl(t.prototype,n),e}();function ll(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function Al(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var fl=function(){function e(t,n,r){var i=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.item=n.findItem(t),r&&r(this.item),this.removeObserver=n.streamItems(this.item.content_type,function(){var e,n=(e=o.a.mark((function e(n){var a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:(a=n.find((function(e){return e.uuid===t})))&&(i.item=a,r&&r(i.item));case 2:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){ll(a,r,i,o,s,"next",e)}function s(e){ll(a,r,i,o,s,"throw",e)}o(void 0)}))});return function(e){return n.apply(this,arguments)}}())}var t,n;return t=e,(n=[{key:"deinit",value:function(){this.removeObserver(),this.removeObserver=void 0}}])&&Al(t.prototype,n),e}(),hl=n(78),pl=n(28)}])},function(e,t,n){"use strict";n.d(t,"e",(function(){return r})),n.d(t,"f",(function(){return i})),n.d(t,"c",(function(){return a})),n.d(t,"a",(function(){return s})),n.d(t,"b",(function(){return c})),n.d(t,"d",(function(){return u}));const r=!1;function i(e){return null==e}function a(){try{const e=navigator.platform.toLowerCase();let t="";return-1!==e.indexOf("mac")?t="mac":-1!==e.indexOf("win")&&(t="windows"),-1!==e.indexOf("linux")&&(t="linux"),t+(u()?"-desktop":"-web")}catch(e){return"unknown-platform"}}let o;function s(e){if("undefined"!=typeof Intl&&Intl.DateTimeFormat){if(!o){const e=navigator.languages&&navigator.languages.length?navigator.languages[0]:navigator.language;o=new Intl.DateTimeFormat(e,{year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit"})}return o.format(e)}return e.toDateString()+" "+e.toLocaleTimeString()}function c(e,t,n=!1){let r;return()=>{const i=this,a=arguments,o=n&&!r;clearTimeout(r),r=setTimeout((function(){r=null,n||e.apply(i,a)}),t),o&&e.apply(i,a)}}function u(){return window.isElectron}Array.prototype.includes||Object.defineProperty(Array.prototype,"includes",{value:function(e,t){if(null==this)throw new TypeError('"this" is null or not defined');var n=Object(this),r=n.length>>>0;if(0===r)return!1;var i,a,o=0|t,s=Math.max(o>=0?o:r-Math.abs(o),0);for(;s<r;){if((i=n[s])===(a=e)||"number"==typeof i&&"number"==typeof a&&isNaN(i)&&isNaN(a))return!0;s++}return!1}})},function(e,t,n){"use strict";n.d(t,"b",(function(){return c})),n.d(t,"c",(function(){return u})),n.d(t,"a",(function(){return l}));var r=n(1),i=n(54),a=n.n(i),o=n(0);function s(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}let c,u;!function(e){e[e.TagChanged=1]="TagChanged",e[e.ActiveEditorChanged=2]="ActiveEditorChanged",e[e.PreferencesChanged=3]="PreferencesChanged",e[e.PanelResized=4]="PanelResized",e[e.EditorFocused=5]="EditorFocused",e[e.BeganBackupDownload=6]="BeganBackupDownload",e[e.EndedBackupDownload=7]="EndedBackupDownload",e[e.DesktopExtsReady=8]="DesktopExtsReady",e[e.WindowDidFocus=9]="WindowDidFocus",e[e.WindowDidBlur=10]="WindowDidBlur"}(c||(c={})),function(e){e[e.UserInteraction=1]="UserInteraction",e[e.Script=2]="Script"}(u||(u={}));class l{constructor(e,t,n){s(this,"$rootScope",void 0),s(this,"$timeout",void 0),s(this,"application",void 0),s(this,"observers",[]),s(this,"locked",!0),s(this,"unsubApp",void 0),s(this,"rootScopeCleanup1",void 0),s(this,"rootScopeCleanup2",void 0),s(this,"onVisibilityChange",void 0),s(this,"selectedTag",void 0),s(this,"userPreferences",void 0),s(this,"multiEditorEnabled",!1),this.$timeout=t,this.$rootScope=e,this.application=n,this.registerVisibilityObservers(),this.addAppEventObserver(),this.streamNotesAndTags();this.onVisibilityChange=(()=>{const e="visible"===document.visibilityState?c.WindowDidFocus:c.WindowDidBlur;this.notifyEvent(e)}).bind(this)}deinit(){this.unsubApp(),this.unsubApp=void 0,this.observers.length=0,this.rootScopeCleanup1&&(this.rootScopeCleanup1(),this.rootScopeCleanup2(),this.rootScopeCleanup1=void 0,this.rootScopeCleanup2=void 0),document.removeEventListener("visibilitychange",this.onVisibilityChange),this.onVisibilityChange=void 0}createEditor(e){const t=this.getActiveEditor();!t||this.multiEditorEnabled?this.application.editorGroup.createEditor(void 0,e):t.reset(e)}async openEditor(e){const t=this.application.findItem(e),n=async()=>{const n=this.getActiveEditor();!n||this.multiEditorEnabled?this.application.editorGroup.createEditor(e):n.setNote(t),await this.notifyEvent(c.ActiveEditorChanged)};return t&&t.safeContent.protected&&await this.application.privilegesService.actionRequiresPrivilege(o.ProtectedAction.ViewProtectedNotes)?new Promise(e=>{this.application.presentPrivilegesModal(o.ProtectedAction.ViewProtectedNotes,()=>{n().then(e)})}):n()}getActiveEditor(){return this.application.editorGroup.editors[0]}getEditors(){return this.application.editorGroup.editors}closeEditor(e){this.application.editorGroup.closeEditor(e)}closeActiveEditor(){this.application.editorGroup.closeActiveEditor()}closeAllEditors(){this.application.editorGroup.closeAllEditors()}editorForNote(e){for(const t of this.getEditors())if(t.note.uuid===e.uuid)return t}streamNotesAndTags(){this.application.streamItems([o.ContentType.Note,o.ContentType.Tag],async(e,t)=>{if(t===o.PayloadSource.PreSyncSave){const t=e.filter(e=>e.content_type===o.ContentType.Note);for(const e of t){var n,r;const t=this.editorForNote(e);t&&((e.deleted||e.trashed&&!(null===(n=this.selectedTag)||void 0===n?void 0:n.isTrashTag)||e.archived&&!(null===(r=this.selectedTag)||void 0===r?void 0:r.isArchiveTag))&&this.closeEditor(t))}}if(this.selectedTag){const t=e.find(e=>e.uuid===this.selectedTag.uuid);t&&(this.selectedTag=t)}})}addAppEventObserver(){this.unsubApp=this.application.addEventObserver(async e=>{e===o.ApplicationEvent.Started?this.locked=!0:e===o.ApplicationEvent.Launched&&(this.locked=!1)})}isLocked(){return this.locked}registerVisibilityObservers(){Object(r.d)()?(this.rootScopeCleanup1=this.$rootScope.$on("window-lost-focus",()=>{this.notifyEvent(c.WindowDidBlur)}),this.rootScopeCleanup2=this.$rootScope.$on("window-gained-focus",()=>{this.notifyEvent(c.WindowDidFocus)})):document.addEventListener("visibilitychange",this.onVisibilityChange)}addObserver(e){return this.observers.push(e),()=>{a()(this.observers,e)}}async notifyEvent(e,t){return new Promise(n=>{this.$timeout(async()=>{for(const n of this.observers)await n(e,t);n()})})}setSelectedTag(e){if(this.selectedTag===e)return;const t=this.selectedTag;this.selectedTag=e,this.notifyEvent(c.TagChanged,{tag:e,previousTag:t})}getNoteTags(e){return this.application.referencingForItem(e).filter(e=>e.content_type===o.ContentType.Tag)}getTagNotes(e){return e.isSmartTag()?this.application.notesMatchingSmartTag(e):this.application.referencesForItem(e).filter(e=>e.content_type===o.ContentType.Note)}getSelectedTag(){return this.selectedTag}setUserPreferences(e){this.userPreferences=e,this.notifyEvent(c.PreferencesChanged)}panelDidResize(e,t){this.notifyEvent(c.PanelResized,{panel:e,collapsed:t})}editorDidFocus(e){this.notifyEvent(c.EditorFocused,{eventSource:e})}beganBackupDownload(){this.notifyEvent(c.BeganBackupDownload)}endedBackupDownload(e){this.notifyEvent(c.EndedBackupDownload,{success:e})}desktopExtensionsReady(){this.notifyEvent(c.DesktopExtsReady)}}l.$inject=["$rootScope","$timeout","application"]},function(e,t,n){n(83),e.exports=angular},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty;function i(e,t){return Array.isArray(e)?function(e,t){for(var n,r="",a="",o=Array.isArray(t),s=0;s<e.length;s++)(n=i(e[s]))&&(o&&t[s]&&(n=c(n)),r=r+a+n,a=" ");return r}(e,t):e&&"object"==typeof e?function(e){var t="",n="";for(var i in e)i&&e[i]&&r.call(e,i)&&(t=t+n+i,n=" ");return t}(e):e||""}function a(e){if(!e)return"";if("object"==typeof e){var t="";for(var n in e)r.call(e,n)&&(t=t+n+":"+e[n]+";");return t}return e+""}function o(e,t,n,r){if(!1===t||null==t||!t&&("class"===e||"style"===e))return"";if(!0===t)return" "+(r?e:e+'="'+e+'"');var i=typeof t;return"object"!==i&&"function"!==i||"function"!=typeof t.toJSON||(t=t.toJSON()),"string"==typeof t||(t=JSON.stringify(t),n||-1===t.indexOf('"'))?(n&&(t=c(t))," "+e+'="'+t+'"'):" "+e+"='"+t.replace(/'/g,"&#39;")+"'"}t.merge=function e(t,n){if(1===arguments.length){for(var r=t[0],i=1;i<t.length;i++)r=e(r,t[i]);return r}for(var o in n)if("class"===o){var s=t[o]||[];t[o]=(Array.isArray(s)?s:[s]).concat(n[o]||[])}else if("style"===o){s=(s=a(t[o]))&&";"!==s[s.length-1]?s+";":s;var c=a(n[o]);c=c&&";"!==c[c.length-1]?c+";":c,t[o]=s+c}else t[o]=n[o];return t},t.classes=i,t.style=a,t.attr=o,t.attrs=function(e,t){var n="";for(var s in e)if(r.call(e,s)){var c=e[s];if("class"===s){c=i(c),n=o(s,c,!1,t)+n;continue}"style"===s&&(c=a(c)),n+=o(s,c,!1,t)}return n};var s=/["&<>]/;function c(e){var t=""+e,n=s.exec(t);if(!n)return e;var r,i,a,o="";for(r=n.index,i=0;r<t.length;r++){switch(t.charCodeAt(r)){case 34:a="&quot;";break;case 38:a="&amp;";break;case 60:a="&lt;";break;case 62:a="&gt;";break;default:continue}i!==r&&(o+=t.substring(i,r)),i=r+1,o+=a}return i!==r?o+t.substring(i,r):o}t.escape=c,t.rethrow=function e(t,r,i,a){if(!(t instanceof Error))throw t;if(!("undefined"==typeof window&&r||a))throw t.message+=" on line "+i,t;try{a=a||n(113).readFileSync(r,"utf8")}catch(n){e(t,null,i)}var o=3,s=a.split("\n"),c=Math.max(i-o,0),u=Math.min(s.length,i+o);o=s.slice(c,u).map((function(e,t){var n=t+c+1;return(n==i?" > ":" ")+n+"| "+e})).join("\n");throw t.path=r,t.message=(r||"Pug")+":"+i+"\n"+o+"\n\n"+t.message,t}},function(e,t,n){"use strict";n.d(t,"c",(function(){return a})),n.d(t,"b",(function(){return o})),n.d(t,"a",(function(){return s}));var r=n(0),i=n(19);function a({text:e,title:t,confirmButtonText:n="Confirm",cancelButtonText:r="Cancel",confirmButtonStyle:a="info"}){return new Promise(o=>{new i.SKAlert({title:t,text:e,buttons:[{text:r,style:"neutral",action(){o(!1)}},{text:n,style:a,action(){o(!0)}}]}).present()})}function o({title:e,text:t,closeButtonText:n="OK"}){return new Promise(r=>{new i.SKAlert({title:e,text:t,buttons:[{text:n,style:"neutral",action:r}]}).present()})}class s{alert(e,t,n){return o({text:e,title:t,closeButtonText:n})}confirm(e,t,n,i,o){return a({text:e,title:t,confirmButtonText:n,cancelButtonText:o,confirmButtonStyle:i===r.ButtonType.Danger?"danger":"info"})}blockingDialog(e){const t=new i.SKAlert({text:e});return t.present(),()=>{t.dismiss()}}}},function(e,t,n){var r=n(30),i="object"==typeof self&&self&&self.Object===Object&&self,a=r||i||Function("return this")();e.exports=a},function(e,t){var n=Array.isArray;e.exports=n},function(e,t,n){var r=n(98),i=n(103);e.exports=function(e,t){var n=i(e,t);return r(n)?n:void 0}},function(e,t,n){var r=n(11),i=n(99),a=n(100),o=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":o&&o in Object(e)?i(e):a(e)}},function(e,t){e.exports=function(e){return null!=e&&"object"==typeof e}},function(e,t,n){var r=n(6).Symbol;e.exports=r},function(e,t){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},function(e,t,n){var r=n(119),i=n(120),a=n(121),o=n(122),s=n(123);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=o,c.prototype.set=s,e.exports=c},function(e,t,n){var r=n(37);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},function(e,t,n){var r=n(8)(Object,"create");e.exports=r},function(e,t,n){var r=n(137);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},function(e,t,n){var r=n(9),i=n(10);e.exports=function(e){return"symbol"==typeof e||i(e)&&"[object Symbol]"==r(e)}},function(e,t,n){var r=n(17);e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}},function(e,t,n){var r;window,r=function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,n){"use strict";function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}n.r(t);var i=function(){function e(t){var n,r,i,a=this,o=t.title,s=t.text,c=t.buttons;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),i=function(e){if("Enter"===e.key){var t=a.primaryButton();t.action&&t.action(),a.dismiss()}},(r="keyupListener")in(n=this)?Object.defineProperty(n,r,{value:i,enumerable:!0,configurable:!0,writable:!0}):n[r]=i,this.title=o,this.text=s,this.buttons=c}var t,n,i;return t=e,(n=[{key:"buttonsString",value:function(){var e=this.buttons.map((function(e,t){return function(e,t){return"\n <div id='button-".concat(t,"' class='sk-button ").concat(e.style,"'>\n <div class='sk-label'>").concat(e.text,"</div>\n </div>\n ")}(e,t)})).join("");return"\n <div class='sk-button-group'>\n ".concat(e,"\n </div>\n ")}},{key:"templateString",value:function(){var e,t;this.buttons?(e="\n <div class=\"sk-panel-row\" style='margin-top: 8px;'>\n ".concat(this.buttonsString(),"\n </div>\n "),t=""):(e="",t='style="padding-bottom: 8px"');var n=this.title?"<div class='sk-h3 sk-panel-section-title'>".concat(this.title,"</div>"):"",r=this.text?"<p class='sk-p'>".concat(this.text,"</p>"):"";return'\n <div class="sk-modal">\n <div class="sk-modal-background"></div>\n <div class="sk-modal-content">\n <div class="sn-component">\n <div class="sk-panel" style=\'max-width: 500px;\'>\n <div class="sk-panel-content" '.concat(t,'>\n <div class="sk-panel-section">\n ').concat(n,'\n\n <div class="sk-panel-row">\n ').concat(r,"\n </div>\n\n ").concat(e,"\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n ")}},{key:"dismiss",value:function(){this.onElement.removeChild(this.element),document.removeEventListener("keyup",this.keyupListener)}},{key:"primaryButton",value:function(){var e=this.buttons.find((function(e){return!0===e.primary}));return e||(e=this.buttons[this.buttons.length-1]),e}},{key:"present",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.onElement;n||(n=document.body),this.onElement=n,this.element=document.createElement("div"),this.element.className="sn-component",this.element.innerHTML=this.templateString().trim(),this.buttons&&(document.addEventListener("keyup",this.keyupListener),this.buttons.forEach((function(t,n){e.element.querySelector("#button-".concat(n)).onclick=function(){t.action&&t.action(),e.dismiss()}}))),n.appendChild(this.element)}}])&&r(t.prototype,n),i&&r(t,i),e}();n.d(t,"SKAlert",(function(){return i}))}])},e.exports=r()},function(e,t,n){(function(e){var r=void 0!==e&&e||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function a(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new a(i.call(setTimeout,r,arguments),clearTimeout)},t.setInterval=function(){return new a(i.call(setInterval,r,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},a.prototype.unref=a.prototype.ref=function(){},a.prototype.close=function(){this._clearFn.call(r,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(89),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(21))},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t){e.exports=function(e){return e}},function(e,t,n){var r=n(8)(n(6),"Map");e.exports=r},function(e,t,n){var r=n(129),i=n(136),a=n(138),o=n(139),s=n(140);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=o,c.prototype.set=s,e.exports=c},function(e,t,n){var r=n(158),i=n(164),a=n(45);e.exports=function(e){return a(e)?r(e):i(e)}},function(e,t){e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},function(e,t,n){var r=n(7),i=n(17),a=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,o=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!i(e))||(o.test(e)||!a.test(e)||null!=t&&e in Object(t))}},function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return o}));var r=n(1),i=n(2);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class o{constructor(t){a(this,"application",void 0),a(this,"unsubState",void 0),a(this,"pollFocusInterval",void 0),a(this,"lastFocusState",void 0),a(this,"lockAfterDate",void 0),a(this,"lockTimeout",void 0),this.application=t,e(()=>{this.observeVisibility()})}observeVisibility(){this.unsubState=this.application.getAppState().addObserver(async e=>{e===i.b.WindowDidBlur?this.documentVisibilityChanged(!1):e===i.b.WindowDidFocus&&this.documentVisibilityChanged(!0)}),Object(r.d)()||this.beginWebFocusPolling()}deinit(){this.unsubState(),this.pollFocusInterval&&clearInterval(this.pollFocusInterval)}async setAutoLockInterval(e){return this.application.setValue("AutoLockIntervalKey",e)}async getAutoLockInterval(){const e=await this.application.getValue("AutoLockIntervalKey");return e||0}beginWebFocusPolling(){this.pollFocusInterval=setInterval(()=>{const e=document.hasFocus();e&&"hidden"===this.lastFocusState?this.documentVisibilityChanged(!0):e||"visible"!==this.lastFocusState||this.documentVisibilityChanged(!1),this.lastFocusState=e?"visible":"hidden"},1e3)}getAutoLockIntervalOptions(){return[{value:0,label:"Off"},{value:1,label:"Immediately"},{value:6e4,label:"1m"},{value:3e5,label:"5m"},{value:36e5,label:"1h"}]}async documentVisibilityChanged(e){if(e){!await this.application.isLocked()&&this.lockAfterDate&&new Date>this.lockAfterDate&&this.application.lock(),this.cancelAutoLockTimer()}else this.beginAutoLockTimer()}async beginAutoLockTimer(){var e=await this.getAutoLockInterval();if(0===e)return;this.lockAfterDate=(e=>{const t=new Date;return t.setSeconds(t.getSeconds()+e),t})(e/1e3),this.lockTimeout=setTimeout(()=>{this.cancelAutoLockTimer(),this.application.lock(),this.lockAfterDate=void 0},e)}cancelAutoLockTimer(){clearTimeout(this.lockTimeout),this.lockAfterDate=void 0}}}).call(this,n(20).setImmediate)},function(e,t,n){var r=n(9),i=n(12);e.exports=function(e){if(!i(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},function(e,t,n){(function(t){var n="object"==typeof t&&t&&t.Object===Object&&t;e.exports=n}).call(this,n(21))},function(e,t){var n=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return n.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},function(e,t){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}},function(e,t){e.exports=function(e,t,n,r){for(var i=e.length,a=n+(r?1:-1);r?a--:++a<i;)if(t(e[a],a,e))return a;return-1}},function(e,t){e.exports=function(e){return function(t){return e(t)}}},function(e,t,n){var r=n(117),i=n(174),a=n(22),o=n(7),s=n(184);e.exports=function(e){return"function"==typeof e?e:null==e?a:"object"==typeof e?o(e)?i(e[0],e[1]):r(e):s(e)}},function(e,t,n){var r=n(13),i=n(124),a=n(125),o=n(126),s=n(127),c=n(128);function u(e){var t=this.__data__=new r(e);this.size=t.size}u.prototype.clear=i,u.prototype.delete=a,u.prototype.get=o,u.prototype.has=s,u.prototype.set=c,e.exports=u},function(e,t){e.exports=function(e,t){return e===t||e!=e&&t!=t}},function(e,t,n){var r=n(141),i=n(10);e.exports=function e(t,n,a,o,s){return t===n||(null==t||null==n||!i(t)&&!i(n)?t!=t&&n!=n:r(t,n,a,o,e,s))}},function(e,t,n){var r=n(142),i=n(145),a=n(146);e.exports=function(e,t,n,o,s,c){var u=1&n,l=e.length,A=t.length;if(l!=A&&!(u&&A>l))return!1;var f=c.get(e);if(f&&c.get(t))return f==t;var h=-1,p=!0,d=2&n?new r:void 0;for(c.set(e,t),c.set(t,e);++h<l;){var g=e[h],y=t[h];if(o)var v=u?o(y,g,h,t,e,c):o(g,y,h,e,t,c);if(void 0!==v){if(v)continue;p=!1;break}if(d){if(!i(t,(function(e,t){if(!a(d,t)&&(g===e||s(g,e,n,o,c)))return d.push(t)}))){p=!1;break}}else if(g!==y&&!s(g,y,n,o,c)){p=!1;break}}return c.delete(e),c.delete(t),p}},function(e,t,n){var r=n(160),i=n(10),a=Object.prototype,o=a.hasOwnProperty,s=a.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(e){return i(e)&&o.call(e,"callee")&&!s.call(e,"callee")};e.exports=c},function(e,t,n){(function(e){var r=n(6),i=n(161),a=t&&!t.nodeType&&t,o=a&&"object"==typeof e&&e&&!e.nodeType&&e,s=o&&o.exports===a?r.Buffer:void 0,c=(s?s.isBuffer:void 0)||i;e.exports=c}).call(this,n(42)(e))},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t){var n=/^(?:0|[1-9]\d*)$/;e.exports=function(e,t){var r=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==r||"symbol"!=r&&n.test(e))&&e>-1&&e%1==0&&e<t}},function(e,t,n){var r=n(162),i=n(34),a=n(163),o=a&&a.isTypedArray,s=o?i(o):r;e.exports=s},function(e,t,n){var r=n(29),i=n(26);e.exports=function(e){return null!=e&&i(e.length)&&!r(e)}},function(e,t,n){var r=n(12);e.exports=function(e){return e==e&&!r(e)}},function(e,t){e.exports=function(e,t){return function(n){return null!=n&&(n[e]===t&&(void 0!==t||e in Object(n)))}}},function(e,t,n){var r=n(49),i=n(18);e.exports=function(e,t){for(var n=0,a=(t=r(t,e)).length;null!=e&&n<a;)e=e[i(t[n++])];return n&&n==a?e:void 0}},function(e,t,n){var r=n(7),i=n(27),a=n(176),o=n(179);e.exports=function(e,t){return r(e)?e:i(e,t)?[e]:a(o(e))}},function(e,t,n){"use strict";(function(e){function r(t){return{restrict:"A",link:function(n,r){r.on("focus",()=>{if(!t.getSelection().toString()){const t=r[0];e(()=>{t.setSelectionRange(0,t.value.length)})}})}}}n.d(t,"a",(function(){return r})),r.$inject=["$window"]}).call(this,n(20).setImmediate)},function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return h}));var r=n(52),i=n(79),a=n(0),o=n(3),s=n.n(o),c=n(1),u=n(5),l=n(80),A=n(53);function f(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class h extends a.SNApplication{constructor(e,t,n,o){const s=new l.a("",t);super(a.Environment.Web,Object(a.platformFromString)(Object(c.c)()),s,new A.SNWebCrypto,new u.a,"",void 0,void 0),f(this,"$compile",void 0),f(this,"scope",void 0),f(this,"onDeinit",void 0),f(this,"webServices",void 0),f(this,"currentAuthenticationElement",void 0),f(this,"editorGroup",void 0),f(this,"componentGroup",void 0),this.$compile=e,this.scope=n,this.onDeinit=o,s.setApplication(this),this.editorGroup=new i.a(this),this.componentGroup=new r.a(this)}deinit(){for(const e of Object.keys(this.webServices)){const t=this.webServices[e];t.deinit&&t.deinit(),t.application=void 0}this.webServices={},this.onDeinit(this),this.onDeinit=void 0,this.$compile=void 0,this.editorGroup.deinit(),this.componentGroup.deinit(),this.scope.application=void 0,this.scope.$destroy(),this.scope=void 0,e(()=>{super.deinit()})}setWebServices(e){this.webServices=e}getAppState(){return this.webServices.appState}getDesktopService(){return this.webServices.desktopService}getLockService(){return this.webServices.lockService}getArchiveService(){return this.webServices.archiveService}getNativeExtService(){return this.webServices.nativeExtService}getStatusService(){return this.webServices.statusService}getThemeService(){return this.webServices.themeService}getPrefsService(){return this.webServices.prefsService}getKeyboardService(){return this.webServices.keyboardService}async checkForSecurityUpdate(){return this.protocolUpgradeAvailable()}presentPasswordWizard(e){const t=this.scope.$new(!0);t.type=e,t.application=this;const n=this.$compile("<password-wizard application='application' type='type'></password-wizard>")(t);s.a.element(document.body).append(n)}promptForChallenge(e){const t=this.scope.$new(!0);t.challenge=e,t.application=this;const n=this.$compile("<challenge-modal class='sk-modal' application='application' challenge='challenge'></challenge-modal>")(t);s.a.element(document.body).append(n)}async performProtocolUpgrade(){const e=await this.upgradeProtocolVersion();e.success?this.alertService.alert("Success! Your encryption version has been upgraded. You'll be asked to enter your credentials again on other devices you're signed into."):e.error&&(console.error(e.error),this.alertService.alert("Unable to upgrade encryption version. Please try again."))}async presentPrivilegesModal(e,t,n){if(this.authenticationInProgress())return void(n&&n());const r=this.scope.$new(!0);r.action=e,r.onSuccess=async()=>{t&&await t(),this.currentAuthenticationElement=void 0},r.onCancel=async()=>{n&&await n(),this.currentAuthenticationElement=void 0},r.application=this;const i=this.$compile("\n <privileges-auth-modal application='application' action='action' on-success='onSuccess'\n on-cancel='onCancel' class='sk-modal'></privileges-auth-modal>\n ")(r);s.a.element(document.body).append(i),this.currentAuthenticationElement=i}presentPrivilegesManagementModal(){const e=this.scope.$new(!0);e.application=this;const t=this.$compile("<privileges-management-modal application='application' class='sk-modal'></privileges-management-modal>")(e);s.a.element(document.body).append(t)}authenticationInProgress(){return null!=this.currentAuthenticationElement}presentPasswordModal(e){const t=this.scope.$new(!0);t.type="password",t.title="Decryption Assistance",t.message="Unable to decrypt this item with your current keys.\n Please enter your account password at the time of this revision.",t.callback=e;const n=this.$compile("<input-modal type='type' message='message'\n title='title' callback='callback()'></input-modal>")(t);s.a.element(document.body).append(n)}presentRevisionPreviewModal(e,t){const n=this.scope.$new(!0);n.uuid=e,n.content=t,n.application=this;const r=this.$compile("<revision-preview-modal application='application' uuid='uuid' content='content'\n class='sk-modal'></revision-preview-modal>")(n);s.a.element(document.body).append(r)}}h.$inject=["$compile","$timeout","scope","onDeinit"]}).call(this,n(20).setImmediate)},function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n(0);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const a=[r.ComponentArea.Editor,r.ComponentArea.NoteTags,r.ComponentArea.TagsList];class o{constructor(e){i(this,"application",void 0),i(this,"changeObservers",[]),i(this,"activeComponents",[]),this.application=e}get componentManager(){var e;return null===(e=this.application)||void 0===e?void 0:e.componentManager}deinit(){this.application=void 0}async activateComponent(e){if(!this.activeComponents.includes(e.uuid)){if(a.includes(e.area)){const t=this.activeComponentForArea(e.area);t&&await this.deactivateComponent(t,!1)}Object(r.addIfUnique)(this.activeComponents,e.uuid),await this.componentManager.activateComponent(e.uuid),this.notifyObservers()}}async deactivateComponent(e,t=!0){this.activeComponents.includes(e.uuid)&&(Object(r.removeFromArray)(this.activeComponents,e.uuid),this.componentManager&&(await this.componentManager.deactivateComponent(e.uuid),t&&this.notifyObservers()))}async deactivateComponentForArea(e){const t=this.activeComponentForArea(e);if(t)return this.deactivateComponent(t)}activeComponentForArea(e){return this.activeComponentsForArea(e)[0]}activeComponentsForArea(e){return this.allActiveComponents().filter(t=>t.area===e)}allComponentsForArea(e){return this.componentManager.componentsForArea(e)}allActiveComponents(){return this.application.getAll(this.activeComponents)}addChangeObserver(e){return this.changeObservers.push(e),e(),()=>{Object(r.removeFromArray)(this.changeObservers,e)}}notifyObservers(){for(const e of this.changeObservers)e()}}},function(module,exports,__webpack_require__){var e;window,e=function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/",n(n.s=167)}([function(e,t,n){e.exports=n(85)},function(e,t){"function"==typeof Object.create?e.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}},function(e,t,n){var r=n(3),i=r.Buffer;function a(e,t){for(var n in e)t[n]=e[n]}function o(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(a(r,t),t.Buffer=o),a(i,o),o.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},o.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";(function(e){
/*!
* The buffer module from node.js, for the browser.
*
* @author Feross Aboukhadijeh <http://feross.org>
* @license MIT
*/
var r=n(87),i=n(88),a=n(43);function o(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(o()<t)throw new RangeError("Invalid typed array length");return c.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=c.prototype:(null===e&&(e=new c(t)),e.length=t),e}function c(e,t,n){if(!(c.TYPED_ARRAY_SUPPORT||this instanceof c))return new c(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 A(this,e)}return u(this,e,t,n)}function u(e,t,n,r){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,r){if(t.byteLength,n<0||t.byteLength<n)throw new RangeError("'offset' is out of bounds");if(t.byteLength<n+(r||0))throw new RangeError("'length' is out of bounds");return t=void 0===n&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,n):new Uint8Array(t,n,r),c.TYPED_ARRAY_SUPPORT?(e=t).__proto__=c.prototype:e=f(e,t),e}(e,t,n,r):"string"==typeof t?function(e,t,n){if("string"==typeof n&&""!==n||(n="utf8"),!c.isEncoding(n))throw new TypeError('"encoding" must be a valid string encoding');var r=0|p(t,n),i=(e=s(e,r)).write(t,n);return i!==r&&(e=e.slice(0,i)),e}(e,t,n):function(e,t){if(c.isBuffer(t)){var n=0|h(t.length);return 0===(e=s(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||(r=t.length)!=r?s(e,0):f(e,t);if("Buffer"===t.type&&a(t.data))return f(e,t.data)}var r;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function l(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 A(e,t){if(l(t),e=s(e,t<0?0:0|h(t)),!c.TYPED_ARRAY_SUPPORT)for(var n=0;n<t;++n)e[n]=0;return e}function f(e,t){var n=t.length<0?0:0|h(t.length);e=s(e,n);for(var r=0;r<n;r+=1)e[r]=255&t[r];return e}function h(e){if(e>=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|e}function p(e,t){if(c.isBuffer(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 r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return U(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return N(e).length;default:if(r)return U(e).length;t=(""+t).toLowerCase(),r=!0}}function d(e,t,n){var r=!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 S(this,t,n);case"utf8":case"utf-8":return _(this,t,n);case"ascii":return k(this,t,n);case"latin1":case"binary":return Q(this,t,n);case"base64":return E(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function g(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function y(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=c.from(t,r)),c.isBuffer(t))return 0===t.length?-1:v(e,t,n,r,i);if("number"==typeof t)return t&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):v(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function v(e,t,n,r,i){var a,o=1,s=e.length,c=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;o=2,s/=2,c/=2,n/=2}function u(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){var l=-1;for(a=n;a<s;a++)if(u(e,a)===u(t,-1===l?0:a-l)){if(-1===l&&(l=a),a-l+1===c)return l*o}else-1!==l&&(a-=a-l),l=-1}else for(n+c>s&&(n=s-c),a=n;a>=0;a--){for(var A=!0,f=0;f<c;f++)if(u(e,a+f)!==u(t,f)){A=!1;break}if(A)return a}return-1}function m(e,t,n,r){n=Number(n)||0;var i=e.length-n;r?(r=Number(r))>i&&(r=i):r=i;var a=t.length;if(a%2!=0)throw new TypeError("Invalid hex string");r>a/2&&(r=a/2);for(var o=0;o<r;++o){var s=parseInt(t.substr(2*o,2),16);if(isNaN(s))return o;e[n+o]=s}return o}function b(e,t,n,r){return L(U(t,e.length-n),e,n,r)}function I(e,t,n,r){return L(function(e){for(var t=[],n=0;n<e.length;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function w(e,t,n,r){return I(e,t,n,r)}function C(e,t,n,r){return L(N(t),e,n,r)}function B(e,t,n,r){return L(function(e,t){for(var n,r,i,a=[],o=0;o<e.length&&!((t-=2)<0);++o)r=(n=e.charCodeAt(o))>>8,i=n%256,a.push(i),a.push(r);return a}(t,e.length-n),e,n,r)}function E(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function _(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i<n;){var a,o,s,c,u=e[i],l=null,A=u>239?4:u>223?3:u>191?2:1;if(i+A<=n)switch(A){case 1:u<128&&(l=u);break;case 2:128==(192&(a=e[i+1]))&&(c=(31&u)<<6|63&a)>127&&(l=c);break;case 3:a=e[i+1],o=e[i+2],128==(192&a)&&128==(192&o)&&(c=(15&u)<<12|(63&a)<<6|63&o)>2047&&(c<55296||c>57343)&&(l=c);break;case 4:a=e[i+1],o=e[i+2],s=e[i+3],128==(192&a)&&128==(192&o)&&128==(192&s)&&(c=(15&u)<<18|(63&a)<<12|(63&o)<<6|63&s)>65535&&c<1114112&&(l=c)}null===l?(l=65533,A=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),i+=A}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);for(var n="",r=0;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=4096));return n}(r)}function k(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(127&e[i]);return r}function Q(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function S(e,t,n){var r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);for(var i="",a=t;a<n;++a)i+=H(e[a]);return i}function x(e,t,n){for(var r=e.slice(t,n),i="",a=0;a<r.length;a+=2)i+=String.fromCharCode(r[a]+256*r[a+1]);return i}function D(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 P(e,t,n,r,i,a){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<a)throw new RangeError('"value" argument is out of bounds');if(n+r>e.length)throw new RangeError("Index out of range")}function M(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,a=Math.min(e.length-n,2);i<a;++i)e[n+i]=(t&255<<8*(r?i:1-i))>>>8*(r?i:1-i)}function F(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,a=Math.min(e.length-n,4);i<a;++i)e[n+i]=t>>>8*(r?i:3-i)&255}function O(e,t,n,r,i,a){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function R(e,t,n,r,a){return a||O(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function T(e,t,n,r,a){return a||O(e,0,n,8),i.write(e,t,n,r,52,8),n+8}t.Buffer=c,t.SlowBuffer=function(e){return+e!=e&&(e=0),c.alloc(+e)},t.INSPECT_MAX_BYTES=50,c.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(e){return!1}}(),t.kMaxLength=o(),c.poolSize=8192,c._augment=function(e){return e.__proto__=c.prototype,e},c.from=function(e,t,n){return u(null,e,t,n)},c.TYPED_ARRAY_SUPPORT&&(c.prototype.__proto__=Uint8Array.prototype,c.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&c[Symbol.species]===c&&Object.defineProperty(c,Symbol.species,{value:null,configurable:!0})),c.alloc=function(e,t,n){return function(e,t,n,r){return l(t),t<=0?s(e,t):void 0!==n?"string"==typeof r?s(e,t).fill(n,r):s(e,t).fill(n):s(e,t)}(null,e,t,n)},c.allocUnsafe=function(e){return A(null,e)},c.allocUnsafeSlow=function(e){return A(null,e)},c.isBuffer=function(e){return!(null==e||!e._isBuffer)},c.compare=function(e,t){if(!c.isBuffer(e)||!c.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var n=e.length,r=t.length,i=0,a=Math.min(n,r);i<a;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return n<r?-1:r<n?1:0},c.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}},c.concat=function(e,t){if(!a(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return c.alloc(0);var n;if(void 0===t)for(t=0,n=0;n<e.length;++n)t+=e[n].length;var r=c.allocUnsafe(t),i=0;for(n=0;n<e.length;++n){var o=e[n];if(!c.isBuffer(o))throw new TypeError('"list" argument must be an Array of Buffers');o.copy(r,i),i+=o.length}return r},c.byteLength=p,c.prototype._isBuffer=!0,c.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)g(this,t,t+1);return this},c.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)g(this,t,t+3),g(this,t+1,t+2);return this},c.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)g(this,t,t+7),g(this,t+1,t+6),g(this,t+2,t+5),g(this,t+3,t+4);return this},c.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?_(this,0,e):d.apply(this,arguments)},c.prototype.equals=function(e){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===c.compare(this,e)},c.prototype.inspect=function(){var e="",n=t.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),"<Buffer "+e+">"},c.prototype.compare=function(e,t,n,r,i){if(!c.isBuffer(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===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var a=(i>>>=0)-(r>>>=0),o=(n>>>=0)-(t>>>=0),s=Math.min(a,o),u=this.slice(r,i),l=e.slice(t,n),A=0;A<s;++A)if(u[A]!==l[A]){a=u[A],o=l[A];break}return a<o?-1:o<a?1:0},c.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},c.prototype.indexOf=function(e,t,n){return y(this,e,t,n,!0)},c.prototype.lastIndexOf=function(e,t,n){return y(this,e,t,n,!1)},c.prototype.write=function(e,t,n,r){if(void 0===t)r="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)r=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===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-t;if((void 0===n||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return m(this,e,t,n);case"utf8":case"utf-8":return b(this,e,t,n);case"ascii":return I(this,e,t,n);case"latin1":case"binary":return w(this,e,t,n);case"base64":return C(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return B(this,e,t,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},c.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t<e&&(t=e),c.TYPED_ARRAY_SUPPORT)(n=this.subarray(e,t)).__proto__=c.prototype;else{var i=t-e;n=new c(i,void 0);for(var a=0;a<i;++a)n[a]=this[a+e]}return n},c.prototype.readUIntLE=function(e,t,n){e|=0,t|=0,n||D(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return r},c.prototype.readUIntBE=function(e,t,n){e|=0,t|=0,n||D(e,t,this.length);for(var r=this[e+--t],i=1;t>0&&(i*=256);)r+=this[e+--t]*i;return r},c.prototype.readUInt8=function(e,t){return t||D(e,1,this.length),this[e]},c.prototype.readUInt16LE=function(e,t){return t||D(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUInt16BE=function(e,t){return t||D(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUInt32LE=function(e,t){return t||D(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUInt32BE=function(e,t){return t||D(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||D(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return r>=(i*=128)&&(r-=Math.pow(2,8*t)),r},c.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||D(e,t,this.length);for(var r=t,i=1,a=this[e+--r];r>0&&(i*=256);)a+=this[e+--r]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},c.prototype.readInt8=function(e,t){return t||D(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){t||D(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt16BE=function(e,t){t||D(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt32LE=function(e,t){return t||D(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return t||D(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return t||D(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return t||D(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return t||D(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return t||D(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUIntLE=function(e,t,n,r){e=+e,t|=0,n|=0,r||P(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,a=0;for(this[t]=255&e;++a<n&&(i*=256);)this[t+a]=e/i&255;return t+n},c.prototype.writeUIntBE=function(e,t,n,r){e=+e,t|=0,n|=0,r||P(this,e,t,n,Math.pow(2,8*n)-1,0);var i=n-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+n},c.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||P(this,e,t,1,255,0),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},c.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||P(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):M(this,e,t,!0),t+2},c.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||P(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):M(this,e,t,!1),t+2},c.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||P(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):F(this,e,t,!0),t+4},c.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||P(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):F(this,e,t,!1),t+4},c.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);P(this,e,t,n,i-1,-i)}var a=0,o=1,s=0;for(this[t]=255&e;++a<n&&(o*=256);)e<0&&0===s&&0!==this[t+a-1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+n},c.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);P(this,e,t,n,i-1,-i)}var a=n-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+n},c.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||P(this,e,t,1,127,-128),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||P(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):M(this,e,t,!0),t+2},c.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||P(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):M(this,e,t,!1),t+2},c.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||P(this,e,t,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):F(this,e,t,!0),t+4},c.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||P(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):F(this,e,t,!1),t+4},c.prototype.writeFloatLE=function(e,t,n){return R(this,e,t,!0,n)},c.prototype.writeFloatBE=function(e,t,n){return R(this,e,t,!1,n)},c.prototype.writeDoubleLE=function(e,t,n){return T(this,e,t,!0,n)},c.prototype.writeDoubleBE=function(e,t,n){return T(this,e,t,!1,n)},c.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r<n&&(r=n),r===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(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);var i,a=r-n;if(this===e&&n<t&&t<r)for(i=a-1;i>=0;--i)e[i+t]=this[i+n];else if(a<1e3||!c.TYPED_ARRAY_SUPPORT)for(i=0;i<a;++i)e[i+t]=this[i+n];else Uint8Array.prototype.set.call(e,this.subarray(n,n+a),t);return a},c.prototype.fill=function(e,t,n,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),1===e.length){var i=e.charCodeAt(0);i<256&&(e=i)}if(void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!c.isEncoding(r))throw new TypeError("Unknown encoding: "+r)}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 a;if(t>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(a=t;a<n;++a)this[a]=e;else{var o=c.isBuffer(e)?e:U(new c(e,r).toString()),s=o.length;for(a=0;a<n-t;++a)this[a+t]=o[a%s]}return this};var j=/[^+\/0-9A-Za-z-_]/g;function H(e){return e<16?"0"+e.toString(16):e.toString(16)}function U(e,t){var n;t=t||1/0;for(var r=e.length,i=null,a=[],o=0;o<r;++o){if((n=e.charCodeAt(o))>55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;a.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;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function N(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(j,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function L(e,t,n,r){for(var i=0;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}}).call(this,n(8))},function(e,t,n){(function(e){function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}!function(e,r){"use strict";function i(e,t){if(!e)throw new Error(t||"Assertion failed")}function a(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}function o(e,t,n){if(o.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(n=t,t=10),this._init(e||0,t||10,n||"be"))}var s;"object"===t(e)?e.exports=o:r.BN=o,o.BN=o,o.wordSize=26;try{s=n(123).Buffer}catch(e){}function c(e,t,n){for(var r=0,i=Math.min(e.length,n),a=t;a<i;a++){var o=e.charCodeAt(a)-48;r<<=4,r|=o>=49&&o<=54?o-49+10:o>=17&&o<=22?o-17+10:15&o}return r}function u(e,t,n,r){for(var i=0,a=Math.min(e.length,n),o=t;o<a;o++){var s=e.charCodeAt(o)-48;i*=r,i+=s>=49?s-49+10:s>=17?s-17+10:s}return i}o.isBN=function(e){return e instanceof o||null!==e&&"object"===t(e)&&e.constructor.wordSize===o.wordSize&&Array.isArray(e.words)},o.max=function(e,t){return e.cmp(t)>0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,n,r){if("number"==typeof e)return this._initNumber(e,n,r);if("object"===t(e))return this._initArray(e,n,r);"hex"===n&&(n=16),i(n===(0|n)&&n>=2&&n<=36);var a=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&a++,16===n?this._parseHex(e,a):this._parseBase(e,n,a),"-"===e[0]&&(this.negative=1),this.strip(),"le"===r&&this._initArray(this.toArray(),n,r)},o.prototype._initNumber=function(e,t,n){e<0&&(this.negative=1,e=-e),e<67108864?(this.words=[67108863&e],this.length=1):e<4503599627370496?(this.words=[67108863&e,e/67108864&67108863],this.length=2):(i(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),t,n)},o.prototype._initArray=function(e,t,n){if(i("number"==typeof e.length),e.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(e.length/3),this.words=new Array(this.length);for(var r=0;r<this.length;r++)this.words[r]=0;var a,o,s=0;if("be"===n)for(r=e.length-1,a=0;r>=0;r-=3)o=e[r]|e[r-1]<<8|e[r-2]<<16,this.words[a]|=o<<s&67108863,this.words[a+1]=o>>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if("le"===n)for(r=0,a=0;r<e.length;r+=3)o=e[r]|e[r+1]<<8|e[r+2]<<16,this.words[a]|=o<<s&67108863,this.words[a+1]=o>>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);return this.strip()},o.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n<this.length;n++)this.words[n]=0;var r,i,a=0;for(n=e.length-6,r=0;n>=t;n-=6)i=c(e,n,n+6),this.words[r]|=i<<a&67108863,this.words[r+1]|=i>>>26-a&4194303,(a+=24)>=26&&(a-=26,r++);n+6!==t&&(i=c(e,t,n+6),this.words[r]|=i<<a&67108863,this.words[r+1]|=i>>>26-a&4194303),this.strip()},o.prototype._parseBase=function(e,t,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=t)r++;r--,i=i/t|0;for(var a=e.length-n,o=a%r,s=Math.min(a,a-o)+n,c=0,l=n;l<s;l+=r)c=u(e,l,l+r,t),this.imuln(i),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c);if(0!==o){var A=1;for(c=u(e,l,e.length,t),l=0;l<o;l++)A*=t;this.imuln(A),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c)}},o.prototype.copy=function(e){e.words=new Array(this.length);for(var t=0;t<this.length;t++)e.words[t]=this.words[t];e.length=this.length,e.negative=this.negative,e.red=this.red},o.prototype.clone=function(){var e=new o(null);return this.copy(e),e},o.prototype._expand=function(e){for(;this.length<e;)this.words[this.length++]=0;return this},o.prototype.strip=function(){for(;this.length>1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var l=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],A=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],f=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function h(e,t,n){n.negative=t.negative^e.negative;var r=e.length+t.length|0;n.length=r,r=r-1|0;var i=0|e.words[0],a=0|t.words[0],o=i*a,s=67108863&o,c=o/67108864|0;n.words[0]=s;for(var u=1;u<r;u++){for(var l=c>>>26,A=67108863&c,f=Math.min(u,t.length-1),h=Math.max(0,u-e.length+1);h<=f;h++){var p=u-h|0;l+=(o=(i=0|e.words[p])*(a=0|t.words[h])+A)/67108864|0,A=67108863&o}n.words[u]=0|A,c=0|l}return 0!==c?n.words[u]=0|c:n.length--,n.strip()}o.prototype.toString=function(e,t){var n;if(t=0|t||1,16===(e=e||10)||"hex"===e){n="";for(var r=0,a=0,o=0;o<this.length;o++){var s=this.words[o],c=(16777215&(s<<r|a)).toString(16);n=0!=(a=s>>>24-r&16777215)||o!==this.length-1?l[6-c.length]+c+n:c+n,(r+=2)>=26&&(r-=26,o--)}for(0!==a&&(n=a.toString(16)+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(e===(0|e)&&e>=2&&e<=36){var u=A[e],h=f[e];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var d=p.modn(h).toString(e);n=(p=p.idivn(h)).isZero()?d+n:l[u-d.length]+d+n}for(this.isZero()&&(n="0"+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}i(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(e,t){return i(void 0!==s),this.toArrayLike(s,e,t)},o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},o.prototype.toArrayLike=function(e,t,n){var r=this.byteLength(),a=n||Math.max(1,r);i(r<=a,"byte array longer than desired length"),i(a>0,"Requested array length <= 0"),this.strip();var o,s,c="le"===t,u=new e(a),l=this.clone();if(c){for(s=0;!l.isZero();s++)o=l.andln(255),l.iushrn(8),u[s]=o;for(;s<a;s++)u[s]=0}else{for(s=0;s<a-r;s++)u[s]=0;for(s=0;!l.isZero();s++)o=l.andln(255),l.iushrn(8),u[a-s-1]=o}return u},Math.clz32?o.prototype._countBits=function(e){return 32-Math.clz32(e)}:o.prototype._countBits=function(e){var t=e,n=0;return t>=4096&&(n+=13,t>>>=13),t>=64&&(n+=7,t>>>=7),t>=8&&(n+=4,t>>>=4),t>=2&&(n+=2,t>>>=2),n+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,n=0;return 0==(8191&t)&&(n+=13,t>>>=13),0==(127&t)&&(n+=7,t>>>=7),0==(15&t)&&(n+=4,t>>>=4),0==(3&t)&&(n+=2,t>>>=2),0==(1&t)&&n++,n},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;t<this.length;t++){var n=this._zeroBits(this.words[t]);if(e+=n,26!==n)break}return e},o.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},o.prototype.toTwos=function(e){return 0!==this.negative?this.abs().inotn(e).iaddn(1):this.clone()},o.prototype.fromTwos=function(e){return this.testn(e-1)?this.notn(e).iaddn(1).ineg():this.clone()},o.prototype.isNeg=function(){return 0!==this.negative},o.prototype.neg=function(){return this.clone().ineg()},o.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},o.prototype.iuor=function(e){for(;this.length<e.length;)this.words[this.length++]=0;for(var t=0;t<e.length;t++)this.words[t]=this.words[t]|e.words[t];return this.strip()},o.prototype.ior=function(e){return i(0==(this.negative|e.negative)),this.iuor(e)},o.prototype.or=function(e){return this.length>e.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var n=0;n<t.length;n++)this.words[n]=this.words[n]&e.words[n];return this.length=t.length,this.strip()},o.prototype.iand=function(e){return i(0==(this.negative|e.negative)),this.iuand(e)},o.prototype.and=function(e){return this.length>e.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,n;this.length>e.length?(t=this,n=e):(t=e,n=this);for(var r=0;r<n.length;r++)this.words[r]=t.words[r]^n.words[r];if(this!==t)for(;r<t.length;r++)this.words[r]=t.words[r];return this.length=t.length,this.strip()},o.prototype.ixor=function(e){return i(0==(this.negative|e.negative)),this.iuxor(e)},o.prototype.xor=function(e){return this.length>e.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){i("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),n=e%26;this._expand(t),n>0&&t--;for(var r=0;r<t;r++)this.words[r]=67108863&~this.words[r];return n>0&&(this.words[r]=~this.words[r]&67108863>>26-n),this.strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){i("number"==typeof e&&e>=0);var n=e/26|0,r=e%26;return this._expand(n+1),this.words[n]=t?this.words[n]|1<<r:this.words[n]&~(1<<r),this.strip()},o.prototype.iadd=function(e){var t,n,r;if(0!==this.negative&&0===e.negative)return this.negative=0,t=this.isub(e),this.negative^=1,this._normSign();if(0===this.negative&&0!==e.negative)return e.negative=0,t=this.isub(e),e.negative=1,t._normSign();this.length>e.length?(n=this,r=e):(n=e,r=this);for(var i=0,a=0;a<r.length;a++)t=(0|n.words[a])+(0|r.words[a])+i,this.words[a]=67108863&t,i=t>>>26;for(;0!==i&&a<n.length;a++)t=(0|n.words[a])+i,this.words[a]=67108863&t,i=t>>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;a<n.length;a++)this.words[a]=n.words[a];return this},o.prototype.add=function(e){var t;return 0!==e.negative&&0===this.negative?(e.negative=0,t=this.sub(e),e.negative^=1,t):0===e.negative&&0!==this.negative?(this.negative=0,t=e.sub(this),this.negative=1,t):this.length>e.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var n,r,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=e):(n=e,r=this);for(var a=0,o=0;o<r.length;o++)a=(t=(0|n.words[o])-(0|r.words[o])+a)>>26,this.words[o]=67108863&t;for(;0!==a&&o<n.length;o++)a=(t=(0|n.words[o])+a)>>26,this.words[o]=67108863&t;if(0===a&&o<n.length&&n!==this)for(;o<n.length;o++)this.words[o]=n.words[o];return this.length=Math.max(this.length,o),n!==this&&(this.negative=1),this.strip()},o.prototype.sub=function(e){return this.clone().isub(e)};var p=function(e,t,n){var r,i,a,o=e.words,s=t.words,c=n.words,u=0,l=0|o[0],A=8191&l,f=l>>>13,h=0|o[1],p=8191&h,d=h>>>13,g=0|o[2],y=8191&g,v=g>>>13,m=0|o[3],b=8191&m,I=m>>>13,w=0|o[4],C=8191&w,B=w>>>13,E=0|o[5],_=8191&E,k=E>>>13,Q=0|o[6],S=8191&Q,x=Q>>>13,D=0|o[7],P=8191&D,M=D>>>13,F=0|o[8],O=8191&F,R=F>>>13,T=0|o[9],j=8191&T,H=T>>>13,U=0|s[0],N=8191&U,L=U>>>13,K=0|s[1],G=8191&K,$=K>>>13,Y=0|s[2],J=8191&Y,V=Y>>>13,z=0|s[3],q=8191&z,W=z>>>13,X=0|s[4],Z=8191&X,ee=X>>>13,te=0|s[5],ne=8191&te,re=te>>>13,ie=0|s[6],ae=8191&ie,oe=ie>>>13,se=0|s[7],ce=8191&se,ue=se>>>13,le=0|s[8],Ae=8191&le,fe=le>>>13,he=0|s[9],pe=8191&he,de=he>>>13;n.negative=e.negative^t.negative,n.length=19;var ge=(u+(r=Math.imul(A,N))|0)+((8191&(i=(i=Math.imul(A,L))+Math.imul(f,N)|0))<<13)|0;u=((a=Math.imul(f,L))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,r=Math.imul(p,N),i=(i=Math.imul(p,L))+Math.imul(d,N)|0,a=Math.imul(d,L);var ye=(u+(r=r+Math.imul(A,G)|0)|0)+((8191&(i=(i=i+Math.imul(A,$)|0)+Math.imul(f,G)|0))<<13)|0;u=((a=a+Math.imul(f,$)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,r=Math.imul(y,N),i=(i=Math.imul(y,L))+Math.imul(v,N)|0,a=Math.imul(v,L),r=r+Math.imul(p,G)|0,i=(i=i+Math.imul(p,$)|0)+Math.imul(d,G)|0,a=a+Math.imul(d,$)|0;var ve=(u+(r=r+Math.imul(A,J)|0)|0)+((8191&(i=(i=i+Math.imul(A,V)|0)+Math.imul(f,J)|0))<<13)|0;u=((a=a+Math.imul(f,V)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,r=Math.imul(b,N),i=(i=Math.imul(b,L))+Math.imul(I,N)|0,a=Math.imul(I,L),r=r+Math.imul(y,G)|0,i=(i=i+Math.imul(y,$)|0)+Math.imul(v,G)|0,a=a+Math.imul(v,$)|0,r=r+Math.imul(p,J)|0,i=(i=i+Math.imul(p,V)|0)+Math.imul(d,J)|0,a=a+Math.imul(d,V)|0;var me=(u+(r=r+Math.imul(A,q)|0)|0)+((8191&(i=(i=i+Math.imul(A,W)|0)+Math.imul(f,q)|0))<<13)|0;u=((a=a+Math.imul(f,W)|0)+(i>>>13)|0)+(me>>>26)|0,me&=67108863,r=Math.imul(C,N),i=(i=Math.imul(C,L))+Math.imul(B,N)|0,a=Math.imul(B,L),r=r+Math.imul(b,G)|0,i=(i=i+Math.imul(b,$)|0)+Math.imul(I,G)|0,a=a+Math.imul(I,$)|0,r=r+Math.imul(y,J)|0,i=(i=i+Math.imul(y,V)|0)+Math.imul(v,J)|0,a=a+Math.imul(v,V)|0,r=r+Math.imul(p,q)|0,i=(i=i+Math.imul(p,W)|0)+Math.imul(d,q)|0,a=a+Math.imul(d,W)|0;var be=(u+(r=r+Math.imul(A,Z)|0)|0)+((8191&(i=(i=i+Math.imul(A,ee)|0)+Math.imul(f,Z)|0))<<13)|0;u=((a=a+Math.imul(f,ee)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,r=Math.imul(_,N),i=(i=Math.imul(_,L))+Math.imul(k,N)|0,a=Math.imul(k,L),r=r+Math.imul(C,G)|0,i=(i=i+Math.imul(C,$)|0)+Math.imul(B,G)|0,a=a+Math.imul(B,$)|0,r=r+Math.imul(b,J)|0,i=(i=i+Math.imul(b,V)|0)+Math.imul(I,J)|0,a=a+Math.imul(I,V)|0,r=r+Math.imul(y,q)|0,i=(i=i+Math.imul(y,W)|0)+Math.imul(v,q)|0,a=a+Math.imul(v,W)|0,r=r+Math.imul(p,Z)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(d,Z)|0,a=a+Math.imul(d,ee)|0;var Ie=(u+(r=r+Math.imul(A,ne)|0)|0)+((8191&(i=(i=i+Math.imul(A,re)|0)+Math.imul(f,ne)|0))<<13)|0;u=((a=a+Math.imul(f,re)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,r=Math.imul(S,N),i=(i=Math.imul(S,L))+Math.imul(x,N)|0,a=Math.imul(x,L),r=r+Math.imul(_,G)|0,i=(i=i+Math.imul(_,$)|0)+Math.imul(k,G)|0,a=a+Math.imul(k,$)|0,r=r+Math.imul(C,J)|0,i=(i=i+Math.imul(C,V)|0)+Math.imul(B,J)|0,a=a+Math.imul(B,V)|0,r=r+Math.imul(b,q)|0,i=(i=i+Math.imul(b,W)|0)+Math.imul(I,q)|0,a=a+Math.imul(I,W)|0,r=r+Math.imul(y,Z)|0,i=(i=i+Math.imul(y,ee)|0)+Math.imul(v,Z)|0,a=a+Math.imul(v,ee)|0,r=r+Math.imul(p,ne)|0,i=(i=i+Math.imul(p,re)|0)+Math.imul(d,ne)|0,a=a+Math.imul(d,re)|0;var we=(u+(r=r+Math.imul(A,ae)|0)|0)+((8191&(i=(i=i+Math.imul(A,oe)|0)+Math.imul(f,ae)|0))<<13)|0;u=((a=a+Math.imul(f,oe)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,r=Math.imul(P,N),i=(i=Math.imul(P,L))+Math.imul(M,N)|0,a=Math.imul(M,L),r=r+Math.imul(S,G)|0,i=(i=i+Math.imul(S,$)|0)+Math.imul(x,G)|0,a=a+Math.imul(x,$)|0,r=r+Math.imul(_,J)|0,i=(i=i+Math.imul(_,V)|0)+Math.imul(k,J)|0,a=a+Math.imul(k,V)|0,r=r+Math.imul(C,q)|0,i=(i=i+Math.imul(C,W)|0)+Math.imul(B,q)|0,a=a+Math.imul(B,W)|0,r=r+Math.imul(b,Z)|0,i=(i=i+Math.imul(b,ee)|0)+Math.imul(I,Z)|0,a=a+Math.imul(I,ee)|0,r=r+Math.imul(y,ne)|0,i=(i=i+Math.imul(y,re)|0)+Math.imul(v,ne)|0,a=a+Math.imul(v,re)|0,r=r+Math.imul(p,ae)|0,i=(i=i+Math.imul(p,oe)|0)+Math.imul(d,ae)|0,a=a+Math.imul(d,oe)|0;var Ce=(u+(r=r+Math.imul(A,ce)|0)|0)+((8191&(i=(i=i+Math.imul(A,ue)|0)+Math.imul(f,ce)|0))<<13)|0;u=((a=a+Math.imul(f,ue)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,r=Math.imul(O,N),i=(i=Math.imul(O,L))+Math.imul(R,N)|0,a=Math.imul(R,L),r=r+Math.imul(P,G)|0,i=(i=i+Math.imul(P,$)|0)+Math.imul(M,G)|0,a=a+Math.imul(M,$)|0,r=r+Math.imul(S,J)|0,i=(i=i+Math.imul(S,V)|0)+Math.imul(x,J)|0,a=a+Math.imul(x,V)|0,r=r+Math.imul(_,q)|0,i=(i=i+Math.imul(_,W)|0)+Math.imul(k,q)|0,a=a+Math.imul(k,W)|0,r=r+Math.imul(C,Z)|0,i=(i=i+Math.imul(C,ee)|0)+Math.imul(B,Z)|0,a=a+Math.imul(B,ee)|0,r=r+Math.imul(b,ne)|0,i=(i=i+Math.imul(b,re)|0)+Math.imul(I,ne)|0,a=a+Math.imul(I,re)|0,r=r+Math.imul(y,ae)|0,i=(i=i+Math.imul(y,oe)|0)+Math.imul(v,ae)|0,a=a+Math.imul(v,oe)|0,r=r+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,ue)|0)+Math.imul(d,ce)|0,a=a+Math.imul(d,ue)|0;var Be=(u+(r=r+Math.imul(A,Ae)|0)|0)+((8191&(i=(i=i+Math.imul(A,fe)|0)+Math.imul(f,Ae)|0))<<13)|0;u=((a=a+Math.imul(f,fe)|0)+(i>>>13)|0)+(Be>>>26)|0,Be&=67108863,r=Math.imul(j,N),i=(i=Math.imul(j,L))+Math.imul(H,N)|0,a=Math.imul(H,L),r=r+Math.imul(O,G)|0,i=(i=i+Math.imul(O,$)|0)+Math.imul(R,G)|0,a=a+Math.imul(R,$)|0,r=r+Math.imul(P,J)|0,i=(i=i+Math.imul(P,V)|0)+Math.imul(M,J)|0,a=a+Math.imul(M,V)|0,r=r+Math.imul(S,q)|0,i=(i=i+Math.imul(S,W)|0)+Math.imul(x,q)|0,a=a+Math.imul(x,W)|0,r=r+Math.imul(_,Z)|0,i=(i=i+Math.imul(_,ee)|0)+Math.imul(k,Z)|0,a=a+Math.imul(k,ee)|0,r=r+Math.imul(C,ne)|0,i=(i=i+Math.imul(C,re)|0)+Math.imul(B,ne)|0,a=a+Math.imul(B,re)|0,r=r+Math.imul(b,ae)|0,i=(i=i+Math.imul(b,oe)|0)+Math.imul(I,ae)|0,a=a+Math.imul(I,oe)|0,r=r+Math.imul(y,ce)|0,i=(i=i+Math.imul(y,ue)|0)+Math.imul(v,ce)|0,a=a+Math.imul(v,ue)|0,r=r+Math.imul(p,Ae)|0,i=(i=i+Math.imul(p,fe)|0)+Math.imul(d,Ae)|0,a=a+Math.imul(d,fe)|0;var Ee=(u+(r=r+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,de)|0)+Math.imul(f,pe)|0))<<13)|0;u=((a=a+Math.imul(f,de)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,r=Math.imul(j,G),i=(i=Math.imul(j,$))+Math.imul(H,G)|0,a=Math.imul(H,$),r=r+Math.imul(O,J)|0,i=(i=i+Math.imul(O,V)|0)+Math.imul(R,J)|0,a=a+Math.imul(R,V)|0,r=r+Math.imul(P,q)|0,i=(i=i+Math.imul(P,W)|0)+Math.imul(M,q)|0,a=a+Math.imul(M,W)|0,r=r+Math.imul(S,Z)|0,i=(i=i+Math.imul(S,ee)|0)+Math.imul(x,Z)|0,a=a+Math.imul(x,ee)|0,r=r+Math.imul(_,ne)|0,i=(i=i+Math.imul(_,re)|0)+Math.imul(k,ne)|0,a=a+Math.imul(k,re)|0,r=r+Math.imul(C,ae)|0,i=(i=i+Math.imul(C,oe)|0)+Math.imul(B,ae)|0,a=a+Math.imul(B,oe)|0,r=r+Math.imul(b,ce)|0,i=(i=i+Math.imul(b,ue)|0)+Math.imul(I,ce)|0,a=a+Math.imul(I,ue)|0,r=r+Math.imul(y,Ae)|0,i=(i=i+Math.imul(y,fe)|0)+Math.imul(v,Ae)|0,a=a+Math.imul(v,fe)|0;var _e=(u+(r=r+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,de)|0)+Math.imul(d,pe)|0))<<13)|0;u=((a=a+Math.imul(d,de)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,r=Math.imul(j,J),i=(i=Math.imul(j,V))+Math.imul(H,J)|0,a=Math.imul(H,V),r=r+Math.imul(O,q)|0,i=(i=i+Math.imul(O,W)|0)+Math.imul(R,q)|0,a=a+Math.imul(R,W)|0,r=r+Math.imul(P,Z)|0,i=(i=i+Math.imul(P,ee)|0)+Math.imul(M,Z)|0,a=a+Math.imul(M,ee)|0,r=r+Math.imul(S,ne)|0,i=(i=i+Math.imul(S,re)|0)+Math.imul(x,ne)|0,a=a+Math.imul(x,re)|0,r=r+Math.imul(_,ae)|0,i=(i=i+Math.imul(_,oe)|0)+Math.imul(k,ae)|0,a=a+Math.imul(k,oe)|0,r=r+Math.imul(C,ce)|0,i=(i=i+Math.imul(C,ue)|0)+Math.imul(B,ce)|0,a=a+Math.imul(B,ue)|0,r=r+Math.imul(b,Ae)|0,i=(i=i+Math.imul(b,fe)|0)+Math.imul(I,Ae)|0,a=a+Math.imul(I,fe)|0;var ke=(u+(r=r+Math.imul(y,pe)|0)|0)+((8191&(i=(i=i+Math.imul(y,de)|0)+Math.imul(v,pe)|0))<<13)|0;u=((a=a+Math.imul(v,de)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,r=Math.imul(j,q),i=(i=Math.imul(j,W))+Math.imul(H,q)|0,a=Math.imul(H,W),r=r+Math.imul(O,Z)|0,i=(i=i+Math.imul(O,ee)|0)+Math.imul(R,Z)|0,a=a+Math.imul(R,ee)|0,r=r+Math.imul(P,ne)|0,i=(i=i+Math.imul(P,re)|0)+Math.imul(M,ne)|0,a=a+Math.imul(M,re)|0,r=r+Math.imul(S,ae)|0,i=(i=i+Math.imul(S,oe)|0)+Math.imul(x,ae)|0,a=a+Math.imul(x,oe)|0,r=r+Math.imul(_,ce)|0,i=(i=i+Math.imul(_,ue)|0)+Math.imul(k,ce)|0,a=a+Math.imul(k,ue)|0,r=r+Math.imul(C,Ae)|0,i=(i=i+Math.imul(C,fe)|0)+Math.imul(B,Ae)|0,a=a+Math.imul(B,fe)|0;var Qe=(u+(r=r+Math.imul(b,pe)|0)|0)+((8191&(i=(i=i+Math.imul(b,de)|0)+Math.imul(I,pe)|0))<<13)|0;u=((a=a+Math.imul(I,de)|0)+(i>>>13)|0)+(Qe>>>26)|0,Qe&=67108863,r=Math.imul(j,Z),i=(i=Math.imul(j,ee))+Math.imul(H,Z)|0,a=Math.imul(H,ee),r=r+Math.imul(O,ne)|0,i=(i=i+Math.imul(O,re)|0)+Math.imul(R,ne)|0,a=a+Math.imul(R,re)|0,r=r+Math.imul(P,ae)|0,i=(i=i+Math.imul(P,oe)|0)+Math.imul(M,ae)|0,a=a+Math.imul(M,oe)|0,r=r+Math.imul(S,ce)|0,i=(i=i+Math.imul(S,ue)|0)+Math.imul(x,ce)|0,a=a+Math.imul(x,ue)|0,r=r+Math.imul(_,Ae)|0,i=(i=i+Math.imul(_,fe)|0)+Math.imul(k,Ae)|0,a=a+Math.imul(k,fe)|0;var Se=(u+(r=r+Math.imul(C,pe)|0)|0)+((8191&(i=(i=i+Math.imul(C,de)|0)+Math.imul(B,pe)|0))<<13)|0;u=((a=a+Math.imul(B,de)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,r=Math.imul(j,ne),i=(i=Math.imul(j,re))+Math.imul(H,ne)|0,a=Math.imul(H,re),r=r+Math.imul(O,ae)|0,i=(i=i+Math.imul(O,oe)|0)+Math.imul(R,ae)|0,a=a+Math.imul(R,oe)|0,r=r+Math.imul(P,ce)|0,i=(i=i+Math.imul(P,ue)|0)+Math.imul(M,ce)|0,a=a+Math.imul(M,ue)|0,r=r+Math.imul(S,Ae)|0,i=(i=i+Math.imul(S,fe)|0)+Math.imul(x,Ae)|0,a=a+Math.imul(x,fe)|0;var xe=(u+(r=r+Math.imul(_,pe)|0)|0)+((8191&(i=(i=i+Math.imul(_,de)|0)+Math.imul(k,pe)|0))<<13)|0;u=((a=a+Math.imul(k,de)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,r=Math.imul(j,ae),i=(i=Math.imul(j,oe))+Math.imul(H,ae)|0,a=Math.imul(H,oe),r=r+Math.imul(O,ce)|0,i=(i=i+Math.imul(O,ue)|0)+Math.imul(R,ce)|0,a=a+Math.imul(R,ue)|0,r=r+Math.imul(P,Ae)|0,i=(i=i+Math.imul(P,fe)|0)+Math.imul(M,Ae)|0,a=a+Math.imul(M,fe)|0;var De=(u+(r=r+Math.imul(S,pe)|0)|0)+((8191&(i=(i=i+Math.imul(S,de)|0)+Math.imul(x,pe)|0))<<13)|0;u=((a=a+Math.imul(x,de)|0)+(i>>>13)|0)+(De>>>26)|0,De&=67108863,r=Math.imul(j,ce),i=(i=Math.imul(j,ue))+Math.imul(H,ce)|0,a=Math.imul(H,ue),r=r+Math.imul(O,Ae)|0,i=(i=i+Math.imul(O,fe)|0)+Math.imul(R,Ae)|0,a=a+Math.imul(R,fe)|0;var Pe=(u+(r=r+Math.imul(P,pe)|0)|0)+((8191&(i=(i=i+Math.imul(P,de)|0)+Math.imul(M,pe)|0))<<13)|0;u=((a=a+Math.imul(M,de)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,r=Math.imul(j,Ae),i=(i=Math.imul(j,fe))+Math.imul(H,Ae)|0,a=Math.imul(H,fe);var Me=(u+(r=r+Math.imul(O,pe)|0)|0)+((8191&(i=(i=i+Math.imul(O,de)|0)+Math.imul(R,pe)|0))<<13)|0;u=((a=a+Math.imul(R,de)|0)+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863;var Fe=(u+(r=Math.imul(j,pe))|0)+((8191&(i=(i=Math.imul(j,de))+Math.imul(H,pe)|0))<<13)|0;return u=((a=Math.imul(H,de))+(i>>>13)|0)+(Fe>>>26)|0,Fe&=67108863,c[0]=ge,c[1]=ye,c[2]=ve,c[3]=me,c[4]=be,c[5]=Ie,c[6]=we,c[7]=Ce,c[8]=Be,c[9]=Ee,c[10]=_e,c[11]=ke,c[12]=Qe,c[13]=Se,c[14]=xe,c[15]=De,c[16]=Pe,c[17]=Me,c[18]=Fe,0!==u&&(c[19]=u,n.length++),n};function d(e,t,n){return(new g).mulp(e,t,n)}function g(e,t){this.x=e,this.y=t}Math.imul||(p=h),o.prototype.mulTo=function(e,t){var n=this.length+e.length;return 10===this.length&&10===e.length?p(this,e,t):n<63?h(this,e,t):n<1024?function(e,t,n){n.negative=t.negative^e.negative,n.length=e.length+t.length;for(var r=0,i=0,a=0;a<n.length-1;a++){var o=i;i=0;for(var s=67108863&r,c=Math.min(a,t.length-1),u=Math.max(0,a-e.length+1);u<=c;u++){var l=a-u,A=(0|e.words[l])*(0|t.words[u]),f=67108863&A;s=67108863&(f=f+s|0),i+=(o=(o=o+(A/67108864|0)|0)+(f>>>26)|0)>>>26,o&=67108863}n.words[a]=s,r=o,o=i}return 0!==r?n.words[a]=r:n.length--,n.strip()}(this,e,t):d(this,e,t)},g.prototype.makeRBT=function(e){for(var t=new Array(e),n=o.prototype._countBits(e)-1,r=0;r<e;r++)t[r]=this.revBin(r,n,e);return t},g.prototype.revBin=function(e,t,n){if(0===e||e===n-1)return e;for(var r=0,i=0;i<t;i++)r|=(1&e)<<t-i-1,e>>=1;return r},g.prototype.permute=function(e,t,n,r,i,a){for(var o=0;o<a;o++)r[o]=t[e[o]],i[o]=n[e[o]]},g.prototype.transform=function(e,t,n,r,i,a){this.permute(a,e,t,n,r,i);for(var o=1;o<i;o<<=1)for(var s=o<<1,c=Math.cos(2*Math.PI/s),u=Math.sin(2*Math.PI/s),l=0;l<i;l+=s)for(var A=c,f=u,h=0;h<o;h++){var p=n[l+h],d=r[l+h],g=n[l+h+o],y=r[l+h+o],v=A*g-f*y;y=A*y+f*g,g=v,n[l+h]=p+g,r[l+h]=d+y,n[l+h+o]=p-g,r[l+h+o]=d-y,h!==s&&(v=c*A-u*f,f=c*f+u*A,A=v)}},g.prototype.guessLen13b=function(e,t){var n=1|Math.max(t,e),r=1&n,i=0;for(n=n/2|0;n;n>>>=1)i++;return 1<<i+1+r},g.prototype.conjugate=function(e,t,n){if(!(n<=1))for(var r=0;r<n/2;r++){var i=e[r];e[r]=e[n-r-1],e[n-r-1]=i,i=t[r],t[r]=-t[n-r-1],t[n-r-1]=-i}},g.prototype.normalize13b=function(e,t){for(var n=0,r=0;r<t/2;r++){var i=8192*Math.round(e[2*r+1]/t)+Math.round(e[2*r]/t)+n;e[r]=67108863&i,n=i<67108864?0:i/67108864|0}return e},g.prototype.convert13b=function(e,t,n,r){for(var a=0,o=0;o<t;o++)a+=0|e[o],n[2*o]=8191&a,a>>>=13,n[2*o+1]=8191&a,a>>>=13;for(o=2*t;o<r;++o)n[o]=0;i(0===a),i(0==(-8192&a))},g.prototype.stub=function(e){for(var t=new Array(e),n=0;n<e;n++)t[n]=0;return t},g.prototype.mulp=function(e,t,n){var r=2*this.guessLen13b(e.length,t.length),i=this.makeRBT(r),a=this.stub(r),o=new Array(r),s=new Array(r),c=new Array(r),u=new Array(r),l=new Array(r),A=new Array(r),f=n.words;f.length=r,this.convert13b(e.words,e.length,o,r),this.convert13b(t.words,t.length,u,r),this.transform(o,a,s,c,r,i),this.transform(u,a,l,A,r,i);for(var h=0;h<r;h++){var p=s[h]*l[h]-c[h]*A[h];c[h]=s[h]*A[h]+c[h]*l[h],s[h]=p}return this.conjugate(s,c,r),this.transform(s,c,f,a,r,i),this.conjugate(f,a,r),this.normalize13b(f,r),n.negative=e.negative^t.negative,n.length=e.length+t.length,n.strip()},o.prototype.mul=function(e){var t=new o(null);return t.words=new Array(this.length+e.length),this.mulTo(e,t)},o.prototype.mulf=function(e){var t=new o(null);return t.words=new Array(this.length+e.length),d(this,e,t)},o.prototype.imul=function(e){return this.clone().mulTo(e,this)},o.prototype.imuln=function(e){i("number"==typeof e),i(e<67108864);for(var t=0,n=0;n<this.length;n++){var r=(0|this.words[n])*e,a=(67108863&r)+(67108863&t);t>>=26,t+=r/67108864|0,t+=a>>>26,this.words[n]=67108863&a}return 0!==t&&(this.words[n]=t,this.length++),this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),n=0;n<t.length;n++){var r=n/26|0,i=n%26;t[n]=(e.words[r]&1<<i)>>>i}return t}(e);if(0===t.length)return new o(1);for(var n=this,r=0;r<t.length&&0===t[r];r++,n=n.sqr());if(++r<t.length)for(var i=n.sqr();r<t.length;r++,i=i.sqr())0!==t[r]&&(n=n.mul(i));return n},o.prototype.iushln=function(e){i("number"==typeof e&&e>=0);var t,n=e%26,r=(e-n)/26,a=67108863>>>26-n<<26-n;if(0!==n){var o=0;for(t=0;t<this.length;t++){var s=this.words[t]&a,c=(0|this.words[t])-s<<n;this.words[t]=c|o,o=s>>>26-n}o&&(this.words[t]=o,this.length++)}if(0!==r){for(t=this.length-1;t>=0;t--)this.words[t+r]=this.words[t];for(t=0;t<r;t++)this.words[t]=0;this.length+=r}return this.strip()},o.prototype.ishln=function(e){return i(0===this.negative),this.iushln(e)},o.prototype.iushrn=function(e,t,n){var r;i("number"==typeof e&&e>=0),r=t?(t-t%26)/26:0;var a=e%26,o=Math.min((e-a)/26,this.length),s=67108863^67108863>>>a<<a,c=n;if(r-=o,r=Math.max(0,r),c){for(var u=0;u<o;u++)c.words[u]=this.words[u];c.length=o}if(0===o);else if(this.length>o)for(this.length-=o,u=0;u<this.length;u++)this.words[u]=this.words[u+o];else this.words[0]=0,this.length=1;var l=0;for(u=this.length-1;u>=0&&(0!==l||u>=r);u--){var A=0|this.words[u];this.words[u]=l<<26-a|A>>>a,l=A&s}return c&&0!==l&&(c.words[c.length++]=l),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(e,t,n){return i(0===this.negative),this.iushrn(e,t,n)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){i("number"==typeof e&&e>=0);var t=e%26,n=(e-t)/26,r=1<<t;return!(this.length<=n||!(this.words[n]&r))},o.prototype.imaskn=function(e){i("number"==typeof e&&e>=0);var t=e%26,n=(e-t)/26;if(i(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==t&&n++,this.length=Math.min(n,this.length),0!==t){var r=67108863^67108863>>>t<<t;this.words[this.length-1]&=r}return this.strip()},o.prototype.maskn=function(e){return this.clone().imaskn(e)},o.prototype.iaddn=function(e){return i("number"==typeof e),i(e<67108864),e<0?this.isubn(-e):0!==this.negative?1===this.length&&(0|this.words[0])<e?(this.words[0]=e-(0|this.words[0]),this.negative=0,this):(this.negative=0,this.isubn(e),this.negative=1,this):this._iaddn(e)},o.prototype._iaddn=function(e){this.words[0]+=e;for(var t=0;t<this.length&&this.words[t]>=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(i("number"==typeof e),i(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t<this.length&&this.words[t]<0;t++)this.words[t]+=67108864,this.words[t+1]-=1;return this.strip()},o.prototype.addn=function(e){return this.clone().iaddn(e)},o.prototype.subn=function(e){return this.clone().isubn(e)},o.prototype.iabs=function(){return this.negative=0,this},o.prototype.abs=function(){return this.clone().iabs()},o.prototype._ishlnsubmul=function(e,t,n){var r,a,o=e.length+n;this._expand(o);var s=0;for(r=0;r<e.length;r++){a=(0|this.words[r+n])+s;var c=(0|e.words[r])*t;s=((a-=67108863&c)>>26)-(c/67108864|0),this.words[r+n]=67108863&a}for(;r<this.length-n;r++)s=(a=(0|this.words[r+n])+s)>>26,this.words[r+n]=67108863&a;if(0===s)return this.strip();for(i(-1===s),s=0,r=0;r<this.length;r++)s=(a=-(0|this.words[r])+s)>>26,this.words[r]=67108863&a;return this.negative=1,this.strip()},o.prototype._wordDiv=function(e,t){var n=(this.length,e.length),r=this.clone(),i=e,a=0|i.words[i.length-1];0!=(n=26-this._countBits(a))&&(i=i.ushln(n),r.iushln(n),a=0|i.words[i.length-1]);var s,c=r.length-i.length;if("mod"!==t){(s=new o(null)).length=c+1,s.words=new Array(s.length);for(var u=0;u<s.length;u++)s.words[u]=0}var l=r.clone()._ishlnsubmul(i,1,c);0===l.negative&&(r=l,s&&(s.words[c]=1));for(var A=c-1;A>=0;A--){var f=67108864*(0|r.words[i.length+A])+(0|r.words[i.length+A-1]);for(f=Math.min(f/a|0,67108863),r._ishlnsubmul(i,f,A);0!==r.negative;)f--,r.negative=0,r._ishlnsubmul(i,1,A),r.isZero()||(r.negative^=1);s&&(s.words[A]=f)}return s&&s.strip(),r.strip(),"div"!==t&&0!==n&&r.iushrn(n),{div:s||null,mod:r}},o.prototype.divmod=function(e,t,n){return i(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(r=s.div.neg()),"div"!==t&&(a=s.mod.neg(),n&&0!==a.negative&&a.iadd(e)),{div:r,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(r=s.div.neg()),{div:r,mod:s.mod}):0!=(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),n&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modn(e.words[0]))}:this._wordDiv(e,t);var r,a,s},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var n=0!==t.div.negative?t.mod.isub(e):t.mod,r=e.ushrn(1),i=e.andln(1),a=n.cmp(r);return a<0||1===i&&0===a?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modn=function(e){i(e<=67108863);for(var t=(1<<26)%e,n=0,r=this.length-1;r>=0;r--)n=(t*n+(0|this.words[r]))%e;return n},o.prototype.idivn=function(e){i(e<=67108863);for(var t=0,n=this.length-1;n>=0;n--){var r=(0|this.words[n])+67108864*t;this.words[n]=r/e|0,t=r%e}return this.strip()},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){i(0===e.negative),i(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var r=new o(1),a=new o(0),s=new o(0),c=new o(1),u=0;t.isEven()&&n.isEven();)t.iushrn(1),n.iushrn(1),++u;for(var l=n.clone(),A=t.clone();!t.isZero();){for(var f=0,h=1;0==(t.words[0]&h)&&f<26;++f,h<<=1);if(f>0)for(t.iushrn(f);f-- >0;)(r.isOdd()||a.isOdd())&&(r.iadd(l),a.isub(A)),r.iushrn(1),a.iushrn(1);for(var p=0,d=1;0==(n.words[0]&d)&&p<26;++p,d<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(l),c.isub(A)),s.iushrn(1),c.iushrn(1);t.cmp(n)>=0?(t.isub(n),r.isub(s),a.isub(c)):(n.isub(t),s.isub(r),c.isub(a))}return{a:s,b:c,gcd:n.iushln(u)}},o.prototype._invmp=function(e){i(0===e.negative),i(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var r,a=new o(1),s=new o(0),c=n.clone();t.cmpn(1)>0&&n.cmpn(1)>0;){for(var u=0,l=1;0==(t.words[0]&l)&&u<26;++u,l<<=1);if(u>0)for(t.iushrn(u);u-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var A=0,f=1;0==(n.words[0]&f)&&A<26;++A,f<<=1);if(A>0)for(n.iushrn(A);A-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(n)>=0?(t.isub(n),a.isub(s)):(n.isub(t),s.isub(a))}return(r=0===t.cmpn(1)?a:s).cmpn(0)<0&&r.iadd(e),r},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),n=e.clone();t.negative=0,n.negative=0;for(var r=0;t.isEven()&&n.isEven();r++)t.iushrn(1),n.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=t.cmp(n);if(i<0){var a=t;t=n,n=a}else if(0===i||0===n.cmpn(1))break;t.isub(n)}return n.iushln(r)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0==(1&this.words[0])},o.prototype.isOdd=function(){return 1==(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){i("number"==typeof e);var t=e%26,n=(e-t)/26,r=1<<t;if(this.length<=n)return this._expand(n+1),this.words[n]|=r,this;for(var a=r,o=n;0!==a&&o<this.length;o++){var s=0|this.words[o];a=(s+=a)>>>26,s&=67108863,this.words[o]=s}return 0!==a&&(this.words[o]=a,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,n=e<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)t=1;else{n&&(e=-e),i(e<=67108863,"Number is too big");var r=0|this.words[0];t=r===e?0:r<e?-1:1}return 0!==this.negative?0|-t:t},o.prototype.cmp=function(e){if(0!==this.negative&&0===e.negative)return-1;if(0===this.negative&&0!==e.negative)return 1;var t=this.ucmp(e);return 0!==this.negative?0|-t:t},o.prototype.ucmp=function(e){if(this.length>e.length)return 1;if(this.length<e.length)return-1;for(var t=0,n=this.length-1;n>=0;n--){var r=0|this.words[n],i=0|e.words[n];if(r!==i){r<i?t=-1:r>i&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new C(e)},o.prototype.toRed=function(e){return i(!this.red,"Already a number in reduction context"),i(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return i(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return i(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var y={k256:null,p224:null,p192:null,p25519:null};function v(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function m(){v.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){v.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function I(){v.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function w(){v.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function C(e){if("string"==typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else i(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function B(e){C.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}v.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},v.prototype.ireduce=function(e){var t,n=e;do{this.split(n,this.tmp),t=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(t>this.n);var r=t<this.n?-1:n.ucmp(this.p);return 0===r?(n.words[0]=0,n.length=1):r>0?n.isub(this.p):n.strip(),n},v.prototype.split=function(e,t){e.iushrn(this.n,0,t)},v.prototype.imulK=function(e){return e.imul(this.k)},a(m,v),m.prototype.split=function(e,t){for(var n=Math.min(e.length,9),r=0;r<n;r++)t.words[r]=e.words[r];if(t.length=n,e.length<=9)return e.words[0]=0,void(e.length=1);var i=e.words[9];for(t.words[t.length++]=4194303&i,r=10;r<e.length;r++){var a=0|e.words[r];e.words[r-10]=(4194303&a)<<4|i>>>22,i=a}i>>>=22,e.words[r-10]=i,0===i&&e.length>10?e.length-=10:e.length-=9},m.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,n=0;n<e.length;n++){var r=0|e.words[n];t+=977*r,e.words[n]=67108863&t,t=64*r+(t/67108864|0)}return 0===e.words[e.length-1]&&(e.length--,0===e.words[e.length-1]&&e.length--),e},a(b,v),a(I,v),a(w,v),w.prototype.imulK=function(e){for(var t=0,n=0;n<e.length;n++){var r=19*(0|e.words[n])+t,i=67108863&r;r>>>=26,e.words[n]=i,t=r}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(y[e])return y[e];var t;if("k256"===e)t=new m;else if("p224"===e)t=new b;else if("p192"===e)t=new I;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new w}return y[e]=t,t},C.prototype._verify1=function(e){i(0===e.negative,"red works only with positives"),i(e.red,"red works only with red numbers")},C.prototype._verify2=function(e,t){i(0==(e.negative|t.negative),"red works only with positives"),i(e.red&&e.red===t.red,"red works only with red numbers")},C.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},C.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},C.prototype.add=function(e,t){this._verify2(e,t);var n=e.add(t);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},C.prototype.iadd=function(e,t){this._verify2(e,t);var n=e.iadd(t);return n.cmp(this.m)>=0&&n.isub(this.m),n},C.prototype.sub=function(e,t){this._verify2(e,t);var n=e.sub(t);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},C.prototype.isub=function(e,t){this._verify2(e,t);var n=e.isub(t);return n.cmpn(0)<0&&n.iadd(this.m),n},C.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},C.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},C.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},C.prototype.isqr=function(e){return this.imul(e,e.clone())},C.prototype.sqr=function(e){return this.mul(e,e)},C.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(i(t%2==1),3===t){var n=this.m.add(new o(1)).iushrn(2);return this.pow(e,n)}for(var r=this.m.subn(1),a=0;!r.isZero()&&0===r.andln(1);)a++,r.iushrn(1);i(!r.isZero());var s=new o(1).toRed(this),c=s.redNeg(),u=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new o(2*l*l).toRed(this);0!==this.pow(l,u).cmp(c);)l.redIAdd(c);for(var A=this.pow(l,r),f=this.pow(e,r.addn(1).iushrn(1)),h=this.pow(e,r),p=a;0!==h.cmp(s);){for(var d=h,g=0;0!==d.cmp(s);g++)d=d.redSqr();i(g<p);var y=this.pow(A,new o(1).iushln(p-g-1));f=f.redMul(y),A=y.redSqr(),h=h.redMul(A),p=g}return f},C.prototype.invm=function(e){var t=e._invmp(this.m);return 0!==t.negative?(t.negative=0,this.imod(t).redNeg()):this.imod(t)},C.prototype.pow=function(e,t){if(t.isZero())return new o(1).toRed(this);if(0===t.cmpn(1))return e.clone();var n=new Array(16);n[0]=new o(1).toRed(this),n[1]=e;for(var r=2;r<n.length;r++)n[r]=this.mul(n[r-1],e);var i=n[0],a=0,s=0,c=t.bitLength()%26;for(0===c&&(c=26),r=t.length-1;r>=0;r--){for(var u=t.words[r],l=c-1;l>=0;l--){var A=u>>l&1;i!==n[0]&&(i=this.sqr(i)),0!==A||0!==a?(a<<=1,a|=A,(4==++s||0===r&&0===l)&&(i=this.mul(i,n[a]),s=0,a=0)):s=0}c=26}return i},C.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},C.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new B(e)},a(B,C),B.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},B.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},B.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var n=e.imul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},B.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var n=e.mul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},B.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e,this)}).call(this,n(42)(e))},function(e,t,n){var r,i,a,o,s;function c(e){return(c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}s="object"==c((o=this).sodium)&&"function"==typeof o.sodium.onload?o.sodium.onload:null,i=[t,n(86)],void 0!==(a="function"==typeof(r=function(e,t){"use strict";var n,r=t.ready.then((function(){function r(){if(0!==n._sodium_init())throw new Error("libsodium was not correctly initialized.");for(var t=["crypto_aead_chacha20poly1305_decrypt","crypto_aead_chacha20poly1305_decrypt_detached","crypto_aead_chacha20poly1305_encrypt","crypto_aead_chacha20poly1305_encrypt_detached","crypto_aead_chacha20poly1305_ietf_decrypt","crypto_aead_chacha20poly1305_ietf_decrypt_detached","crypto_aead_chacha20poly1305_ietf_encrypt","crypto_aead_chacha20poly1305_ietf_encrypt_detached","crypto_aead_chacha20poly1305_ietf_keygen","crypto_aead_chacha20poly1305_keygen","crypto_aead_xchacha20poly1305_ietf_decrypt","crypto_aead_xchacha20poly1305_ietf_decrypt_detached","crypto_aead_xchacha20poly1305_ietf_encrypt","crypto_aead_xchacha20poly1305_ietf_encrypt_detached","crypto_aead_xchacha20poly1305_ietf_keygen","crypto_auth","crypto_auth_hmacsha256","crypto_auth_hmacsha256_keygen","crypto_auth_hmacsha256_verify","crypto_auth_hmacsha512","crypto_auth_hmacsha512_keygen","crypto_auth_hmacsha512_verify","crypto_auth_keygen","crypto_auth_verify","crypto_box_beforenm","crypto_box_curve25519xchacha20poly1305_keypair","crypto_box_curve25519xchacha20poly1305_seal","crypto_box_curve25519xchacha20poly1305_seal_open","crypto_box_detached","crypto_box_easy","crypto_box_easy_afternm","crypto_box_keypair","crypto_box_open_detached","crypto_box_open_easy","crypto_box_open_easy_afternm","crypto_box_seal","crypto_box_seal_open","crypto_box_seed_keypair","crypto_core_ristretto255_add","crypto_core_ristretto255_from_hash","crypto_core_ristretto255_is_valid_point","crypto_core_ristretto255_random","crypto_core_ristretto255_scalar_add","crypto_core_ristretto255_scalar_complement","crypto_core_ristretto255_scalar_invert","crypto_core_ristretto255_scalar_mul","crypto_core_ristretto255_scalar_negate","crypto_core_ristretto255_scalar_random","crypto_core_ristretto255_scalar_reduce","crypto_core_ristretto255_scalar_sub","crypto_core_ristretto255_sub","crypto_generichash","crypto_generichash_blake2b_salt_personal","crypto_generichash_final","crypto_generichash_init","crypto_generichash_keygen","crypto_generichash_update","crypto_hash","crypto_hash_sha256","crypto_hash_sha512","crypto_kdf_derive_from_key","crypto_kdf_keygen","crypto_kx_client_session_keys","crypto_kx_keypair","crypto_kx_seed_keypair","crypto_kx_server_session_keys","crypto_onetimeauth","crypto_onetimeauth_final","crypto_onetimeauth_init","crypto_onetimeauth_keygen","crypto_onetimeauth_update","crypto_onetimeauth_verify","crypto_pwhash","crypto_pwhash_scryptsalsa208sha256","crypto_pwhash_scryptsalsa208sha256_ll","crypto_pwhash_scryptsalsa208sha256_str","crypto_pwhash_scryptsalsa208sha256_str_verify","crypto_pwhash_str","crypto_pwhash_str_verify","crypto_scalarmult","crypto_scalarmult_base","crypto_scalarmult_ristretto255","crypto_scalarmult_ristretto255_base","crypto_secretbox_detached","crypto_secretbox_easy","crypto_secretbox_keygen","crypto_secretbox_open_detached","crypto_secretbox_open_easy","crypto_secretstream_xchacha20poly1305_init_pull","crypto_secretstream_xchacha20poly1305_init_push","crypto_secretstream_xchacha20poly1305_keygen","crypto_secretstream_xchacha20poly1305_pull","crypto_secretstream_xchacha20poly1305_push","crypto_secretstream_xchacha20poly1305_rekey","crypto_shorthash","crypto_shorthash_keygen","crypto_shorthash_siphashx24","crypto_sign","crypto_sign_detached","crypto_sign_ed25519_pk_to_curve25519","crypto_sign_ed25519_sk_to_curve25519","crypto_sign_ed25519_sk_to_pk","crypto_sign_ed25519_sk_to_seed","crypto_sign_final_create","crypto_sign_final_verify","crypto_sign_init","crypto_sign_keypair","crypto_sign_open","crypto_sign_seed_keypair","crypto_sign_update","crypto_sign_verify_detached","crypto_stream_chacha20","crypto_stream_chacha20_ietf_xor","crypto_stream_chacha20_ietf_xor_ic","crypto_stream_chacha20_keygen","crypto_stream_chacha20_xor","crypto_stream_chacha20_xor_ic","crypto_stream_keygen","crypto_stream_xchacha20_keygen","crypto_stream_xchacha20_xor","crypto_stream_xchacha20_xor_ic","randombytes_buf","randombytes_buf_deterministic","randombytes_close","randombytes_random","randombytes_set_implementation","randombytes_stir","randombytes_uniform","sodium_version_string"],r=[w,C,B,E,_,k,Q,S,x,D,P,M,F,O,R,T,j,H,U,N,L,K,G,$,Y,J,V,z,q,W,X,Z,ee,te,ne,re,ie,ae,oe,se,ce,ue,le,Ae,fe,he,pe,de,ge,ye,ve,me,be,Ie,we,Ce,Be,Ee,_e,ke,Qe,Se,xe,De,Pe,Me,Fe,Oe,Re,Te,je,He,Ue,Ne,Le,Ke,Ge,$e,Ye,Je,Ve,ze,qe,We,Xe,Ze,et,tt,nt,rt,it,at,ot,st,ct,ut,lt,At,ft,ht,pt,dt,gt,yt,vt,mt,bt,It,wt,Ct,Bt,Et,_t,kt,Qt,St,xt,Dt,Pt,Mt,Ft,Ot,Rt,Tt,jt,Ht,Ut,Nt,Lt],i=0;i<r.length;i++)"function"==typeof n["_"+t[i]]&&(e[t[i]]=r[i]);var a=["SODIUM_LIBRARY_VERSION_MAJOR","SODIUM_LIBRARY_VERSION_MINOR","crypto_aead_chacha20poly1305_ABYTES","crypto_aead_chacha20poly1305_KEYBYTES","crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_NPUBBYTES","crypto_aead_chacha20poly1305_NSECBYTES","crypto_aead_chacha20poly1305_ietf_ABYTES","crypto_aead_chacha20poly1305_ietf_KEYBYTES","crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_chacha20poly1305_ietf_NPUBBYTES","crypto_aead_chacha20poly1305_ietf_NSECBYTES","crypto_aead_xchacha20poly1305_ietf_ABYTES","crypto_aead_xchacha20poly1305_ietf_KEYBYTES","crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX","crypto_aead_xchacha20poly1305_ietf_NPUBBYTES","crypto_aead_xchacha20poly1305_ietf_NSECBYTES","crypto_auth_BYTES","crypto_auth_KEYBYTES","crypto_auth_hmacsha256_BYTES","crypto_auth_hmacsha256_KEYBYTES","crypto_auth_hmacsha512_BYTES","crypto_auth_hmacsha512_KEYBYTES","crypto_box_BEFORENMBYTES","crypto_box_MACBYTES","crypto_box_MESSAGEBYTES_MAX","crypto_box_NONCEBYTES","crypto_box_PUBLICKEYBYTES","crypto_box_SEALBYTES","crypto_box_SECRETKEYBYTES","crypto_box_SEEDBYTES","crypto_box_curve25519xchacha20poly1305_NONCEBYTES","crypto_box_curve25519xchacha20poly1305_PUBLICKEYBYTES","crypto_box_curve25519xchacha20poly1305_SECRETKEYBYTES","crypto_core_hchacha20_CONSTBYTES","crypto_core_hchacha20_INPUTBYTES","crypto_core_hchacha20_KEYBYTES","crypto_core_hchacha20_OUTPUTBYTES","crypto_core_ristretto255_BYTES","crypto_core_ristretto255_HASHBYTES","crypto_core_ristretto255_NONREDUCEDSCALARBYTES","crypto_core_ristretto255_SCALARBYTES","crypto_generichash_BYTES","crypto_generichash_BYTES_MAX","crypto_generichash_BYTES_MIN","crypto_generichash_KEYBYTES","crypto_generichash_KEYBYTES_MAX","crypto_generichash_KEYBYTES_MIN","crypto_generichash_blake2b_BYTES","crypto_generichash_blake2b_BYTES_MAX","crypto_generichash_blake2b_BYTES_MIN","crypto_generichash_blake2b_KEYBYTES","crypto_generichash_blake2b_KEYBYTES_MAX","crypto_generichash_blake2b_KEYBYTES_MIN","crypto_generichash_blake2b_PERSONALBYTES","crypto_generichash_blake2b_SALTBYTES","crypto_hash_BYTES","crypto_hash_sha256_BYTES","crypto_hash_sha512_BYTES","crypto_kdf_BYTES_MAX","crypto_kdf_BYTES_MIN","crypto_kdf_CONTEXTBYTES","crypto_kdf_KEYBYTES","crypto_kx_PUBLICKEYBYTES","crypto_kx_SECRETKEYBYTES","crypto_kx_SEEDBYTES","crypto_kx_SESSIONKEYBYTES","crypto_onetimeauth_BYTES","crypto_onetimeauth_KEYBYTES","crypto_pwhash_ALG_ARGON2I13","crypto_pwhash_ALG_ARGON2ID13","crypto_pwhash_ALG_DEFAULT","crypto_pwhash_BYTES_MAX","crypto_pwhash_BYTES_MIN","crypto_pwhash_MEMLIMIT_INTERACTIVE","crypto_pwhash_MEMLIMIT_MAX","crypto_pwhash_MEMLIMIT_MIN","crypto_pwhash_MEMLIMIT_MODERATE","crypto_pwhash_MEMLIMIT_SENSITIVE","crypto_pwhash_OPSLIMIT_INTERACTIVE","crypto_pwhash_OPSLIMIT_MAX","crypto_pwhash_OPSLIMIT_MIN","crypto_pwhash_OPSLIMIT_MODERATE","crypto_pwhash_OPSLIMIT_SENSITIVE","crypto_pwhash_PASSWD_MAX","crypto_pwhash_PASSWD_MIN","crypto_pwhash_SALTBYTES","crypto_pwhash_STRBYTES","crypto_pwhash_STR_VERIFY","crypto_pwhash_scryptsalsa208sha256_BYTES_MAX","crypto_pwhash_scryptsalsa208sha256_BYTES_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MAX","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MIN","crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE","crypto_pwhash_scryptsalsa208sha256_SALTBYTES","crypto_pwhash_scryptsalsa208sha256_STRBYTES","crypto_pwhash_scryptsalsa208sha256_STR_VERIFY","crypto_scalarmult_BYTES","crypto_scalarmult_SCALARBYTES","crypto_scalarmult_ristretto255_BYTES","crypto_scalarmult_ristretto255_SCALARBYTES","crypto_secretbox_KEYBYTES","crypto_secretbox_MACBYTES","crypto_secretbox_MESSAGEBYTES_MAX","crypto_secretbox_NONCEBYTES","crypto_secretstream_xchacha20poly1305_ABYTES","crypto_secretstream_xchacha20poly1305_HEADERBYTES","crypto_secretstream_xchacha20poly1305_KEYBYTES","crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX","crypto_secretstream_xchacha20poly1305_MESSAGESBYTES_MAX","crypto_secretstream_xchacha20poly1305_NPUBBYTES","crypto_secretstream_xchacha20poly1305_TAG_FINAL","crypto_secretstream_xchacha20poly1305_TAG_MESSAGE","crypto_secretstream_xchacha20poly1305_TAG_PUSH","crypto_secretstream_xchacha20poly1305_TAG_REKEY","crypto_shorthash_BYTES","crypto_shorthash_KEYBYTES","crypto_shorthash_siphashx24_BYTES","crypto_shorthash_siphashx24_KEYBYTES","crypto_sign_BYTES","crypto_sign_MESSAGEBYTES_MAX","crypto_sign_PUBLICKEYBYTES","crypto_sign_SECRETKEYBYTES","crypto_sign_SEEDBYTES","crypto_stream_KEYBYTES","crypto_stream_MESSAGEBYTES_MAX","crypto_stream_NONCEBYTES","crypto_stream_chacha20_KEYBYTES","crypto_stream_chacha20_NONCEBYTES","crypto_stream_chacha20_ietf_KEYBYTES","crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX","crypto_stream_chacha20_ietf_NONCEBYTES","crypto_stream_xchacha20_KEYBYTES","crypto_stream_xchacha20_MESSAGEBYTES_MAX","crypto_stream_xchacha20_NONCEBYTES","randombytes_SEEDBYTES"];for(i=0;i<a.length;i++)"function"==typeof(s=n["_"+a[i].toLowerCase()])&&(e[a[i]]=s());var o=["SODIUM_VERSION_STRING","crypto_pwhash_STRPREFIX","crypto_pwhash_scryptsalsa208sha256_STRPREFIX"];for(i=0;i<o.length;i++){var s;"function"==typeof(s=n["_"+o[i].toLowerCase()])&&(e[o[i]]=n.UTF8ToString(s()))}}n=t;try{r();var i=new Uint8Array([98,97,108,108,115]),a=e.randombytes_buf(e.crypto_secretbox_NONCEBYTES),o=e.randombytes_buf(e.crypto_secretbox_KEYBYTES),s=e.crypto_secretbox_easy(i,a,o),c=e.crypto_secretbox_open_easy(s,a,o);if(e.memcmp(i,c))return}catch(e){if(null==n.useBackupModule)throw new Error("Both wasm and asm failed to load"+e)}n.useBackupModule(),r()}));function i(e){if("function"==typeof TextEncoder)return(new TextEncoder).encode(e);e=unescape(encodeURIComponent(e));for(var t=new Uint8Array(e.length),n=0,r=e.length;n<r;n++)t[n]=e.charCodeAt(n);return t}function a(e){if("function"==typeof TextDecoder)return new TextDecoder("utf-8",{fatal:!0}).decode(e);var t=Math.ceil(e.length/8192);if(t<=1)try{return decodeURIComponent(escape(String.fromCharCode.apply(null,e)))}catch(e){throw new TypeError("The encoded data was not valid.")}for(var n="",r=0,i=0;i<t;i++){var o=Array.prototype.slice.call(e,8192*i+r,8192*(i+1)+r);if(0!=o.length){var s,c=o.length,u=0;do{var l=o[--c];l>=240?(u=4,s=!0):l>=224?(u=3,s=!0):l>=192?(u=2,s=!0):l<128&&(u=1,s=!0)}while(!s);for(var A=u-(o.length-c),f=0;f<A;f++)r--,o.pop();n+=a(o)}}return n}function o(e){e=I(null,e,"input");for(var t,n,r,i="",a=0;a<e.length;a++)r=87+(n=15&e[a])+(n-10>>8&-39)<<8|87+(t=e[a]>>>4)+(t-10>>8&-39),i+=String.fromCharCode(255&r)+String.fromCharCode(r>>>8);return i}var s={ORIGINAL:1,ORIGINAL_NO_PADDING:3,URLSAFE:5,URLSAFE_NO_PADDING:7};function u(e){if(null==e)return s.URLSAFE_NO_PADDING;if(e!==s.ORIGINAL&&e!==s.ORIGINAL_NO_PADDING&&e!==s.URLSAFE&&e!=s.URLSAFE_NO_PADDING)throw new Error("unsupported base64 variant");return e}function l(e,t){t=u(t),e=I(i,e,"input");var r,i=[],o=0|Math.floor(e.length/3),s=e.length-3*o,c=4*o+(0!==s?0==(2&t)?4:2+(s>>>1):0),l=new p(c+1),A=d(e);return i.push(A),i.push(l.address),0===n._sodium_bin2base64(l.address,l.length,A,e.length,t)&&v(i,"conversion failed"),l.length=c,r=a(l.to_Uint8Array()),y(i),r}function A(e,t){var n=t||"uint8array";if(!f(n))throw new Error(n+" output format is not available");if(e instanceof p){if("uint8array"===n)return e.to_Uint8Array();if("text"===n)return a(e.to_Uint8Array());if("hex"===n)return o(e.to_Uint8Array());if("base64"===n)return l(e.to_Uint8Array(),s.URLSAFE_NO_PADDING);throw new Error('What is output format "'+n+'"?')}if("object"==c(e)){for(var r=Object.keys(e),i={},u=0;u<r.length;u++)i[r[u]]=A(e[r[u]],n);return i}if("string"==typeof e)return e;throw new TypeError("Cannot format output")}function f(e){for(var t=["uint8array","text","hex","base64"],n=0;n<t.length;n++)if(t[n]===e)return!0;return!1}function h(e){if(e){if("string"!=typeof e)throw new TypeError("When defined, the output format must be a string");if(!f(e))throw new Error(e+" is not a supported output format")}}function p(e){this.length=e,this.address=g(e)}function d(e){var t=g(e.length);return n.HEAPU8.set(e,t),t}function g(e){var t=n._malloc(e);if(0===t)throw{message:"_malloc() failed",length:e};return t}function y(e){if(e)for(var t=0;t<e.length;t++)r=e[t],n._free(r);var r}function v(e,t){throw y(e),new Error(t)}function m(e,t){throw y(e),new TypeError(t)}function b(e,t,n){null==t&&m(e,n+" cannot be null or undefined")}function I(e,t,n){return b(e,t,n),t instanceof Uint8Array?t:"string"==typeof t?i(t):void m(e,"unsupported input type for "+n)}function w(e,t,r,i,a,o){var s=[];h(o);var c=null;null!=e&&(c=d(e=I(s,e,"secret_nonce")),e.length,s.push(c)),t=I(s,t,"ciphertext");var u,l=n._crypto_aead_chacha20poly1305_abytes(),f=t.length;f<l&&m(s,"ciphertext is too short"),u=d(t),s.push(u);var g=null,b=0;null!=r&&(g=d(r=I(s,r,"additional_data")),b=r.length,s.push(g)),i=I(s,i,"public_nonce");var w,C=0|n._crypto_aead_chacha20poly1305_npubbytes();i.length!==C&&m(s,"invalid public_nonce length"),w=d(i),s.push(w),a=I(s,a,"key");var B,E=0|n._crypto_aead_chacha20poly1305_keybytes();a.length!==E&&m(s,"invalid key length"),B=d(a),s.push(B);var _=new p(f-n._crypto_aead_chacha20poly1305_abytes()|0),k=_.address;if(s.push(k),0===n._crypto_aead_chacha20poly1305_decrypt(k,null,c,u,f,0,g,b,0,w,B)){var Q=A(_,o);return y(s),Q}v(s,"ciphertext cannot be decrypted using that key")}function C(e,t,r,i,a,o,s){var c=[];h(s);var u=null;null!=e&&(u=d(e=I(c,e,"secret_nonce")),e.length,c.push(u));var l=d(t=I(c,t,"ciphertext")),f=t.length;c.push(l),r=I(c,r,"mac");var g,b=0|n._crypto_box_macbytes();r.length!==b&&m(c,"invalid mac length"),g=d(r),c.push(g);var w=null,C=0;null!=i&&(w=d(i=I(c,i,"additional_data")),C=i.length,c.push(w)),a=I(c,a,"public_nonce");var B,E=0|n._crypto_aead_chacha20poly1305_npubbytes();a.length!==E&&m(c,"invalid public_nonce length"),B=d(a),c.push(B),o=I(c,o,"key");var _,k=0|n._crypto_aead_chacha20poly1305_keybytes();o.length!==k&&m(c,"invalid key length"),_=d(o),c.push(_);var Q=new p(0|f),S=Q.address;if(c.push(S),0===n._crypto_aead_chacha20poly1305_decrypt_detached(S,u,l,f,0,g,w,C,0,B,_)){var x=A(Q,s);return y(c),x}v(c,"ciphertext cannot be decrypted using that key")}function B(e,t,r,i,a,o){var s=[];h(o);var c=d(e=I(s,e,"message")),u=e.length;s.push(c);var l=null,f=0;null!=t&&(l=d(t=I(s,t,"additional_data")),f=t.length,s.push(l));var g=null;null!=r&&(g=d(r=I(s,r,"secret_nonce")),r.length,s.push(g)),i=I(s,i,"public_nonce");var b,w=0|n._crypto_aead_chacha20poly1305_npubbytes();i.length!==w&&m(s,"invalid public_nonce length"),b=d(i),s.push(b),a=I(s,a,"key");var C,B=0|n._crypto_aead_chacha20poly1305_keybytes();a.length!==B&&m(s,"invalid key length"),C=d(a),s.push(C);var E=new p(u+n._crypto_aead_chacha20poly1305_abytes()|0),_=E.address;if(s.push(_),0===n._crypto_aead_chacha20poly1305_encrypt(_,null,c,u,0,l,f,0,g,b,C)){var k=A(E,o);return y(s),k}v(s,"invalid usage")}function E(e,t,r,i,a,o){var s=[];h(o);var c=d(e=I(s,e,"message")),u=e.length;s.push(c);var l=null,f=0;null!=t&&(l=d(t=I(s,t,"additional_data")),f=t.length,s.push(l));var g=null;null!=r&&(g=d(r=I(s,r,"secret_nonce")),r.length,s.push(g)),i=I(s,i,"public_nonce");var b,w=0|n._crypto_aead_chacha20poly1305_npubbytes();i.length!==w&&m(s,"invalid public_nonce length"),b=d(i),s.push(b),a=I(s,a,"key");var C,B=0|n._crypto_aead_chacha20poly1305_keybytes();a.length!==B&&m(s,"invalid key length"),C=d(a),s.push(C);var E=new p(0|u),_=E.address;s.push(_);var k=new p(0|n._crypto_aead_chacha20poly1305_abytes()),Q=k.address;if(s.push(Q),0===n._crypto_aead_chacha20poly1305_encrypt_detached(_,Q,null,c,u,0,l,f,0,g,b,C)){var S=A({ciphertext:E,mac:k},o);return y(s),S}v(s,"invalid usage")}function _(e,t,r,i,a,o){var s=[];h(o);var c=null;null!=e&&(c=d(e=I(s,e,"secret_nonce")),e.length,s.push(c)),t=I(s,t,"ciphertext");var u,l=n._crypto_aead_chacha20poly1305_ietf_abytes(),f=t.length;f<l&&m(s,"ciphertext is too short"),u=d(t),s.push(u);var g=null,b=0;null!=r&&(g=d(r=I(s,r,"additional_data")),b=r.length,s.push(g)),i=I(s,i,"public_nonce");var w,C=0|n._crypto_aead_chacha20poly1305_ietf_npubbytes();i.length!==C&&m(s,"invalid public_nonce length"),w=d(i),s.push(w),a=I(s,a,"key");var B,E=0|n._crypto_aead_chacha20poly1305_ietf_keybytes();a.length!==E&&m(s,"invalid key length"),B=d(a),s.push(B);var _=new p(f-n._crypto_aead_chacha20poly1305_ietf_abytes()|0),k=_.address;if(s.push(k),0===n._crypto_aead_chacha20poly1305_ietf_decrypt(k,null,c,u,f,0,g,b,0,w,B)){var Q=A(_,o);return y(s),Q}v(s,"ciphertext cannot be decrypted using that key")}function k(e,t,r,i,a,o,s){var c=[];h(s);var u=null;null!=e&&(u=d(e=I(c,e,"secret_nonce")),e.length,c.push(u));var l=d(t=I(c,t,"ciphertext")),f=t.length;c.push(l),r=I(c,r,"mac");var g,b=0|n._crypto_box_macbytes();r.length!==b&&m(c,"invalid mac length"),g=d(r),c.push(g);var w=null,C=0;null!=i&&(w=d(i=I(c,i,"additional_data")),C=i.length,c.push(w)),a=I(c,a,"public_nonce");var B,E=0|n._crypto_aead_chacha20poly1305_ietf_npubbytes();a.length!==E&&m(c,"invalid public_nonce length"),B=d(a),c.push(B),o=I(c,o,"key");var _,k=0|n._crypto_aead_chacha20poly1305_ietf_keybytes();o.length!==k&&m(c,"invalid key length"),_=d(o),c.push(_);var Q=new p(0|f),S=Q.address;if(c.push(S),0===n._crypto_aead_chacha20poly1305_ietf_decrypt_detached(S,u,l,f,0,g,w,C,0,B,_)){var x=A(Q,s);return y(c),x}v(c,"ciphertext cannot be decrypted using that key")}function Q(e,t,r,i,a,o){var s=[];h(o);var c=d(e=I(s,e,"message")),u=e.length;s.push(c);var l=null,f=0;null!=t&&(l=d(t=I(s,t,"additional_data")),f=t.length,s.push(l));var g=null;null!=r&&(g=d(r=I(s,r,"secret_nonce")),r.length,s.push(g)),i=I(s,i,"public_nonce");var b,w=0|n._crypto_aead_chacha20poly1305_ietf_npubbytes();i.length!==w&&m(s,"invalid public_nonce length"),b=d(i),s.push(b),a=I(s,a,"key");var C,B=0|n._crypto_aead_chacha20poly1305_ietf_keybytes();a.length!==B&&m(s,"invalid key length"),C=d(a),s.push(C);var E=new p(u+n._crypto_aead_chacha20poly1305_ietf_abytes()|0),_=E.address;if(s.push(_),0===n._crypto_aead_chacha20poly1305_ietf_encrypt(_,null,c,u,0,l,f,0,g,b,C)){var k=A(E,o);return y(s),k}v(s,"invalid usage")}function S(e,t,r,i,a,o){var s=[];h(o);var c=d(e=I(s,e,"message")),u=e.length;s.push(c);var l=null,f=0;null!=t&&(l=d(t=I(s,t,"additional_data")),f=t.length,s.push(l));var g=null;null!=r&&(g=d(r=I(s,r,"secret_nonce")),r.length,s.push(g)),i=I(s,i,"public_nonce");var b,w=0|n._crypto_aead_chacha20poly1305_ietf_npubbytes();i.length!==w&&m(s,"invalid public_nonce length"),b=d(i),s.push(b),a=I(s,a,"key");var C,B=0|n._crypto_aead_chacha20poly1305_ietf_keybytes();a.length!==B&&m(s,"invalid key length"),C=d(a),s.push(C);var E=new p(0|u),_=E.address;s.push(_);var k=new p(0|n._crypto_aead_chacha20poly1305_ietf_abytes()),Q=k.address;if(s.push(Q),0===n._crypto_aead_chacha20poly1305_ietf_encrypt_detached(_,Q,null,c,u,0,l,f,0,g,b,C)){var S=A({ciphertext:E,mac:k},o);return y(s),S}v(s,"invalid usage")}function x(e){var t=[];h(e);var r=new p(0|n._crypto_aead_chacha20poly1305_ietf_keybytes()),i=r.address;t.push(i),n._crypto_aead_chacha20poly1305_ietf_keygen(i);var a=A(r,e);return y(t),a}function D(e){var t=[];h(e);var r=new p(0|n._crypto_aead_chacha20poly1305_keybytes()),i=r.address;t.push(i),n._crypto_aead_chacha20poly1305_keygen(i);var a=A(r,e);return y(t),a}function P(e,t,r,i,a,o){var s=[];h(o);var c=null;null!=e&&(c=d(e=I(s,e,"secret_nonce")),e.length,s.push(c)),t=I(s,t,"ciphertext");var u,l=n._crypto_aead_xchacha20poly1305_ietf_abytes(),f=t.length;f<l&&m(s,"ciphertext is too short"),u=d(t),s.push(u);var g=null,b=0;null!=r&&(g=d(r=I(s,r,"additional_data")),b=r.length,s.push(g)),i=I(s,i,"public_nonce");var w,C=0|n._crypto_aead_xchacha20poly1305_ietf_npubbytes();i.length!==C&&m(s,"invalid public_nonce length"),w=d(i),s.push(w),a=I(s,a,"key");var B,E=0|n._crypto_aead_xchacha20poly1305_ietf_keybytes();a.length!==E&&m(s,"invalid key length"),B=d(a),s.push(B);var _=new p(f-n._crypto_aead_xchacha20poly1305_ietf_abytes()|0),k=_.address;if(s.push(k),0===n._crypto_aead_xchacha20poly1305_ietf_decrypt(k,null,c,u,f,0,g,b,0,w,B)){var Q=A(_,o);return y(s),Q}v(s,"ciphertext cannot be decrypted using that key")}function M(e,t,r,i,a,o,s){var c=[];h(s);var u=null;null!=e&&(u=d(e=I(c,e,"secret_nonce")),e.length,c.push(u));var l=d(t=I(c,t,"ciphertext")),f=t.length;c.push(l),r=I(c,r,"mac");var g,b=0|n._crypto_box_macbytes();r.length!==b&&m(c,"invalid mac length"),g=d(r),c.push(g);var w=null,C=0;null!=i&&(w=d(i=I(c,i,"additional_data")),C=i.length,c.push(w)),a=I(c,a,"public_nonce");var B,E=0|n._crypto_aead_xchacha20poly1305_ietf_npubbytes();a.length!==E&&m(c,"invalid public_nonce length"),B=d(a),c.push(B),o=I(c,o,"key");var _,k=0|n._crypto_aead_xchacha20poly1305_ietf_keybytes();o.length!==k&&m(c,"invalid key length"),_=d(o),c.push(_);var Q=new p(0|f),S=Q.address;if(c.push(S),0===n._crypto_aead_xchacha20poly1305_ietf_decrypt_detached(S,u,l,f,0,g,w,C,0,B,_)){var x=A(Q,s);return y(c),x}v(c,"ciphertext cannot be decrypted using that key")}function F(e,t,r,i,a,o){var s=[];h(o);var c=d(e=I(s,e,"message")),u=e.length;s.push(c);var l=null,f=0;null!=t&&(l=d(t=I(s,t,"additional_data")),f=t.length,s.push(l));var g=null;null!=r&&(g=d(r=I(s,r,"secret_nonce")),r.length,s.push(g)),i=I(s,i,"public_nonce");var b,w=0|n._crypto_aead_xchacha20poly1305_ietf_npubbytes();i.length!==w&&m(s,"invalid public_nonce length"),b=d(i),s.push(b),a=I(s,a,"key");var C,B=0|n._crypto_aead_xchacha20poly1305_ietf_keybytes();a.length!==B&&m(s,"invalid key length"),C=d(a),s.push(C);var E=new p(u+n._crypto_aead_xchacha20poly1305_ietf_abytes()|0),_=E.address;if(s.push(_),0===n._crypto_aead_xchacha20poly1305_ietf_encrypt(_,null,c,u,0,l,f,0,g,b,C)){var k=A(E,o);return y(s),k}v(s,"invalid usage")}function O(e,t,r,i,a,o){var s=[];h(o);var c=d(e=I(s,e,"message")),u=e.length;s.push(c);var l=null,f=0;null!=t&&(l=d(t=I(s,t,"additional_data")),f=t.length,s.push(l));var g=null;null!=r&&(g=d(r=I(s,r,"secret_nonce")),r.length,s.push(g)),i=I(s,i,"public_nonce");var b,w=0|n._crypto_aead_xchacha20poly1305_ietf_npubbytes();i.length!==w&&m(s,"invalid public_nonce length"),b=d(i),s.push(b),a=I(s,a,"key");var C,B=0|n._crypto_aead_xchacha20poly1305_ietf_keybytes();a.length!==B&&m(s,"invalid key length"),C=d(a),s.push(C);var E=new p(0|u),_=E.address;s.push(_);var k=new p(0|n._crypto_aead_xchacha20poly1305_ietf_abytes()),Q=k.address;if(s.push(Q),0===n._crypto_aead_xchacha20poly1305_ietf_encrypt_detached(_,Q,null,c,u,0,l,f,0,g,b,C)){var S=A({ciphertext:E,mac:k},o);return y(s),S}v(s,"invalid usage")}function R(e){var t=[];h(e);var r=new p(0|n._crypto_aead_xchacha20poly1305_ietf_keybytes()),i=r.address;t.push(i),n._crypto_aead_xchacha20poly1305_ietf_keygen(i);var a=A(r,e);return y(t),a}function T(e,t,r){var i=[];h(r);var a=d(e=I(i,e,"message")),o=e.length;i.push(a),t=I(i,t,"key");var s,c=0|n._crypto_auth_keybytes();t.length!==c&&m(i,"invalid key length"),s=d(t),i.push(s);var u=new p(0|n._crypto_auth_bytes()),l=u.address;if(i.push(l),0==(0|n._crypto_auth(l,a,o,0,s))){var f=A(u,r);return y(i),f}v(i,"invalid usage")}function j(e,t,r){var i=[];h(r);var a=d(e=I(i,e,"message")),o=e.length;i.push(a),t=I(i,t,"key");var s,c=0|n._crypto_auth_hmacsha256_keybytes();t.length!==c&&m(i,"invalid key length"),s=d(t),i.push(s);var u=new p(0|n._crypto_auth_hmacsha256_bytes()),l=u.address;if(i.push(l),0==(0|n._crypto_auth_hmacsha256(l,a,o,0,s))){var f=A(u,r);return y(i),f}v(i,"invalid usage")}function H(e){var t=[];h(e);var r=new p(0|n._crypto_auth_hmacsha256_keybytes()),i=r.address;t.push(i),n._crypto_auth_hmacsha256_keygen(i);var a=A(r,e);return y(t),a}function U(e,t,r){var i=[];e=I(i,e,"tag");var a,o=0|n._crypto_auth_hmacsha256_bytes();e.length!==o&&m(i,"invalid tag length"),a=d(e),i.push(a);var s=d(t=I(i,t,"message")),c=t.length;i.push(s),r=I(i,r,"key");var u,l=0|n._crypto_auth_hmacsha256_keybytes();r.length!==l&&m(i,"invalid key length"),u=d(r),i.push(u);var A=0==(0|n._crypto_auth_hmacsha256_verify(a,s,c,0,u));return y(i),A}function N(e,t,r){var i=[];h(r);var a=d(e=I(i,e,"message")),o=e.length;i.push(a),t=I(i,t,"key");var s,c=0|n._crypto_auth_hmacsha512_keybytes();t.length!==c&&m(i,"invalid key length"),s=d(t),i.push(s);var u=new p(0|n._crypto_auth_hmacsha512_bytes()),l=u.address;if(i.push(l),0==(0|n._crypto_auth_hmacsha512(l,a,o,0,s))){var f=A(u,r);return y(i),f}v(i,"invalid usage")}function L(e){var t=[];h(e);var r=new p(0|n._crypto_auth_hmacsha512_keybytes()),i=r.address;t.push(i),n._crypto_auth_hmacsha512_keygen(i);var a=A(r,e);return y(t),a}function K(e,t,r){var i=[];e=I(i,e,"tag");var a,o=0|n._crypto_auth_hmacsha512_bytes();e.length!==o&&m(i,"invalid tag length"),a=d(e),i.push(a);var s=d(t=I(i,t,"message")),c=t.length;i.push(s),r=I(i,r,"key");var u,l=0|n._crypto_auth_hmacsha512_keybytes();r.length!==l&&m(i,"invalid key length"),u=d(r),i.push(u);var A=0==(0|n._crypto_auth_hmacsha512_verify(a,s,c,0,u));return y(i),A}function G(e){var t=[];h(e);var r=new p(0|n._crypto_auth_keybytes()),i=r.address;t.push(i),n._crypto_auth_keygen(i);var a=A(r,e);return y(t),a}function $(e,t,r){var i=[];e=I(i,e,"tag");var a,o=0|n._crypto_auth_bytes();e.length!==o&&m(i,"invalid tag length"),a=d(e),i.push(a);var s=d(t=I(i,t,"message")),c=t.length;i.push(s),r=I(i,r,"key");var u,l=0|n._crypto_auth_keybytes();r.length!==l&&m(i,"invalid key length"),u=d(r),i.push(u);var A=0==(0|n._crypto_auth_verify(a,s,c,0,u));return y(i),A}function Y(e,t,r){var i=[];h(r),e=I(i,e,"publicKey");var a,o=0|n._crypto_box_publickeybytes();e.length!==o&&m(i,"invalid publicKey length"),a=d(e),i.push(a),t=I(i,t,"privateKey");var s,c=0|n._crypto_box_secretkeybytes();t.length!==c&&m(i,"invalid privateKey length"),s=d(t),i.push(s);var u=new p(0|n._crypto_box_beforenmbytes()),l=u.address;if(i.push(l),0==(0|n._crypto_box_beforenm(l,a,s))){var f=A(u,r);return y(i),f}v(i,"invalid usage")}function J(e){var t=[];h(e);var r=new p(0|n._crypto_box_curve25519xchacha20poly1305_publickeybytes()),i=r.address;t.push(i);var a=new p(0|n._crypto_box_curve25519xchacha20poly1305_secretkeybytes()),o=a.address;t.push(o),n._crypto_box_curve25519xchacha20poly1305_keypair(i,o);var s=A({publicKey:r,privateKey:a,keyType:"curve25519"},e);return y(t),s}function V(e,t,r){var i=[];h(r);var a=d(e=I(i,e,"message")),o=e.length;i.push(a),t=I(i,t,"publicKey");var s,c=0|n._crypto_box_curve25519xchacha20poly1305_publickeybytes();t.length!==c&&m(i,"invalid publicKey length"),s=d(t),i.push(s);var u=new p(o+n._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),l=u.address;i.push(l),n._crypto_box_curve25519xchacha20poly1305_seal(l,a,o,0,s);var f=A(u,r);return y(i),f}function z(e,t,r,i){var a=[];h(i),e=I(a,e,"ciphertext");var o,s=n._crypto_box_curve25519xchacha20poly1305_sealbytes(),c=e.length;c<s&&m(a,"ciphertext is too short"),o=d(e),a.push(o),t=I(a,t,"publicKey");var u,l=0|n._crypto_box_curve25519xchacha20poly1305_publickeybytes();t.length!==l&&m(a,"invalid publicKey length"),u=d(t),a.push(u),r=I(a,r,"secretKey");var f,g=0|n._crypto_box_curve25519xchacha20poly1305_secretkeybytes();r.length!==g&&m(a,"invalid secretKey length"),f=d(r),a.push(f);var v=new p(c-n._crypto_box_curve25519xchacha20poly1305_sealbytes()|0),b=v.address;a.push(b),n._crypto_box_curve25519xchacha20poly1305_seal_open(b,o,c,0,u,f);var w=A(v,i);return y(a),w}function q(e,t,r,i,a){var o=[];h(a);var s=d(e=I(o,e,"message")),c=e.length;o.push(s),t=I(o,t,"nonce");var u,l=0|n._crypto_box_noncebytes();t.length!==l&&m(o,"invalid nonce length"),u=d(t),o.push(u),r=I(o,r,"publicKey");var f,g=0|n._crypto_box_publickeybytes();r.length!==g&&m(o,"invalid publicKey length"),f=d(r),o.push(f),i=I(o,i,"privateKey");var b,w=0|n._crypto_box_secretkeybytes();i.length!==w&&m(o,"invalid privateKey length"),b=d(i),o.push(b);var C=new p(0|c),B=C.address;o.push(B);var E=new p(0|n._crypto_box_macbytes()),_=E.address;if(o.push(_),0==(0|n._crypto_box_detached(B,_,s,c,0,u,f,b))){var k=A({ciphertext:C,mac:E},a);return y(o),k}v(o,"invalid usage")}function W(e,t,r,i,a){var o=[];h(a);var s=d(e=I(o,e,"message")),c=e.length;o.push(s),t=I(o,t,"nonce");var u,l=0|n._crypto_box_noncebytes();t.length!==l&&m(o,"invalid nonce length"),u=d(t),o.push(u),r=I(o,r,"publicKey");var f,g=0|n._crypto_box_publickeybytes();r.length!==g&&m(o,"invalid publicKey length"),f=d(r),o.push(f),i=I(o,i,"privateKey");var b,w=0|n._crypto_box_secretkeybytes();i.length!==w&&m(o,"invalid privateKey length"),b=d(i),o.push(b);var C=new p(c+n._crypto_box_macbytes()|0),B=C.address;if(o.push(B),0==(0|n._crypto_box_easy(B,s,c,0,u,f,b))){var E=A(C,a);return y(o),E}v(o,"invalid usage")}function X(e,t,r,i){var a=[];h(i);var o=d(e=I(a,e,"message")),s=e.length;a.push(o),t=I(a,t,"nonce");var c,u=0|n._crypto_box_noncebytes();t.length!==u&&m(a,"invalid nonce length"),c=d(t),a.push(c),r=I(a,r,"sharedKey");var l,f=0|n._crypto_box_beforenmbytes();r.length!==f&&m(a,"invalid sharedKey length"),l=d(r),a.push(l);var g=new p(s+n._crypto_box_macbytes()|0),b=g.address;if(a.push(b),0==(0|n._crypto_box_easy_afternm(b,o,s,0,c,l))){var w=A(g,i);return y(a),w}v(a,"invalid usage")}function Z(e){var t=[];h(e);var r=new p(0|n._crypto_box_publickeybytes()),i=r.address;t.push(i);var a=new p(0|n._crypto_box_secretkeybytes()),o=a.address;if(t.push(o),0==(0|n._crypto_box_keypair(i,o))){var s={publicKey:A(r,e),privateKey:A(a,e),keyType:"x25519"};return y(t),s}v(t,"internal error")}function ee(e,t,r,i,a,o){var s=[];h(o);var c=d(e=I(s,e,"ciphertext")),u=e.length;s.push(c),t=I(s,t,"mac");var l,f=0|n._crypto_box_macbytes();t.length!==f&&m(s,"invalid mac length"),l=d(t),s.push(l),r=I(s,r,"nonce");var g,b=0|n._crypto_box_noncebytes();r.length!==b&&m(s,"invalid nonce length"),g=d(r),s.push(g),i=I(s,i,"publicKey");var w,C=0|n._crypto_box_publickeybytes();i.length!==C&&m(s,"invalid publicKey length"),w=d(i),s.push(w),a=I(s,a,"privateKey");var B,E=0|n._crypto_box_secretkeybytes();a.length!==E&&m(s,"invalid privateKey length"),B=d(a),s.push(B);var _=new p(0|u),k=_.address;if(s.push(k),0==(0|n._crypto_box_open_detached(k,c,l,u,0,g,w,B))){var Q=A(_,o);return y(s),Q}v(s,"incorrect key pair for the given ciphertext")}function te(e,t,r,i,a){var o=[];h(a),e=I(o,e,"ciphertext");var s,c=n._crypto_box_macbytes(),u=e.length;u<c&&m(o,"ciphertext is too short"),s=d(e),o.push(s),t=I(o,t,"nonce");var l,f=0|n._crypto_box_noncebytes();t.length!==f&&m(o,"invalid nonce length"),l=d(t),o.push(l),r=I(o,r,"publicKey");var g,b=0|n._crypto_box_publickeybytes();r.length!==b&&m(o,"invalid publicKey length"),g=d(r),o.push(g),i=I(o,i,"privateKey");var w,C=0|n._crypto_box_secretkeybytes();i.length!==C&&m(o,"invalid privateKey length"),w=d(i),o.push(w);var B=new p(u-n._crypto_box_macbytes()|0),E=B.address;if(o.push(E),0==(0|n._crypto_box_open_easy(E,s,u,0,l,g,w))){var _=A(B,a);return y(o),_}v(o,"incorrect key pair for the given ciphertext")}function ne(e,t,r,i){var a=[];h(i);var o=d(e=I(a,e,"ciphertext")),s=e.length;a.push(o),t=I(a,t,"nonce");var c,u=0|n._crypto_box_noncebytes();t.length!==u&&m(a,"invalid nonce length"),c=d(t),a.push(c),r=I(a,r,"sharedKey");var l,f=0|n._crypto_box_beforenmbytes();r.length!==f&&m(a,"invalid sharedKey length"),l=d(r),a.push(l);var g=new p(s-n._crypto_box_macbytes()|0),b=g.address;if(a.push(b),0==(0|n._crypto_box_open_easy_afternm(b,o,s,0,c,l))){var w=A(g,i);return y(a),w}v(a,"incorrect secret key for the given ciphertext")}function re(e,t,r){var i=[];h(r);var a=d(e=I(i,e,"message")),o=e.length;i.push(a),t=I(i,t,"publicKey");var s,c=0|n._crypto_box_publickeybytes();t.length!==c&&m(i,"invalid publicKey length"),s=d(t),i.push(s);var u=new p(o+n._crypto_box_sealbytes()|0),l=u.address;if(i.push(l),0==(0|n._crypto_box_seal(l,a,o,0,s))){var f=A(u,r);return y(i),f}v(i,"invalid usage")}function ie(e,t,r,i){var a=[];h(i),e=I(a,e,"ciphertext");var o,s=n._crypto_box_sealbytes(),c=e.length;c<s&&m(a,"ciphertext is too short"),o=d(e),a.push(o),t=I(a,t,"publicKey");var u,l=0|n._crypto_box_publickeybytes();t.length!==l&&m(a,"invalid publicKey length"),u=d(t),a.push(u),r=I(a,r,"privateKey");var f,g=0|n._crypto_box_secretkeybytes();r.length!==g&&m(a,"invalid privateKey length"),f=d(r),a.push(f);var b=new p(c-n._crypto_box_sealbytes()|0),w=b.address;if(a.push(w),0==(0|n._crypto_box_seal_open(w,o,c,0,u,f))){var C=A(b,i);return y(a),C}v(a,"incorrect key pair for the given ciphertext")}function ae(e,t){var r=[];h(t),e=I(r,e,"seed");var i,a=0|n._crypto_box_seedbytes();e.length!==a&&m(r,"invalid seed length"),i=d(e),r.push(i);var o=new p(0|n._crypto_box_publickeybytes()),s=o.address;r.push(s);var c=new p(0|n._crypto_box_secretkeybytes()),u=c.address;if(r.push(u),0==(0|n._crypto_box_seed_keypair(s,u,i))){var l={publicKey:A(o,t),privateKey:A(c,t),keyType:"x25519"};return y(r),l}v(r,"invalid usage")}function oe(e,t,r){var i=[];h(r),e=I(i,e,"p");var a,o=0|n._crypto_core_ristretto255_bytes();e.length!==o&&m(i,"invalid p length"),a=d(e),i.push(a),t=I(i,t,"q");var s,c=0|n._crypto_core_ristretto255_bytes();t.length!==c&&m(i,"invalid q length"),s=d(t),i.push(s);var u=new p(0|n._crypto_core_ristretto255_bytes()),l=u.address;if(i.push(l),0==(0|n._crypto_core_ristretto255_add(l,a,s))){var f=A(u,r);return y(i),f}v(i,"inputs is invalid element")}function se(e,t){var r=[];h(t);var i=d(e=I(r,e,"r"));e.length,r.push(i);var a=new p(0|n._crypto_core_ristretto255_bytes()),o=a.address;if(r.push(o),0==(0|n._crypto_core_ristretto255_from_hash(o,i))){var s=A(a,t);return y(r),s}v(r,"invalid usage")}function ce(e,t){var r=[];h(t);var i=d(e=I(r,e,"point"));e.length,r.push(i);var a=1==(0|n._crypto_core_ristretto255_is_valid_point(i));return y(r),a}function ue(e){var t=[];h(e);var r=new p(0|n._crypto_core_ristretto255_bytes()),i=r.address;t.push(i),n._crypto_core_ristretto255_random(i);var a=A(r,e);return y(t),a}function le(e,t,r){var i=[];h(r),e=I(i,e,"x");var a,o=0|n._crypto_core_ristretto255_scalarbytes();e.length!==o&&m(i,"invalid x length"),a=d(e),i.push(a),t=I(i,t,"y");var s,c=0|n._crypto_core_ristretto255_scalarbytes();t.length!==c&&m(i,"invalid y length"),s=d(t),i.push(s);var u=new p(0|n._crypto_core_ristretto255_scalarbytes()),l=u.address;i.push(l),n._crypto_core_ristretto255_scalar_add(l,a,s);var f=A(u,r);return y(i),f}function Ae(e,t){var r=[];h(t);var i=d(e=I(r,e,"s"));e.length,r.push(i);var a=new p(0|n._crypto_core_ristretto255_scalarbytes()),o=a.address;r.push(o),n._crypto_core_ristretto255_scalar_complement(o,i);var s=A(a,t);return y(r),s}function fe(e,t){var r=[];h(t);var i=d(e=I(r,e,"s"));e.length,r.push(i);var a=new p(0|n._crypto_core_ristretto255_scalarbytes()),o=a.address;if(r.push(o),0==(0|n._crypto_core_ristretto255_scalar_invert(o,i))){var s=A(a,t);return y(r),s}v(r,"invalid reciprocate")}function he(e,t,r){var i=[];h(r),e=I(i,e,"x");var a,o=0|n._crypto_core_ristretto255_scalarbytes();e.length!==o&&m(i,"invalid x length"),a=d(e),i.push(a),t=I(i,t,"y");var s,c=0|n._crypto_core_ristretto255_scalarbytes();t.length!==c&&m(i,"invalid y length"),s=d(t),i.push(s);var u=new p(0|n._crypto_core_ristretto255_scalarbytes()),l=u.address;i.push(l),n._crypto_core_ristretto255_scalar_mul(l,a,s);var f=A(u,r);return y(i),f}function pe(e,t){var r=[];h(t);var i=d(e=I(r,e,"s"));e.length,r.push(i);var a=new p(0|n._crypto_core_ristretto255_scalarbytes()),o=a.address;r.push(o),n._crypto_core_ristretto255_scalar_negate(o,i);var s=A(a,t);return y(r),s}function de(e){var t=[];h(e);var r=new p(0|n._crypto_core_ristretto255_scalarbytes()),i=r.address;t.push(i),n._crypto_core_ristretto255_random(i);var a=A(r,e);return y(t),a}function ge(e,t){var r=[];h(t);var i=d(e=I(r,e,"sample"));e.length,r.push(i);var a=new p(0|n._crypto_core_ristretto255_scalarbytes()),o=a.address;r.push(o),n._crypto_core_ristretto255_scalar_reduce(o,i);var s=A(a,t);return y(r),s}function ye(e,t,r){var i=[];h(r),e=I(i,e,"x");var a,o=0|n._crypto_core_ristretto255_scalarbytes();e.length!==o&&m(i,"invalid x length"),a=d(e),i.push(a),t=I(i,t,"y");var s,c=0|n._crypto_core_ristretto255_scalarbytes();t.length!==c&&m(i,"invalid y length"),s=d(t),i.push(s);var u=new p(0|n._crypto_core_ristretto255_scalarbytes()),l=u.address;i.push(l),n._crypto_core_ristretto255_scalar_sub(l,a,s);var f=A(u,r);return y(i),f}function ve(e,t,r){var i=[];h(r),e=I(i,e,"p");var a,o=0|n._crypto_core_ristretto255_bytes();e.length!==o&&m(i,"invalid p length"),a=d(e),i.push(a),t=I(i,t,"q");var s,c=0|n._crypto_core_ristretto255_bytes();t.length!==c&&m(i,"invalid q length"),s=d(t),i.push(s);var u=new p(0|n._crypto_core_ristretto255_bytes()),l=u.address;if(i.push(l),0==(0|n._crypto_core_ristretto255_sub(l,a,s))){var f=A(u,r);return y(i),f}v(i,"inputs is invalid element")}function me(e,t,r,i){var a=[];h(i),b(a,e,"hash_length"),("number"!=typeof e||(0|e)!==e||e<0)&&m(a,"hash_length must be an unsigned integer");var o=d(t=I(a,t,"message")),s=t.length;a.push(o);var c=null,u=0;null!=r&&(c=d(r=I(a,r,"key")),u=r.length,a.push(c));var l=new p(e|=0),f=l.address;if(a.push(f),0==(0|n._crypto_generichash(f,e,o,s,0,c,u))){var g=A(l,i);return y(a),g}v(a,"invalid usage")}function be(e,t,r,i,a){var o=[];h(a),b(o,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&m(o,"subkey_len must be an unsigned integer");var s=null,c=0;null!=t&&(s=d(t=I(o,t,"key")),c=t.length,o.push(s)),r=I(o,r,"id");var u,l=0|n._crypto_generichash_blake2b_saltbytes();r.length!==l&&m(o,"invalid id length"),u=d(r),o.push(u),i=I(o,i,"ctx");var f,g=0|n._crypto_generichash_blake2b_personalbytes();i.length!==g&&m(o,"invalid ctx length"),f=d(i),o.push(f);var w=new p(0|e),C=w.address;if(o.push(C),0==(0|n._crypto_generichash_blake2b_salt_personal(C,e,null,0,0,s,c,u,f))){var B=A(w,a);return y(o),B}v(o,"invalid usage")}function Ie(e,t,r){var i=[];h(r),b(i,e,"state_address"),b(i,t,"hash_length"),("number"!=typeof t||(0|t)!==t||t<0)&&m(i,"hash_length must be an unsigned integer");var a=new p(t|=0),o=a.address;if(i.push(o),0==(0|n._crypto_generichash_final(e,o,t))){var s=(n._free(e),A(a,r));return y(i),s}v(i,"invalid usage")}function we(e,t,r){var i=[];h(r);var a=null,o=0;null!=e&&(a=d(e=I(i,e,"key")),o=e.length,i.push(a)),b(i,t,"hash_length"),("number"!=typeof t||(0|t)!==t||t<0)&&m(i,"hash_length must be an unsigned integer");var s=new p(357).address;if(0==(0|n._crypto_generichash_init(s,a,o,t))){var c=s;return y(i),c}v(i,"invalid usage")}function Ce(e){var t=[];h(e);var r=new p(0|n._crypto_generichash_keybytes()),i=r.address;t.push(i),n._crypto_generichash_keygen(i);var a=A(r,e);return y(t),a}function Be(e,t,r){var i=[];h(r),b(i,e,"state_address");var a=d(t=I(i,t,"message_chunk")),o=t.length;i.push(a),0!=(0|n._crypto_generichash_update(e,a,o))&&v(i,"invalid usage"),y(i)}function Ee(e,t){var r=[];h(t);var i=d(e=I(r,e,"message")),a=e.length;r.push(i);var o=new p(0|n._crypto_hash_bytes()),s=o.address;if(r.push(s),0==(0|n._crypto_hash(s,i,a,0))){var c=A(o,t);return y(r),c}v(r,"invalid usage")}function _e(e,t){var r=[];h(t);var i=d(e=I(r,e,"message")),a=e.length;r.push(i);var o=new p(0|n._crypto_hash_sha256_bytes()),s=o.address;if(r.push(s),0==(0|n._crypto_hash_sha256(s,i,a,0))){var c=A(o,t);return y(r),c}v(r,"invalid usage")}function ke(e,t){var r=[];h(t);var i=d(e=I(r,e,"message")),a=e.length;r.push(i);var o=new p(0|n._crypto_hash_sha512_bytes()),s=o.address;if(r.push(s),0==(0|n._crypto_hash_sha512(s,i,a,0))){var c=A(o,t);return y(r),c}v(r,"invalid usage")}function Qe(e,t,r,a,o){var s=[];h(o),b(s,e,"subkey_len"),("number"!=typeof e||(0|e)!==e||e<0)&&m(s,"subkey_len must be an unsigned integer"),b(s,t,"subkey_id"),("number"!=typeof t||(0|t)!==t||t<0)&&m(s,"subkey_id must be an unsigned integer"),"string"!=typeof r&&m(s,"ctx must be a string");var c=d(r=i(r+"\0"));r.length,s.push(c),a=I(s,a,"key");var u,l=0|n._crypto_kdf_keybytes();a.length!==l&&m(s,"invalid key length"),u=d(a),s.push(u);var f=new p(0|e),g=f.address;s.push(g),n._crypto_kdf_derive_from_key(g,e,t,t>>>24>>>8,c,u);var v=A(f,o);return y(s),v}function Se(e){var t=[];h(e);var r=new p(0|n._crypto_kdf_keybytes()),i=r.address;t.push(i),n._crypto_kdf_keygen(i);var a=A(r,e);return y(t),a}function xe(e,t,r,i){var a=[];h(i),e=I(a,e,"clientPublicKey");var o,s=0|n._crypto_kx_publickeybytes();e.length!==s&&m(a,"invalid clientPublicKey length"),o=d(e),a.push(o),t=I(a,t,"clientSecretKey");var c,u=0|n._crypto_kx_secretkeybytes();t.length!==u&&m(a,"invalid clientSecretKey length"),c=d(t),a.push(c),r=I(a,r,"serverPublicKey");var l,f=0|n._crypto_kx_publickeybytes();r.length!==f&&m(a,"invalid serverPublicKey length"),l=d(r),a.push(l);var g=new p(0|n._crypto_kx_sessionkeybytes()),b=g.address;a.push(b);var w=new p(0|n._crypto_kx_sessionkeybytes()),C=w.address;if(a.push(C),0==(0|n._crypto_kx_client_session_keys(b,C,o,c,l))){var B=A({sharedRx:g,sharedTx:w},i);return y(a),B}v(a,"invalid usage")}function De(e){var t=[];h(e);var r=new p(0|n._crypto_kx_publickeybytes()),i=r.address;t.push(i);var a=new p(0|n._crypto_kx_secretkeybytes()),o=a.address;if(t.push(o),0==(0|n._crypto_kx_keypair(i,o))){var s={publicKey:A(r,e),privateKey:A(a,e),keyType:"x25519"};return y(t),s}v(t,"internal error")}function Pe(e,t){var r=[];h(t),e=I(r,e,"seed");var i,a=0|n._crypto_kx_seedbytes();e.length!==a&&m(r,"invalid seed length"),i=d(e),r.push(i);var o=new p(0|n._crypto_kx_publickeybytes()),s=o.address;r.push(s);var c=new p(0|n._crypto_kx_secretkeybytes()),u=c.address;if(r.push(u),0==(0|n._crypto_kx_seed_keypair(s,u,i))){var l={publicKey:A(o,t),privateKey:A(c,t),keyType:"x25519"};return y(r),l}v(r,"internal error")}function Me(e,t,r,i){var a=[];h(i),e=I(a,e,"serverPublicKey");var o,s=0|n._crypto_kx_publickeybytes();e.length!==s&&m(a,"invalid serverPublicKey length"),o=d(e),a.push(o),t=I(a,t,"serverSecretKey");var c,u=0|n._crypto_kx_secretkeybytes();t.length!==u&&m(a,"invalid serverSecretKey length"),c=d(t),a.push(c),r=I(a,r,"clientPublicKey");var l,f=0|n._crypto_kx_publickeybytes();r.length!==f&&m(a,"invalid clientPublicKey length"),l=d(r),a.push(l);var g=new p(0|n._crypto_kx_sessionkeybytes()),b=g.address;a.push(b);var w=new p(0|n._crypto_kx_sessionkeybytes()),C=w.address;if(a.push(C),0==(0|n._crypto_kx_server_session_keys(b,C,o,c,l))){var B=A({sharedRx:g,sharedTx:w},i);return y(a),B}v(a,"invalid usage")}function Fe(e,t,r){var i=[];h(r);var a=d(e=I(i,e,"message")),o=e.length;i.push(a),t=I(i,t,"key");var s,c=0|n._crypto_onetimeauth_keybytes();t.length!==c&&m(i,"invalid key length"),s=d(t),i.push(s);var u=new p(0|n._crypto_onetimeauth_bytes()),l=u.address;if(i.push(l),0==(0|n._crypto_onetimeauth(l,a,o,0,s))){var f=A(u,r);return y(i),f}v(i,"invalid usage")}function Oe(e,t){var r=[];h(t),b(r,e,"state_address");var i=new p(0|n._crypto_onetimeauth_bytes()),a=i.address;if(r.push(a),0==(0|n._crypto_onetimeauth_final(e,a))){var o=(n._free(e),A(i,t));return y(r),o}v(r,"invalid usage")}function Re(e,t){var r=[];h(t);var i=null;null!=e&&(i=d(e=I(r,e,"key")),e.length,r.push(i));var a=new p(144).address;if(0==(0|n._crypto_onetimeauth_init(a,i))){var o=a;return y(r),o}v(r,"invalid usage")}function Te(e){var t=[];h(e);var r=new p(0|n._crypto_onetimeauth_keybytes()),i=r.address;t.push(i),n._crypto_onetimeauth_keygen(i);var a=A(r,e);return y(t),a}function je(e,t,r){var i=[];h(r),b(i,e,"state_address");var a=d(t=I(i,t,"message_chunk")),o=t.length;i.push(a),0!=(0|n._crypto_onetimeauth_update(e,a,o))&&v(i,"invalid usage"),y(i)}function He(e,t,r){var i=[];e=I(i,e,"hash");var a,o=0|n._crypto_onetimeauth_bytes();e.length!==o&&m(i,"invalid hash length"),a=d(e),i.push(a);var s=d(t=I(i,t,"message")),c=t.length;i.push(s),r=I(i,r,"key");var u,l=0|n._crypto_onetimeauth_keybytes();r.length!==l&&m(i,"invalid key length"),u=d(r),i.push(u);var A=0==(0|n._crypto_onetimeauth_verify(a,s,c,0,u));return y(i),A}function Ue(e,t,r,i,a,o,s){var c=[];h(s),b(c,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&m(c,"keyLength must be an unsigned integer");var u=d(t=I(c,t,"password")),l=t.length;c.push(u),r=I(c,r,"salt");var f,g=0|n._crypto_pwhash_saltbytes();r.length!==g&&m(c,"invalid salt length"),f=d(r),c.push(f),b(c,i,"opsLimit"),("number"!=typeof i||(0|i)!==i||i<0)&&m(c,"opsLimit must be an unsigned integer"),b(c,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&m(c,"memLimit must be an unsigned integer"),b(c,o,"algorithm"),("number"!=typeof o||(0|o)!==o||o<0)&&m(c,"algorithm must be an unsigned integer");var w=new p(0|e),C=w.address;if(c.push(C),0==(0|n._crypto_pwhash(C,e,0,u,l,0,f,i,0,a,o))){var B=A(w,s);return y(c),B}v(c,"invalid usage")}function Ne(e,t,r,i,a,o){var s=[];h(o),b(s,e,"keyLength"),("number"!=typeof e||(0|e)!==e||e<0)&&m(s,"keyLength must be an unsigned integer");var c=d(t=I(s,t,"password")),u=t.length;s.push(c),r=I(s,r,"salt");var l,f=0|n._crypto_pwhash_scryptsalsa208sha256_saltbytes();r.length!==f&&m(s,"invalid salt length"),l=d(r),s.push(l),b(s,i,"opsLimit"),("number"!=typeof i||(0|i)!==i||i<0)&&m(s,"opsLimit must be an unsigned integer"),b(s,a,"memLimit"),("number"!=typeof a||(0|a)!==a||a<0)&&m(s,"memLimit must be an unsigned integer");var g=new p(0|e),w=g.address;if(s.push(w),0==(0|n._crypto_pwhash_scryptsalsa208sha256(w,e,0,c,u,0,l,i,0,a))){var C=A(g,o);return y(s),C}v(s,"invalid usage")}function Le(e,t,r,i,a,o,s){var c=[];h(s);var u=d(e=I(c,e,"password")),l=e.length;c.push(u);var f=d(t=I(c,t,"salt")),g=t.length;c.push(f),b(c,r,"opsLimit"),("number"!=typeof r||(0|r)!==r||r<0)&&m(c,"opsLimit must be an unsigned integer"),b(c,i,"r"),("number"!=typeof i||(0|i)!==i||i<0)&&m(c,"r must be an unsigned integer"),b(c,a,"p"),("number"!=typeof a||(0|a)!==a||a<0)&&m(c,"p must be an unsigned integer"),b(c,o,"keyLength"),("number"!=typeof o||(0|o)!==o||o<0)&&m(c,"keyLength must be an unsigned integer");var w=new p(0|o),C=w.address;if(c.push(C),0==(0|n._crypto_pwhash_scryptsalsa208sha256_ll(u,l,f,g,r,0,i,a,C,o))){var B=A(w,s);return y(c),B}v(c,"invalid usage")}function Ke(e,t,r,i){var a=[];h(i);var o=d(e=I(a,e,"password")),s=e.length;a.push(o),b(a,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&m(a,"opsLimit must be an unsigned integer"),b(a,r,"memLimit"),("number"!=typeof r||(0|r)!==r||r<0)&&m(a,"memLimit must be an unsigned integer");var c=new p(0|n._crypto_pwhash_scryptsalsa208sha256_strbytes()).address;if(a.push(c),0==(0|n._crypto_pwhash_scryptsalsa208sha256_str(c,o,s,0,t,0,r))){var u=n.UTF8ToString(c);return y(a),u}v(a,"invalid usage")}function Ge(e,t,r){var a=[];h(r),"string"!=typeof e&&m(a,"hashed_password must be a string");var o=d(e=i(e+"\0"));e.length,a.push(o);var s=d(t=I(a,t,"password")),c=t.length;a.push(s);var u=0==(0|n._crypto_pwhash_scryptsalsa208sha256_str_verify(o,s,c,0));return y(a),u}function $e(e,t,r,i){var a=[];h(i);var o=d(e=I(a,e,"password")),s=e.length;a.push(o),b(a,t,"opsLimit"),("number"!=typeof t||(0|t)!==t||t<0)&&m(a,"opsLimit must be an unsigned integer"),b(a,r,"memLimit"),("number"!=typeof r||(0|r)!==r||r<0)&&m(a,"memLimit must be an unsigned integer");var c=new p(0|n._crypto_pwhash_strbytes()).address;if(a.push(c),0==(0|n._crypto_pwhash_str(c,o,s,0,t,0,r))){var u=n.UTF8ToString(c);return y(a),u}v(a,"invalid usage")}function Ye(e,t,r){var a=[];h(r),"string"!=typeof e&&m(a,"hashed_password must be a string");var o=d(e=i(e+"\0"));e.length,a.push(o);var s=d(t=I(a,t,"password")),c=t.length;a.push(s);var u=0==(0|n._crypto_pwhash_str_verify(o,s,c,0));return y(a),u}function Je(e,t,r){var i=[];h(r),e=I(i,e,"privateKey");var a,o=0|n._crypto_scalarmult_scalarbytes();e.length!==o&&m(i,"invalid privateKey length"),a=d(e),i.push(a),t=I(i,t,"publicKey");var s,c=0|n._crypto_scalarmult_scalarbytes();t.length!==c&&m(i,"invalid publicKey length"),s=d(t),i.push(s);var u=new p(0|n._crypto_scalarmult_bytes()),l=u.address;if(i.push(l),0==(0|n._crypto_scalarmult(l,a,s))){var f=A(u,r);return y(i),f}v(i,"weak public key")}function Ve(e,t){var r=[];h(t),e=I(r,e,"privateKey");var i,a=0|n._crypto_scalarmult_scalarbytes();e.length!==a&&m(r,"invalid privateKey length"),i=d(e),r.push(i);var o=new p(0|n._crypto_scalarmult_scalarbytes()),s=o.address;if(r.push(s),0==(0|n._crypto_scalarmult_base(s,i))){var c=A(o,t);return y(r),c}v(r,"insecure scalar")}function ze(e,t,r){var i=[];h(r),e=I(i,e,"scalar");var a,o=0|n._crypto_scalarmult_ristretto255_scalarbytes();e.length!==o&&m(i,"invalid scalar length"),a=d(e),i.push(a),t=I(i,t,"privateKey");var s,c=0|n._crypto_scalarmult_ristretto255_bytes();t.length!==c&&m(i,"invalid privateKey length"),s=d(t),i.push(s);var u=new p(0|n._crypto_scalarmult_ristretto255_bytes()),l=u.address;if(i.push(l),0==(0|n._crypto_scalarmult_ristretto255(l,a,s))){var f=A(u,r);return y(i),f}v(i,"input is zero element")}function qe(e,t){var r=[];h(t);var i=d(e=I(r,e,"scalar"));e.length,r.push(i);var a=new p(0|n._crypto_core_ristretto255_bytes()),o=a.address;if(r.push(o),0==(0|n._crypto_scalarmult_ristretto255_base(o,i))){var s=A(a,t);return y(r),s}v(r,"scalar is 0")}function We(e,t,r,i){var a=[];h(i);var o=d(e=I(a,e,"message")),s=e.length;a.push(o),t=I(a,t,"nonce");var c,u=0|n._crypto_secretbox_noncebytes();t.length!==u&&m(a,"invalid nonce length"),c=d(t),a.push(c),r=I(a,r,"key");var l,f=0|n._crypto_secretbox_keybytes();r.length!==f&&m(a,"invalid key length"),l=d(r),a.push(l);var g=new p(0|s),b=g.address;a.push(b);var w=new p(0|n._crypto_secretbox_macbytes()),C=w.address;if(a.push(C),0==(0|n._crypto_secretbox_detached(b,C,o,s,0,c,l))){var B=A({mac:w,cipher:g},i);return y(a),B}v(a,"invalid usage")}function Xe(e,t,r,i){var a=[];h(i);var o=d(e=I(a,e,"message")),s=e.length;a.push(o),t=I(a,t,"nonce");var c,u=0|n._crypto_secretbox_noncebytes();t.length!==u&&m(a,"invalid nonce length"),c=d(t),a.push(c),r=I(a,r,"key");var l,f=0|n._crypto_secretbox_keybytes();r.length!==f&&m(a,"invalid key length"),l=d(r),a.push(l);var g=new p(s+n._crypto_secretbox_macbytes()|0),b=g.address;if(a.push(b),0==(0|n._crypto_secretbox_easy(b,o,s,0,c,l))){var w=A(g,i);return y(a),w}v(a,"invalid usage")}function Ze(e){var t=[];h(e);var r=new p(0|n._crypto_secretbox_keybytes()),i=r.address;t.push(i),n._crypto_secretbox_keygen(i);var a=A(r,e);return y(t),a}function et(e,t,r,i,a){var o=[];h(a);var s=d(e=I(o,e,"ciphertext")),c=e.length;o.push(s),t=I(o,t,"mac");var u,l=0|n._crypto_secretbox_macbytes();t.length!==l&&m(o,"invalid mac length"),u=d(t),o.push(u),r=I(o,r,"nonce");var f,g=0|n._crypto_secretbox_noncebytes();r.length!==g&&m(o,"invalid nonce length"),f=d(r),o.push(f),i=I(o,i,"key");var b,w=0|n._crypto_secretbox_keybytes();i.length!==w&&m(o,"invalid key length"),b=d(i),o.push(b);var C=new p(0|c),B=C.address;if(o.push(B),0==(0|n._crypto_secretbox_open_detached(B,s,u,c,0,f,b))){var E=A(C,a);return y(o),E}v(o,"wrong secret key for the given ciphertext")}function tt(e,t,r,i){var a=[];h(i),e=I(a,e,"ciphertext");var o,s=n._crypto_secretbox_macbytes(),c=e.length;c<s&&m(a,"ciphertext is too short"),o=d(e),a.push(o),t=I(a,t,"nonce");var u,l=0|n._crypto_secretbox_noncebytes();t.length!==l&&m(a,"invalid nonce length"),u=d(t),a.push(u),r=I(a,r,"key");var f,g=0|n._crypto_secretbox_keybytes();r.length!==g&&m(a,"invalid key length"),f=d(r),a.push(f);var b=new p(c-n._crypto_secretbox_macbytes()|0),w=b.address;if(a.push(w),0==(0|n._crypto_secretbox_open_easy(w,o,c,0,u,f))){var C=A(b,i);return y(a),C}v(a,"wrong secret key for the given ciphertext")}function nt(e,t,r){var i=[];h(r),e=I(i,e,"header");var a,o=0|n._crypto_secretstream_xchacha20poly1305_headerbytes();e.length!==o&&m(i,"invalid header length"),a=d(e),i.push(a),t=I(i,t,"key");var s,c=0|n._crypto_secretstream_xchacha20poly1305_keybytes();t.length!==c&&m(i,"invalid key length"),s=d(t),i.push(s);var u=new p(52).address;if(0==(0|n._crypto_secretstream_xchacha20poly1305_init_pull(u,a,s))){var l=u;return y(i),l}v(i,"invalid usage")}function rt(e,t){var r=[];h(t),e=I(r,e,"key");var i,a=0|n._crypto_secretstream_xchacha20poly1305_keybytes();e.length!==a&&m(r,"invalid key length"),i=d(e),r.push(i);var o=new p(52).address,s=new p(0|n._crypto_secretstream_xchacha20poly1305_headerbytes()),c=s.address;if(r.push(c),0==(0|n._crypto_secretstream_xchacha20poly1305_init_push(o,c,i))){var u={state:o,header:A(s,t)};return y(r),u}v(r,"invalid usage")}function it(e){var t=[];h(e);var r=new p(0|n._crypto_secretstream_xchacha20poly1305_keybytes()),i=r.address;t.push(i),n._crypto_secretstream_xchacha20poly1305_keygen(i);var a=A(r,e);return y(t),a}function at(e,t,r,i){var a=[];h(i),b(a,e,"state_address"),t=I(a,t,"cipher");var o,s=n._crypto_secretstream_xchacha20poly1305_abytes(),c=t.length;c<s&&m(a,"cipher is too short"),o=d(t),a.push(o);var u=null,l=0;null!=r&&(u=d(r=I(a,r,"ad")),l=r.length,a.push(u));var f=new p(c-n._crypto_secretstream_xchacha20poly1305_abytes()|0),v=f.address;a.push(v);var w,C=(w=g(1),a.push(w),(C=0===n._crypto_secretstream_xchacha20poly1305_pull(e,v,0,w,o,c,0,u,l)&&{tag:n.HEAPU8[w],message:f})&&{message:A(C.message,i),tag:C.tag});return y(a),C}function ot(e,t,r,i,a){var o=[];h(a),b(o,e,"state_address");var s=d(t=I(o,t,"message_chunk")),c=t.length;o.push(s);var u=null,l=0;null!=r&&(u=d(r=I(o,r,"ad")),l=r.length,o.push(u)),b(o,i,"tag"),("number"!=typeof i||(0|i)!==i||i<0)&&m(o,"tag must be an unsigned integer");var f=new p(c+n._crypto_secretstream_xchacha20poly1305_abytes()|0),g=f.address;if(o.push(g),0==(0|n._crypto_secretstream_xchacha20poly1305_push(e,g,0,s,c,0,u,l,0,i))){var w=A(f,a);return y(o),w}v(o,"invalid usage")}function st(e,t){var r=[];return h(t),b(r,e,"state_address"),n._crypto_secretstream_xchacha20poly1305_rekey(e),y(r),!0}function ct(e,t,r){var i=[];h(r);var a=d(e=I(i,e,"message")),o=e.length;i.push(a),t=I(i,t,"key");var s,c=0|n._crypto_shorthash_keybytes();t.length!==c&&m(i,"invalid key length"),s=d(t),i.push(s);var u=new p(0|n._crypto_shorthash_bytes()),l=u.address;if(i.push(l),0==(0|n._crypto_shorthash(l,a,o,0,s))){var f=A(u,r);return y(i),f}v(i,"invalid usage")}function ut(e){var t=[];h(e);var r=new p(0|n._crypto_shorthash_keybytes()),i=r.address;t.push(i),n._crypto_shorthash_keygen(i);var a=A(r,e);return y(t),a}function lt(e,t,r){var i=[];h(r);var a=d(e=I(i,e,"message")),o=e.length;i.push(a),t=I(i,t,"key");var s,c=0|n._crypto_shorthash_siphashx24_keybytes();t.length!==c&&m(i,"invalid key length"),s=d(t),i.push(s);var u=new p(0|n._crypto_shorthash_siphashx24_bytes()),l=u.address;if(i.push(l),0==(0|n._crypto_shorthash_siphashx24(l,a,o,0,s))){var f=A(u,r);return y(i),f}v(i,"invalid usage")}function At(e,t,r){var i=[];h(r);var a=d(e=I(i,e,"message")),o=e.length;i.push(a),t=I(i,t,"privateKey");var s,c=0|n._crypto_sign_secretkeybytes();t.length!==c&&m(i,"invalid privateKey length"),s=d(t),i.push(s);var u=new p(e.length+n._crypto_sign_bytes()|0),l=u.address;if(i.push(l),0==(0|n._crypto_sign(l,null,a,o,0,s))){var f=A(u,r);return y(i),f}v(i,"invalid usage")}function ft(e,t,r){var i=[];h(r);var a=d(e=I(i,e,"message")),o=e.length;i.push(a),t=I(i,t,"privateKey");var s,c=0|n._crypto_sign_secretkeybytes();t.length!==c&&m(i,"invalid privateKey length"),s=d(t),i.push(s);var u=new p(0|n._crypto_sign_bytes()),l=u.address;if(i.push(l),0==(0|n._crypto_sign_detached(l,null,a,o,0,s))){var f=A(u,r);return y(i),f}v(i,"invalid usage")}function ht(e,t){var r=[];h(t),e=I(r,e,"edPk");var i,a=0|n._crypto_sign_publickeybytes();e.length!==a&&m(r,"invalid edPk length"),i=d(e),r.push(i);var o=new p(0|n._crypto_scalarmult_scalarbytes()),s=o.address;if(r.push(s),0==(0|n._crypto_sign_ed25519_pk_to_curve25519(s,i))){var c=A(o,t);return y(r),c}v(r,"invalid key")}function pt(e,t){var r=[];h(t),e=I(r,e,"edSk");var i,a=0|n._crypto_sign_secretkeybytes();e.length!==a&&m(r,"invalid edSk length"),i=d(e),r.push(i);var o=new p(0|n._crypto_scalarmult_scalarbytes()),s=o.address;if(r.push(s),0==(0|n._crypto_sign_ed25519_sk_to_curve25519(s,i))){var c=A(o,t);return y(r),c}v(r,"invalid key")}function dt(e,t){var r=[];h(t),e=I(r,e,"privateKey");var i,a=0|n._crypto_sign_secretkeybytes();e.length!==a&&m(r,"invalid privateKey length"),i=d(e),r.push(i);var o=new p(0|n._crypto_sign_publickeybytes()),s=o.address;if(r.push(s),0==(0|n._crypto_sign_ed25519_sk_to_pk(s,i))){var c=A(o,t);return y(r),c}v(r,"invalid key")}function gt(e,t){var r=[];h(t),e=I(r,e,"privateKey");var i,a=0|n._crypto_sign_secretkeybytes();e.length!==a&&m(r,"invalid privateKey length"),i=d(e),r.push(i);var o=new p(0|n._crypto_sign_seedbytes()),s=o.address;if(r.push(s),0==(0|n._crypto_sign_ed25519_sk_to_seed(s,i))){var c=A(o,t);return y(r),c}v(r,"invalid key")}function yt(e,t,r){var i=[];h(r),b(i,e,"state_address"),t=I(i,t,"privateKey");var a,o=0|n._crypto_sign_secretkeybytes();t.length!==o&&m(i,"invalid privateKey length"),a=d(t),i.push(a);var s=new p(0|n._crypto_sign_bytes()),c=s.address;if(i.push(c),0==(0|n._crypto_sign_final_create(e,c,null,a))){var u=(n._free(e),A(s,r));return y(i),u}v(i,"invalid usage")}function vt(e,t,r,i){var a=[];h(i),b(a,e,"state_address"),t=I(a,t,"signature");var o,s=0|n._crypto_sign_bytes();t.length!==s&&m(a,"invalid signature length"),o=d(t),a.push(o),r=I(a,r,"publicKey");var c,u=0|n._crypto_sign_publickeybytes();r.length!==u&&m(a,"invalid publicKey length"),c=d(r),a.push(c);var l=0==(0|n._crypto_sign_final_verify(e,o,c));return y(a),l}function mt(e){var t=[];h(e);var r=new p(208).address;if(0==(0|n._crypto_sign_init(r))){var i=r;return y(t),i}v(t,"internal error")}function bt(e){var t=[];h(e);var r=new p(0|n._crypto_sign_publickeybytes()),i=r.address;t.push(i);var a=new p(0|n._crypto_sign_secretkeybytes()),o=a.address;if(t.push(o),0==(0|n._crypto_sign_keypair(i,o))){var s={publicKey:A(r,e),privateKey:A(a,e),keyType:"ed25519"};return y(t),s}v(t,"internal error")}function It(e,t,r){var i=[];h(r),e=I(i,e,"signedMessage");var a,o=n._crypto_sign_bytes(),s=e.length;s<o&&m(i,"signedMessage is too short"),a=d(e),i.push(a),t=I(i,t,"publicKey");var c,u=0|n._crypto_sign_publickeybytes();t.length!==u&&m(i,"invalid publicKey length"),c=d(t),i.push(c);var l=new p(s-n._crypto_sign_bytes()|0),f=l.address;if(i.push(f),0==(0|n._crypto_sign_open(f,null,a,s,0,c))){var g=A(l,r);return y(i),g}v(i,"incorrect signature for the given public key")}function wt(e,t){var r=[];h(t),e=I(r,e,"seed");var i,a=0|n._crypto_sign_seedbytes();e.length!==a&&m(r,"invalid seed length"),i=d(e),r.push(i);var o=new p(0|n._crypto_sign_publickeybytes()),s=o.address;r.push(s);var c=new p(0|n._crypto_sign_secretkeybytes()),u=c.address;if(r.push(u),0==(0|n._crypto_sign_seed_keypair(s,u,i))){var l={publicKey:A(o,t),privateKey:A(c,t),keyType:"ed25519"};return y(r),l}v(r,"invalid usage")}function Ct(e,t,r){var i=[];h(r),b(i,e,"state_address");var a=d(t=I(i,t,"message_chunk")),o=t.length;i.push(a),0!=(0|n._crypto_sign_update(e,a,o))&&v(i,"invalid usage"),y(i)}function Bt(e,t,r){var i=[];e=I(i,e,"signature");var a,o=0|n._crypto_sign_bytes();e.length!==o&&m(i,"invalid signature length"),a=d(e),i.push(a);var s=d(t=I(i,t,"message")),c=t.length;i.push(s),r=I(i,r,"publicKey");var u,l=0|n._crypto_sign_publickeybytes();r.length!==l&&m(i,"invalid publicKey length"),u=d(r),i.push(u);var A=0==(0|n._crypto_sign_verify_detached(a,s,c,0,u));return y(i),A}function Et(e,t,r,i){var a=[];h(i),b(a,e,"outLength"),("number"!=typeof e||(0|e)!==e||e<0)&&m(a,"outLength must be an unsigned integer"),t=I(a,t,"key");var o,s=0|n._crypto_stream_chacha20_keybytes();t.length!==s&&m(a,"invalid key length"),o=d(t),a.push(o),r=I(a,r,"nonce");var c,u=0|n._crypto_stream_chacha20_noncebytes();r.length!==u&&m(a,"invalid nonce length"),c=d(r),a.push(c);var l=new p(0|e),f=l.address;a.push(f),n._crypto_stream_chacha20(f,e,0,c,o);var g=A(l,i);return y(a),g}function _t(e,t,r,i){var a=[];h(i);var o=d(e=I(a,e,"input_message")),s=e.length;a.push(o),t=I(a,t,"nonce");var c,u=0|n._crypto_stream_chacha20_ietf_noncebytes();t.length!==u&&m(a,"invalid nonce length"),c=d(t),a.push(c),r=I(a,r,"key");var l,f=0|n._crypto_stream_chacha20_ietf_keybytes();r.length!==f&&m(a,"invalid key length"),l=d(r),a.push(l);var g=new p(0|s),b=g.address;if(a.push(b),0===n._crypto_stream_chacha20_ietf_xor(b,o,s,0,c,l)){var w=A(g,i);return y(a),w}v(a,"invalid usage")}function kt(e,t,r,i,a){var o=[];h(a);var s=d(e=I(o,e,"input_message")),c=e.length;o.push(s),t=I(o,t,"nonce");var u,l=0|n._crypto_stream_chacha20_ietf_noncebytes();t.length!==l&&m(o,"invalid nonce length"),u=d(t),o.push(u),b(o,r,"nonce_increment"),("number"!=typeof r||(0|r)!==r||r<0)&&m(o,"nonce_increment must be an unsigned integer"),i=I(o,i,"key");var f,g=0|n._crypto_stream_chacha20_ietf_keybytes();i.length!==g&&m(o,"invalid key length"),f=d(i),o.push(f);var w=new p(0|c),C=w.address;if(o.push(C),0===n._crypto_stream_chacha20_ietf_xor_ic(C,s,c,0,u,r,0,f)){var B=A(w,a);return y(o),B}v(o,"invalid usage")}function Qt(e){var t=[];h(e);var r=new p(0|n._crypto_stream_chacha20_keybytes()),i=r.address;t.push(i),n._crypto_stream_chacha20_keygen(i);var a=A(r,e);return y(t),a}function St(e,t,r,i){var a=[];h(i);var o=d(e=I(a,e,"input_message")),s=e.length;a.push(o),t=I(a,t,"nonce");var c,u=0|n._crypto_stream_chacha20_noncebytes();t.length!==u&&m(a,"invalid nonce length"),c=d(t),a.push(c),r=I(a,r,"key");var l,f=0|n._crypto_stream_chacha20_keybytes();r.length!==f&&m(a,"invalid key length"),l=d(r),a.push(l);var g=new p(0|s),b=g.address;if(a.push(b),0===n._crypto_stream_chacha20_xor(b,o,s,0,c,l)){var w=A(g,i);return y(a),w}v(a,"invalid usage")}function xt(e,t,r,i,a){var o=[];h(a);var s=d(e=I(o,e,"input_message")),c=e.length;o.push(s),t=I(o,t,"nonce");var u,l=0|n._crypto_stream_chacha20_noncebytes();t.length!==l&&m(o,"invalid nonce length"),u=d(t),o.push(u),b(o,r,"nonce_increment"),("number"!=typeof r||(0|r)!==r||r<0)&&m(o,"nonce_increment must be an unsigned integer"),i=I(o,i,"key");var f,g=0|n._crypto_stream_chacha20_keybytes();i.length!==g&&m(o,"invalid key length"),f=d(i),o.push(f);var w=new p(0|c),C=w.address;if(o.push(C),0===n._crypto_stream_chacha20_xor_ic(C,s,c,0,u,r,0,f)){var B=A(w,a);return y(o),B}v(o,"invalid usage")}function Dt(e){var t=[];h(e);var r=new p(0|n._crypto_stream_keybytes()),i=r.address;t.push(i),n._crypto_stream_keygen(i);var a=A(r,e);return y(t),a}function Pt(e){var t=[];h(e);var r=new p(0|n._crypto_stream_xchacha20_keybytes()),i=r.address;t.push(i),n._crypto_stream_xchacha20_keygen(i);var a=A(r,e);return y(t),a}function Mt(e,t,r,i){var a=[];h(i);var o=d(e=I(a,e,"input_message")),s=e.length;a.push(o),t=I(a,t,"nonce");var c,u=0|n._crypto_stream_xchacha20_noncebytes();t.length!==u&&m(a,"invalid nonce length"),c=d(t),a.push(c),r=I(a,r,"key");var l,f=0|n._crypto_stream_xchacha20_keybytes();r.length!==f&&m(a,"invalid key length"),l=d(r),a.push(l);var g=new p(0|s),b=g.address;if(a.push(b),0===n._crypto_stream_xchacha20_xor(b,o,s,0,c,l)){var w=A(g,i);return y(a),w}v(a,"invalid usage")}function Ft(e,t,r,i,a){var o=[];h(a);var s=d(e=I(o,e,"input_message")),c=e.length;o.push(s),t=I(o,t,"nonce");var u,l=0|n._crypto_stream_xchacha20_noncebytes();t.length!==l&&m(o,"invalid nonce length"),u=d(t),o.push(u),b(o,r,"nonce_increment"),("number"!=typeof r||(0|r)!==r||r<0)&&m(o,"nonce_increment must be an unsigned integer"),i=I(o,i,"key");var f,g=0|n._crypto_stream_xchacha20_keybytes();i.length!==g&&m(o,"invalid key length"),f=d(i),o.push(f);var w=new p(0|c),C=w.address;if(o.push(C),0===n._crypto_stream_xchacha20_xor_ic(C,s,c,0,u,r,0,f)){var B=A(w,a);return y(o),B}v(o,"invalid usage")}function Ot(e,t){var r=[];h(t),b(r,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&m(r,"length must be an unsigned integer");var i=new p(0|e),a=i.address;r.push(a),n._randombytes_buf(a,e);var o=A(i,t);return y(r),o}function Rt(e,t,r){var i=[];h(r),b(i,e,"length"),("number"!=typeof e||(0|e)!==e||e<0)&&m(i,"length must be an unsigned integer"),t=I(i,t,"seed");var a,o=0|n._randombytes_seedbytes();t.length!==o&&m(i,"invalid seed length"),a=d(t),i.push(a);var s=new p(0|e),c=s.address;i.push(c),n._randombytes_buf_deterministic(c,e,a);var u=A(s,r);return y(i),u}function Tt(e){h(e),n._randombytes_close()}function jt(e){h(e);var t=n._randombytes_random()>>>0;return y([]),t}function Ht(e,t){var r=[];h(t);for(var i=n._malloc(24),a=0;a<6;a++)n.setValue(i+4*a,n.Runtime.addFunction(e[["implementation_name","random","stir","uniform","buf","close"][a]]),"i32");0!=(0|n._randombytes_set_implementation(i))&&v(r,"unsupported implementation"),y(r)}function Ut(e){h(e),n._randombytes_stir()}function Nt(e,t){var r=[];h(t),b(r,e,"upper_bound"),("number"!=typeof e||(0|e)!==e||e<0)&&m(r,"upper_bound must be an unsigned integer");var i=n._randombytes_uniform(e)>>>0;return y(r),i}function Lt(){var e=n._sodium_version_string(),t=n.UTF8ToString(e);return y([]),t}return p.prototype.to_Uint8Array=function(){var e=new Uint8Array(this.length);return e.set(n.HEAPU8.subarray(this.address,this.address+this.length)),e},e.add=function(e,t){if(!(e instanceof Uint8Array&&t instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can added");var n=e.length,r=0,i=0;if(t.length!=e.length)throw new TypeError("Arguments must have the same length");for(i=0;i<n;i++)r>>=8,r+=e[i]+t[i],e[i]=255&r},e.base64_variants=s,e.compare=function(e,t){if(!(e instanceof Uint8Array&&t instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(e.length!==t.length)throw new TypeError("Only instances of identical length can be compared");for(var n=0,r=1,i=e.length;i-- >0;)n|=t[i]-e[i]>>8&r,r&=(t[i]^e[i])-1>>8;return n+n+r-1},e.from_base64=function(e,t){t=u(t);var r,i=[],a=new p(3*(e=I(i,e,"input")).length/4),o=d(e),s=g(4),c=g(4);return i.push(o),i.push(a.address),i.push(a.result_bin_len_p),i.push(a.b64_end_p),0!==n._sodium_base642bin(a.address,a.length,o,e.length,0,s,c,t)&&v(i,"invalid input"),n.getValue(c,"i32")-o!==e.length&&v(i,"incomplete input"),a.length=n.getValue(s,"i32"),r=a.to_Uint8Array(),y(i),r},e.from_hex=function(e){var t,r=[],i=new p((e=I(r,e,"input")).length/2),a=d(e),o=g(4);return r.push(a),r.push(i.address),r.push(i.hex_end_p),0!==n._sodium_hex2bin(i.address,i.length,a,e.length,0,0,o)&&v(r,"invalid input"),n.getValue(o,"i32")-a!==e.length&&v(r,"incomplete input"),t=i.to_Uint8Array(),y(r),t},e.from_string=i,e.increment=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be incremented");for(var t=256,n=0,r=e.length;n<r;n++)t>>=8,t+=e[n],e[n]=255&t},e.is_zero=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be checked");for(var t=0,n=0,r=e.length;n<r;n++)t|=e[n];return 0===t},e.libsodium=t,e.memcmp=function(e,t){if(!(e instanceof Uint8Array&&t instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be compared");if(e.length!==t.length)throw new TypeError("Only instances of identical length can be compared");for(var n=0,r=0,i=e.length;r<i;r++)n|=e[r]^t[r];return 0===n},e.memzero=function(e){if(!(e instanceof Uint8Array))throw new TypeError("Only Uint8Array instances can be wiped");for(var t=0,n=e.length;t<n;t++)e[t]=0},e.output_formats=function(){return["uint8array","text","hex","base64"]},e.pad=function(e,t){if(!(e instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((t|=0)<=0)throw new Error("block size must be > 0");var r,i=[],a=g(4),o=1,s=0,c=0|e.length,u=new p(c+t);i.push(a),i.push(u.address);for(var l=u.address,A=u.address+c+t;l<A;l++)n.HEAPU8[l]=e[s],s+=o=1&~((65535&((c-=o)>>>48|c>>>32|c>>>16|c))-1>>16);return 0!==n._sodium_pad(a,u.address,e.length,t,u.length)&&v(i,"internal error"),u.length=n.getValue(a,"i32"),r=u.to_Uint8Array(),y(i),r},e.unpad=function(e,t){if(!(e instanceof Uint8Array))throw new TypeError("buffer must be a Uint8Array");if((t|=0)<=0)throw new Error("block size must be > 0");var r=[],i=d(e),a=g(4);return r.push(i),r.push(a),0!==n._sodium_unpad(a,i,e.length,t)&&v(r,"unsupported/invalid padding"),e=(e=new Uint8Array(e)).subarray(0,n.getValue(a,"i32")),y(r),e},e.ready=r,e.symbols=function(){return Object.keys(e).sort()},e.to_base64=l,e.to_hex=o,e.to_string=a,e})?r.apply(t,i):r)&&(e.exports=a),s&&o.sodium.ready.then((function(){s(o.sodium)}))},function(e,t){function n(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=n,n.equal=function(e,t,n){if(e!=t)throw new Error(n||"Assertion failed: "+e+" != "+t)}},function(e,t,n){"use strict";var r=t,i=n(4),a=n(6),o=n(70);r.assert=a,r.toArray=o.toArray,r.zero2=o.zero2,r.toHex=o.toHex,r.encode=o.encode,r.getNAF=function(e,t,n){var r=new Array(Math.max(e.bitLength(),n)+1);r.fill(0);for(var i=1<<t+1,a=e.clone(),o=0;o<r.length;o++){var s,c=a.andln(i-1);a.isOdd()?(s=c>(i>>1)-1?(i>>1)-c:c,a.isubn(s)):s=0,r[o]=s,a.iushrn(1)}return r},r.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r=0,i=0;e.cmpn(-r)>0||t.cmpn(-i)>0;){var a,o,s,c=e.andln(3)+r&3,u=t.andln(3)+i&3;3===c&&(c=-1),3===u&&(u=-1),a=0==(1&c)?0:3!=(s=e.andln(7)+r&7)&&5!==s||2!==u?c:-c,n[0].push(a),o=0==(1&u)?0:3!=(s=t.andln(7)+i&7)&&5!==s||2!==c?u:-u,n[1].push(o),2*r===a+1&&(r=1-r),2*i===o+1&&(i=1-i),e.iushrn(1),t.iushrn(1)}return n},r.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new i(e,"hex","le")}},function(e,t){function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(e){"object"===("undefined"==typeof window?"undefined":n(window))&&(r=window)}e.exports=r},function(e,t){var n,r,i=e.exports={};function a(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function s(e){if(n===setTimeout)return setTimeout(e,0);if((n===a||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:a}catch(e){n=a}try{r="function"==typeof clearTimeout?clearTimeout:o}catch(e){r=o}}();var c,u=[],l=!1,A=-1;function f(){l&&c&&(l=!1,c.length?u=c.concat(u):A=-1,u.length&&h())}function h(){if(!l){var e=s(f);l=!0;for(var t=u.length;t;){for(c=u,u=[];++A<t;)c&&c[A].run();A=-1,t=u.length}c=null,l=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===o||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function d(){}i.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];u.push(new p(e,t)),1!==u.length||l||s(h)},p.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=d,i.addListener=d,i.once=d,i.off=d,i.removeListener=d,i.removeAllListeners=d,i.emit=d,i.prependListener=d,i.prependOnceListener=d,i.listeners=function(e){return[]},i.binding=function(e){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(e){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},function(e,t,n){"use strict";var r=n(6),i=n(1);function a(e,t){return 55296==(64512&e.charCodeAt(t))&&!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1))}function o(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function s(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=i,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var n=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),i=0;i<e.length;i+=2)n.push(parseInt(e[i]+e[i+1],16))}else for(var r=0,i=0;i<e.length;i++){var o=e.charCodeAt(i);o<128?n[r++]=o:o<2048?(n[r++]=o>>6|192,n[r++]=63&o|128):a(e,i)?(o=65536+((1023&o)<<10)+(1023&e.charCodeAt(++i)),n[r++]=o>>18|240,n[r++]=o>>12&63|128,n[r++]=o>>6&63|128,n[r++]=63&o|128):(n[r++]=o>>12|224,n[r++]=o>>6&63|128,n[r++]=63&o|128)}else for(i=0;i<e.length;i++)n[i]=0|e[i];return n},t.toHex=function(e){for(var t="",n=0;n<e.length;n++)t+=s(e[n].toString(16));return t},t.htonl=o,t.toHex32=function(e,t){for(var n="",r=0;r<e.length;r++){var i=e[r];"little"===t&&(i=o(i)),n+=c(i.toString(16))}return n},t.zero2=s,t.zero8=c,t.join32=function(e,t,n,i){var a=n-t;r(a%4==0);for(var o=new Array(a/4),s=0,c=t;s<o.length;s++,c+=4){var u;u="big"===i?e[c]<<24|e[c+1]<<16|e[c+2]<<8|e[c+3]:e[c+3]<<24|e[c+2]<<16|e[c+1]<<8|e[c],o[s]=u>>>0}return o},t.split32=function(e,t){for(var n=new Array(4*e.length),r=0,i=0;r<e.length;r++,i+=4){var a=e[r];"big"===t?(n[i]=a>>>24,n[i+1]=a>>>16&255,n[i+2]=a>>>8&255,n[i+3]=255&a):(n[i+3]=a>>>24,n[i+2]=a>>>16&255,n[i+1]=a>>>8&255,n[i]=255&a)}return n},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<<t|e>>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,n){return e+t+n>>>0},t.sum32_4=function(e,t,n,r){return e+t+n+r>>>0},t.sum32_5=function(e,t,n,r,i){return e+t+n+r+i>>>0},t.sum64=function(e,t,n,r){var i=e[t],a=r+e[t+1]>>>0,o=(a<r?1:0)+n+i;e[t]=o>>>0,e[t+1]=a},t.sum64_hi=function(e,t,n,r){return(t+r>>>0<t?1:0)+e+n>>>0},t.sum64_lo=function(e,t,n,r){return t+r>>>0},t.sum64_4_hi=function(e,t,n,r,i,a,o,s){var c=0,u=t;return c+=(u=u+r>>>0)<t?1:0,c+=(u=u+a>>>0)<a?1:0,e+n+i+o+(c+=(u=u+s>>>0)<s?1:0)>>>0},t.sum64_4_lo=function(e,t,n,r,i,a,o,s){return t+r+a+s>>>0},t.sum64_5_hi=function(e,t,n,r,i,a,o,s,c,u){var l=0,A=t;return l+=(A=A+r>>>0)<t?1:0,l+=(A=A+a>>>0)<a?1:0,l+=(A=A+s>>>0)<s?1:0,e+n+i+o+c+(l+=(A=A+u>>>0)<u?1:0)>>>0},t.sum64_5_lo=function(e,t,n,r,i,a,o,s,c,u){return t+r+a+s+u>>>0},t.rotr64_hi=function(e,t,n){return(t<<32-n|e>>>n)>>>0},t.rotr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0},t.shr64_hi=function(e,t,n){return e>>>n},t.shr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0}},function(e,t,n){var r=n(2).Buffer,i=n(27).Transform,a=n(31).StringDecoder;function o(e){i.call(this),this.hashMode="string"==typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}n(1)(o,i),o.prototype.update=function(e,t,n){"string"==typeof e&&(e=r.from(e,t));var i=this._update(e);return this.hashMode?this:(n&&(i=this._toString(i,n)),i)},o.prototype.setAutoPadding=function(){},o.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},o.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},o.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},o.prototype._transform=function(e,t,n){var r;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(e){r=e}finally{n(r)}},o.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(e){t=e}e(t)},o.prototype._finalOrDigest=function(e){var t=this.__final()||r.alloc(0);return e&&(t=this._toString(t,e,!0)),t},o.prototype._toString=function(e,t,n){if(this._decoder||(this._decoder=new a(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var r=this._decoder.write(e);return n&&(r+=this._decoder.end()),r},e.exports=o},function(e,t,n){"use strict";var r=n(21),i=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=A;var a=Object.create(n(16));a.inherits=n(1);var o=n(48),s=n(30);a.inherits(A,o);for(var c=i(s.prototype),u=0;u<c.length;u++){var l=c[u];A.prototype[l]||(A.prototype[l]=s.prototype[l])}function A(e){if(!(this instanceof A))return new A(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",f)}function f(){this.allowHalfOpen||this._writableState.ended||r.nextTick(h,this)}function h(e){e.end()}Object.defineProperty(A.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(A.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&this._readableState.destroyed&&this._writableState.destroyed},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),A.prototype._destroy=function(e,t){this.push(null),this.end(),r.nextTick(t,e)}},function(e,t,n){"use strict";(function(t,r){var i=n(2).Buffer,a=t.crypto||t.msCrypto;a&&a.getRandomValues?e.exports=function(e,t){if(e>4294967295)throw new RangeError("requested too many random bytes");var n=i.allocUnsafe(e);if(e>0)if(e>65536)for(var o=0;o<e;o+=65536)a.getRandomValues(n.slice(o,o+65536));else a.getRandomValues(n);return"function"==typeof t?r.nextTick((function(){t(null,n)})):n}:e.exports=function(){throw new Error("Secure random number generation is not supported by this browser.\nUse Chrome, Firefox or Internet Explorer 11")}}).call(this,n(8),n(9))},function(e,t,n){var r=n(2).Buffer;function i(e,t){this._block=r.alloc(e),this._finalSize=t,this._blockSize=e,this._len=0}i.prototype.update=function(e,t){"string"==typeof e&&(t=t||"utf8",e=r.from(e,t));for(var n=this._block,i=this._blockSize,a=e.length,o=this._len,s=0;s<a;){for(var c=o%i,u=Math.min(a-s,i-c),l=0;l<u;l++)n[c+l]=e[s+l];s+=u,(o+=u)%i==0&&this._update(n)}return this._len+=a,this},i.prototype.digest=function(e){var t=this._len%this._blockSize;this._block[t]=128,this._block.fill(0,t+1),t>=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0,i=(n-r)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var a=this._hash();return e?a.toString(e):a},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=i},function(e,t,n){"use strict";var r=n(1),i=n(26),a=n(32),o=n(33),s=n(11);function c(e){s.call(this,"digest"),this._hash=e}r(c,s),c.prototype._update=function(e){this._hash.update(e)},c.prototype._final=function(){return this._hash.digest()},e.exports=function(e){return"md5"===(e=e.toLowerCase())?new i:"rmd160"===e||"ripemd160"===e?new a:new c(o(e))}},function(e,t,n){(function(e){function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===r(e)},t.isBoolean=function(e){return"boolean"==typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"==typeof e},t.isString=function(e){return"string"==typeof e},t.isSymbol=function(e){return"symbol"===n(e)},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===r(e)},t.isObject=function(e){return"object"===n(e)&&null!==e},t.isDate=function(e){return"[object Date]"===r(e)},t.isError=function(e){return"[object Error]"===r(e)||e instanceof Error},t.isFunction=function(e){return"function"==typeof e},t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"===n(e)||void 0===e},t.isBuffer=e.isBuffer}).call(this,n(3).Buffer)},function(e,t,n){(function(t){e.exports=function(e,n){for(var r=Math.min(e.length,n.length),i=new t(r),a=0;a<r;++a)i[a]=e[a]^n[a];return i}}).call(this,n(3).Buffer)},function(e,t,n){"use strict";var r=n(10),i=n(6);function a(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}t.BlockHash=a,a.prototype.update=function(e,t){if(e=r.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var i=0;i<e.length;i+=this._delta32)this._update(e,i,i+this._delta32)}return this},a.prototype.digest=function(e){return this.update(this._pad()),i(null===this.pending),this._digest(e)},a.prototype._pad=function(){var e=this.pendingTotal,t=this._delta8,n=t-(e+this.padLength)%t,r=new Array(n+this.padLength);r[0]=128;for(var i=1;i<n;i++)r[i]=0;if(e<<=3,"big"===this.endian){for(var a=8;a<this.padLength;a++)r[i++]=0;r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=e>>>24&255,r[i++]=e>>>16&255,r[i++]=e>>>8&255,r[i++]=255&e}else for(r[i++]=255&e,r[i++]=e>>>8&255,r[i++]=e>>>16&255,r[i++]=e>>>24&255,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,a=8;a<this.padLength;a++)r[i++]=0;return r}},function(e,t,n){var r=t;r.bignum=n(4),r.define=n(148).define,r.base=n(20),r.constants=n(76),r.decoders=n(153),r.encoders=n(155)},function(e,t,n){var r=t;r.Reporter=n(150).Reporter,r.DecoderBuffer=n(75).DecoderBuffer,r.EncoderBuffer=n(75).EncoderBuffer,r.Node=n(151)},function(e,t,n){"use strict";(function(t){void 0===t||!t.version||0===t.version.indexOf("v0.")||0===t.version.indexOf("v1.")&&0!==t.version.indexOf("v1.8.")?e.exports={nextTick:function(e,n,r,i){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var a,o,s=arguments.length;switch(s){case 0:case 1:return t.nextTick(e);case 2:return t.nextTick((function(){e.call(null,n)}));case 3:return t.nextTick((function(){e.call(null,n,r)}));case 4:return t.nextTick((function(){e.call(null,n,r,i)}));default:for(a=new Array(s-1),o=0;o<a.length;)a[o++]=arguments[o];return t.nextTick((function(){e.apply(null,a)}))}}}:e.exports=t}).call(this,n(9))},function(e,t,n){var r=n(2).Buffer;function i(e){r.isBuffer(e)||(e=r.from(e));for(var t=e.length/4|0,n=new Array(t),i=0;i<t;i++)n[i]=e.readUInt32BE(4*i);return n}function a(e){for(;0<e.length;e++)e[0]=0}function o(e,t,n,r,i){for(var a,o,s,c,u=n[0],l=n[1],A=n[2],f=n[3],h=e[0]^t[0],p=e[1]^t[1],d=e[2]^t[2],g=e[3]^t[3],y=4,v=1;v<i;v++)a=u[h>>>24]^l[p>>>16&255]^A[d>>>8&255]^f[255&g]^t[y++],o=u[p>>>24]^l[d>>>16&255]^A[g>>>8&255]^f[255&h]^t[y++],s=u[d>>>24]^l[g>>>16&255]^A[h>>>8&255]^f[255&p]^t[y++],c=u[g>>>24]^l[h>>>16&255]^A[p>>>8&255]^f[255&d]^t[y++],h=a,p=o,d=s,g=c;return a=(r[h>>>24]<<24|r[p>>>16&255]<<16|r[d>>>8&255]<<8|r[255&g])^t[y++],o=(r[p>>>24]<<24|r[d>>>16&255]<<16|r[g>>>8&255]<<8|r[255&h])^t[y++],s=(r[d>>>24]<<24|r[g>>>16&255]<<16|r[h>>>8&255]<<8|r[255&p])^t[y++],c=(r[g>>>24]<<24|r[h>>>16&255]<<16|r[p>>>8&255]<<8|r[255&d])^t[y++],[a>>>=0,o>>>=0,s>>>=0,c>>>=0]}var s=[0,1,2,4,8,16,32,64,128,27,54],c=function(){for(var e=new Array(256),t=0;t<256;t++)e[t]=t<128?t<<1:t<<1^283;for(var n=[],r=[],i=[[],[],[],[]],a=[[],[],[],[]],o=0,s=0,c=0;c<256;++c){var u=s^s<<1^s<<2^s<<3^s<<4;u=u>>>8^255&u^99,n[o]=u,r[u]=o;var l=e[o],A=e[l],f=e[A],h=257*e[u]^16843008*u;i[0][o]=h<<24|h>>>8,i[1][o]=h<<16|h>>>16,i[2][o]=h<<8|h>>>24,i[3][o]=h,h=16843009*f^65537*A^257*l^16843008*o,a[0][u]=h<<24|h>>>8,a[1][u]=h<<16|h>>>16,a[2][u]=h<<8|h>>>24,a[3][u]=h,0===o?o=s=1:(o=l^e[e[e[f^l]]],s^=e[e[s]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:i,INV_SUB_MIX:a}}();function u(e){this._key=i(e),this._reset()}u.blockSize=16,u.keySize=32,u.prototype.blockSize=u.blockSize,u.prototype.keySize=u.keySize,u.prototype._reset=function(){for(var e=this._key,t=e.length,n=t+6,r=4*(n+1),i=[],a=0;a<t;a++)i[a]=e[a];for(a=t;a<r;a++){var o=i[a-1];a%t==0?(o=o<<8|o>>>24,o=c.SBOX[o>>>24]<<24|c.SBOX[o>>>16&255]<<16|c.SBOX[o>>>8&255]<<8|c.SBOX[255&o],o^=s[a/t|0]<<24):t>6&&a%t==4&&(o=c.SBOX[o>>>24]<<24|c.SBOX[o>>>16&255]<<16|c.SBOX[o>>>8&255]<<8|c.SBOX[255&o]),i[a]=i[a-t]^o}for(var u=[],l=0;l<r;l++){var A=r-l,f=i[A-(l%4?0:4)];u[l]=l<4||A<=4?f:c.INV_SUB_MIX[0][c.SBOX[f>>>24]]^c.INV_SUB_MIX[1][c.SBOX[f>>>16&255]]^c.INV_SUB_MIX[2][c.SBOX[f>>>8&255]]^c.INV_SUB_MIX[3][c.SBOX[255&f]]}this._nRounds=n,this._keySchedule=i,this._invKeySchedule=u},u.prototype.encryptBlockRaw=function(e){return o(e=i(e),this._keySchedule,c.SUB_MIX,c.SBOX,this._nRounds)},u.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),n=r.allocUnsafe(16);return n.writeUInt32BE(t[0],0),n.writeUInt32BE(t[1],4),n.writeUInt32BE(t[2],8),n.writeUInt32BE(t[3],12),n},u.prototype.decryptBlock=function(e){var t=(e=i(e))[1];e[1]=e[3],e[3]=t;var n=o(e,this._invKeySchedule,c.INV_SUB_MIX,c.INV_SBOX,this._nRounds),a=r.allocUnsafe(16);return a.writeUInt32BE(n[0],0),a.writeUInt32BE(n[3],4),a.writeUInt32BE(n[2],8),a.writeUInt32BE(n[1],12),a},u.prototype.scrub=function(){a(this._keySchedule),a(this._invKeySchedule),a(this._key)},e.exports.AES=u},function(e,t,n){var r=n(2).Buffer,i=n(26);e.exports=function(e,t,n,a){if(r.isBuffer(e)||(e=r.from(e,"binary")),t&&(r.isBuffer(t)||(t=r.from(t,"binary")),8!==t.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var o=n/8,s=r.alloc(o),c=r.alloc(a||0),u=r.alloc(0);o>0||a>0;){var l=new i;l.update(u),l.update(e),t&&l.update(t),u=l.digest();var A=0;if(o>0){var f=s.length-o;A=Math.min(o,u.length),u.copy(s,f,0,A),o-=A}if(A<u.length&&a>0){var h=c.length-a,p=Math.min(a,u.length-A);u.copy(c,h,A,A+p),a-=p}}return u.fill(0),{key:s,iv:c}}},function(e,t,n){"use strict";var r=n(4),i=n(7),a=i.getNAF,o=i.getJSF,s=i.assert;function c(e,t){this.type=e,this.p=new r(t.p,16),this.red=t.prime?r.red(t.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=t.n&&new r(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function u(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){s(e.precomputed);var n=e._getDoubles(),r=a(t,1,this._bitLength),i=(1<<n.step+1)-(n.step%2==0?2:1);i/=3;for(var o=[],c=0;c<r.length;c+=n.step){var u=0;for(t=c+n.step-1;t>=c;t--)u=(u<<1)+r[t];o.push(u)}for(var l=this.jpoint(null,null,null),A=this.jpoint(null,null,null),f=i;f>0;f--){for(c=0;c<o.length;c++)(u=o[c])===f?A=A.mixedAdd(n.points[c]):u===-f&&(A=A.mixedAdd(n.points[c].neg()));l=l.add(A)}return l.toP()},c.prototype._wnafMul=function(e,t){var n=4,r=e._getNAFPoints(n);n=r.wnd;for(var i=r.points,o=a(t,n,this._bitLength),c=this.jpoint(null,null,null),u=o.length-1;u>=0;u--){for(t=0;u>=0&&0===o[u];u--)t++;if(u>=0&&t++,c=c.dblp(t),u<0)break;var l=o[u];s(0!==l),c="affine"===e.type?l>0?c.mixedAdd(i[l-1>>1]):c.mixedAdd(i[-l-1>>1].neg()):l>0?c.add(i[l-1>>1]):c.add(i[-l-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,i){for(var s=this._wnafT1,c=this._wnafT2,u=this._wnafT3,l=0,A=0;A<r;A++){var f=(E=t[A])._getNAFPoints(e);s[A]=f.wnd,c[A]=f.points}for(A=r-1;A>=1;A-=2){var h=A-1,p=A;if(1===s[h]&&1===s[p]){var d=[t[h],null,null,t[p]];0===t[h].y.cmp(t[p].y)?(d[1]=t[h].add(t[p]),d[2]=t[h].toJ().mixedAdd(t[p].neg())):0===t[h].y.cmp(t[p].y.redNeg())?(d[1]=t[h].toJ().mixedAdd(t[p]),d[2]=t[h].add(t[p].neg())):(d[1]=t[h].toJ().mixedAdd(t[p]),d[2]=t[h].toJ().mixedAdd(t[p].neg()));var g=[-3,-1,-5,-7,0,7,5,1,3],y=o(n[h],n[p]);l=Math.max(y[0].length,l),u[h]=new Array(l),u[p]=new Array(l);for(var v=0;v<l;v++){var m=0|y[0][v],b=0|y[1][v];u[h][v]=g[3*(m+1)+(b+1)],u[p][v]=0,c[h]=d}}else u[h]=a(n[h],s[h],this._bitLength),u[p]=a(n[p],s[p],this._bitLength),l=Math.max(u[h].length,l),l=Math.max(u[p].length,l)}var I=this.jpoint(null,null,null),w=this._wnafT4;for(A=l;A>=0;A--){for(var C=0;A>=0;){var B=!0;for(v=0;v<r;v++)w[v]=0|u[v][A],0!==w[v]&&(B=!1);if(!B)break;C++,A--}if(A>=0&&C++,I=I.dblp(C),A<0)break;for(v=0;v<r;v++){var E,_=w[v];0!==_&&(_>0?E=c[v][_-1>>1]:_<0&&(E=c[v][-_-1>>1].neg()),I="affine"===E.type?I.mixedAdd(E):I.add(E))}}for(A=0;A<r;A++)c[A]=null;return i?I:I.toP()},c.BasePoint=u,u.prototype.eq=function(){throw new Error("Not implemented")},u.prototype.validate=function(){return this.curve.validate(this)},c.prototype.decodePoint=function(e,t){e=i.toArray(e,t);var n=this.p.byteLength();if((4===e[0]||6===e[0]||7===e[0])&&e.length-1==2*n)return 6===e[0]?s(e[e.length-1]%2==0):7===e[0]&&s(e[e.length-1]%2==1),this.point(e.slice(1,1+n),e.slice(1+n,1+2*n));if((2===e[0]||3===e[0])&&e.length-1===n)return this.pointFromX(e.slice(1,1+n),3===e[0]);throw new Error("Unknown point format")},u.prototype.encodeCompressed=function(e){return this.encode(e,!0)},u.prototype._encode=function(e){var t=this.curve.p.byteLength(),n=this.getX().toArray("be",t);return e?[this.getY().isEven()?2:3].concat(n):[4].concat(n,this.getY().toArray("be",t))},u.prototype.encode=function(e,t){return i.encode(this._encode(t),e)},u.prototype.precompute=function(e){if(this.precomputed)return this;var t={doubles:null,naf:null,beta:null};return t.naf=this._getNAFPoints(8),t.doubles=this._getDoubles(4,e),t.beta=this._getBeta(),this.precomputed=t,this},u.prototype._hasDoubles=function(e){if(!this.precomputed)return!1;var t=this.precomputed.doubles;return!!t&&t.points.length>=Math.ceil((e.bitLength()+1)/t.step)},u.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;i<t;i+=e){for(var a=0;a<e;a++)r=r.dbl();n.push(r)}return{step:e,points:n}},u.prototype._getNAFPoints=function(e){if(this.precomputed&&this.precomputed.naf)return this.precomputed.naf;for(var t=[this],n=(1<<e)-1,r=1===n?null:this.dbl(),i=1;i<n;i++)t[i]=t[i-1].add(r);return{wnd:e,points:t}},u.prototype._getBeta=function(){return null},u.prototype.dblp=function(e){for(var t=this,n=0;n<e;n++)t=t.dbl();return t}},function(e,t,n){function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(147),a=n(158),o=n(159),s=n(35),c=n(57),u=n(2).Buffer;function l(e){var t;"object"!==r(e)||u.isBuffer(e)||(t=e.passphrase,e=e.key),"string"==typeof e&&(e=u.from(e));var n,l,A=o(e,t),f=A.tag,h=A.data;switch(f){case"CERTIFICATE":l=i.certificate.decode(h,"der").tbsCertificate.subjectPublicKeyInfo;case"PUBLIC KEY":switch(l||(l=i.PublicKey.decode(h,"der")),n=l.algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return i.RSAPublicKey.decode(l.subjectPublicKey.data,"der");case"1.2.840.10045.2.1":return l.subjectPrivateKey=l.subjectPublicKey,{type:"ec",data:l};case"1.2.840.10040.4.1":return l.algorithm.params.pub_key=i.DSAparam.decode(l.subjectPublicKey.data,"der"),{type:"dsa",data:l.algorithm.params};default:throw new Error("unknown key id "+n)}throw new Error("unknown key type "+f);case"ENCRYPTED PRIVATE KEY":h=function(e,t){var n=e.algorithm.decrypt.kde.kdeparams.salt,r=parseInt(e.algorithm.decrypt.kde.kdeparams.iters.toString(),10),i=a[e.algorithm.decrypt.cipher.algo.join(".")],o=e.algorithm.decrypt.cipher.iv,l=e.subjectPrivateKey,A=parseInt(i.split("-")[1],10)/8,f=c.pbkdf2Sync(t,n,r,A,"sha1"),h=s.createDecipheriv(i,f,o),p=[];return p.push(h.update(l)),p.push(h.final()),u.concat(p)}(h=i.EncryptedPrivateKey.decode(h,"der"),t);case"PRIVATE KEY":switch(n=(l=i.PrivateKey.decode(h,"der")).algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return i.RSAPrivateKey.decode(l.subjectPrivateKey,"der");case"1.2.840.10045.2.1":return{curve:l.algorithm.curve,privateKey:i.ECPrivateKey.decode(l.subjectPrivateKey,"der").privateKey};case"1.2.840.10040.4.1":return l.algorithm.params.priv_key=i.DSAparam.decode(l.subjectPrivateKey,"der"),{type:"dsa",params:l.algorithm.params};default:throw new Error("unknown key id "+n)}throw new Error("unknown key type "+f);case"RSA PUBLIC KEY":return i.RSAPublicKey.decode(h,"der");case"RSA PRIVATE KEY":return i.RSAPrivateKey.decode(h,"der");case"DSA PRIVATE KEY":return{type:"dsa",params:i.DSAPrivateKey.decode(h,"der")};case"EC PRIVATE KEY":return{curve:(h=i.ECPrivateKey.decode(h,"der")).parameters.value,privateKey:h.privateKey};default:throw new Error("unknown key type "+f)}}e.exports=l,l.signature=i.signature},function(e,t,n){"use strict";var r=n(1),i=n(47),a=n(2).Buffer,o=new Array(16);function s(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<<t|e>>>32-t}function u(e,t,n,r,i,a,o){return c(e+(t&n|~t&r)+i+a|0,o)+t|0}function l(e,t,n,r,i,a,o){return c(e+(t&r|n&~r)+i+a|0,o)+t|0}function A(e,t,n,r,i,a,o){return c(e+(t^n^r)+i+a|0,o)+t|0}function f(e,t,n,r,i,a,o){return c(e+(n^(t|~r))+i+a|0,o)+t|0}r(s,i),s.prototype._update=function(){for(var e=o,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,i=this._c,a=this._d;n=u(n,r,i,a,e[0],3614090360,7),a=u(a,n,r,i,e[1],3905402710,12),i=u(i,a,n,r,e[2],606105819,17),r=u(r,i,a,n,e[3],3250441966,22),n=u(n,r,i,a,e[4],4118548399,7),a=u(a,n,r,i,e[5],1200080426,12),i=u(i,a,n,r,e[6],2821735955,17),r=u(r,i,a,n,e[7],4249261313,22),n=u(n,r,i,a,e[8],1770035416,7),a=u(a,n,r,i,e[9],2336552879,12),i=u(i,a,n,r,e[10],4294925233,17),r=u(r,i,a,n,e[11],2304563134,22),n=u(n,r,i,a,e[12],1804603682,7),a=u(a,n,r,i,e[13],4254626195,12),i=u(i,a,n,r,e[14],2792965006,17),n=l(n,r=u(r,i,a,n,e[15],1236535329,22),i,a,e[1],4129170786,5),a=l(a,n,r,i,e[6],3225465664,9),i=l(i,a,n,r,e[11],643717713,14),r=l(r,i,a,n,e[0],3921069994,20),n=l(n,r,i,a,e[5],3593408605,5),a=l(a,n,r,i,e[10],38016083,9),i=l(i,a,n,r,e[15],3634488961,14),r=l(r,i,a,n,e[4],3889429448,20),n=l(n,r,i,a,e[9],568446438,5),a=l(a,n,r,i,e[14],3275163606,9),i=l(i,a,n,r,e[3],4107603335,14),r=l(r,i,a,n,e[8],1163531501,20),n=l(n,r,i,a,e[13],2850285829,5),a=l(a,n,r,i,e[2],4243563512,9),i=l(i,a,n,r,e[7],1735328473,14),n=A(n,r=l(r,i,a,n,e[12],2368359562,20),i,a,e[5],4294588738,4),a=A(a,n,r,i,e[8],2272392833,11),i=A(i,a,n,r,e[11],1839030562,16),r=A(r,i,a,n,e[14],4259657740,23),n=A(n,r,i,a,e[1],2763975236,4),a=A(a,n,r,i,e[4],1272893353,11),i=A(i,a,n,r,e[7],4139469664,16),r=A(r,i,a,n,e[10],3200236656,23),n=A(n,r,i,a,e[13],681279174,4),a=A(a,n,r,i,e[0],3936430074,11),i=A(i,a,n,r,e[3],3572445317,16),r=A(r,i,a,n,e[6],76029189,23),n=A(n,r,i,a,e[9],3654602809,4),a=A(a,n,r,i,e[12],3873151461,11),i=A(i,a,n,r,e[15],530742520,16),n=f(n,r=A(r,i,a,n,e[2],3299628645,23),i,a,e[0],4096336452,6),a=f(a,n,r,i,e[7],1126891415,10),i=f(i,a,n,r,e[14],2878612391,15),r=f(r,i,a,n,e[5],4237533241,21),n=f(n,r,i,a,e[12],1700485571,6),a=f(a,n,r,i,e[3],2399980690,10),i=f(i,a,n,r,e[10],4293915773,15),r=f(r,i,a,n,e[1],2240044497,21),n=f(n,r,i,a,e[8],1873313359,6),a=f(a,n,r,i,e[15],4264355552,10),i=f(i,a,n,r,e[6],2734768916,15),r=f(r,i,a,n,e[13],1309151649,21),n=f(n,r,i,a,e[4],4149444226,6),a=f(a,n,r,i,e[11],3174756917,10),i=f(i,a,n,r,e[2],718787259,15),r=f(r,i,a,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+i|0,this._d=this._d+a|0},s.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=a.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=s},function(e,t,n){e.exports=i;var r=n(28).EventEmitter;function i(){r.call(this)}n(1)(i,r),i.Readable=n(29),i.Writable=n(96),i.Duplex=n(97),i.Transform=n(98),i.PassThrough=n(99),i.Stream=i,i.prototype.pipe=function(e,t){var n=this;function i(t){e.writable&&!1===e.write(t)&&n.pause&&n.pause()}function a(){n.readable&&n.resume&&n.resume()}n.on("data",i),e.on("drain",a),e._isStdio||t&&!1===t.end||(n.on("end",s),n.on("close",c));var o=!1;function s(){o||(o=!0,e.end())}function c(){o||(o=!0,"function"==typeof e.destroy&&e.destroy())}function u(e){if(l(),0===r.listenerCount(this,"error"))throw e}function l(){n.removeListener("data",i),e.removeListener("drain",a),n.removeListener("end",s),n.removeListener("close",c),n.removeListener("error",u),e.removeListener("error",u),n.removeListener("end",l),n.removeListener("close",l),e.removeListener("close",l)}return n.on("error",u),e.on("error",u),n.on("end",l),n.on("close",l),e.on("close",l),e.emit("pipe",n),e}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i,a="object"===("undefined"==typeof Reflect?"undefined":r(Reflect))?Reflect:null,o=a&&"function"==typeof a.apply?a.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};i=a&&"function"==typeof a.ownKeys?a.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var s=Number.isNaN||function(e){return e!=e};function c(){c.init.call(this)}e.exports=c,c.EventEmitter=c,c.prototype._events=void 0,c.prototype._eventsCount=0,c.prototype._maxListeners=void 0;var u=10;function l(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+r(e))}function A(e){return void 0===e._maxListeners?c.defaultMaxListeners:e._maxListeners}function f(e,t,n,r){var i,a,o,s;if(l(n),void 0===(a=e._events)?(a=e._events=Object.create(null),e._eventsCount=0):(void 0!==a.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),a=e._events),o=a[t]),void 0===o)o=a[t]=n,++e._eventsCount;else if("function"==typeof o?o=a[t]=r?[n,o]:[o,n]:r?o.unshift(n):o.push(n),(i=A(e))>0&&o.length>i&&!o.warned){o.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=o.length,s=c,console&&console.warn&&console.warn(s)}return e}function h(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=h.bind(r);return i.listener=n,r.wrapFn=i,i}function d(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"==typeof i?n?[i.listener||i]:[i]:n?function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(i):y(i,i.length)}function g(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"==typeof n)return 1;if(void 0!==n)return n.length}return 0}function y(e,t){for(var n=new Array(t),r=0;r<t;++r)n[r]=e[r];return n}Object.defineProperty(c,"defaultMaxListeners",{enumerable:!0,get:function(){return u},set:function(e){if("number"!=typeof e||e<0||s(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");u=e}}),c.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},c.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||s(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},c.prototype.getMaxListeners=function(){return A(this)},c.prototype.emit=function(e){for(var t=[],n=1;n<arguments.length;n++)t.push(arguments[n]);var r="error"===e,i=this._events;if(void 0!==i)r=r&&void 0===i.error;else if(!r)return!1;if(r){var a;if(t.length>0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var c=i[e];if(void 0===c)return!1;if("function"==typeof c)o(c,this,t);else{var u=c.length,l=y(c,u);for(n=0;n<u;++n)o(l[n],this,t)}return!0},c.prototype.addListener=function(e,t){return f(this,e,t,!1)},c.prototype.on=c.prototype.addListener,c.prototype.prependListener=function(e,t){return f(this,e,t,!0)},c.prototype.once=function(e,t){return l(t),this.on(e,p(this,e,t)),this},c.prototype.prependOnceListener=function(e,t){return l(t),this.prependListener(e,p(this,e,t)),this},c.prototype.removeListener=function(e,t){var n,r,i,a,o;if(l(t),void 0===(r=this._events))return this;if(void 0===(n=r[e]))return this;if(n===t||n.listener===t)0==--this._eventsCount?this._events=Object.create(null):(delete r[e],r.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(i=-1,a=n.length-1;a>=0;a--)if(n[a]===t||n[a].listener===t){o=n[a].listener,i=a;break}if(i<0)return this;0===i?n.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(n,i),1===n.length&&(r[e]=n[0]),void 0!==r.removeListener&&this.emit("removeListener",e,o||t)}return this},c.prototype.off=c.prototype.removeListener,c.prototype.removeAllListeners=function(e){var t,n,r;if(void 0===(n=this._events))return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0==--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var i,a=Object.keys(n);for(r=0;r<a.length;++r)"removeListener"!==(i=a[r])&&this.removeAllListeners(i);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(void 0!==t)for(r=t.length-1;r>=0;r--)this.removeListener(e,t[r]);return this},c.prototype.listeners=function(e){return d(this,e,!0)},c.prototype.rawListeners=function(e){return d(this,e,!1)},c.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):g.call(e,t)},c.prototype.listenerCount=g,c.prototype.eventNames=function(){return this._eventsCount>0?i(this._events):[]}},function(e,t,n){(t=e.exports=n(48)).Stream=t,t.Readable=t,t.Writable=n(30),t.Duplex=n(12),t.Transform=n(51),t.PassThrough=n(95)},function(e,t,n){"use strict";(function(t,r,i){var a=n(21);function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;for(e.entry=null;r;){var i=r.callback;t.pendingcb--,i(void 0),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=v;var s,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:a.nextTick;v.WritableState=y;var u=Object.create(n(16));u.inherits=n(1);var l,A={deprecate:n(94)},f=n(49),h=n(2).Buffer,p=i.Uint8Array||function(){},d=n(50);function g(){}function y(e,t){s=s||n(12),e=e||{};var r=t instanceof s;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,u=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(u||0===u)?u:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var A=!1===e.decodeStrings;this.decodeStrings=!A,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,i=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?(a.nextTick(i,r),a.nextTick(B,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(i(r),e._writableState.errorEmitted=!0,e.emit("error",r),B(e,t))}(e,n,r,t,i);else{var o=w(n);o||n.corked||n.bufferProcessing||!n.bufferedRequest||I(e,n),r?c(b,e,n,o,i):b(e,n,o,i)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function v(e){if(s=s||n(12),!(l.call(v,this)||this instanceof s))return new v(e);this._writableState=new y(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),f.call(this)}function m(e,t,n,r,i,a,o){t.writelen=r,t.writecb=o,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function b(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),B(e,t)}function I(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),a=t.corkedRequestsFree;a.entry=n;for(var s=0,c=!0;n;)i[s]=n,n.isBuf||(c=!1),n=n.next,s+=1;i.allBuffers=c,m(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;n;){var u=n.chunk,l=n.encoding,A=n.callback;if(m(e,t,!1,t.objectMode?1:u.length,u,l,A),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function w(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function C(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),B(e,t)}))}function B(e,t){var n=w(t);return n&&(function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,a.nextTick(C,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}u.inherits(v,f),y.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(y.prototype,"buffer",{get:A.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(l=Function.prototype[Symbol.hasInstance],Object.defineProperty(v,Symbol.hasInstance,{value:function(e){return!!l.call(this,e)||this===v&&e&&e._writableState instanceof y}})):l=function(e){return e instanceof this},v.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},v.prototype.write=function(e,t,n){var r,i=this._writableState,o=!1,s=!i.objectMode&&(r=e,h.isBuffer(r)||r instanceof p);return s&&!h.isBuffer(e)&&(e=function(e){return h.from(e)}(e)),"function"==typeof t&&(n=t,t=null),s?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof n&&(n=g),i.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),a.nextTick(t,n)}(this,n):(s||function(e,t,n,r){var i=!0,o=!1;return null===n?o=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),a.nextTick(r,o),i=!1),i}(this,i,e,n))&&(i.pendingcb++,o=function(e,t,n,r,i,a){if(!n){var o=function(e,t,n){return e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=h.from(t,n)),t}(t,r,i);r!==o&&(n=!0,i="buffer",r=o)}var s=t.objectMode?1:r.length;t.length+=s;var c=t.length<t.highWaterMark;if(c||(t.needDrain=!0),t.writing||t.corked){var u=t.lastBufferedRequest;t.lastBufferedRequest={chunk:r,encoding:i,isBuf:n,callback:a,next:null},u?u.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else m(e,t,!1,s,r,i,a);return c}(this,i,s,e,t,n)),o},v.prototype.cork=function(){this._writableState.corked++},v.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.finished||e.bufferProcessing||!e.bufferedRequest||I(this,e))},v.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(v.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),v.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},v.prototype._writev=null,v.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,B(e,t),n&&(t.finished?a.nextTick(n):e.once("finish",n)),t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(v.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),v.prototype.destroy=d.destroy,v.prototype._undestroy=d.undestroy,v.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(9),n(92).setImmediate,n(8))},function(e,t,n){"use strict";var r=n(2).Buffer,i=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=u,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=l,this.end=A,t=3;break;default:return this.write=f,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function o(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"<22>";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"<22>";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"<22>"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function A(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function f(e){return e.toString(this.encoding)}function h(e){return e&&e.length?this.write(e):""}t.StringDecoder=a,a.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n<e.length?t?t+this.text(e,n):this.text(e,n):t||""},a.prototype.end=function(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"<22>":t},a.prototype.text=function(e,t){var n=function(e,t,n){var r=t.length-1;if(r<n)return 0;var i=o(t[r]);return i>=0?(i>0&&(e.lastNeed=i-1),i):--r<n||-2===i?0:(i=o(t[r]))>=0?(i>0&&(e.lastNeed=i-2),i):--r<n||-2===i?0:(i=o(t[r]))>=0?(i>0&&(2===i?i=0:e.lastNeed=i-3),i):0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,n){"use strict";var r=n(3).Buffer,i=n(1),a=n(47),o=new Array(16),s=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],u=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],l=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],A=[0,1518500249,1859775393,2400959708,2840853838],f=[1352829926,1548603684,1836072691,2053994217,0];function h(){a.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<<t|e>>>32-t}function d(e,t,n,r,i,a,o,s){return p(e+(t^n^r)+a+o|0,s)+i|0}function g(e,t,n,r,i,a,o,s){return p(e+(t&n|~t&r)+a+o|0,s)+i|0}function y(e,t,n,r,i,a,o,s){return p(e+((t|~n)^r)+a+o|0,s)+i|0}function v(e,t,n,r,i,a,o,s){return p(e+(t&r|n&~r)+a+o|0,s)+i|0}function m(e,t,n,r,i,a,o,s){return p(e+(t^(n|~r))+a+o|0,s)+i|0}i(h,a),h.prototype._update=function(){for(var e=o,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,i=0|this._c,a=0|this._d,h=0|this._e,b=0|this._a,I=0|this._b,w=0|this._c,C=0|this._d,B=0|this._e,E=0;E<80;E+=1){var _,k;E<16?(_=d(n,r,i,a,h,e[s[E]],A[0],u[E]),k=m(b,I,w,C,B,e[c[E]],f[0],l[E])):E<32?(_=g(n,r,i,a,h,e[s[E]],A[1],u[E]),k=v(b,I,w,C,B,e[c[E]],f[1],l[E])):E<48?(_=y(n,r,i,a,h,e[s[E]],A[2],u[E]),k=y(b,I,w,C,B,e[c[E]],f[2],l[E])):E<64?(_=v(n,r,i,a,h,e[s[E]],A[3],u[E]),k=g(b,I,w,C,B,e[c[E]],f[3],l[E])):(_=m(n,r,i,a,h,e[s[E]],A[4],u[E]),k=d(b,I,w,C,B,e[c[E]],f[4],l[E])),n=h,h=a,a=p(i,10),i=r,r=_,b=B,B=C,C=p(w,10),w=I,I=k}var Q=this._b+i+C|0;this._b=this._c+a+B|0,this._c=this._d+h+b|0,this._d=this._e+n+I|0,this._e=this._a+r+w|0,this._a=Q},h.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=r.alloc?r.alloc(20):new r(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=h},function(e,t,n){(t=e.exports=function(e){e=e.toLowerCase();var n=t[e];if(!n)throw new Error(e+" is not supported (we accept pull requests)");return new n}).sha=n(100),t.sha1=n(101),t.sha224=n(102),t.sha256=n(52),t.sha384=n(103),t.sha512=n(53)},function(e,t,n){"use strict";var r=n(6);function i(e){this.options=e,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}e.exports=i,i.prototype._init=function(){},i.prototype.update=function(e){return 0===e.length?[]:"decrypt"===this.type?this._updateDecrypt(e):this._updateEncrypt(e)},i.prototype._buffer=function(e,t){for(var n=Math.min(this.buffer.length-this.bufferOff,e.length-t),r=0;r<n;r++)this.buffer[this.bufferOff+r]=e[t+r];return this.bufferOff+=n,n},i.prototype._flushBuffer=function(e,t){return this._update(this.buffer,0,e,t),this.bufferOff=0,this.blockSize},i.prototype._updateEncrypt=function(e){var t=0,n=0,r=(this.bufferOff+e.length)/this.blockSize|0,i=new Array(r*this.blockSize);0!==this.bufferOff&&(t+=this._buffer(e,t),this.bufferOff===this.buffer.length&&(n+=this._flushBuffer(i,n)));for(var a=e.length-(e.length-t)%this.blockSize;t<a;t+=this.blockSize)this._update(e,t,i,n),n+=this.blockSize;for(;t<e.length;t++,this.bufferOff++)this.buffer[this.bufferOff]=e[t];return i},i.prototype._updateDecrypt=function(e){for(var t=0,n=0,r=Math.ceil((this.bufferOff+e.length)/this.blockSize)-1,i=new Array(r*this.blockSize);r>0;r--)t+=this._buffer(e,t),n+=this._flushBuffer(i,n);return t+=this._buffer(e,t),i},i.prototype.final=function(e){var t,n;return e&&(t=this.update(e)),n="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(n):n},i.prototype._pad=function(e,t){if(0===t)return!1;for(;t<e.length;)e[t++]=0;return!0},i.prototype._finalEncrypt=function(){if(!this._pad(this.buffer,this.bufferOff))return[];var e=new Array(this.blockSize);return this._update(this.buffer,0,e,0),e},i.prototype._unpad=function(e){return e},i.prototype._finalDecrypt=function(){r.equal(this.bufferOff,this.blockSize,"Not enough data to decrypt");var e=new Array(this.blockSize);return this._flushBuffer(e,0),this._unpad(e)}},function(e,t,n){var r=n(112),i=n(120),a=n(65);t.createCipher=t.Cipher=r.createCipher,t.createCipheriv=t.Cipheriv=r.createCipheriv,t.createDecipher=t.Decipher=i.createDecipher,t.createDecipheriv=t.Decipheriv=i.createDecipheriv,t.listCiphers=t.getCiphers=function(){return Object.keys(a)}},function(e,t,n){var r={ECB:n(113),CBC:n(114),CFB:n(115),CFB8:n(116),CFB1:n(117),OFB:n(118),CTR:n(63),GCM:n(63)},i=n(65);for(var a in i)i[a].module=r[i[a].mode];e.exports=i},function(e,t,n){function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i;function a(e){this.rand=e}if(e.exports=function(e){return i||(i=new a(null)),i.generate(e)},e.exports.Rand=a,a.prototype.generate=function(e){return this._rand(e)},a.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),n=0;n<t.length;n++)t[n]=this.rand.getByte();return t},"object"===("undefined"==typeof self?"undefined":r(self)))self.crypto&&self.crypto.getRandomValues?a.prototype._rand=function(e){var t=new Uint8Array(e);return self.crypto.getRandomValues(t),t}:self.msCrypto&&self.msCrypto.getRandomValues?a.prototype._rand=function(e){var t=new Uint8Array(e);return self.msCrypto.getRandomValues(t),t}:"object"===("undefined"==typeof window?"undefined":r(window))&&(a.prototype._rand=function(){throw new Error("Not implemented yet")});else try{var o=n(124);if("function"!=typeof o.randomBytes)throw new Error("Not supported");a.prototype._rand=function(e){return o.randomBytes(e)}}catch(e){}},function(e,t,n){(function(t){var r=n(4),i=n(13);function a(e,n){var i=function(e){var t=o(e);return{blinder:t.toRed(r.mont(e.modulus)).redPow(new r(e.publicExponent)).fromRed(),unblinder:t.invm(e.modulus)}}(n),a=n.modulus.byteLength(),s=(r.mont(n.modulus),new r(e).mul(i.blinder).umod(n.modulus)),c=s.toRed(r.mont(n.prime1)),u=s.toRed(r.mont(n.prime2)),l=n.coefficient,A=n.prime1,f=n.prime2,h=c.redPow(n.exponent1),p=u.redPow(n.exponent2);h=h.fromRed(),p=p.fromRed();var d=h.isub(p).imul(l).umod(A);return d.imul(f),p.iadd(d),new t(p.imul(i.unblinder).umod(n.modulus).toArray(!1,a))}function o(e){for(var t=e.modulus.byteLength(),n=new r(i(t));n.cmp(e.modulus)>=0||!n.umod(e.prime1)||!n.umod(e.prime2);)n=new r(i(t));return n}e.exports=a,a.getr=o}).call(this,n(3).Buffer)},function(e,t,n){"use strict";var r=t;r.version=n(129).version,r.utils=n(7),r.rand=n(37),r.curve=n(71),r.curves=n(40),r.ec=n(140),r.eddsa=n(144)},function(e,t,n){"use strict";var r,i=t,a=n(41),o=n(71),s=n(7).assert;function c(e){"short"===e.type?this.curve=new o.short(e):"edwards"===e.type?this.curve=new o.edwards(e):this.curve=new o.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function u(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var n=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=c,u("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:a.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),u("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:a.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),u("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:a.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),u("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:a.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),u("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:a.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),u("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["9"]}),u("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:a.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(139)}catch(e){r=void 0}u("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:a.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(e,t,n){var r=t;r.utils=n(10),r.common=n(18),r.sha=n(133),r.ripemd=n(137),r.hmac=n(138),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t){},function(e,t,n){(function(e){function n(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r<e.length;r++)t(e[r],r,e)&&n.push(e[r]);return n}t.resolve=function(){for(var t="",i=!1,a=arguments.length-1;a>=-1&&!i;a--){var o=a>=0?arguments[a]:e.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");o&&(t=o+"/"+t,i="/"===o.charAt(0))}return(i?"/":"")+(t=n(r(t.split("/"),(function(e){return!!e})),!i).join("/"))||"."},t.normalize=function(e){var a=t.isAbsolute(e),o="/"===i(e,-1);return(e=n(r(e.split("/"),(function(e){return!!e})),!a).join("/"))||a||(e="."),e&&o&&(e+="/"),(a?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(r(e,(function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e})).join("/"))},t.relative=function(e,n){function r(e){for(var t=0;t<e.length&&""===e[t];t++);for(var n=e.length-1;n>=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=t.resolve(e).substr(1),n=t.resolve(n).substr(1);for(var i=r(e.split("/")),a=r(n.split("/")),o=Math.min(i.length,a.length),s=o,c=0;c<o;c++)if(i[c]!==a[c]){s=c;break}var u=[];for(c=s;c<i.length;c++)u.push("..");return(u=u.concat(a.slice(s))).join("/")},t.sep="/",t.delimiter=":",t.dirname=function(e){if("string"!=typeof e&&(e+=""),0===e.length)return".";for(var t=e.charCodeAt(0),n=47===t,r=-1,i=!0,a=e.length-1;a>=1;--a)if(47===(t=e.charCodeAt(a))){if(!i){r=a;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":e.slice(0,r)},t.basename=function(e,t){var n=function(e){"string"!=typeof e&&(e+="");var t,n=0,r=-1,i=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!i){n=t+1;break}}else-1===r&&(i=!1,r=t+1);return-1===r?"":e.slice(n,r)}(e);return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},t.extname=function(e){"string"!=typeof e&&(e+="");for(var t=-1,n=0,r=-1,i=!0,a=0,o=e.length-1;o>=0;--o){var s=e.charCodeAt(o);if(47!==s)-1===r&&(i=!1,r=o+1),46===s?-1===t?t=o:1!==a&&(a=1):-1!==t&&(a=-1);else if(!i){n=o+1;break}}return-1===t||-1===r||0===a||1===a&&t===r-1&&t===n+1?"":e.slice(t,r)};var i="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,n(9))},function(e,t,n){"use strict";t.randomBytes=t.rng=t.pseudoRandomBytes=t.prng=n(13),t.createHash=t.Hash=n(15),t.createHmac=t.Hmac=n(54);var r=n(105),i=Object.keys(r),a=["sha1","sha224","sha256","sha384","sha512","md5","rmd160"].concat(i);t.getHashes=function(){return a};var o=n(57);t.pbkdf2=o.pbkdf2,t.pbkdf2Sync=o.pbkdf2Sync;var s=n(107);t.Cipher=s.Cipher,t.createCipher=s.createCipher,t.Cipheriv=s.Cipheriv,t.createCipheriv=s.createCipheriv,t.Decipher=s.Decipher,t.createDecipher=s.createDecipher,t.Decipheriv=s.Decipheriv,t.createDecipheriv=s.createDecipheriv,t.getCiphers=s.getCiphers,t.listCiphers=s.listCiphers;var c=n(122);t.DiffieHellmanGroup=c.DiffieHellmanGroup,t.createDiffieHellmanGroup=c.createDiffieHellmanGroup,t.getDiffieHellman=c.getDiffieHellman,t.createDiffieHellman=c.createDiffieHellman,t.DiffieHellman=c.DiffieHellman;var u=n(127);t.createSign=u.createSign,t.Sign=u.Sign,t.createVerify=u.createVerify,t.Verify=u.Verify,t.createECDH=n(161);var l=n(162);t.publicEncrypt=l.publicEncrypt,t.privateEncrypt=l.privateEncrypt,t.publicDecrypt=l.publicDecrypt,t.privateDecrypt=l.privateDecrypt;var A=n(165);t.randomFill=A.randomFill,t.randomFillSync=A.randomFillSync,t.createCredentials=function(){throw new Error(["sorry, createCredentials is not implemented yet","we accept pull requests","https://github.com/crypto-browserify/crypto-browserify"].join("\n"))},t.constants={DH_CHECK_P_NOT_SAFE_PRIME:2,DH_CHECK_P_NOT_PRIME:1,DH_UNABLE_TO_CHECK_GENERATOR:4,DH_NOT_SUITABLE_GENERATOR:8,NPN_ENABLED:1,ALPN_ENABLED:1,RSA_PKCS1_PADDING:1,RSA_SSLV23_PADDING:2,RSA_NO_PADDING:3,RSA_PKCS1_OAEP_PADDING:4,RSA_X931_PADDING:5,RSA_PKCS1_PSS_PADDING:6,POINT_CONVERSION_COMPRESSED:2,POINT_CONVERSION_UNCOMPRESSED:4,POINT_CONVERSION_HYBRID:6}},function(e,t,n){"use strict";var r=n(2).Buffer,i=n(27).Transform;function a(e){i.call(this),this._block=r.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}n(1)(a,i),a.prototype._transform=function(e,t,n){var r=null;try{this.update(e,t)}catch(e){r=e}n(r)},a.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(e){t=e}e(t)},a.prototype.update=function(e,t){if(function(e,t){if(!r.isBuffer(e)&&"string"!=typeof e)throw new TypeError("Data must be a string or a buffer")}(e),this._finalized)throw new Error("Digest already called");r.isBuffer(e)||(e=r.from(e,t));for(var n=this._block,i=0;this._blockOffset+e.length-i>=this._blockSize;){for(var a=this._blockOffset;a<this._blockSize;)n[a++]=e[i++];this._update(),this._blockOffset=0}for(;i<e.length;)n[this._blockOffset++]=e[i++];for(var o=0,s=8*e.length;s>0;++o)this._length[o]+=s,(s=this._length[o]/4294967296|0)>0&&(this._length[o]-=4294967296*s);return this},a.prototype._update=function(){throw new Error("_update is not implemented")},a.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var n=0;n<4;++n)this._length[n]=0;return t},a.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=a},function(e,t,n){"use strict";(function(t,r){var i=n(21);e.exports=m;var a,o=n(43);m.ReadableState=v,n(28).EventEmitter;var s=function(e,t){return e.listeners(t).length},c=n(49),u=n(2).Buffer,l=t.Uint8Array||function(){},A=Object.create(n(16));A.inherits=n(1);var f=n(89),h=void 0;h=f&&f.debuglog?f.debuglog("stream"):function(){};var p,d=n(90),g=n(50);A.inherits(m,c);var y=["error","close","destroy","pause","resume"];function v(e,t){e=e||{};var r=t instanceof(a=a||n(12));this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new d,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(p||(p=n(31).StringDecoder),this.decoder=new p(e.encoding),this.encoding=e.encoding)}function m(e){if(a=a||n(12),!(this instanceof m))return new m(e);this._readableState=new v(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),c.call(this)}function b(e,t,n,r,i){var a,o=e._readableState;return null===t?(o.reading=!1,function(e,t){if(!t.ended){if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,C(e)}}(e,o)):(i||(a=function(e,t){var n,r;return r=t,u.isBuffer(r)||r instanceof l||"string"==typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk")),n}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===u.prototype||(t=function(e){return u.from(e)}(t)),r?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):I(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!n?(t=o.decoder.write(t),o.objectMode||0!==t.length?I(e,o,t,!1):E(e,o)):I(e,o,t,!1))):r||(o.reading=!1)),function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function I(e,t,n,r){t.flowing&&0===t.length&&!t.sync?(e.emit("data",n),e.read(0)):(t.length+=t.objectMode?1:n.length,r?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&C(e)),E(e,t)}function w(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function C(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(h("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(B,e):B(e))}function B(e){h("emit readable"),e.emit("readable"),S(e)}function E(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(_,e,t))}function _(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(h("maybeReadMore read 0"),e.read(0),n!==t.length);)n=t.length;t.readingMore=!1}function k(e){h("readable nexttick read 0"),e.read(0)}function Q(e,t){t.reading||(h("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),S(e),t.flowing&&!t.reading&&e.read(0)}function S(e){var t=e._readableState;for(h("flow",t.flowing);t.flowing&&null!==e.read(););}function x(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;return e<t.head.data.length?(r=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):r=e===t.head.data.length?t.shift():n?function(e,t){var n=t.head,r=1,i=n.data;for(e-=i.length;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0==(e-=o)){o===a.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=u.allocUnsafe(e),r=t.head,i=1;for(r.data.copy(n),e-=r.data.length;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(a.copy(n,n.length-e,0,o),0==(e-=o)){o===a.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++i}return t.length-=i,n}(e,t),r}(e,t.buffer,t.decoder),n);var n}function D(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(P,t,e))}function P(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function M(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1}Object.defineProperty(m.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),m.prototype.destroy=g.destroy,m.prototype._undestroy=g.undestroy,m.prototype._destroy=function(e,t){this.push(null),t(e)},m.prototype.push=function(e,t){var n,r=this._readableState;return r.objectMode?n=!0:"string"==typeof e&&((t=t||r.defaultEncoding)!==r.encoding&&(e=u.from(e,t),t=""),n=!0),b(this,e,t,!1,n)},m.prototype.unshift=function(e){return b(this,e,null,!0,!1)},m.prototype.isPaused=function(){return!1===this._readableState.flowing},m.prototype.setEncoding=function(e){return p||(p=n(31).StringDecoder),this._readableState.decoder=new p(e),this._readableState.encoding=e,this},m.prototype.read=function(e){h("read",e),e=parseInt(e,10);var t=this._readableState,n=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return h("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?D(this):C(this),null;if(0===(e=w(e,t))&&t.ended)return 0===t.length&&D(this),null;var r,i=t.needReadable;return h("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&h("length less than watermark",i=!0),t.ended||t.reading?h("reading or ended",i=!1):i&&(h("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=w(n,t))),null===(r=e>0?x(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&D(this)),null!==r&&this.emit("data",r),r},m.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},m.prototype.pipe=function(e,t){var n=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=e;break;case 1:a.pipes=[a.pipes,e];break;default:a.pipes.push(e)}a.pipesCount+=1,h("pipe count=%d opts=%j",a.pipesCount,t);var c=t&&!1===t.end||e===r.stdout||e===r.stderr?v:u;function u(){h("onend"),e.end()}a.endEmitted?i.nextTick(c):n.once("end",c),e.on("unpipe",(function t(r,i){h("onunpipe"),r===n&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,h("cleanup"),e.removeListener("close",g),e.removeListener("finish",y),e.removeListener("drain",l),e.removeListener("error",d),e.removeListener("unpipe",t),n.removeListener("end",u),n.removeListener("end",v),n.removeListener("data",p),A=!0,!a.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}));var l=function(e){return function(){var t=e._readableState;h("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&s(e,"data")&&(t.flowing=!0,S(e))}}(n);e.on("drain",l);var A=!1,f=!1;function p(t){h("ondata"),f=!1,!1!==e.write(t)||f||((1===a.pipesCount&&a.pipes===e||a.pipesCount>1&&-1!==M(a.pipes,e))&&!A&&(h("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,f=!0),n.pause())}function d(t){h("onerror",t),v(),e.removeListener("error",d),0===s(e,"error")&&e.emit("error",t)}function g(){e.removeListener("finish",y),v()}function y(){h("onfinish"),e.removeListener("close",g),v()}function v(){h("unpipe"),n.unpipe(e)}return n.on("data",p),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?o(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",d),e.once("close",g),e.once("finish",y),e.emit("pipe",n),a.flowing||(h("pipe resume"),n.resume()),e},m.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)r[a].emit("unpipe",this,n);return this}var o=M(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,n)),this},m.prototype.on=function(e,t){var n=c.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var r=this._readableState;r.endEmitted||r.readableListening||(r.readableListening=r.needReadable=!0,r.emittedReadable=!1,r.reading?r.length&&C(this):i.nextTick(k,this))}return n},m.prototype.addListener=m.prototype.on,m.prototype.resume=function(){var e=this._readableState;return e.flowing||(h("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,i.nextTick(Q,e,t))}(this,e)),this},m.prototype.pause=function(){return h("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(h("pause"),this._readableState.flowing=!1,this.emit("pause")),this},m.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var i in e.on("end",(function(){if(h("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){h("wrapped data"),n.decoder&&(i=n.decoder.write(i)),n.objectMode&&null==i||(n.objectMode||i&&i.length)&&(t.push(i)||(r=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<y.length;a++)e.on(y[a],this.emit.bind(this,y[a]));return this._read=function(t){h("wrapped _read",t),r&&(r=!1,e.resume())},this},Object.defineProperty(m.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),m._fromList=x}).call(this,n(8),n(9))},function(e,t,n){e.exports=n(28).EventEmitter},function(e,t,n){"use strict";var r=n(21);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var n=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):!e||this._writableState&&this._writableState.errorEmitted||r.nextTick(i,this,e),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?(r.nextTick(i,n,e),n._writableState&&(n._writableState.errorEmitted=!0)):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},function(e,t,n){"use strict";e.exports=o;var r=n(12),i=Object.create(n(16));function a(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(!r)return this.emit("error",new Error("write callback called multiple times"));n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);r.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,n){c(e,t,n)})):c(this,null,null)}function c(e,t,n){if(t)return e.emit("error",t);if(null!=n&&e.push(n),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=n(1),i.inherits(o,r),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,r.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,n){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,n){var r=this._transformState;if(r.writecb=n,r.writechunk=e,r.writeencoding=t,!r.transforming){var i=this._readableState;(r.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var n=this;r.prototype._destroy.call(this,e,(function(e){t(e),n.emit("close")}))}},function(e,t,n){var r=n(1),i=n(14),a=n(2).Buffer,o=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],s=new Array(64);function c(){this.init(),this._w=s,i.call(this,64,56)}function u(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function A(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function f(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function h(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(c,i),c.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,a=0|this._c,s=0|this._d,c=0|this._e,p=0|this._f,d=0|this._g,g=0|this._h,y=0;y<16;++y)n[y]=e.readInt32BE(4*y);for(;y<64;++y)n[y]=0|(((t=n[y-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[y-7]+h(n[y-15])+n[y-16];for(var v=0;v<64;++v){var m=g+f(c)+u(c,p,d)+o[v]+n[v]|0,b=A(r)+l(r,i,a)|0;g=d,d=p,p=c,c=s+m|0,s=a,a=i,i=r,r=m+b|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=a+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0,this._f=p+this._f|0,this._g=d+this._g|0,this._h=g+this._h|0},c.prototype._hash=function(){var e=a.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},function(e,t,n){var r=n(1),i=n(14),a=n(2).Buffer,o=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],s=new Array(160);function c(){this.init(),this._w=s,i.call(this,128,112)}function u(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function A(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function f(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function h(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function d(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function g(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function y(e,t){return e>>>0<t>>>0?1:0}r(c,i),c.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},c.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,i=0|this._ch,a=0|this._dh,s=0|this._eh,c=0|this._fh,v=0|this._gh,m=0|this._hh,b=0|this._al,I=0|this._bl,w=0|this._cl,C=0|this._dl,B=0|this._el,E=0|this._fl,_=0|this._gl,k=0|this._hl,Q=0;Q<32;Q+=2)t[Q]=e.readInt32BE(4*Q),t[Q+1]=e.readInt32BE(4*Q+4);for(;Q<160;Q+=2){var S=t[Q-30],x=t[Q-30+1],D=h(S,x),P=p(x,S),M=d(S=t[Q-4],x=t[Q-4+1]),F=g(x,S),O=t[Q-14],R=t[Q-14+1],T=t[Q-32],j=t[Q-32+1],H=P+R|0,U=D+O+y(H,P)|0;U=(U=U+M+y(H=H+F|0,F)|0)+T+y(H=H+j|0,j)|0,t[Q]=U,t[Q+1]=H}for(var N=0;N<160;N+=2){U=t[N],H=t[N+1];var L=l(n,r,i),K=l(b,I,w),G=A(n,b),$=A(b,n),Y=f(s,B),J=f(B,s),V=o[N],z=o[N+1],q=u(s,c,v),W=u(B,E,_),X=k+J|0,Z=m+Y+y(X,k)|0;Z=(Z=(Z=Z+q+y(X=X+W|0,W)|0)+V+y(X=X+z|0,z)|0)+U+y(X=X+H|0,H)|0;var ee=$+K|0,te=G+L+y(ee,$)|0;m=v,k=_,v=c,_=E,c=s,E=B,s=a+Z+y(B=C+X|0,C)|0,a=i,C=w,i=r,w=I,r=n,I=b,n=Z+te+y(b=X+ee|0,X)|0}this._al=this._al+b|0,this._bl=this._bl+I|0,this._cl=this._cl+w|0,this._dl=this._dl+C|0,this._el=this._el+B|0,this._fl=this._fl+E|0,this._gl=this._gl+_|0,this._hl=this._hl+k|0,this._ah=this._ah+n+y(this._al,b)|0,this._bh=this._bh+r+y(this._bl,I)|0,this._ch=this._ch+i+y(this._cl,w)|0,this._dh=this._dh+a+y(this._dl,C)|0,this._eh=this._eh+s+y(this._el,B)|0,this._fh=this._fh+c+y(this._fl,E)|0,this._gh=this._gh+v+y(this._gl,_)|0,this._hh=this._hh+m+y(this._hl,k)|0},c.prototype._hash=function(){var e=a.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},function(e,t,n){"use strict";var r=n(1),i=n(104),a=n(11),o=n(2).Buffer,s=n(55),c=n(32),u=n(33),l=o.alloc(128);function A(e,t){a.call(this,"digest"),"string"==typeof t&&(t=o.from(t));var n="sha512"===e||"sha384"===e?128:64;this._alg=e,this._key=t,t.length>n?t=("rmd160"===e?new c:u(e)).update(t).digest():t.length<n&&(t=o.concat([t,l],n));for(var r=this._ipad=o.allocUnsafe(n),i=this._opad=o.allocUnsafe(n),s=0;s<n;s++)r[s]=54^t[s],i[s]=92^t[s];this._hash="rmd160"===e?new c:u(e),this._hash.update(r)}r(A,a),A.prototype._update=function(e){this._hash.update(e)},A.prototype._final=function(){var e=this._hash.digest();return("rmd160"===this._alg?new c:u(this._alg)).update(this._opad).update(e).digest()},e.exports=function(e,t){return"rmd160"===(e=e.toLowerCase())||"ripemd160"===e?new A("rmd160",t):"md5"===e?new i(s,t):new A(e,t)}},function(e,t,n){var r=n(26);e.exports=function(e){return(new r).update(e).digest()}},function(e){e.exports=JSON.parse('{"sha224WithRSAEncryption":{"sign":"rsa","hash":"sha224","id":"302d300d06096086480165030402040500041c"},"RSA-SHA224":{"sign":"ecdsa/rsa","hash":"sha224","id":"302d300d06096086480165030402040500041c"},"sha256WithRSAEncryption":{"sign":"rsa","hash":"sha256","id":"3031300d060960864801650304020105000420"},"RSA-SHA256":{"sign":"ecdsa/rsa","hash":"sha256","id":"3031300d060960864801650304020105000420"},"sha384WithRSAEncryption":{"sign":"rsa","hash":"sha384","id":"3041300d060960864801650304020205000430"},"RSA-SHA384":{"sign":"ecdsa/rsa","hash":"sha384","id":"3041300d060960864801650304020205000430"},"sha512WithRSAEncryption":{"sign":"rsa","hash":"sha512","id":"3051300d060960864801650304020305000440"},"RSA-SHA512":{"sign":"ecdsa/rsa","hash":"sha512","id":"3051300d060960864801650304020305000440"},"RSA-SHA1":{"sign":"rsa","hash":"sha1","id":"3021300906052b0e03021a05000414"},"ecdsa-with-SHA1":{"sign":"ecdsa","hash":"sha1","id":""},"sha256":{"sign":"ecdsa","hash":"sha256","id":""},"sha224":{"sign":"ecdsa","hash":"sha224","id":""},"sha384":{"sign":"ecdsa","hash":"sha384","id":""},"sha512":{"sign":"ecdsa","hash":"sha512","id":""},"DSA-SHA":{"sign":"dsa","hash":"sha1","id":""},"DSA-SHA1":{"sign":"dsa","hash":"sha1","id":""},"DSA":{"sign":"dsa","hash":"sha1","id":""},"DSA-WITH-SHA224":{"sign":"dsa","hash":"sha224","id":""},"DSA-SHA224":{"sign":"dsa","hash":"sha224","id":""},"DSA-WITH-SHA256":{"sign":"dsa","hash":"sha256","id":""},"DSA-SHA256":{"sign":"dsa","hash":"sha256","id":""},"DSA-WITH-SHA384":{"sign":"dsa","hash":"sha384","id":""},"DSA-SHA384":{"sign":"dsa","hash":"sha384","id":""},"DSA-WITH-SHA512":{"sign":"dsa","hash":"sha512","id":""},"DSA-SHA512":{"sign":"dsa","hash":"sha512","id":""},"DSA-RIPEMD160":{"sign":"dsa","hash":"rmd160","id":""},"ripemd160WithRSA":{"sign":"rsa","hash":"rmd160","id":"3021300906052b2403020105000414"},"RSA-RIPEMD160":{"sign":"rsa","hash":"rmd160","id":"3021300906052b2403020105000414"},"md5WithRSAEncryption":{"sign":"rsa","hash":"md5","id":"3020300c06082a864886f70d020505000410"},"RSA-MD5":{"sign":"rsa","hash":"md5","id":"3020300c06082a864886f70d020505000410"}}')},function(e,t,n){t.pbkdf2=n(106),t.pbkdf2Sync=n(60)},function(e,t,n){(function(t){var n=Math.pow(2,30)-1;function r(e,n){if("string"!=typeof e&&!t.isBuffer(e))throw new TypeError(n+" must be a buffer or string")}e.exports=function(e,t,i,a){if(r(e,"Password"),r(t,"Salt"),"number"!=typeof i)throw new TypeError("Iterations not a number");if(i<0)throw new TypeError("Bad iterations");if("number"!=typeof a)throw new TypeError("Key length not a number");if(a<0||a>n||a!=a)throw new TypeError("Bad key length")}}).call(this,n(3).Buffer)},function(e,t,n){(function(t){var n;n=t.browser||parseInt(t.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary",e.exports=n}).call(this,n(9))},function(e,t,n){var r=n(55),i=n(32),a=n(33),o=n(58),s=n(59),c=n(2).Buffer,u=c.alloc(128),l={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function A(e,t,n){var o=function(e){return"rmd160"===e||"ripemd160"===e?function(e){return(new i).update(e).digest()}:"md5"===e?r:function(t){return a(e).update(t).digest()}}(e),s="sha512"===e||"sha384"===e?128:64;t.length>s?t=o(t):t.length<s&&(t=c.concat([t,u],s));for(var A=c.allocUnsafe(s+l[e]),f=c.allocUnsafe(s+l[e]),h=0;h<s;h++)A[h]=54^t[h],f[h]=92^t[h];var p=c.allocUnsafe(s+n+4);A.copy(p,0,0,s),this.ipad1=p,this.ipad2=A,this.opad=f,this.alg=e,this.blocksize=s,this.hash=o,this.size=l[e]}A.prototype.run=function(e,t){return e.copy(t,this.blocksize),this.hash(t).copy(this.opad,this.blocksize),this.hash(this.opad)},e.exports=function(e,t,n,r,i){o(e,t,n,r),c.isBuffer(e)||(e=c.from(e,s)),c.isBuffer(t)||(t=c.from(t,s));var a=new A(i=i||"sha1",e,t.length),u=c.allocUnsafe(r),f=c.allocUnsafe(t.length+4);t.copy(f,0,0,t.length);for(var h=0,p=l[i],d=Math.ceil(r/p),g=1;g<=d;g++){f.writeUInt32BE(g,t.length);for(var y=a.run(f,a.ipad1),v=y,m=1;m<n;m++){v=a.run(v,a.ipad2);for(var b=0;b<p;b++)y[b]^=v[b]}y.copy(u,h),h+=p}return u}},function(e,t,n){"use strict";t.readUInt32BE=function(e,t){return(e[0+t]<<24|e[1+t]<<16|e[2+t]<<8|e[3+t])>>>0},t.writeUInt32BE=function(e,t,n){e[0+n]=t>>>24,e[1+n]=t>>>16&255,e[2+n]=t>>>8&255,e[3+n]=255&t},t.ip=function(e,t,n,r){for(var i=0,a=0,o=6;o>=0;o-=2){for(var s=0;s<=24;s+=8)i<<=1,i|=t>>>s+o&1;for(s=0;s<=24;s+=8)i<<=1,i|=e>>>s+o&1}for(o=6;o>=0;o-=2){for(s=1;s<=25;s+=8)a<<=1,a|=t>>>s+o&1;for(s=1;s<=25;s+=8)a<<=1,a|=e>>>s+o&1}n[r+0]=i>>>0,n[r+1]=a>>>0},t.rip=function(e,t,n,r){for(var i=0,a=0,o=0;o<4;o++)for(var s=24;s>=0;s-=8)i<<=1,i|=t>>>s+o&1,i<<=1,i|=e>>>s+o&1;for(o=4;o<8;o++)for(s=24;s>=0;s-=8)a<<=1,a|=t>>>s+o&1,a<<=1,a|=e>>>s+o&1;n[r+0]=i>>>0,n[r+1]=a>>>0},t.pc1=function(e,t,n,r){for(var i=0,a=0,o=7;o>=5;o--){for(var s=0;s<=24;s+=8)i<<=1,i|=t>>s+o&1;for(s=0;s<=24;s+=8)i<<=1,i|=e>>s+o&1}for(s=0;s<=24;s+=8)i<<=1,i|=t>>s+o&1;for(o=1;o<=3;o++){for(s=0;s<=24;s+=8)a<<=1,a|=t>>s+o&1;for(s=0;s<=24;s+=8)a<<=1,a|=e>>s+o&1}for(s=0;s<=24;s+=8)a<<=1,a|=e>>s+o&1;n[r+0]=i>>>0,n[r+1]=a>>>0},t.r28shl=function(e,t){return e<<t&268435455|e>>>28-t};var r=[14,11,17,4,27,23,25,0,13,22,7,18,5,9,16,24,2,20,12,21,1,8,15,26,15,4,25,19,9,1,26,16,5,11,23,8,12,7,17,0,22,3,10,14,6,20,27,24];t.pc2=function(e,t,n,i){for(var a=0,o=0,s=r.length>>>1,c=0;c<s;c++)a<<=1,a|=e>>>r[c]&1;for(c=s;c<r.length;c++)o<<=1,o|=t>>>r[c]&1;n[i+0]=a>>>0,n[i+1]=o>>>0},t.expand=function(e,t,n){var r=0,i=0;r=(1&e)<<5|e>>>27;for(var a=23;a>=15;a-=4)r<<=6,r|=e>>>a&63;for(a=11;a>=3;a-=4)i|=e>>>a&63,i<<=6;i|=(31&e)<<1|e>>>31,t[n+0]=r>>>0,t[n+1]=i>>>0};var i=[14,0,4,15,13,7,1,4,2,14,15,2,11,13,8,1,3,10,10,6,6,12,12,11,5,9,9,5,0,3,7,8,4,15,1,12,14,8,8,2,13,4,6,9,2,1,11,7,15,5,12,11,9,3,7,14,3,10,10,0,5,6,0,13,15,3,1,13,8,4,14,7,6,15,11,2,3,8,4,14,9,12,7,0,2,1,13,10,12,6,0,9,5,11,10,5,0,13,14,8,7,10,11,1,10,3,4,15,13,4,1,2,5,11,8,6,12,7,6,12,9,0,3,5,2,14,15,9,10,13,0,7,9,0,14,9,6,3,3,4,15,6,5,10,1,2,13,8,12,5,7,14,11,12,4,11,2,15,8,1,13,1,6,10,4,13,9,0,8,6,15,9,3,8,0,7,11,4,1,15,2,14,12,3,5,11,10,5,14,2,7,12,7,13,13,8,14,11,3,5,0,6,6,15,9,0,10,3,1,4,2,7,8,2,5,12,11,1,12,10,4,14,15,9,10,3,6,15,9,0,0,6,12,10,11,1,7,13,13,8,15,9,1,4,3,5,14,11,5,12,2,7,8,2,4,14,2,14,12,11,4,2,1,12,7,4,10,7,11,13,6,1,8,5,5,0,3,15,15,10,13,3,0,9,14,8,9,6,4,11,2,8,1,12,11,7,10,1,13,14,7,2,8,13,15,6,9,15,12,0,5,9,6,10,3,4,0,5,14,3,12,10,1,15,10,4,15,2,9,7,2,12,6,9,8,5,0,6,13,1,3,13,4,14,14,0,7,11,5,3,11,8,9,4,14,3,15,2,5,12,2,9,8,5,12,15,3,10,7,11,0,14,4,1,10,7,1,6,13,0,11,8,6,13,4,13,11,0,2,11,14,7,15,4,0,9,8,1,13,10,3,14,12,3,9,5,7,12,5,2,10,15,6,8,1,6,1,6,4,11,11,13,13,8,12,1,3,4,7,10,14,7,10,9,15,5,6,0,8,15,0,14,5,2,9,3,2,12,13,1,2,15,8,13,4,8,6,10,15,3,11,7,1,4,10,12,9,5,3,6,14,11,5,0,0,14,12,9,7,2,7,2,11,1,4,14,1,7,9,4,12,10,14,8,2,13,0,15,6,12,10,9,13,0,15,3,3,5,5,6,8,11];t.substitute=function(e,t){for(var n=0,r=0;r<4;r++)n<<=4,n|=i[64*r+(e>>>18-6*r&63)];for(r=0;r<4;r++)n<<=4,n|=i[256+64*r+(t>>>18-6*r&63)];return n>>>0};var a=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];t.permute=function(e){for(var t=0,n=0;n<a.length;n++)t<<=1,t|=e>>>a[n]&1;return t>>>0},t.padSplit=function(e,t,n){for(var r=e.toString(2);r.length<t;)r="0"+r;for(var i=[],a=0;a<t;a+=n)i.push(r.slice(a,a+n));return i.join(" ")}},function(e,t,n){"use strict";var r=n(6),i=n(1),a=n(61),o=n(34);function s(){this.tmp=new Array(2),this.keys=null}function c(e){o.call(this,e);var t=new s;this._desState=t,this.deriveKeys(t,e.key)}i(c,o),e.exports=c,c.create=function(e){return new c(e)};var u=[1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1];c.prototype.deriveKeys=function(e,t){e.keys=new Array(32),r.equal(t.length,this.blockSize,"Invalid key length");var n=a.readUInt32BE(t,0),i=a.readUInt32BE(t,4);a.pc1(n,i,e.tmp,0),n=e.tmp[0],i=e.tmp[1];for(var o=0;o<e.keys.length;o+=2){var s=u[o>>>1];n=a.r28shl(n,s),i=a.r28shl(i,s),a.pc2(n,i,e.keys,o)}},c.prototype._update=function(e,t,n,r){var i=this._desState,o=a.readUInt32BE(e,t),s=a.readUInt32BE(e,t+4);a.ip(o,s,i.tmp,0),o=i.tmp[0],s=i.tmp[1],"encrypt"===this.type?this._encrypt(i,o,s,i.tmp,0):this._decrypt(i,o,s,i.tmp,0),o=i.tmp[0],s=i.tmp[1],a.writeUInt32BE(n,o,r),a.writeUInt32BE(n,s,r+4)},c.prototype._pad=function(e,t){for(var n=e.length-t,r=t;r<e.length;r++)e[r]=n;return!0},c.prototype._unpad=function(e){for(var t=e[e.length-1],n=e.length-t;n<e.length;n++)r.equal(e[n],t);return e.slice(0,e.length-t)},c.prototype._encrypt=function(e,t,n,r,i){for(var o=t,s=n,c=0;c<e.keys.length;c+=2){var u=e.keys[c],l=e.keys[c+1];a.expand(s,e.tmp,0),u^=e.tmp[0],l^=e.tmp[1];var A=a.substitute(u,l),f=s;s=(o^a.permute(A))>>>0,o=f}a.rip(s,o,r,i)},c.prototype._decrypt=function(e,t,n,r,i){for(var o=n,s=t,c=e.keys.length-2;c>=0;c-=2){var u=e.keys[c],l=e.keys[c+1];a.expand(o,e.tmp,0),u^=e.tmp[0],l^=e.tmp[1];var A=a.substitute(u,l),f=o;o=(s^a.permute(A))>>>0,s=f}a.rip(o,s,r,i)}},function(e,t,n){var r=n(17),i=n(2).Buffer,a=n(64);function o(e){var t=e._cipher.encryptBlockRaw(e._prev);return a(e._prev),t}t.encrypt=function(e,t){var n=Math.ceil(t.length/16),a=e._cache.length;e._cache=i.concat([e._cache,i.allocUnsafe(16*n)]);for(var s=0;s<n;s++){var c=o(e),u=a+16*s;e._cache.writeUInt32BE(c[0],u+0),e._cache.writeUInt32BE(c[1],u+4),e._cache.writeUInt32BE(c[2],u+8),e._cache.writeUInt32BE(c[3],u+12)}var l=e._cache.slice(0,t.length);return e._cache=e._cache.slice(t.length),r(t,l)}},function(e,t){e.exports=function(e){for(var t,n=e.length;n--;){if(255!==(t=e.readUInt8(n))){t++,e.writeUInt8(t,n);break}e.writeUInt8(0,n)}}},function(e){e.exports=JSON.parse('{"aes-128-ecb":{"cipher":"AES","key":128,"iv":0,"mode":"ECB","type":"block"},"aes-192-ecb":{"cipher":"AES","key":192,"iv":0,"mode":"ECB","type":"block"},"aes-256-ecb":{"cipher":"AES","key":256,"iv":0,"mode":"ECB","type":"block"},"aes-128-cbc":{"cipher":"AES","key":128,"iv":16,"mode":"CBC","type":"block"},"aes-192-cbc":{"cipher":"AES","key":192,"iv":16,"mode":"CBC","type":"block"},"aes-256-cbc":{"cipher":"AES","key":256,"iv":16,"mode":"CBC","type":"block"},"aes128":{"cipher":"AES","key":128,"iv":16,"mode":"CBC","type":"block"},"aes192":{"cipher":"AES","key":192,"iv":16,"mode":"CBC","type":"block"},"aes256":{"cipher":"AES","key":256,"iv":16,"mode":"CBC","type":"block"},"aes-128-cfb":{"cipher":"AES","key":128,"iv":16,"mode":"CFB","type":"stream"},"aes-192-cfb":{"cipher":"AES","key":192,"iv":16,"mode":"CFB","type":"stream"},"aes-256-cfb":{"cipher":"AES","key":256,"iv":16,"mode":"CFB","type":"stream"},"aes-128-cfb8":{"cipher":"AES","key":128,"iv":16,"mode":"CFB8","type":"stream"},"aes-192-cfb8":{"cipher":"AES","key":192,"iv":16,"mode":"CFB8","type":"stream"},"aes-256-cfb8":{"cipher":"AES","key":256,"iv":16,"mode":"CFB8","type":"stream"},"aes-128-cfb1":{"cipher":"AES","key":128,"iv":16,"mode":"CFB1","type":"stream"},"aes-192-cfb1":{"cipher":"AES","key":192,"iv":16,"mode":"CFB1","type":"stream"},"aes-256-cfb1":{"cipher":"AES","key":256,"iv":16,"mode":"CFB1","type":"stream"},"aes-128-ofb":{"cipher":"AES","key":128,"iv":16,"mode":"OFB","type":"stream"},"aes-192-ofb":{"cipher":"AES","key":192,"iv":16,"mode":"OFB","type":"stream"},"aes-256-ofb":{"cipher":"AES","key":256,"iv":16,"mode":"OFB","type":"stream"},"aes-128-ctr":{"cipher":"AES","key":128,"iv":16,"mode":"CTR","type":"stream"},"aes-192-ctr":{"cipher":"AES","key":192,"iv":16,"mode":"CTR","type":"stream"},"aes-256-ctr":{"cipher":"AES","key":256,"iv":16,"mode":"CTR","type":"stream"},"aes-128-gcm":{"cipher":"AES","key":128,"iv":12,"mode":"GCM","type":"auth"},"aes-192-gcm":{"cipher":"AES","key":192,"iv":12,"mode":"GCM","type":"auth"},"aes-256-gcm":{"cipher":"AES","key":256,"iv":12,"mode":"GCM","type":"auth"}}')},function(e,t,n){var r=n(22),i=n(2).Buffer,a=n(11),o=n(1),s=n(119),c=n(17),u=n(64);function l(e,t,n,o){a.call(this);var c=i.alloc(4,0);this._cipher=new r.AES(t);var l=this._cipher.encryptBlock(c);this._ghash=new s(l),n=function(e,t,n){if(12===t.length)return e._finID=i.concat([t,i.from([0,0,0,1])]),i.concat([t,i.from([0,0,0,2])]);var r=new s(n),a=t.length,o=a%16;r.update(t),o&&(o=16-o,r.update(i.alloc(o,0))),r.update(i.alloc(8,0));var c=8*a,l=i.alloc(8);l.writeUIntBE(c,0,8),r.update(l),e._finID=r.state;var A=i.from(e._finID);return u(A),A}(this,n,l),this._prev=i.from(n),this._cache=i.allocUnsafe(0),this._secCache=i.allocUnsafe(0),this._decrypt=o,this._alen=0,this._len=0,this._mode=e,this._authTag=null,this._called=!1}o(l,a),l.prototype._update=function(e){if(!this._called&&this._alen){var t=16-this._alen%16;t<16&&(t=i.alloc(t,0),this._ghash.update(t))}this._called=!0;var n=this._mode.encrypt(this,e);return this._decrypt?this._ghash.update(e):this._ghash.update(n),this._len+=e.length,n},l.prototype._final=function(){if(this._decrypt&&!this._authTag)throw new Error("Unsupported state or unable to authenticate data");var e=c(this._ghash.final(8*this._alen,8*this._len),this._cipher.encryptBlock(this._finID));if(this._decrypt&&function(e,t){var n=0;e.length!==t.length&&n++;for(var r=Math.min(e.length,t.length),i=0;i<r;++i)n+=e[i]^t[i];return n}(e,this._authTag))throw new Error("Unsupported state or unable to authenticate data");this._authTag=e,this._cipher.scrub()},l.prototype.getAuthTag=function(){if(this._decrypt||!i.isBuffer(this._authTag))throw new Error("Attempting to get auth tag in unsupported state");return this._authTag},l.prototype.setAuthTag=function(e){if(!this._decrypt)throw new Error("Attempting to set auth tag in unsupported state");this._authTag=e},l.prototype.setAAD=function(e){if(this._called)throw new Error("Attempting to set AAD in unsupported state");this._ghash.update(e),this._alen+=e.length},e.exports=l},function(e,t,n){var r=n(22),i=n(2).Buffer,a=n(11);function o(e,t,n,o){a.call(this),this._cipher=new r.AES(t),this._prev=i.from(n),this._cache=i.allocUnsafe(0),this._secCache=i.allocUnsafe(0),this._decrypt=o,this._mode=e}n(1)(o,a),o.prototype._update=function(e){return this._mode.encrypt(this,e,this._decrypt)},o.prototype._final=function(){this._cipher.scrub()},e.exports=o},function(e,t,n){var r=n(13);e.exports=y,y.simpleSieve=d,y.fermatTest=g;var i=n(4),a=new i(24),o=new(n(69)),s=new i(1),c=new i(2),u=new i(5),l=(new i(16),new i(8),new i(10)),A=new i(3),f=(new i(7),new i(11)),h=new i(4),p=(new i(12),null);function d(e){for(var t=function(){if(null!==p)return p;var e=[];e[0]=2;for(var t=1,n=3;n<1048576;n+=2){for(var r=Math.ceil(Math.sqrt(n)),i=0;i<t&&e[i]<=r&&n%e[i]!=0;i++);t!==i&&e[i]<=r||(e[t++]=n)}return p=e,e}(),n=0;n<t.length;n++)if(0===e.modn(t[n]))return 0===e.cmpn(t[n]);return!0}function g(e){var t=i.mont(e);return 0===c.toRed(t).redPow(e.subn(1)).fromRed().cmpn(1)}function y(e,t){if(e<16)return new i(2===t||5===t?[140,123]:[140,39]);var n,p;for(t=new i(t);;){for(n=new i(r(Math.ceil(e/8)));n.bitLength()>e;)n.ishrn(1);if(n.isEven()&&n.iadd(s),n.testn(1)||n.iadd(c),t.cmp(c)){if(!t.cmp(u))for(;n.mod(l).cmp(A);)n.iadd(h)}else for(;n.mod(a).cmp(f);)n.iadd(h);if(d(p=n.shrn(1))&&d(n)&&g(p)&&g(n)&&o.test(p)&&o.test(n))return n}}},function(e,t,n){var r=n(4),i=n(37);function a(e){this.rand=e||new i.Rand}e.exports=a,a.create=function(e){return new a(e)},a.prototype._randbelow=function(e){var t=e.bitLength(),n=Math.ceil(t/8);do{var i=new r(this.rand.generate(n))}while(i.cmp(e)>=0);return i},a.prototype._randrange=function(e,t){var n=t.sub(e);return e.add(this._randbelow(n))},a.prototype.test=function(e,t,n){var i=e.bitLength(),a=r.mont(e),o=new r(1).toRed(a);t||(t=Math.max(1,i/48|0));for(var s=e.subn(1),c=0;!s.testn(c);c++);for(var u=e.shrn(c),l=s.toRed(a);t>0;t--){var A=this._randrange(new r(2),s);n&&n(A);var f=A.toRed(a).redPow(u);if(0!==f.cmp(o)&&0!==f.cmp(l)){for(var h=1;h<c;h++){if(0===(f=f.redSqr()).cmp(o))return!1;if(0===f.cmp(l))break}if(h===c)return!1}}return!0},a.prototype.getDivisor=function(e,t){var n=e.bitLength(),i=r.mont(e),a=new r(1).toRed(i);t||(t=Math.max(1,n/48|0));for(var o=e.subn(1),s=0;!o.testn(s);s++);for(var c=e.shrn(s),u=o.toRed(i);t>0;t--){var l=this._randrange(new r(2),o),A=e.gcd(l);if(0!==A.cmpn(1))return A;var f=l.toRed(i).redPow(c);if(0!==f.cmp(a)&&0!==f.cmp(u)){for(var h=1;h<s;h++){if(0===(f=f.redSqr()).cmp(a))return f.fromRed().subn(1).gcd(e);if(0===f.cmp(u))break}if(h===s)return(f=f.redSqr()).fromRed().subn(1).gcd(e)}}return!1}},function(e,t,n){"use strict";var r=t;function i(e){return 1===e.length?"0"+e:e}function a(e){for(var t="",n=0;n<e.length;n++)t+=i(e[n].toString(16));return t}r.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var n=[];if("string"!=typeof e){for(var r=0;r<e.length;r++)n[r]=0|e[r];return n}if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),r=0;r<e.length;r+=2)n.push(parseInt(e[r]+e[r+1],16));else for(r=0;r<e.length;r++){var i=e.charCodeAt(r),a=i>>8,o=255&i;a?n.push(a,o):n.push(o)}return n},r.zero2=i,r.toHex=a,r.encode=function(e,t){return"hex"===t?a(e):e}},function(e,t,n){"use strict";var r=t;r.base=n(24),r.short=n(130),r.mont=n(131),r.edwards=n(132)},function(e,t,n){"use strict";var r=n(10).rotr32;function i(e,t,n){return e&t^~e&n}function a(e,t,n){return e&t^e&n^t&n}function o(e,t,n){return e^t^n}t.ft_1=function(e,t,n,r){return 0===e?i(t,n,r):1===e||3===e?o(t,n,r):2===e?a(t,n,r):void 0},t.ch32=i,t.maj32=a,t.p32=o,t.s0_256=function(e){return r(e,2)^r(e,13)^r(e,22)},t.s1_256=function(e){return r(e,6)^r(e,11)^r(e,25)},t.g0_256=function(e){return r(e,7)^r(e,18)^e>>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(10),i=n(18),a=n(72),o=n(6),s=r.sum32,c=r.sum32_4,u=r.sum32_5,l=a.ch32,A=a.maj32,f=a.s0_256,h=a.s1_256,p=a.g0_256,d=a.g1_256,g=i.BlockHash,y=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function v(){if(!(this instanceof v))return new v;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=y,this.W=new Array(64)}r.inherits(v,g),e.exports=v,v.blockSize=512,v.outSize=256,v.hmacStrength=192,v.padLength=64,v.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r<n.length;r++)n[r]=c(d(n[r-2]),n[r-7],p(n[r-15]),n[r-16]);var i=this.h[0],a=this.h[1],g=this.h[2],y=this.h[3],v=this.h[4],m=this.h[5],b=this.h[6],I=this.h[7];for(o(this.k.length===n.length),r=0;r<n.length;r++){var w=u(I,h(v),l(v,m,b),this.k[r],n[r]),C=s(f(i),A(i,a,g));I=b,b=m,m=v,v=s(y,w),y=g,g=a,a=i,i=s(w,C)}this.h[0]=s(this.h[0],i),this.h[1]=s(this.h[1],a),this.h[2]=s(this.h[2],g),this.h[3]=s(this.h[3],y),this.h[4]=s(this.h[4],v),this.h[5]=s(this.h[5],m),this.h[6]=s(this.h[6],b),this.h[7]=s(this.h[7],I)},v.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h,"big"):r.split32(this.h,"big")}},function(e,t,n){"use strict";var r=n(10),i=n(18),a=n(6),o=r.rotr64_hi,s=r.rotr64_lo,c=r.shr64_hi,u=r.shr64_lo,l=r.sum64,A=r.sum64_hi,f=r.sum64_lo,h=r.sum64_4_hi,p=r.sum64_4_lo,d=r.sum64_5_hi,g=r.sum64_5_lo,y=i.BlockHash,v=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function m(){if(!(this instanceof m))return new m;y.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=v,this.W=new Array(160)}function b(e,t,n,r,i){var a=e&n^~e&i;return a<0&&(a+=4294967296),a}function I(e,t,n,r,i,a){var o=t&r^~t&a;return o<0&&(o+=4294967296),o}function w(e,t,n,r,i){var a=e&n^e&i^n&i;return a<0&&(a+=4294967296),a}function C(e,t,n,r,i,a){var o=t&r^t&a^r&a;return o<0&&(o+=4294967296),o}function B(e,t){var n=o(e,t,28)^o(t,e,2)^o(t,e,7);return n<0&&(n+=4294967296),n}function E(e,t){var n=s(e,t,28)^s(t,e,2)^s(t,e,7);return n<0&&(n+=4294967296),n}function _(e,t){var n=o(e,t,14)^o(e,t,18)^o(t,e,9);return n<0&&(n+=4294967296),n}function k(e,t){var n=s(e,t,14)^s(e,t,18)^s(t,e,9);return n<0&&(n+=4294967296),n}function Q(e,t){var n=o(e,t,1)^o(e,t,8)^c(e,t,7);return n<0&&(n+=4294967296),n}function S(e,t){var n=s(e,t,1)^s(e,t,8)^u(e,t,7);return n<0&&(n+=4294967296),n}function x(e,t){var n=o(e,t,19)^o(t,e,29)^c(e,t,6);return n<0&&(n+=4294967296),n}function D(e,t){var n=s(e,t,19)^s(t,e,29)^u(e,t,6);return n<0&&(n+=4294967296),n}r.inherits(m,y),e.exports=m,m.blockSize=1024,m.outSize=512,m.hmacStrength=192,m.padLength=128,m.prototype._prepareBlock=function(e,t){for(var n=this.W,r=0;r<32;r++)n[r]=e[t+r];for(;r<n.length;r+=2){var i=x(n[r-4],n[r-3]),a=D(n[r-4],n[r-3]),o=n[r-14],s=n[r-13],c=Q(n[r-30],n[r-29]),u=S(n[r-30],n[r-29]),l=n[r-32],A=n[r-31];n[r]=h(i,a,o,s,c,u,l,A),n[r+1]=p(i,a,o,s,c,u,l,A)}},m.prototype._update=function(e,t){this._prepareBlock(e,t);var n=this.W,r=this.h[0],i=this.h[1],o=this.h[2],s=this.h[3],c=this.h[4],u=this.h[5],h=this.h[6],p=this.h[7],y=this.h[8],v=this.h[9],m=this.h[10],Q=this.h[11],S=this.h[12],x=this.h[13],D=this.h[14],P=this.h[15];a(this.k.length===n.length);for(var M=0;M<n.length;M+=2){var F=D,O=P,R=_(y,v),T=k(y,v),j=b(y,0,m,0,S),H=I(0,v,0,Q,0,x),U=this.k[M],N=this.k[M+1],L=n[M],K=n[M+1],G=d(F,O,R,T,j,H,U,N,L,K),$=g(F,O,R,T,j,H,U,N,L,K);F=B(r,i),O=E(r,i),R=w(r,0,o,0,c),T=C(0,i,0,s,0,u);var Y=A(F,O,R,T),J=f(F,O,R,T);D=S,P=x,S=m,x=Q,m=y,Q=v,y=A(h,p,G,$),v=f(p,p,G,$),h=c,p=u,c=o,u=s,o=r,s=i,r=A(G,$,Y,J),i=f(G,$,Y,J)}l(this.h,0,r,i),l(this.h,2,o,s),l(this.h,4,c,u),l(this.h,6,h,p),l(this.h,8,y,v),l(this.h,10,m,Q),l(this.h,12,S,x),l(this.h,14,D,P)},m.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h,"big"):r.split32(this.h,"big")}},function(e,t,n){function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(1),a=n(20).Reporter,o=n(3).Buffer;function s(e,t){a.call(this,t),o.isBuffer(e)?(this.base=e,this.offset=0,this.length=e.length):this.error("Input not Buffer")}function c(e,t){if(Array.isArray(e))this.length=0,this.value=e.map((function(e){return e instanceof c||(e=new c(e,t)),this.length+=e.length,e}),this);else if("number"==typeof e){if(!(0<=e&&e<=255))return t.error("non-byte EncoderBuffer value");this.value=e,this.length=1}else if("string"==typeof e)this.value=e,this.length=o.byteLength(e);else{if(!o.isBuffer(e))return t.error("Unsupported type: "+r(e));this.value=e,this.length=e.length}}i(s,a),t.DecoderBuffer=s,s.prototype.save=function(){return{offset:this.offset,reporter:a.prototype.save.call(this)}},s.prototype.restore=function(e){var t=new s(this.base);return t.offset=e.offset,t.length=this.offset,this.offset=e.offset,a.prototype.restore.call(this,e.reporter),t},s.prototype.isEmpty=function(){return this.offset===this.length},s.prototype.readUInt8=function(e){return this.offset+1<=this.length?this.base.readUInt8(this.offset++,!0):this.error(e||"DecoderBuffer overrun")},s.prototype.skip=function(e,t){if(!(this.offset+e<=this.length))return this.error(t||"DecoderBuffer overrun");var n=new s(this.base);return n._reporterState=this._reporterState,n.offset=this.offset,n.length=this.offset+e,this.offset+=e,n},s.prototype.raw=function(e){return this.base.slice(e?e.offset:this.offset,this.length)},t.EncoderBuffer=c,c.prototype.join=function(e,t){return e||(e=new o(this.length)),t||(t=0),0===this.length||(Array.isArray(this.value)?this.value.forEach((function(n){n.join(e,t),t+=n.length})):("number"==typeof this.value?e[t]=this.value:"string"==typeof this.value?e.write(this.value,t):o.isBuffer(this.value)&&this.value.copy(e,t),t+=this.length)),e}},function(e,t,n){var r=t;r._reverse=function(e){var t={};return Object.keys(e).forEach((function(n){(0|n)==n&&(n|=0);var r=e[n];t[r]=n})),t},r.der=n(152)},function(e,t,n){var r=n(1),i=n(19),a=i.base,o=i.bignum,s=i.constants.der;function c(e){this.enc="der",this.name=e.name,this.entity=e,this.tree=new u,this.tree._init(e.body)}function u(e){a.Node.call(this,"der",e)}function l(e,t){var n=e.readUInt8(t);if(e.isError(n))return n;var r=s.tagClass[n>>6],i=0==(32&n);if(31==(31&n)){var a=n;for(n=0;128==(128&a);){if(a=e.readUInt8(t),e.isError(a))return a;n<<=7,n|=127&a}}else n&=31;return{cls:r,primitive:i,tag:n,tagStr:s.tag[n]}}function A(e,t,n){var r=e.readUInt8(n);if(e.isError(r))return r;if(!t&&128===r)return null;if(0==(128&r))return r;var i=127&r;if(i>4)return e.error("length octect is too long");r=0;for(var a=0;a<i;a++){r<<=8;var o=e.readUInt8(n);if(e.isError(o))return o;r|=o}return r}e.exports=c,c.prototype.decode=function(e,t){return e instanceof a.DecoderBuffer||(e=new a.DecoderBuffer(e,t)),this.tree._decode(e,t)},r(u,a.Node),u.prototype._peekTag=function(e,t,n){if(e.isEmpty())return!1;var r=e.save(),i=l(e,'Failed to peek tag: "'+t+'"');return e.isError(i)?i:(e.restore(r),i.tag===t||i.tagStr===t||i.tagStr+"of"===t||n)},u.prototype._decodeTag=function(e,t,n){var r=l(e,'Failed to decode tag of "'+t+'"');if(e.isError(r))return r;var i=A(e,r.primitive,'Failed to get length of "'+t+'"');if(e.isError(i))return i;if(!n&&r.tag!==t&&r.tagStr!==t&&r.tagStr+"of"!==t)return e.error('Failed to match tag: "'+t+'"');if(r.primitive||null!==i)return e.skip(i,'Failed to match body of: "'+t+'"');var a=e.save(),o=this._skipUntilEnd(e,'Failed to skip indefinite length body: "'+this.tag+'"');return e.isError(o)?o:(i=e.offset-a.offset,e.restore(a),e.skip(i,'Failed to match body of: "'+t+'"'))},u.prototype._skipUntilEnd=function(e,t){for(;;){var n=l(e,t);if(e.isError(n))return n;var r,i=A(e,n.primitive,t);if(e.isError(i))return i;if(r=n.primitive||null!==i?e.skip(i):this._skipUntilEnd(e,t),e.isError(r))return r;if("end"===n.tagStr)break}},u.prototype._decodeList=function(e,t,n,r){for(var i=[];!e.isEmpty();){var a=this._peekTag(e,"end");if(e.isError(a))return a;var o=n.decode(e,"der",r);if(e.isError(o)&&a)break;i.push(o)}return i},u.prototype._decodeStr=function(e,t){if("bitstr"===t){var n=e.readUInt8();return e.isError(n)?n:{unused:n,data:e.raw()}}if("bmpstr"===t){var r=e.raw();if(r.length%2==1)return e.error("Decoding of string type: bmpstr length mismatch");for(var i="",a=0;a<r.length/2;a++)i+=String.fromCharCode(r.readUInt16BE(2*a));return i}if("numstr"===t){var o=e.raw().toString("ascii");return this._isNumstr(o)?o:e.error("Decoding of string type: numstr unsupported characters")}if("octstr"===t)return e.raw();if("objDesc"===t)return e.raw();if("printstr"===t){var s=e.raw().toString("ascii");return this._isPrintstr(s)?s:e.error("Decoding of string type: printstr unsupported characters")}return/str$/.test(t)?e.raw().toString():e.error("Decoding of string type: "+t+" unsupported")},u.prototype._decodeObjid=function(e,t,n){for(var r,i=[],a=0;!e.isEmpty();){var o=e.readUInt8();a<<=7,a|=127&o,0==(128&o)&&(i.push(a),a=0)}128&o&&i.push(a);var s=i[0]/40|0,c=i[0]%40;if(r=n?i:[s,c].concat(i.slice(1)),t){var u=t[r.join(" ")];void 0===u&&(u=t[r.join(".")]),void 0!==u&&(r=u)}return r},u.prototype._decodeTime=function(e,t){var n=e.raw().toString();if("gentime"===t)var r=0|n.slice(0,4),i=0|n.slice(4,6),a=0|n.slice(6,8),o=0|n.slice(8,10),s=0|n.slice(10,12),c=0|n.slice(12,14);else{if("utctime"!==t)return e.error("Decoding "+t+" time is not supported yet");r=0|n.slice(0,2),i=0|n.slice(2,4),a=0|n.slice(4,6),o=0|n.slice(6,8),s=0|n.slice(8,10),c=0|n.slice(10,12),r=r<70?2e3+r:1900+r}return Date.UTC(r,i-1,a,o,s,c,0)},u.prototype._decodeNull=function(e){return null},u.prototype._decodeBool=function(e){var t=e.readUInt8();return e.isError(t)?t:0!==t},u.prototype._decodeInt=function(e,t){var n=e.raw(),r=new o(n);return t&&(r=t[r.toString(10)]||r),r},u.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getDecoder("der").tree}},function(e,t,n){var r=n(1),i=n(3).Buffer,a=n(19),o=a.base,s=a.constants.der;function c(e){this.enc="der",this.name=e.name,this.entity=e,this.tree=new u,this.tree._init(e.body)}function u(e){o.Node.call(this,"der",e)}function l(e){return e<10?"0"+e:e}e.exports=c,c.prototype.encode=function(e,t){return this.tree._encode(e,t).join()},r(u,o.Node),u.prototype._encodeComposite=function(e,t,n,r){var a,o=function(e,t,n,r){var i;if("seqof"===e?e="seq":"setof"===e&&(e="set"),s.tagByName.hasOwnProperty(e))i=s.tagByName[e];else{if("number"!=typeof e||(0|e)!==e)return r.error("Unknown tag: "+e);i=e}return i>=31?r.error("Multi-octet tag encoding unsupported"):(t||(i|=32),i|s.tagClassByName[n||"universal"]<<6)}(e,t,n,this.reporter);if(r.length<128)return(a=new i(2))[0]=o,a[1]=r.length,this._createEncoderBuffer([a,r]);for(var c=1,u=r.length;u>=256;u>>=8)c++;(a=new i(2+c))[0]=o,a[1]=128|c,u=1+c;for(var l=r.length;l>0;u--,l>>=8)a[u]=255&l;return this._createEncoderBuffer([a,r])},u.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var n=new i(2*e.length),r=0;r<e.length;r++)n.writeUInt16BE(e.charCodeAt(r),2*r);return this._createEncoderBuffer(n)}return"numstr"===t?this._isNumstr(e)?this._createEncoderBuffer(e):this.reporter.error("Encoding of string type: numstr supports only digits and space"):"printstr"===t?this._isPrintstr(e)?this._createEncoderBuffer(e):this.reporter.error("Encoding of string type: printstr supports only latin upper and lower case letters, digits, space, apostrophe, left and rigth parenthesis, plus sign, comma, hyphen, dot, slash, colon, equal sign, question mark"):/str$/.test(t)||"objDesc"===t?this._createEncoderBuffer(e):this.reporter.error("Encoding of string type: "+t+" unsupported")},u.prototype._encodeObjid=function(e,t,n){if("string"==typeof e){if(!t)return this.reporter.error("string objid given, but no values map found");if(!t.hasOwnProperty(e))return this.reporter.error("objid not found in values map");e=t[e].split(/[\s\.]+/g);for(var r=0;r<e.length;r++)e[r]|=0}else if(Array.isArray(e))for(e=e.slice(),r=0;r<e.length;r++)e[r]|=0;if(!Array.isArray(e))return this.reporter.error("objid() should be either array or string, got: "+JSON.stringify(e));if(!n){if(e[1]>=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}var a=0;for(r=0;r<e.length;r++){var o=e[r];for(a++;o>=128;o>>=7)a++}var s=new i(a),c=s.length-1;for(r=e.length-1;r>=0;r--)for(o=e[r],s[c--]=127&o;(o>>=7)>0;)s[c--]=128|127&o;return this._createEncoderBuffer(s)},u.prototype._encodeTime=function(e,t){var n,r=new Date(e);return"gentime"===t?n=[l(r.getFullYear()),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):"utctime"===t?n=[l(r.getFullYear()%100),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(n,"octstr")},u.prototype._encodeNull=function(){return this._createEncoderBuffer("")},u.prototype._encodeInt=function(e,t){if("string"==typeof e){if(!t)return this.reporter.error("String int or enum given, but no values map");if(!t.hasOwnProperty(e))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(e));e=t[e]}if("number"!=typeof e&&!i.isBuffer(e)){var n=e.toArray();!e.sign&&128&n[0]&&n.unshift(0),e=new i(n)}if(i.isBuffer(e)){var r=e.length;0===e.length&&r++;var a=new i(r);return e.copy(a),0===e.length&&(a[0]=0),this._createEncoderBuffer(a)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);r=1;for(var o=e;o>=256;o>>=8)r++;for(o=(a=new Array(r)).length-1;o>=0;o--)a[o]=255&e,e>>=8;return 128&a[0]&&a.unshift(0),this._createEncoderBuffer(new i(a))},u.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},u.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},u.prototype._skipDefault=function(e,t,n){var r,i=this._baseState;if(null===i.default)return!1;var a=e.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,t,n).join()),a.length!==i.defaultBuffer.length)return!1;for(r=0;r<a.length;r++)if(a[r]!==i.defaultBuffer[r])return!1;return!0}},function(e){e.exports=JSON.parse('{"1.3.132.0.10":"secp256k1","1.3.132.0.33":"p224","1.2.840.10045.3.1.1":"p192","1.2.840.10045.3.1.7":"p256","1.3.132.0.34":"p384","1.3.132.0.35":"p521"}')},function(e,t,n){var r=n(15),i=n(2).Buffer;function a(e){var t=i.allocUnsafe(4);return t.writeUInt32BE(e,0),t}e.exports=function(e,t){for(var n,o=i.alloc(0),s=0;o.length<t;)n=a(s++),o=i.concat([o,r("sha1").update(e).update(n).digest()]);return o.slice(0,t)}},function(e,t){e.exports=function(e,t){for(var n=e.length,r=-1;++r<n;)e[r]^=t[r];return e}},function(e,t,n){var r=n(4),i=n(2).Buffer;e.exports=function(e,t){return i.from(e.toRed(r.mont(t.modulus)).redPow(new r(t.publicExponent)).fromRed().toArray())}},function(e,t,n){(function(t){var r=n(166).strict;e.exports=function(e){if(r(e)){var n=t.from(e.buffer);return e.byteLength!==e.buffer.byteLength&&(n=n.slice(e.byteOffset,e.byteOffset+e.byteLength)),n}return t.from(e)}}).call(this,n(3).Buffer)},,function(e,t,n){(function(e){function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var n=function(e){"use strict";var n=Object.prototype,r=n.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",o=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function c(e,t,n,r){var i=t&&t.prototype instanceof A?t:A,a=Object.create(i.prototype),o=new C(r||[]);return a._invoke=function(e,t,n){var r="suspendedStart";return function(i,a){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===i)throw a;return{value:void 0,done:!0}}for(n.method=i,n.arg=a;;){var o=n.delegate;if(o){var s=b(o,n);if(s){if(s===l)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var c=u(e,t,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===l)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r="completed",n.method="throw",n.arg=c.arg)}}}(e,n,o),a}function u(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=c;var l={};function A(){}function f(){}function h(){}var p={};p[a]=function(){return this};var d=Object.getPrototypeOf,g=d&&d(d(B([])));g&&g!==n&&r.call(g,a)&&(p=g);var y=h.prototype=A.prototype=Object.create(p);function v(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function m(e,n){var i;this._invoke=function(a,o){function s(){return new n((function(i,s){!function i(a,o,s,c){var l=u(e[a],e,o);if("throw"!==l.type){var A=l.arg,f=A.value;return f&&"object"===t(f)&&r.call(f,"__await")?n.resolve(f.__await).then((function(e){i("next",e,s,c)}),(function(e){i("throw",e,s,c)})):n.resolve(f).then((function(e){A.value=e,s(A)}),(function(e){return i("throw",e,s,c)}))}c(l.arg)}(a,o,i,s)}))}return i=i?i.then(s,s):s()}}function b(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,b(e,t),"throw"===t.method))return l;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return l}var r=u(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,l;var i=r.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,l):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,l)}function I(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function w(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function C(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(I,this),this.reset(!0)}function B(e){if(e){var t=e[a];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,i=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return i.next=i}}return{next:E}}function E(){return{value:void 0,done:!0}}return f.prototype=y.constructor=h,h.constructor=f,h[s]=f.displayName="GeneratorFunction",e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,h):(e.__proto__=h,s in e||(e[s]="GeneratorFunction")),e.prototype=Object.create(y),e},e.awrap=function(e){return{__await:e}},v(m.prototype),m.prototype[o]=function(){return this},e.AsyncIterator=m,e.async=function(t,n,r,i,a){void 0===a&&(a=Promise);var o=new m(c(t,n,r,i),a);return e.isGeneratorFunction(n)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},v(y),y[s]="Generator",y[a]=function(){return this},y.toString=function(){return"[object Generator]"},e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},e.values=B,C.prototype={constructor:C,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(w),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(n,r){return o.type="throw",o.arg=e,t.next=n,r&&(t.method="next",t.arg=void 0),!!r}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],o=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var s=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(s&&c){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var a=i;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var o=a?a.completion:{};return o.type=e,o.arg=t,a?(this.method="next",this.next=a.finallyLoc,l):this.complete(o)},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),l},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),w(n),l}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var i=r.arg;w(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:B(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),l}},e}("object"===t(e)?e.exports:{});try{regeneratorRuntime=n}catch(e){Function("r","regeneratorRuntime = r")(n)}}).call(this,n(42)(e))},function(e,t,n){(function(r,i,a,o){var s,c;function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}void 0===(c="function"==typeof(s=function(t){"use strict";var s;void 0===(s=t)&&(s={});var c=s;"object"!=u(c.sodium)&&("object"==(void 0===r?"undefined":u(r))?c=r:"object"==("undefined"==typeof window?"undefined":u(window))&&(c=window)),"object"==u(c.sodium)&&"number"==typeof c.sodium.totalMemory&&(s.TOTAL_MEMORY=c.sodium.totalMemory);var l=s;return s.ready=new Promise((function(t,r){(c=l).onAbort=r,c.print=function(e){},c.printErr=function(e){},c.onRuntimeInitialized=function(){try{c._crypto_secretbox_keybytes(),t()}catch(e){r(e)}},c.useBackupModule=function(){var t,r=void 0!==(r={})?r:{},s={};for(t in r)r.hasOwnProperty(t)&&(s[t]=r[t]);var c,A,f,h,p=[],d=!1;c="object"==("undefined"==typeof window?"undefined":u(window)),A="function"==typeof importScripts,f="object"==(void 0===i?"undefined":u(i))&&"object"==u(i.versions)&&"string"==typeof i.versions.node,d=f&&!c&&!A,h=!c&&!d&&!A;var g,y,v,m,b,I="";d?(I=a+"/",g=function(e,t){var r;return(r=he(e))||(m||(m=n(44)),b||(b=n(45)),e=b.normalize(e),r=m.readFileSync(e)),t?r:r.toString()},v=function(e){var t=g(e,!0);return t.buffer||(t=new Uint8Array(t)),_(t.buffer),t},i.argv.length>1&&i.argv[1].replace(/\\/g,"/"),p=i.argv.slice(2),e.exports=r,i.on("unhandledRejection",W),r.inspect=function(){return"[Emscripten Module object]"}):h?("undefined"!=typeof read&&(g=function(e){var t=he(e);return t?Ae(t):read(e)}),v=function(e){var t;return(t=he(e))?t:"function"==typeof readbuffer?new Uint8Array(readbuffer(e)):(_("object"==u(t=read(e,"binary"))),t)},"undefined"!=typeof scriptArgs?p=scriptArgs:void 0!==arguments&&(p=arguments),"undefined"!=typeof print&&("undefined"==typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!=typeof printErr?printErr:print)):(c||A)&&(A?I=self.location.href:document.currentScript&&(I=document.currentScript.src),I=0!==I.indexOf("blob:")?I.substr(0,I.lastIndexOf("/")+1):"",g=function(e){try{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText}catch(t){var n=he(e);if(n)return Ae(n);throw t}},A&&(v=function(e){try{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}catch(t){var n=he(e);if(n)return n;throw t}}),y=function(e,t,n){var r=new XMLHttpRequest;r.open("GET",e,!0),r.responseType="arraybuffer",r.onload=function(){if(200==r.status||0==r.status&&r.response)t(r.response);else{var i=he(e);i?t(i.buffer):n()}},r.onerror=n,r.send(null)});var w=r.print||void 0,C=r.printErr||void 0;for(t in s)s.hasOwnProperty(t)&&(r[t]=s[t]);s=null,r.arguments&&(p=r.arguments),r.thisProgram&&r.thisProgram,r.quit&&r.quit,new Array(8);var B=0;r.wasmBinary&&r.wasmBinary,r.noExitRuntime&&r.noExitRuntime;var E=!1;function _(e,t){e||W("Assertion failed: "+t)}var k,Q,S,x,D,P,M,F="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function O(e,t){return e?function(e,t,n){for(var r=t+n,i=t;e[i]&&!(i>=r);)++i;if(i-t>16&&e.subarray&&F)return F.decode(e.subarray(t,i));for(var a="";t<i;){var o=e[t++];if(128&o){var s=63&e[t++];if(192!=(224&o)){var c=63&e[t++];if((o=224==(240&o)?(15&o)<<12|s<<6|c:(7&o)<<18|s<<12|c<<6|63&e[t++])<65536)a+=String.fromCharCode(o);else{var u=o-65536;a+=String.fromCharCode(55296|u>>10,56320|1023&u)}}else a+=String.fromCharCode((31&o)<<6|s)}else a+=String.fromCharCode(o)}return a}(S,e,t):""}function R(e,t){return e%t>0&&(e+=t-e%t),e}function T(e){k=e,r.HEAP8=Q=new Int8Array(e),r.HEAP16=x=new Int16Array(e),r.HEAP32=D=new Int32Array(e),r.HEAPU8=S=new Uint8Array(e),r.HEAPU16=new Uint16Array(e),r.HEAPU32=new Uint32Array(e),r.HEAPF32=P=new Float32Array(e),r.HEAPF64=M=new Float64Array(e)}"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le");var j=r.TOTAL_MEMORY||16777216;function H(e){for(;e.length>0;){var t=e.shift();if("function"!=typeof t){var n=t.func;"number"==typeof n?void 0===t.arg?r.dynCall_v(n):r.dynCall_vi(n,t.arg):n(void 0===t.arg?null:t.arg)}else t()}}j=(k=r.buffer?r.buffer:new ArrayBuffer(j)).byteLength,T(k),D[8808]=5278304;var U=[],N=[],L=[],K=[],G=Math.abs,$=Math.ceil,Y=Math.floor,J=Math.min,V=0,z=null,q=null;function W(e){throw r.onAbort&&r.onAbort(e),w(e+=""),C(e),E=!0,"abort("+e+"). Build with -s ASSERTIONS=1 for more info."}r.preloadedImages={},r.preloadedAudios={};var X,Z,ee=null,te="data:application/octet-stream;base64,";function ne(e){return String.prototype.startsWith?e.startsWith(te):0===e.indexOf(te)}var re=[function(){return r.getRandomValue()},function(){if(void 0===r.getRandomValue)try{var e="object"==("undefined"==typeof window?"undefined":u(window))?window:self,t=void 0!==e.crypto?e.crypto:e.msCrypto,i=function(){var e=new Uint32Array(1);return t.getRandomValues(e),e[0]>>>0};i(),r.getRandomValue=i}catch(e){try{var a=n(46),o=function(){var e=a.randomBytes(4);return(e[0]<<24|e[1]<<16|e[2]<<8|e[3])>>>0};o(),r.getRandomValue=o}catch(e){throw"No secure random number generator found"}}}];function ie(e){return e}function ae(e){return e.replace(/\b__Z[\w\d_]+/g,(function(e){return e==e?e:e+" ["+e+"]"}))}function oe(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function se(){return Q.length}function ce(e){try{var t=new ArrayBuffer(e);if(t.byteLength!=e)return;return new Int8Array(t).set(Q),ye(t),T(t),1}catch(e){}}function ue(e){return r.___errno_location&&(D[r.___errno_location()>>2]=e),e}ee="data:application/octet-stream;base64,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v2xF/xZF9QEXy7IAqmOqAEH4bwAlbJn/QCVFAABYPv5ZlJD/v0TgAfEnNQApy+3/kX7C/90q/f8ZY5cAYf3fAUpzMf8Gr0j/O7DLAHy3+QHk5GMAgQzP/qjAw//MsBD+mOqrAE0lVf8heIf/jsLjAR/WOgDVu33/6C48/750Kv6XshP/Mz7t/szswQDC6DwArCKd/70QuP5nA1//jekk/ikZC/8Vw6YAdvUtAEPVlf+fDBL/u6TjAaAZBQAMTsMBK8XhADCOKf7Emzz/38cSAZGInAD8dan+keLuAO8XawBttbz/5nAx/kmq7f/nt+P/UNwUAMJrfwF/zWUALjTFAdKrJP9YA1r/OJeNAGC7//8qTsgA/kZGAfR9qADMRIoBfNdGAGZCyP4RNOQAddyP/sv4ewA4Eq7/upek/zPo0AGg5Cv/+R0ZAUS+PwANAAAAAP8AAAAA9QAAAAAAAPsAAAAAAAD9AAAAAPMAAAAABwAAAAAAAwAAAADzAAAAAAUAAAAAAAAAAAsAAAAAAAsAAAAA8wAAAAAAAP0AAAAAAP8AAAAAAwAAAAD1AAAAAAAAAA8AAAAAAP8AAAAA/wAAAAAHAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbolY/CsiewRcP0ifLvmPDV36wF08YzObE4AohtU/wFxxdqcD1N2E+6PAt2DRBnDyogU/osOczGTsf9d5KsA3rs////////////////////////////////////////f+3///////////////////////////////////////9/7v///////////////////////////////////////3/t0/VcGmMSWNac96Le+d4UAAAAAAAAAAAAAAAAAAAAEAjJvPNn5glqO6fKhIWuZ7sr+JT+cvNuPPE2HV869U+l0YLmrX9SDlEfbD4rjGgFm2u9Qfur2YMfeSF+ExnN4FsirijXmC+KQs1l7yORRDdxLztN7M/7wLW824mBpdu16Ti1SPNbwlY5GdAFtvER8VmbTxmvpII/khiBbdrVXhyrQgIDo5iqB9i+b3BFAVuDEoyy5E6+hTEk4rT/1cN9DFVviXvydF2+crGWFjv+sd6ANRLHJacG3JuUJmnPdPGbwdJK8Z7BaZvk4yVPOIZHvu+11YyLxp3BD2WcrHfMoQwkdQIrWW8s6S2D5KZuqoR0StT7Qb3cqbBctVMRg9qI+Xar32buUlE+mBAytC1txjGoPyH7mMgnA7DkDu++x39Zv8KPqD3zC+DGJacKk0eRp9VvggPgUWPKBnBuDgpnKSkU/C/SRoUKtycmySZcOCEbLu0qxFr8bSxN37OVnRMNOFPeY6+LVHMKZaiydzy7Cmp25q7tRy7JwoE7NYIUhSxykmQD8Uyh6L+iATBCvEtmGqiRl/jQcItLwjC+VAajUWzHGFLv1hnoktEQqWVVJAaZ1iogcVeFNQ70uNG7MnCgahDI0NK4FsGkGVOrQVEIbDcemeuO30x3SCeoSJvhtbywNGNaycWzDBw5y4pB40qq2E5z42N3T8qcW6O4stbzby5o/LLvXe6Cj3RgLxdDb2OleHKr8KEUeMiE7DlkGggCx4woHmMj+v++kOm9gt7rbFCkFXnGsvej+b4rU3Lj8nhxxpxhJurOPifKB8LAIce4htEe6+DN1n3a6njRbu5/T331um8Xcqpn8AammMiixX1jCq4N+b4EmD8RG0ccEzULcRuEfQQj9XfbKJMkx0B7q8oyvL7JFQq+njxMDRCcxGcdQ7ZCPsu+1MVMKn5l/Jwpf1ns+tY6q2/LXxdYR0qMGURsgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4Ot6fDtBuK4WVuP68Z/EatoJjeucMrH9hmIFFl9JuABfnJW8o1CMJLHQsVWcg+9bBERcxFgcjobYIk7d0J8RV+z///////////////////////////////////////9/7f///////////////////////////////////////3/u////////////////////////////////////////f1NpZ0VkMjU1MTkgbm8gRWQyNTUxOSBjb2xsaXNpb25zAQAAAAAAAAAAAAAAAAAAAFMtPmJ1ZmxlbiA8PSBCTEFLRTJCX0JMT0NLQllURVMAY3J5cHRvX2dlbmVyaWNoYXNoL2JsYWtlMmIvcmVmL2JsYWtlMmItcmVmLmMAYmxha2UyYl9maW5hbABvdXRsZW4gPD0gVUlOVDhfTUFYAGNyeXB0b19nZW5lcmljaGFzaC9ibGFrZTJiL3JlZi9nZW5lcmljaGFzaF9ibGFrZTJiLmMAY3J5cHRvX2dlbmVyaWNoYXNoX2JsYWtlMmJfZmluYWwAJGFyZ29uMmlkACRhcmdvbjJpACR2PQAkbT0ALHQ9ACxwPQAkYXJnb24yaWQkdj0AJGFyZ29uMmkkdj0AJGFyZ29uMmlkJAAkYXJnb24yaSQAInsgcmV0dXJuIE1vZHVsZS5nZXRSYW5kb21WYWx1ZSgpOyB9IgB7IGlmIChNb2R1bGUuZ2V0UmFuZG9tVmFsdWUgPT09IHVuZGVmaW5lZCkgeyB0cnkgeyB2YXIgd2luZG93XyA9ICdvYmplY3QnID09PSB0eXBlb2Ygd2luZG93ID8gd2luZG93IDogc2VsZjsgdmFyIGNyeXB0b18gPSB0eXBlb2Ygd2luZG93Xy5jcnlwdG8gIT09ICd1bmRlZmluZWQnID8gd2luZG93Xy5jcnlwdG8gOiB3aW5kb3dfLm1zQ3J5cHRvOyB2YXIgcmFuZG9tVmFsdWVzU3RhbmRhcmQgPSBmdW5jdGlvbigpIHsgdmFyIGJ1ZiA9IG5ldyBVaW50MzJBcnJheSgxKTsgY3J5cHRvXy5nZXRSYW5kb21WYWx1ZXMoYnVmKTsgcmV0dXJuIGJ1ZlswXSA+Pj4gMDsgfTsgcmFuZG9tVmFsdWVzU3RhbmRhcmQoKTsgTW9kdWxlLmdldFJhbmRvbVZhbHVlID0gcmFuZG9tVmFsdWVzU3RhbmRhcmQ7IH0gY2F0Y2ggKGUpIHsgdHJ5IHsgdmFyIGNyeXB0byA9IHJlcXVpcmUoJ2NyeXB0bycpOyB2YXIgcmFuZG9tVmFsdWVOb2RlSlMgPSBmdW5jdGlvbigpIHsgdmFyIGJ1ZiA9IGNyeXB0b1sncmFuZG9tQnl0ZXMnXSg0KTsgcmV0dXJuIChidWZbMF0gPDwgMjQgfCBidWZbMV0gPDwgMTYgfCBidWZbMl0gPDwgOCB8IGJ1ZlszXSkgPj4+IDA7IH07IHJhbmRvbVZhbHVlTm9kZUpTKCk7IE1vZHVsZS5nZXRSYW5kb21WYWx1ZSA9IHJhbmRvbVZhbHVlTm9kZUpTOyB9IGNhdGNoIChlKSB7IHRocm93ICdObyBzZWN1cmUgcmFuZG9tIG51bWJlciBnZW5lcmF0b3IgZm91bmQnOyB9IH0gfSB9AExpYnNvZGl1bURSR2J1Zl9sZW4gPD0gU0laRV9NQVgAcmFuZG9tYnl0ZXMvcmFuZG9tYnl0ZXMuYwByYW5kb21ieXRlcwBiNjRfcG9zIDw9IGI2NF9sZW4Ac29kaXVtL2NvZGVjcy5jAHNvZGl1bV9iaW4yYmFzZTY0ADEuMC4xOA==";var le=!1;function Ae(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];r>255&&(le&&_(!1,"Character code "+r+" ("+String.fromCharCode(r)+") at offset "+n+" not in 0x00-0xFF."),r&=255),t.push(String.fromCharCode(r))}return t.join("")}var fe="function"==typeof atob?atob:function(e){var t,n,r,i,a,o,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",c="",u=0;e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{t=s.indexOf(e.charAt(u++))<<2|(i=s.indexOf(e.charAt(u++)))>>4,n=(15&i)<<4|(a=s.indexOf(e.charAt(u++)))>>2,r=(3&a)<<6|(o=s.indexOf(e.charAt(u++))),c+=String.fromCharCode(t),64!==a&&(c+=String.fromCharCode(n)),64!==o&&(c+=String.fromCharCode(r))}while(u<e.length);return c};function he(e){if(ne(e))return function(e){if("boolean"==typeof d&&d){var t;try{t=o.from(e,"base64")}catch(n){t=new o(e,"base64")}return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}try{for(var n=fe(e),r=new Uint8Array(n.length),i=0;i<n.length;++i)r[i]=n.charCodeAt(i);return r}catch(e){throw new Error("Converting base64 string to bytes failed.")}}(e.slice(te.length))}var pe,de,ge=function(e,t,n){var r=new e.Int8Array(n),i=new e.Int32Array(n),a=new e.Uint8Array(n),o=e.Math.imul,s=e.Math.clz32,c=t.b,u=t.c,l=t.d,A=t.f,f=t.g,h=t.h,p=t.i,d=t.j,g=t.k,y=35424;function v(e,t){e|=0,t|=0;var n,o,s,c,l,A,f=0,h=0,p=0,d=0,g=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0,E=0,_=0,k=0,Q=0,S=0,x=0,D=0,P=0,M=0,F=0,O=0,R=0,T=0,j=0,H=0,U=0,N=0,L=0,K=0,G=0,$=0,Y=0,J=0,V=0,z=0,q=0,W=0,X=0,Z=0,ee=0,te=0,ne=0,re=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,le=0,Ae=0,fe=0,he=0,pe=0,de=0,ge=0,ye=0,ve=0;n=y,o=y=y+63&-64,y=y+256|0,f=0;do{d=0|Nt(t+(f<<3)|0),p=0|u(),i[(h=o+128+(f<<3)|0)>>2]=d,i[h+4>>2]=p,f=f+1|0}while(16!=(0|f));f=e,h=(t=o)+64|0;do{r[t>>0]=0|r[f>>0],t=t+1|0,f=f+1|0}while((0|t)<(0|h));for(i[o+88>>2]=1595750129,i[o+88+4>>2]=-1521486534,G=-1377402159^(a[e+64>>0]|a[e+64+1>>0]<<8|a[e+64+2>>0]<<16|a[e+64+3>>0]<<24),K=1359893119^(a[e+64+4>>0]|a[e+64+4+1>>0]<<8|a[e+64+4+2>>0]<<16|a[e+64+4+3>>0]<<24),P=725511199^(a[e+72>>0]|a[e+72+1>>0]<<8|a[e+72+2>>0]<<16|a[e+72+3>>0]<<24),M=-1694144372^(a[e+72+4>>0]|a[e+72+4+1>>0]<<8|a[e+72+4+2>>0]<<16|a[e+72+4+3>>0]<<24),C=-79577749^(a[e+80>>0]|a[e+80+1>>0]<<8|a[e+80+2>>0]<<16|a[e+80+3>>0]<<24),B=528734635^(a[e+80+4>>0]|a[e+80+4+1>>0]<<8|a[e+80+4+2>>0]<<16|a[e+80+4+3>>0]<<24),ee=327033209^(a[e+88>>0]|a[e+88+1>>0]<<8|a[e+88+2>>0]<<16|a[e+88+3>>0]<<24),Z=1541459225^(a[e+88+4>>0]|a[e+88+4+1>>0]<<8|a[e+88+4+2>>0]<<16|a[e+88+4+3>>0]<<24),m=0|i[o+32>>2],b=0|i[o+32+4>>2],b=0|Yt((t=0|Sn(0|(K=0|Yt((ge=0|Sn(0|(ye=0|Sn(0|($=0|i[o+128>>2]),0|(Y=0|i[o+128+4>>2]),0|m,0|b)),0|(ge=0|u()),0|i[o>>2],0|i[o+4>>2]))^G,(ye=0|u())^K,32)),0|(G=0|u()),-205731576,1779033703))^m,(d=0|u())^b,24),m=0|u(),te=0|i[o+128+8>>2],ne=0|i[o+128+8+4>>2],G=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|b,0|m,0|ge,0|ye)),0|u(),0|te,0|ne))^K,(ge=0|u())^G,16),K=0|u(),i[o+96>>2]=G,i[o+96+4>>2]=K,d=0|Sn(0|G,0|K,0|t,0|d),t=0|u(),i[o+64>>2]=d,i[o+64+4>>2]=t,m=0|Yt(d^b,t^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,q=0|i[o+40>>2],W=0|i[o+40+4>>2],W=0|Yt((v=0|Sn(0|(M=0|Yt((fe=0|Sn(0|(Ae=0|Sn(0|(h=0|i[o+128+16>>2]),0|(f=0|i[o+128+16+4>>2]),0|q,0|W)),0|(fe=0|u()),0|i[o+8>>2],0|i[o+8+4>>2]))^P,(Ae=0|u())^M,32)),0|(P=0|u()),-2067093701,-1150833019))^q,(I=0|u())^W,24),q=0|u(),w=0|i[o+128+24>>2],E=0|i[o+128+24+4>>2],P=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|W,0|q,0|fe,0|Ae)),0|u(),0|w,0|E))^M,(fe=0|u())^P,16),M=0|u(),i[o+104>>2]=P,i[o+104+4>>2]=M,I=0|Sn(0|P,0|M,0|v,0|I),v=0|u(),i[o+72>>2]=I,i[o+72+4>>2]=v,q=0|Yt(I^W,v^q,63),W=0|u(),U=0|i[o+48>>2],N=0|i[o+48+4>>2],N=0|Yt((z=0|Sn(0|(B=0|Yt((ue=0|Sn(0|(ce=0|Sn(0|(A=0|i[o+128+32>>2]),0|(he=0|i[o+128+32+4>>2]),0|U,0|N)),0|(ue=0|u()),0|i[o+16>>2],0|i[o+16+4>>2]))^C,(ce=0|u())^B,32)),0|(C=0|u()),-23791573,1013904242))^U,(X=0|u())^N,24),U=0|u(),s=0|i[o+128+40>>2],Q=0|i[o+128+40+4>>2],U=0|Yt((X=0|Sn(0|(C=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|N,0|U,0|ue,0|ce)),0|u(),0|s,0|Q))^B,(ue=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),x=0|i[o+56>>2],S=0|i[o+56+4>>2],S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(ae=0|Sn(0|(k=0|i[o+128+48>>2]),0|(_=0|i[o+128+48+4>>2]),0|x,0|S)),0|(oe=0|u()),0|i[o+24>>2],0|i[o+24+4>>2]))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),1595750129,-1521486534))^x,(L=0|u())^S,24),x=0|u(),D=0|i[o+128+56>>2],F=0|i[o+128+56+4>>2],x=0|Yt((L=0|Sn(0|(ee=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|S,0|x,0|oe,0|ae)),0|u(),0|D,0|F))^Z,(oe=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),J=0|i[o+128+64>>2],V=0|i[o+128+64+4>>2],W=0|Yt((z=0|Sn(0|(Z=0|Yt((ge=0|Sn(0|(ge=0|Sn(0|q,0|W,0|ye,0|ge)),0|u(),0|J,0|V))^ee,(ye=0|u())^Z,32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),l=0|i[o+128+72>>2],le=0|i[o+128+72+4>>2],ee=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|W,0|q,0|ge,0|ye)),0|u(),0|l,0|le))^Z,(ge=0|u())^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,X=0|Sn(0|ee,0|Z,0|z,0|X),z=0|u(),i[o+80>>2]=X,i[o+80+4>>2]=z,q=0|Yt(X^W,z^q,63),W=0|u(),re=0|i[o+128+80>>2],ie=0|i[o+128+80+4>>2],N=0|Yt((H=0|Sn(0|(K=0|Yt((fe=0|Sn(0|(fe=0|Sn(0|U,0|N,0|Ae,0|fe)),0|u(),0|re,0|ie))^G,(Ae=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),O=0|i[o+128+88>>2],R=0|i[o+128+88+4>>2],U=0|Yt((L=0|Sn(0|(G=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|N,0|U,0|fe,0|Ae)),0|u(),0|O,0|R))^K,(fe=0|u())^G,16)),0|(K=0|u()),0|H,0|L))^N,(H=0|u())^U,63),N=0|u(),p=0|i[o+128+96>>2],g=0|i[o+128+96+4>>2],S=0|Yt((t=0|Sn(0|(M=0|Yt((ue=0|Sn(0|(ue=0|Sn(0|x,0|S,0|ce,0|ue)),0|u(),0|p,0|g))^P,(ce=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),c=0|i[o+128+104>>2],se=0|i[o+128+104+4>>2],x=0|Yt((d=0|Sn(0|(P=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|S,0|x,0|ue,0|ce)),0|u(),0|c,0|se))^M,(ue=0|u())^P,16)),0|(M=0|u()),0|t,0|d))^S,(t=0|u())^x,63),S=0|u(),pe=0|i[o+128+112>>2],de=0|i[o+128+112+4>>2],b=0|Yt((v=0|Sn(0|(B=0|Yt((oe=0|Sn(0|(oe=0|Sn(0|ae,0|oe,0|m,0|b)),0|u(),0|pe,0|de))^C,(ae=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),T=0|i[o+128+120>>2],j=0|i[o+128+120+4>>2],m=0|Yt((I=0|Sn(0|(C=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|b,0|m,0|oe,0|ae)),0|u(),0|T,0|j))^B,(oe=0|u())^C,16)),0|(B=0|u()),0|v,0|I))^b,(v=0|u())^m,63),b=0|u(),b=0|Yt((t=0|Sn(0|(K=0|Yt((ge=0|Sn(0|(ge=0|Sn(0|pe,0|de,0|ye,0|ge)),0|u(),0|m,0|b))^G,(ye=0|u())^K,32)),0|(G=0|u()),0|d,0|t))^m,(d=0|u())^b,24),m=0|u(),m=0|Yt((d=0|Sn(0|(G=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|re,0|ie)),0|u(),0|b,0|m))^K,(ge=0|u())^G,16)),0|(K=0|u()),0|t,0|d))^b,(t=0|u())^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,W=0|Yt((v=0|Sn(0|(M=0|Yt(P^(fe=0|Sn(0|(ve=0|Sn(0|q,0|W,0|A,0|he)),0|u(),0|Ae,0|fe)),M^(Ae=0|u()),32)),0|(P=0|u()),0|I,0|v))^q,(I=0|u())^W,24),q=0|u(),q=0|Yt((I=0|Sn(0|(P=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|J,0|V)),0|u(),0|W,0|q))^M,(fe=0|u())^P,16)),0|(M=0|u()),0|v,0|I))^W,(v=0|u())^q,63),W=0|u(),N=0|Yt((z=0|Sn(0|(B=0|Yt(C^(ue=0|Sn(0|(ve=0|Sn(0|U,0|N,0|l,0|le)),0|u(),0|ce,0|ue)),B^(ce=0|u()),32)),0|(C=0|u()),0|X,0|z))^U,(X=0|u())^N,24),U=0|u(),U=0|Yt((X=0|Sn(0|(C=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|T,0|j,0|ue,0|ce)),0|u(),0|N,0|U))^B,(ue=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|x,0|S,0|c,0|se)),0|u(),0|ae,0|oe))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),0|L,0|H))^x,(L=0|u())^S,24),x=0|u(),x=0|Yt((L=0|Sn(0|(ee=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|k,0|_)),0|u(),0|S,0|x))^Z,(oe=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),W=0|Yt((z=0|Sn(0|(Z=0|Yt(ee^(ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|te,0|ne)),0|u(),0|q,0|W)),Z^(ye=0|u()),32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),ee=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|p,0|g)),0|u(),0|W,0|q))^Z,(ge=0|u())^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,q=0|Yt((X=0|Sn(0|ee,0|Z,0|z,0|X))^W,(z=0|u())^q,63),W=0|u(),N=0|Yt((H=0|Sn(0|(K=0|Yt((fe=0|Sn(0|(fe=0|Sn(0|Ae,0|fe,0|$,0|Y)),0|u(),0|U,0|N))^G,(Ae=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),U=0|Yt((L=0|Sn(0|(G=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|h,0|f)),0|u(),0|N,0|U))^K,(fe=0|u())^G,16)),0|(K=0|u()),0|H,0|L))^N,(H=0|u())^U,63),N=0|u(),S=0|Yt((t=0|Sn(0|(M=0|Yt((ue=0|Sn(0|(ue=0|Sn(0|ce,0|ue,0|O,0|R)),0|u(),0|x,0|S))^P,(ce=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),x=0|Yt((d=0|Sn(0|(P=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|D,0|F)),0|u(),0|S,0|x))^M,(ue=0|u())^P,16)),0|(M=0|u()),0|t,0|d))^S,(t=0|u())^x,63),S=0|u(),b=0|Yt((v=0|Sn(0|(B=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|m,0|b,0|s,0|Q)),0|u(),0|ae,0|oe))^C,(ae=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),m=0|Yt((I=0|Sn(0|(C=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|w,0|E)),0|u(),0|b,0|m))^B,(oe=0|u())^C,16)),0|(B=0|u()),0|v,0|I))^b,(v=0|u())^m,63),b=0|u(),b=0|Yt((t=0|Sn(0|(K=0|Yt((ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|O,0|R)),0|u(),0|m,0|b))^G,(ye=0|u())^K,32)),0|(G=0|u()),0|d,0|t))^m,(d=0|u())^b,24),m=0|u(),m=0|Yt((d=0|Sn(0|(G=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|J,0|V)),0|u(),0|b,0|m))^K,(ge=0|u())^G,16)),0|(K=0|u()),0|t,0|d))^b,(t=0|u())^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,W=0|Yt((v=0|Sn(0|(M=0|Yt(P^(fe=0|Sn(0|(ve=0|Sn(0|q,0|W,0|p,0|g)),0|u(),0|Ae,0|fe)),M^(Ae=0|u()),32)),0|(P=0|u()),0|I,0|v))^q,(I=0|u())^W,24),q=0|u(),q=0|Yt((I=0|Sn(0|(P=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|$,0|Y)),0|u(),0|W,0|q))^M,(fe=0|u())^P,16)),0|(M=0|u()),0|v,0|I))^W,(v=0|u())^q,63),W=0|u(),N=0|Yt((z=0|Sn(0|(B=0|Yt(C^(ue=0|Sn(0|(ve=0|Sn(0|U,0|N,0|s,0|Q)),0|u(),0|ce,0|ue)),B^(ce=0|u()),32)),0|(C=0|u()),0|X,0|z))^U,(X=0|u())^N,24),U=0|u(),U=0|Yt((X=0|Sn(0|(C=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|h,0|f)),0|u(),0|N,0|U))^B,(ue=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|x,0|S,0|T,0|j)),0|u(),0|ae,0|oe))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),0|L,0|H))^x,(L=0|u())^S,24),x=0|u(),x=0|Yt((L=0|Sn(0|(ee=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|c,0|se)),0|u(),0|S,0|x))^Z,(oe=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),W=0|Yt((z=0|Sn(0|(Z=0|Yt(ee^(ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|re,0|ie)),0|u(),0|q,0|W)),Z^(ye=0|u()),32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),ee=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|pe,0|de)),0|u(),0|W,0|q))^Z,(ge=0|u())^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,q=0|Yt((X=0|Sn(0|ee,0|Z,0|z,0|X))^W,(z=0|u())^q,63),W=0|u(),N=0|Yt((H=0|Sn(0|(K=0|Yt((fe=0|Sn(0|(fe=0|Sn(0|Ae,0|fe,0|w,0|E)),0|u(),0|U,0|N))^G,(Ae=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),U=0|Yt((L=0|Sn(0|(G=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|k,0|_)),0|u(),0|N,0|U))^K,(fe=0|u())^G,16)),0|(K=0|u()),0|H,0|L))^N,(H=0|u())^U,63),N=0|u(),S=0|Yt((t=0|Sn(0|(M=0|Yt((ue=0|Sn(0|(ue=0|Sn(0|ce,0|ue,0|D,0|F)),0|u(),0|x,0|S))^P,(ce=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),x=0|Yt((d=0|Sn(0|(P=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|te,0|ne)),0|u(),0|S,0|x))^M,(ue=0|u())^P,16)),0|(M=0|u()),0|t,0|d))^S,(t=0|u())^x,63),S=0|u(),b=0|Yt((v=0|Sn(0|(B=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|m,0|b,0|l,0|le)),0|u(),0|ae,0|oe))^C,(ae=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),m=0|Yt((I=0|Sn(0|(C=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|A,0|he)),0|u(),0|b,0|m))^B,(oe=0|u())^C,16)),0|(B=0|u()),0|v,0|I))^b,(v=0|u())^m,63),b=0|u(),b=0|Yt((t=0|Sn(0|(K=0|Yt((ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|D,0|F)),0|u(),0|m,0|b))^G,(ye=0|u())^K,32)),0|(G=0|u()),0|d,0|t))^m,(d=0|u())^b,24),m=0|u(),m=0|Yt((d=0|Sn(0|(G=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|l,0|le)),0|u(),0|b,0|m))^K,(ge=0|u())^G,16)),0|(K=0|u()),0|t,0|d))^b,(t=0|u())^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,W=0|Yt((v=0|Sn(0|(M=0|Yt(P^(fe=0|Sn(0|(ve=0|Sn(0|q,0|W,0|w,0|E)),0|u(),0|Ae,0|fe)),M^(Ae=0|u()),32)),0|(P=0|u()),0|I,0|v))^q,(I=0|u())^W,24),q=0|u(),q=0|Yt((I=0|Sn(0|(P=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|te,0|ne)),0|u(),0|W,0|q))^M,(fe=0|u())^P,16)),0|(M=0|u()),0|v,0|I))^W,(v=0|u())^q,63),W=0|u(),N=0|Yt((z=0|Sn(0|(B=0|Yt(C^(ue=0|Sn(0|(ve=0|Sn(0|U,0|N,0|c,0|se)),0|u(),0|ce,0|ue)),B^(ce=0|u()),32)),0|(C=0|u()),0|X,0|z))^U,(X=0|u())^N,24),U=0|u(),U=0|Yt((X=0|Sn(0|(C=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|p,0|g)),0|u(),0|N,0|U))^B,(ue=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|x,0|S,0|O,0|R)),0|u(),0|ae,0|oe))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),0|L,0|H))^x,(L=0|u())^S,24),x=0|u(),x=0|Yt((L=0|Sn(0|(ee=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|pe,0|de)),0|u(),0|S,0|x))^Z,(oe=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),W=0|Yt((z=0|Sn(0|(Z=0|Yt(ee^(ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|h,0|f)),0|u(),0|q,0|W)),Z^(ye=0|u()),32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),ee=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|k,0|_)),0|u(),0|W,0|q))^Z,(ge=0|u())^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,q=0|Yt((X=0|Sn(0|ee,0|Z,0|z,0|X))^W,(z=0|u())^q,63),W=0|u(),N=0|Yt((H=0|Sn(0|(K=0|Yt((fe=0|Sn(0|(fe=0|Sn(0|Ae,0|fe,0|s,0|Q)),0|u(),0|U,0|N))^G,(Ae=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),U=0|Yt((L=0|Sn(0|(G=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|re,0|ie)),0|u(),0|N,0|U))^K,(fe=0|u())^G,16)),0|(K=0|u()),0|H,0|L))^N,(H=0|u())^U,63),N=0|u(),S=0|Yt((t=0|Sn(0|(M=0|Yt((ue=0|Sn(0|(ue=0|Sn(0|ce,0|ue,0|A,0|he)),0|u(),0|x,0|S))^P,(ce=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),x=0|Yt((d=0|Sn(0|(P=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|$,0|Y)),0|u(),0|S,0|x))^M,(ue=0|u())^P,16)),0|(M=0|u()),0|t,0|d))^S,(t=0|u())^x,63),S=0|u(),b=0|Yt((v=0|Sn(0|(B=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|m,0|b,0|T,0|j)),0|u(),0|ae,0|oe))^C,(ae=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),m=0|Yt((I=0|Sn(0|(C=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|J,0|V)),0|u(),0|b,0|m))^B,(oe=0|u())^C,16)),0|(B=0|u()),0|v,0|I))^b,(v=0|u())^m,63),b=0|u(),b=0|Yt((t=0|Sn(0|(K=0|Yt((ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|l,0|le)),0|u(),0|m,0|b))^G,(ye=0|u())^K,32)),0|(G=0|u()),0|d,0|t))^m,(d=0|u())^b,24),m=0|u(),m=0|Yt((d=0|Sn(0|(G=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|$,0|Y)),0|u(),0|b,0|m))^K,(ge=0|u())^G,16)),0|(K=0|u()),0|t,0|d))^b,(t=0|u())^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,W=0|Yt((v=0|Sn(0|(M=0|Yt(P^(fe=0|Sn(0|(ve=0|Sn(0|q,0|W,0|s,0|Q)),0|u(),0|Ae,0|fe)),M^(Ae=0|u()),32)),0|(P=0|u()),0|I,0|v))^q,(I=0|u())^W,24),q=0|u(),q=0|Yt((I=0|Sn(0|(P=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|D,0|F)),0|u(),0|W,0|q))^M,(fe=0|u())^P,16)),0|(M=0|u()),0|v,0|I))^W,(v=0|u())^q,63),W=0|u(),N=0|Yt((z=0|Sn(0|(B=0|Yt(C^(ue=0|Sn(0|(ve=0|Sn(0|U,0|N,0|h,0|f)),0|u(),0|ce,0|ue)),B^(ce=0|u()),32)),0|(C=0|u()),0|X,0|z))^U,(X=0|u())^N,24),U=0|u(),U=0|Yt((X=0|Sn(0|(C=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|A,0|he)),0|u(),0|N,0|U))^B,(ue=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|x,0|S,0|re,0|ie)),0|u(),0|ae,0|oe))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),0|L,0|H))^x,(L=0|u())^S,24),x=0|u(),x=0|Yt((L=0|Sn(0|(ee=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|T,0|j)),0|u(),0|S,0|x))^Z,(oe=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),W=0|Yt((z=0|Sn(0|(Z=0|Yt(ee^(ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|pe,0|de)),0|u(),0|q,0|W)),Z^(ye=0|u()),32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),ee=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|te,0|ne)),0|u(),0|W,0|q))^Z,(ge=0|u())^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,q=0|Yt((X=0|Sn(0|ee,0|Z,0|z,0|X))^W,(z=0|u())^q,63),W=0|u(),N=0|Yt((H=0|Sn(0|(K=0|Yt((fe=0|Sn(0|(fe=0|Sn(0|Ae,0|fe,0|O,0|R)),0|u(),0|U,0|N))^G,(Ae=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),U=0|Yt((L=0|Sn(0|(G=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|p,0|g)),0|u(),0|N,0|U))^K,(fe=0|u())^G,16)),0|(K=0|u()),0|H,0|L))^N,(H=0|u())^U,63),N=0|u(),S=0|Yt((t=0|Sn(0|(M=0|Yt((ue=0|Sn(0|(ue=0|Sn(0|ce,0|ue,0|k,0|_)),0|u(),0|x,0|S))^P,(ce=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),x=0|Yt((d=0|Sn(0|(P=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|J,0|V)),0|u(),0|S,0|x))^M,(ue=0|u())^P,16)),0|(M=0|u()),0|t,0|d))^S,(t=0|u())^x,63),S=0|u(),b=0|Yt((v=0|Sn(0|(B=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|m,0|b,0|w,0|E)),0|u(),0|ae,0|oe))^C,(ae=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),m=0|Yt((I=0|Sn(0|(C=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|c,0|se)),0|u(),0|b,0|m))^B,(oe=0|u())^C,16)),0|(B=0|u()),0|v,0|I))^b,(v=0|u())^m,63),b=0|u(),b=0|Yt((t=0|Sn(0|(K=0|Yt((ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|h,0|f)),0|u(),0|m,0|b))^G,(ye=0|u())^K,32)),0|(G=0|u()),0|d,0|t))^m,(d=0|u())^b,24),m=0|u(),m=0|Yt((d=0|Sn(0|(G=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|p,0|g)),0|u(),0|b,0|m))^K,(ge=0|u())^G,16)),0|(K=0|u()),0|t,0|d))^b,(t=0|u())^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,W=0|Yt((v=0|Sn(0|(M=0|Yt(P^(fe=0|Sn(0|(ve=0|Sn(0|q,0|W,0|k,0|_)),0|u(),0|Ae,0|fe)),M^(Ae=0|u()),32)),0|(P=0|u()),0|I,0|v))^q,(I=0|u())^W,24),q=0|u(),q=0|Yt((I=0|Sn(0|(P=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|re,0|ie)),0|u(),0|W,0|q))^M,(fe=0|u())^P,16)),0|(M=0|u()),0|v,0|I))^W,(v=0|u())^q,63),W=0|u(),N=0|Yt((z=0|Sn(0|(B=0|Yt(C^(ue=0|Sn(0|(ve=0|Sn(0|U,0|N,0|$,0|Y)),0|u(),0|ce,0|ue)),B^(ce=0|u()),32)),0|(C=0|u()),0|X,0|z))^U,(X=0|u())^N,24),U=0|u(),U=0|Yt((X=0|Sn(0|(C=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|O,0|R)),0|u(),0|N,0|U))^B,(ue=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|x,0|S,0|J,0|V)),0|u(),0|ae,0|oe))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),0|L,0|H))^x,(L=0|u())^S,24),x=0|u(),x=0|Yt((L=0|Sn(0|(ee=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|w,0|E)),0|u(),0|S,0|x))^Z,(oe=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),W=0|Yt((z=0|Sn(0|(Z=0|Yt(ee^(ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|A,0|he)),0|u(),0|q,0|W)),Z^(ye=0|u()),32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),ee=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|c,0|se)),0|u(),0|W,0|q))^Z,(ge=0|u())^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,q=0|Yt((X=0|Sn(0|ee,0|Z,0|z,0|X))^W,(z=0|u())^q,63),W=0|u(),N=0|Yt((H=0|Sn(0|(K=0|Yt((fe=0|Sn(0|(fe=0|Sn(0|Ae,0|fe,0|D,0|F)),0|u(),0|U,0|N))^G,(Ae=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),U=0|Yt((L=0|Sn(0|(G=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|s,0|Q)),0|u(),0|N,0|U))^K,(fe=0|u())^G,16)),0|(K=0|u()),0|H,0|L))^N,(H=0|u())^U,63),N=0|u(),S=0|Yt((t=0|Sn(0|(M=0|Yt((ue=0|Sn(0|(ue=0|Sn(0|ce,0|ue,0|T,0|j)),0|u(),0|x,0|S))^P,(ce=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),x=0|Yt((d=0|Sn(0|(P=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|pe,0|de)),0|u(),0|S,0|x))^M,(ue=0|u())^P,16)),0|(M=0|u()),0|t,0|d))^S,(t=0|u())^x,63),S=0|u(),b=0|Yt((v=0|Sn(0|(B=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|m,0|b,0|te,0|ne)),0|u(),0|ae,0|oe))^C,(ae=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),m=0|Yt((I=0|Sn(0|(C=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|l,0|le)),0|u(),0|b,0|m))^B,(oe=0|u())^C,16)),0|(B=0|u()),0|v,0|I))^b,(v=0|u())^m,63),b=0|u(),b=0|Yt((t=0|Sn(0|(K=0|Yt((ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|p,0|g)),0|u(),0|m,0|b))^G,(ye=0|u())^K,32)),0|(G=0|u()),0|d,0|t))^m,(d=0|u())^b,24),m=0|u(),m=0|Yt((d=0|Sn(0|(G=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|s,0|Q)),0|u(),0|b,0|m))^K,(ge=0|u())^G,16)),0|(K=0|u()),0|t,0|d))^b,(t=0|u())^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,W=0|Yt((v=0|Sn(0|(M=0|Yt(P^(fe=0|Sn(0|(ve=0|Sn(0|q,0|W,0|te,0|ne)),0|u(),0|Ae,0|fe)),M^(Ae=0|u()),32)),0|(P=0|u()),0|I,0|v))^q,(I=0|u())^W,24),q=0|u(),q=0|Yt((I=0|Sn(0|(P=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|T,0|j)),0|u(),0|W,0|q))^M,(fe=0|u())^P,16)),0|(M=0|u()),0|v,0|I))^W,(v=0|u())^q,63),W=0|u(),N=0|Yt((z=0|Sn(0|(B=0|Yt(C^(ue=0|Sn(0|(ve=0|Sn(0|U,0|N,0|pe,0|de)),0|u(),0|ce,0|ue)),B^(ce=0|u()),32)),0|(C=0|u()),0|X,0|z))^U,(X=0|u())^N,24),U=0|u(),U=0|Yt((X=0|Sn(0|(C=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|c,0|se)),0|u(),0|N,0|U))^B,(ue=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|x,0|S,0|A,0|he)),0|u(),0|ae,0|oe))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),0|L,0|H))^x,(L=0|u())^S,24),x=0|u(),x=0|Yt((L=0|Sn(0|(ee=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|re,0|ie)),0|u(),0|S,0|x))^Z,(oe=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),W=0|Yt((z=0|Sn(0|(Z=0|Yt(ee^(ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|$,0|Y)),0|u(),0|q,0|W)),Z^(ye=0|u()),32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),ee=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|D,0|F)),0|u(),0|W,0|q))^Z,(ge=0|u())^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,q=0|Yt((X=0|Sn(0|ee,0|Z,0|z,0|X))^W,(z=0|u())^q,63),W=0|u(),N=0|Yt((H=0|Sn(0|(K=0|Yt((fe=0|Sn(0|(fe=0|Sn(0|Ae,0|fe,0|k,0|_)),0|u(),0|U,0|N))^G,(Ae=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),U=0|Yt((L=0|Sn(0|(G=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|w,0|E)),0|u(),0|N,0|U))^K,(fe=0|u())^G,16)),0|(K=0|u()),0|H,0|L))^N,(H=0|u())^U,63),N=0|u(),S=0|Yt((t=0|Sn(0|(M=0|Yt((ue=0|Sn(0|(ue=0|Sn(0|ce,0|ue,0|l,0|le)),0|u(),0|x,0|S))^P,(ce=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),x=0|Yt((d=0|Sn(0|(P=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|h,0|f)),0|u(),0|S,0|x))^M,(ue=0|u())^P,16)),0|(M=0|u()),0|t,0|d))^S,(t=0|u())^x,63),S=0|u(),b=0|Yt((v=0|Sn(0|(B=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|m,0|b,0|J,0|V)),0|u(),0|ae,0|oe))^C,(ae=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),m=0|Yt((I=0|Sn(0|(C=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|O,0|R)),0|u(),0|b,0|m))^B,(oe=0|u())^C,16)),0|(B=0|u()),0|v,0|I))^b,(v=0|u())^m,63),b=0|u(),b=0|Yt((t=0|Sn(0|(K=0|Yt((ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|c,0|se)),0|u(),0|m,0|b))^G,(ye=0|u())^K,32)),0|(G=0|u()),0|d,0|t))^m,(d=0|u())^b,24),m=0|u(),m=0|Yt((d=0|Sn(0|(G=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|O,0|R)),0|u(),0|b,0|m))^K,(ge=0|u())^G,16)),0|(K=0|u()),0|t,0|d))^b,(t=0|u())^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,W=0|Yt((v=0|Sn(0|(M=0|Yt(P^(fe=0|Sn(0|(ve=0|Sn(0|q,0|W,0|D,0|F)),0|u(),0|Ae,0|fe)),M^(Ae=0|u()),32)),0|(P=0|u()),0|I,0|v))^q,(I=0|u())^W,24),q=0|u(),q=0|Yt((I=0|Sn(0|(P=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|pe,0|de)),0|u(),0|W,0|q))^M,(fe=0|u())^P,16)),0|(M=0|u()),0|v,0|I))^W,(v=0|u())^q,63),W=0|u(),N=0|Yt((z=0|Sn(0|(B=0|Yt(C^(ue=0|Sn(0|(ve=0|Sn(0|U,0|N,0|p,0|g)),0|u(),0|ce,0|ue)),B^(ce=0|u()),32)),0|(C=0|u()),0|X,0|z))^U,(X=0|u())^N,24),U=0|u(),U=0|Yt((X=0|Sn(0|(C=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|te,0|ne)),0|u(),0|N,0|U))^B,(ue=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|x,0|S,0|w,0|E)),0|u(),0|ae,0|oe))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),0|L,0|H))^x,(L=0|u())^S,24),x=0|u(),x=0|Yt((L=0|Sn(0|(ee=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|l,0|le)),0|u(),0|S,0|x))^Z,(oe=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),W=0|Yt((z=0|Sn(0|(Z=0|Yt(ee^(ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|s,0|Q)),0|u(),0|q,0|W)),Z^(ye=0|u()),32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),ee=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|$,0|Y)),0|u(),0|W,0|q))^Z,(ge=0|u())^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,q=0|Yt((X=0|Sn(0|ee,0|Z,0|z,0|X))^W,(z=0|u())^q,63),W=0|u(),N=0|Yt((H=0|Sn(0|(K=0|Yt((fe=0|Sn(0|(fe=0|Sn(0|Ae,0|fe,0|T,0|j)),0|u(),0|U,0|N))^G,(Ae=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),U=0|Yt((L=0|Sn(0|(G=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|A,0|he)),0|u(),0|N,0|U))^K,(fe=0|u())^G,16)),0|(K=0|u()),0|H,0|L))^N,(H=0|u())^U,63),N=0|u(),S=0|Yt((t=0|Sn(0|(M=0|Yt((ue=0|Sn(0|(ue=0|Sn(0|ce,0|ue,0|J,0|V)),0|u(),0|x,0|S))^P,(ce=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),x=0|Yt((d=0|Sn(0|(P=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|k,0|_)),0|u(),0|S,0|x))^M,(ue=0|u())^P,16)),0|(M=0|u()),0|t,0|d))^S,(t=0|u())^x,63),S=0|u(),b=0|Yt((v=0|Sn(0|(B=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|m,0|b,0|h,0|f)),0|u(),0|ae,0|oe))^C,(ae=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),m=0|Yt((I=0|Sn(0|(C=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|re,0|ie)),0|u(),0|b,0|m))^B,(oe=0|u())^C,16)),0|(B=0|u()),0|v,0|I))^b,(v=0|u())^m,63),b=0|u(),b=0|Yt((t=0|Sn(0|(K=0|Yt((ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|k,0|_)),0|u(),0|m,0|b))^G,(ye=0|u())^K,32)),0|(G=0|u()),0|d,0|t))^m,(d=0|u())^b,24),m=0|u(),m=0|Yt((d=0|Sn(0|(G=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|T,0|j)),0|u(),0|b,0|m))^K,(ge=0|u())^G,16)),0|(K=0|u()),0|t,0|d))^b,(t=0|u())^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,W=0|Yt((v=0|Sn(0|(M=0|Yt(P^(fe=0|Sn(0|(ve=0|Sn(0|q,0|W,0|pe,0|de)),0|u(),0|Ae,0|fe)),M^(Ae=0|u()),32)),0|(P=0|u()),0|I,0|v))^q,(I=0|u())^W,24),q=0|u(),q=0|Yt((I=0|Sn(0|(P=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|l,0|le)),0|u(),0|W,0|q))^M,(fe=0|u())^P,16)),0|(M=0|u()),0|v,0|I))^W,(v=0|u())^q,63),W=0|u(),N=0|Yt((z=0|Sn(0|(B=0|Yt(C^(ue=0|Sn(0|(ve=0|Sn(0|U,0|N,0|O,0|R)),0|u(),0|ce,0|ue)),B^(ce=0|u()),32)),0|(C=0|u()),0|X,0|z))^U,(X=0|u())^N,24),U=0|u(),U=0|Yt((X=0|Sn(0|(C=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|w,0|E)),0|u(),0|N,0|U))^B,(ue=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|x,0|S,0|$,0|Y)),0|u(),0|ae,0|oe))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),0|L,0|H))^x,(L=0|u())^S,24),x=0|u(),x=0|Yt((L=0|Sn(0|(ee=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|J,0|V)),0|u(),0|S,0|x))^Z,(oe=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),W=0|Yt((z=0|Sn(0|(Z=0|Yt(ee^(ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|p,0|g)),0|u(),0|q,0|W)),Z^(ye=0|u()),32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),ee=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|h,0|f)),0|u(),0|W,0|q))^Z,(ge=0|u())^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,q=0|Yt((X=0|Sn(0|ee,0|Z,0|z,0|X))^W,(z=0|u())^q,63),W=0|u(),N=0|Yt((H=0|Sn(0|(K=0|Yt((fe=0|Sn(0|(fe=0|Sn(0|Ae,0|fe,0|c,0|se)),0|u(),0|U,0|N))^G,(Ae=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),U=0|Yt((L=0|Sn(0|(G=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|D,0|F)),0|u(),0|N,0|U))^K,(fe=0|u())^G,16)),0|(K=0|u()),0|H,0|L))^N,(H=0|u())^U,63),N=0|u(),S=0|Yt((t=0|Sn(0|(M=0|Yt((ue=0|Sn(0|(ue=0|Sn(0|ce,0|ue,0|te,0|ne)),0|u(),0|x,0|S))^P,(ce=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),x=0|Yt((d=0|Sn(0|(P=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|A,0|he)),0|u(),0|S,0|x))^M,(ue=0|u())^P,16)),0|(M=0|u()),0|t,0|d))^S,(t=0|u())^x,63),S=0|u(),b=0|Yt((v=0|Sn(0|(B=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|m,0|b,0|re,0|ie)),0|u(),0|ae,0|oe))^C,(ae=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),m=0|Yt((I=0|Sn(0|(C=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|s,0|Q)),0|u(),0|b,0|m))^B,(oe=0|u())^C,16)),0|(B=0|u()),0|v,0|I))^b,(v=0|u())^m,63),b=0|u(),b=0|Yt((t=0|Sn(0|(K=0|Yt((ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|re,0|ie)),0|u(),0|m,0|b))^G,(ye=0|u())^K,32)),0|(G=0|u()),0|d,0|t))^m,(d=0|u())^b,24),m=0|u(),m=0|Yt((d=0|Sn(0|(G=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|h,0|f)),0|u(),0|b,0|m))^K,(ge=0|u())^G,16)),0|(K=0|u()),0|t,0|d))^b,(t=0|u())^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,W=0|Yt((v=0|Sn(0|(M=0|Yt(P^(fe=0|Sn(0|(ve=0|Sn(0|q,0|W,0|J,0|V)),0|u(),0|Ae,0|fe)),M^(Ae=0|u()),32)),0|(P=0|u()),0|I,0|v))^q,(I=0|u())^W,24),q=0|u(),q=0|Yt((I=0|Sn(0|(P=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|A,0|he)),0|u(),0|W,0|q))^M,(fe=0|u())^P,16)),0|(M=0|u()),0|v,0|I))^W,(v=0|u())^q,63),W=0|u(),N=0|Yt((z=0|Sn(0|(B=0|Yt(C^(ue=0|Sn(0|(ve=0|Sn(0|U,0|N,0|D,0|F)),0|u(),0|ce,0|ue)),B^(ce=0|u()),32)),0|(C=0|u()),0|X,0|z))^U,(X=0|u())^N,24),U=0|u(),U=0|Yt((X=0|Sn(0|(C=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|k,0|_)),0|u(),0|N,0|U))^B,(ue=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|x,0|S,0|te,0|ne)),0|u(),0|ae,0|oe))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),0|L,0|H))^x,(L=0|u())^S,24),x=0|u(),x=0|Yt((L=0|Sn(0|(ee=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|s,0|Q)),0|u(),0|S,0|x))^Z,(oe=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),W=0|Yt((z=0|Sn(0|(Z=0|Yt(ee^(ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|T,0|j)),0|u(),0|q,0|W)),Z^(ye=0|u()),32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),ee=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|O,0|R)),0|u(),0|W,0|q))^Z,(ge=0|u())^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,q=0|Yt((X=0|Sn(0|ee,0|Z,0|z,0|X))^W,(z=0|u())^q,63),W=0|u(),N=0|Yt((H=0|Sn(0|(K=0|Yt((fe=0|Sn(0|(fe=0|Sn(0|Ae,0|fe,0|l,0|le)),0|u(),0|U,0|N))^G,(Ae=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),U=0|Yt((L=0|Sn(0|(G=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|pe,0|de)),0|u(),0|N,0|U))^K,(fe=0|u())^G,16)),0|(K=0|u()),0|H,0|L))^N,(H=0|u())^U,63),N=0|u(),S=0|Yt((t=0|Sn(0|(M=0|Yt((ue=0|Sn(0|(ue=0|Sn(0|ce,0|ue,0|w,0|E)),0|u(),0|x,0|S))^P,(ce=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),x=0|Yt((d=0|Sn(0|(P=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|p,0|g)),0|u(),0|S,0|x))^M,(ue=0|u())^P,16)),0|(M=0|u()),0|t,0|d))^S,(t=0|u())^x,63),S=0|u(),b=0|Yt((v=0|Sn(0|(B=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|m,0|b,0|c,0|se)),0|u(),0|ae,0|oe))^C,(ae=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),m=0|Yt((I=0|Sn(0|(C=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|$,0|Y)),0|u(),0|b,0|m))^B,(oe=0|u())^C,16)),0|(B=0|u()),0|v,0|I))^b,(v=0|u())^m,63),b=0|u(),b=0|Yt((t=0|Sn(0|(K=0|Yt((ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|$,0|Y)),0|u(),0|m,0|b))^G,(ye=0|u())^K,32)),0|(G=0|u()),0|d,0|t))^m,(d=0|u())^b,24),m=0|u(),m=0|Yt((d=0|Sn(0|(G=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|te,0|ne)),0|u(),0|b,0|m))^K,(ge=0|u())^G,16)),0|(K=0|u()),0|t,0|d))^b,(t=0|u())^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,W=0|Yt((v=0|Sn(0|(M=0|Yt(P^(fe=0|Sn(0|(ve=0|Sn(0|q,0|W,0|h,0|f)),0|u(),0|Ae,0|fe)),M^(Ae=0|u()),32)),0|(P=0|u()),0|I,0|v))^q,(I=0|u())^W,24),q=0|u(),q=0|Yt((I=0|Sn(0|(P=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|w,0|E)),0|u(),0|W,0|q))^M,(fe=0|u())^P,16)),0|(M=0|u()),0|v,0|I))^W,(v=0|u())^q,63),W=0|u(),N=0|Yt((z=0|Sn(0|(B=0|Yt(C^(ue=0|Sn(0|(ve=0|Sn(0|U,0|N,0|A,0|he)),0|u(),0|ce,0|ue)),B^(ce=0|u()),32)),0|(C=0|u()),0|X,0|z))^U,(X=0|u())^N,24),U=0|u(),U=0|Yt((X=0|Sn(0|(C=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|s,0|Q)),0|u(),0|N,0|U))^B,(ue=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|x,0|S,0|k,0|_)),0|u(),0|ae,0|oe))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),0|L,0|H))^x,(L=0|u())^S,24),x=0|u(),x=0|Yt((L=0|Sn(0|(ee=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|D,0|F)),0|u(),0|S,0|x))^Z,(oe=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),W=0|Yt((z=0|Sn(0|(Z=0|Yt(ee^(ge=0|Sn(0|(ge=0|Sn(0|ye,0|ge,0|J,0|V)),0|u(),0|q,0|W)),Z^(ye=0|u()),32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),ee=0|Yt((ye=0|Sn(0|(ye=0|Sn(0|ge,0|ye,0|l,0|le)),0|u(),0|W,0|q))^Z,(ge=0|u())^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,q=0|Yt((X=0|Sn(0|ee,0|Z,0|z,0|X))^W,(z=0|u())^q,63),W=0|u(),N=0|Yt((H=0|Sn(0|(K=0|Yt((fe=0|Sn(0|(fe=0|Sn(0|Ae,0|fe,0|re,0|ie)),0|u(),0|U,0|N))^G,(Ae=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),U=0|Yt((L=0|Sn(0|(G=0|Yt((Ae=0|Sn(0|(Ae=0|Sn(0|fe,0|Ae,0|O,0|R)),0|u(),0|N,0|U))^K,(fe=0|u())^G,16)),0|(K=0|u()),0|H,0|L))^N,(H=0|u())^U,63),N=0|u(),S=0|Yt((t=0|Sn(0|(M=0|Yt((ue=0|Sn(0|(ue=0|Sn(0|ce,0|ue,0|p,0|g)),0|u(),0|x,0|S))^P,(ce=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),x=0|Yt((d=0|Sn(0|(P=0|Yt((ce=0|Sn(0|(ce=0|Sn(0|ue,0|ce,0|c,0|se)),0|u(),0|S,0|x))^M,(ue=0|u())^P,16)),0|(M=0|u()),0|t,0|d))^S,(t=0|u())^x,63),S=0|u(),b=0|Yt((v=0|Sn(0|(B=0|Yt((oe=0|Sn(0|(ve=0|Sn(0|m,0|b,0|pe,0|de)),0|u(),0|ae,0|oe))^C,(ae=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),m=0|Yt((I=0|Sn(0|(C=0|Yt((ae=0|Sn(0|(ae=0|Sn(0|oe,0|ae,0|T,0|j)),0|u(),0|b,0|m))^B,(oe=0|u())^C,16)),0|(B=0|u()),0|v,0|I))^b,(v=0|u())^m,63),b=0|u(),b=0|Yt((t=0|Sn(0|(K=0|Yt((de=0|Sn(0|(de=0|Sn(0|ye,0|ge,0|pe,0|de)),0|u(),0|m,0|b))^G,(pe=0|u())^K,32)),0|(G=0|u()),0|d,0|t))^m,(d=0|u())^b,24),m=0|u(),m=0|Yt((d=0|Sn(0|(G=0|Yt((ie=0|Sn(0|(ie=0|Sn(0|de,0|pe,0|re,0|ie)),0|u(),0|b,0|m))^K,(re=0|u())^G,16)),0|(K=0|u()),0|t,0|d))^b,(t=0|u())^m,63),b=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=b,W=0|Yt((v=0|Sn(0|(M=0|Yt(P^(fe=0|Sn(0|(he=0|Sn(0|q,0|W,0|A,0|he)),0|u(),0|Ae,0|fe)),M^(Ae=0|u()),32)),0|(P=0|u()),0|I,0|v))^q,(I=0|u())^W,24),q=0|u(),q=0|Yt((I=0|Sn(0|(P=0|Yt((V=0|Sn(0|(V=0|Sn(0|fe,0|Ae,0|J,0|V)),0|u(),0|W,0|q))^M,(J=0|u())^P,16)),0|(M=0|u()),0|v,0|I))^W,(v=0|u())^q,63),W=0|u(),N=0|Yt((z=0|Sn(0|(B=0|Yt(C^(ue=0|Sn(0|(le=0|Sn(0|U,0|N,0|l,0|le)),0|u(),0|ce,0|ue)),B^(ce=0|u()),32)),0|(C=0|u()),0|X,0|z))^U,(X=0|u())^N,24),U=0|u(),U=0|Yt((X=0|Sn(0|(C=0|Yt((j=0|Sn(0|(j=0|Sn(0|ue,0|ce,0|T,0|j)),0|u(),0|N,0|U))^B,(T=0|u())^C,16)),0|(B=0|u()),0|z,0|X))^N,(z=0|u())^U,63),N=0|u(),S=0|Yt((H=0|Sn(0|(Z=0|Yt((oe=0|Sn(0|(se=0|Sn(0|x,0|S,0|c,0|se)),0|u(),0|ae,0|oe))^ee,(ae=0|u())^Z,32)),0|(ee=0|u()),0|L,0|H))^x,(L=0|u())^S,24),x=0|u(),x=0|Yt((L=0|Sn(0|(ee=0|Yt((_=0|Sn(0|(_=0|Sn(0|oe,0|ae,0|k,0|_)),0|u(),0|S,0|x))^Z,(k=0|u())^ee,16)),0|(Z=0|u()),0|H,0|L))^S,(H=0|u())^x,63),S=0|u(),W=0|Yt((z=0|Sn(0|(Z=0|Yt(ee^(ne=0|Sn(0|(ne=0|Sn(0|ie,0|re,0|te,0|ne)),0|u(),0|q,0|W)),Z^(te=0|u()),32)),0|(ee=0|u()),0|X,0|z))^q,(X=0|u())^W,24),q=0|u(),g=0|Sn(0|(g=0|Sn(0|ne,0|te,0|p,0|g)),0|u(),0|W,0|q),p=0|u(),i[o>>2]=g,i[o+4>>2]=p,ee=0|Yt(g^Z,p^ee,16),Z=0|u(),i[o+120>>2]=ee,i[o+120+4>>2]=Z,X=0|Sn(0|ee,0|Z,0|z,0|X),z=0|u(),i[o+80>>2]=X,i[o+80+4>>2]=z,q=0|Yt(X^W,z^q,63),z=0|u(),i[o+40>>2]=q,i[o+40+4>>2]=z,N=0|Yt((H=0|Sn(0|(K=0|Yt((Y=0|Sn(0|(Y=0|Sn(0|V,0|J,0|$,0|Y)),0|u(),0|U,0|N))^G,($=0|u())^K,32)),0|(G=0|u()),0|L,0|H))^U,(L=0|u())^N,24),U=0|u(),f=0|Sn(0|(f=0|Sn(0|Y,0|$,0|h,0|f)),0|u(),0|N,0|U),h=0|u(),i[o+8>>2]=f,i[o+8+4>>2]=h,G=0|Yt(f^K,h^G,16),K=0|u(),i[o+96>>2]=G,i[o+96+4>>2]=K,L=0|Sn(0|G,0|K,0|H,0|L),H=0|u(),i[o+88>>2]=L,i[o+88+4>>2]=H,U=0|Yt(L^N,H^U,63),H=0|u(),i[o+48>>2]=U,i[o+48+4>>2]=H,S=0|Yt((t=0|Sn(0|(M=0|Yt((R=0|Sn(0|(R=0|Sn(0|j,0|T,0|O,0|R)),0|u(),0|x,0|S))^P,(O=0|u())^M,32)),0|(P=0|u()),0|d,0|t))^x,(d=0|u())^S,24),x=0|u(),F=0|Sn(0|(F=0|Sn(0|R,0|O,0|D,0|F)),0|u(),0|S,0|x),D=0|u(),i[o+16>>2]=F,i[o+16+4>>2]=D,P=0|Yt(F^M,D^P,16),D=0|u(),i[o+104>>2]=P,i[o+104+4>>2]=D,d=0|Sn(0|P,0|D,0|t,0|d),t=0|u(),i[o+64>>2]=d,i[o+64+4>>2]=t,x=0|Yt(d^S,t^x,63),S=0|u(),i[o+56>>2]=x,i[o+56+4>>2]=S,b=0|Yt((v=0|Sn(0|(B=0|Yt((k=0|Sn(0|(Q=0|Sn(0|m,0|b,0|s,0|Q)),0|u(),0|_,0|k))^C,(_=0|u())^B,32)),0|(C=0|u()),0|I,0|v))^m,(I=0|u())^b,24),m=0|u(),E=0|Sn(0|(E=0|Sn(0|k,0|_,0|w,0|E)),0|u(),0|b,0|m),w=0|u(),i[o+24>>2]=E,i[o+24+4>>2]=w,C=0|Yt(E^B,w^C,16),w=0|u(),i[o+112>>2]=C,i[o+112+4>>2]=w,I=0|Sn(0|C,0|w,0|v,0|I),v=0|u(),i[o+72>>2]=I,i[o+72+4>>2]=v,m=0|Yt(I^b,v^m,63),v=0|u(),i[o+32>>2]=m,i[o+32+4>>2]=v,d=g^(a[e>>0]|a[e+1>>0]<<8|a[e+2>>0]<<16|a[e+3>>0]<<24)^d,t=p^(a[e+4>>0]|a[e+4+1>>0]<<8|a[e+4+2>>0]<<16|a[e+4+3>>0]<<24)^t,r[e>>0]=d,r[e+1>>0]=d>>8,r[e+2>>0]=d>>16,r[e+3>>0]=d>>24,r[e+4>>0]=t,r[e+4+1>>0]=t>>8,r[e+4+2>>0]=t>>16,r[e+4+3>>0]=t>>24,t=1;ye=o+(t+8<<3)|0,ge=f^(a[(ve=e+(t<<3)|0)>>0]|a[ve+1>>0]<<8|a[ve+2>>0]<<16|a[ve+3>>0]<<24)^i[ye>>2],ye=h^(a[ve+4>>0]|a[ve+4+1>>0]<<8|a[ve+4+2>>0]<<16|a[ve+4+3>>0]<<24)^i[ye+4>>2],r[ve>>0]=ge,r[ve+1>>0]=ge>>8,r[ve+2>>0]=ge>>16,r[ve+3>>0]=ge>>24,r[ve+4>>0]=ye,r[ve+4+1>>0]=ye>>8,r[ve+4+2>>0]=ye>>16,r[ve+4+3>>0]=ye>>24,8!=(0|(t=t+1|0));)f=0|i[o+(t<<3)>>2],h=0|i[o+(t<<3)+4>>2];y=n}function m(e,t,n,i){e|=0,n|=0,i|=0;var a,o,s,c,l,A,f,h,p,d,g,y,v,m,b,I,w,C,B,E,_,k=0,Q=0,S=0,x=0,D=0,P=0,M=0,F=0,O=0,R=0,T=0,j=0,H=0,U=0,N=0,L=0,K=0,G=0,$=0,Y=0,J=0,V=0,z=0,q=0,W=0,X=0,Z=0,ee=0,te=0,ne=0,re=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,le=0,Ae=0,fe=0,he=0,pe=0,de=0,ge=0,ye=0,ve=0,me=0,be=0,Ie=0,we=0,Ce=0,Be=0,Ee=0,_e=0,ke=0,Qe=0,Se=0,xe=0,De=0,Pe=0,Me=0,Fe=0,Oe=0,Re=0,Te=0,je=0,He=0,Ue=0,Ne=0,Le=0,Ke=0,Ge=0,$e=0,Ye=0,Je=0,Ve=0,ze=0,qe=0,We=0,Xe=0,Ze=0,et=0,tt=0,nt=0,rt=0,it=0,at=0,ot=0,st=0,ct=0,ut=0,lt=0,At=0,ft=0,ht=0,pt=0,dt=0,gt=0,yt=0,vt=0,bt=0,It=0,wt=0,Ct=0,Bt=0,Et=0,_t=0,kt=0,Qt=0,St=0,xt=0,Dt=0,Pt=0,Mt=0,Ft=0,Ot=0,Rt=0,Tt=0,jt=0,Ht=0,Ut=0,Nt=0,Lt=0,Kt=0,Gt=0,$t=0,Yt=0,Jt=0,Vt=0,zt=0,qt=0,Xt=0,en=0,nn=0,rn=0,an=0,on=0,sn=0,un=0,ln=0,An=0,hn=0,pn=0,dn=0,gn=0,yn=0,vn=0,mn=0,bn=0,In=0,wn=0,Cn=0,Bn=0;ge=0|Wt(0|r[(t|=0)>>0],0|r[t+1>>0],0|r[t+2>>0]),u(),Mt=0|fn(0|(Mt=0|mt(t+2|0)),0|u(),5),u(),Bt=0|fn(0|(Bt=0|Wt(0|r[t+5>>0],0|r[t+6>>0],0|r[t+7>>0])),0|u(),2),u(),Pt=0|fn(0|(Pt=0|mt(t+7|0)),0|u(),7),u(),yt=0|fn(0|(yt=0|mt(t+10|0)),0|u(),4),u(),ie=0|fn(0|(ie=0|Wt(0|r[t+13>>0],0|r[t+14>>0],0|r[t+15>>0])),0|u(),1),u(),Ie=0|fn(0|(Ie=0|mt(t+15|0)),0|u(),6),u(),k=0|fn(0|(k=0|Wt(0|r[t+18>>0],0|r[t+19>>0],0|r[t+20>>0])),0|u(),3),u(),ae=0|Wt(0|r[t+21>>0],0|r[t+22>>0],0|r[t+23>>0]),u(),J=0|fn(0|(J=0|mt(t+23|0)),0|u(),5),u(),Be=0|fn(0|(Be=0|Wt(0|r[t+26>>0],0|r[t+27>>0],0|r[t+28>>0])),0|u(),2),u(),Qe=0|fn(0|(Qe=0|mt(t+28|0)),0|u(),7),Se=0|u(),Gt=0|Wt(0|r[n>>0],0|r[n+1>>0],0|r[n+2>>0]),u(),bt=0|fn(0|(bt=0|mt(n+2|0)),0|u(),5),u(),nt=0|fn(0|(nt=0|Wt(0|r[n+5>>0],0|r[n+6>>0],0|r[n+7>>0])),0|u(),2),u(),Q=0|fn(0|(Q=0|mt(n+7|0)),0|u(),7),u(),S=0|fn(0|(S=0|mt(n+10|0)),0|u(),4),u(),L=0|fn(0|(L=0|Wt(0|r[n+13>>0],0|r[n+14>>0],0|r[n+15>>0])),0|u(),1),u(),ze=0|fn(0|(ze=0|mt(n+15|0)),0|u(),6),u(),ve=0|fn(0|(ve=0|Wt(0|r[n+18>>0],0|r[n+19>>0],0|r[n+20>>0])),0|u(),3),u(),je=0|Wt(0|r[n+21>>0],0|r[n+22>>0],0|r[n+23>>0]),u(),te=0|fn(0|(te=0|mt(n+23|0)),0|u(),5),u(),Ht=0|fn(0|(Ht=0|Wt(0|r[n+26>>0],0|r[n+27>>0],0|r[n+28>>0])),0|u(),2),u(),he=0|fn(0|(he=0|mt(n+28|0)),0|u(),7),fe=0|u(),Ne=0|Wt(0|r[i>>0],0|r[i+1>>0],0|r[i+2>>0]),u(),re=0|fn(0|(re=0|mt(i+2|0)),0|u(),5),u(),Ke=0|fn(0|(Ke=0|Wt(0|r[i+5>>0],0|r[i+6>>0],0|r[i+7>>0])),0|u(),2),u(),Oe=0|fn(0|(Oe=0|mt(i+7|0)),0|u(),7),u(),Te=0|fn(0|(Te=0|mt(i+10|0)),0|u(),4),u(),qe=0|fn(0|(qe=0|Wt(0|r[i+13>>0],0|r[i+14>>0],0|r[i+15>>0])),0|u(),1),u(),kt=0|fn(0|(kt=0|mt(i+15|0)),0|u(),6),u(),M=0|fn(0|(M=0|Wt(0|r[i+18>>0],0|r[i+19>>0],0|r[i+20>>0])),0|u(),3),u(),lt=0|Wt(0|r[i+21>>0],0|r[i+22>>0],0|r[i+23>>0]),u(),Ye=0|fn(0|(Ye=0|mt(i+23|0)),0|u(),5),u(),pe=0|fn(0|(pe=0|Wt(0|r[i+26>>0],0|r[i+27>>0],0|r[i+28>>0])),0|u(),2),u(),wt=0|fn(0|(wt=0|mt(i+28|0)),0|u(),7),Qt=0|u(),Ue=0|Sn(2097151&Ne|0,0,0|(Ue=0|Zt(2097151&Gt|0,0,2097151&ge|0,0)),0|u()),Ne=0|u(),I=0|Zt(2097151&bt|0,0,2097151&ge|0,0),b=0|u(),m=0|Zt(2097151&Gt|0,0,2097151&Mt|0,0),Ze=0|u(),X=0|Zt(2097151&nt|0,0,2097151&ge|0,0),Le=0|u(),Ke=0|Sn(0|(Le=0|Sn(0|(Fe=0|Sn(0|(W=0|Zt(2097151&bt|0,0,2097151&Mt|0,0)),0|u(),0|(Fe=0|Zt(2097151&Gt|0,0,2097151&Bt|0,0)),0|u())),0|u(),0|X,0|Le)),0|u(),2097151&Ke|0,0),Le=0|u(),X=0|Zt(2097151&Q|0,0,2097151&ge|0,0),Fe=0|u(),_=0|Zt(2097151&nt|0,0,2097151&Mt|0,0),W=0|u(),v=0|Zt(2097151&bt|0,0,2097151&Bt|0,0),y=0|u(),g=0|Zt(2097151&Gt|0,0,2097151&Pt|0,0),Bn=0|u(),Ae=0|Zt(2097151&S|0,0,2097151&ge|0,0),Re=0|u(),mn=0|Zt(2097151&Q|0,0,2097151&Mt|0,0),We=0|u(),In=0|Zt(2097151&nt|0,0,2097151&Bt|0,0),T=0|u(),Te=0|Sn(0|(Re=0|Sn(0|(We=0|Sn(0|(T=0|Sn(0|(bn=0|Sn(0|(wn=0|Zt(2097151&bt|0,0,2097151&Pt|0,0)),0|u(),0|(bn=0|Zt(2097151&Gt|0,0,2097151&yt|0,0)),0|u())),0|u(),0|In,0|T)),0|u(),0|mn,0|We)),0|u(),0|Ae,0|Re)),0|u(),2097151&Te|0,0),Re=0|u(),Ae=0|Zt(2097151&L|0,0,2097151&ge|0,0),We=0|u(),mn=0|Zt(2097151&S|0,0,2097151&Mt|0,0),T=0|u(),In=0|Zt(2097151&Q|0,0,2097151&Bt|0,0),bn=0|u(),E=0|Zt(2097151&nt|0,0,2097151&Pt|0,0),wn=0|u(),d=0|Zt(2097151&bt|0,0,2097151&yt|0,0),p=0|u(),h=0|Zt(2097151&Gt|0,0,2097151&ie|0,0),Cn=0|u(),t=0|Zt(2097151&ze|0,0,2097151&ge|0,0),It=0|u(),un=0|Zt(2097151&L|0,0,2097151&Mt|0,0),x=0|u(),An=0|Zt(2097151&S|0,0,2097151&Bt|0,0),P=0|u(),pn=0|Zt(2097151&Q|0,0,2097151&Pt|0,0),ln=0|u(),gn=0|Zt(2097151&nt|0,0,2097151&yt|0,0),hn=0|u(),kt=0|Sn(0|(It=0|Sn(0|(x=0|Sn(0|(P=0|Sn(0|(ln=0|Sn(0|(hn=0|Sn(0|(dn=0|Sn(0|(yn=0|Zt(2097151&bt|0,0,2097151&ie|0,0)),0|u(),0|(dn=0|Zt(2097151&Gt|0,0,2097151&Ie|0,0)),0|u())),0|u(),0|gn,0|hn)),0|u(),0|pn,0|ln)),0|u(),0|An,0|P)),0|u(),0|un,0|x)),0|u(),0|t,0|It)),0|u(),2097151&kt|0,0),It=0|u(),t=0|Zt(2097151&ve|0,0,2097151&ge|0,0),x=0|u(),un=0|Zt(2097151&ze|0,0,2097151&Mt|0,0),P=0|u(),An=0|Zt(2097151&L|0,0,2097151&Bt|0,0),ln=0|u(),pn=0|Zt(2097151&S|0,0,2097151&Pt|0,0),hn=0|u(),gn=0|Zt(2097151&Q|0,0,2097151&yt|0,0),dn=0|u(),B=0|Zt(2097151&nt|0,0,2097151&ie|0,0),yn=0|u(),f=0|Zt(2097151&bt|0,0,2097151&Ie|0,0),A=0|u(),l=0|Zt(2097151&Gt|0,0,2097151&k|0,0),vn=0|u(),Jt=0|Zt(2097151&je|0,0,2097151&ge|0,0),D=0|u(),Y=0|Zt(2097151&ve|0,0,2097151&Mt|0,0),At=0|u(),$t=0|Zt(2097151&ze|0,0,2097151&Bt|0,0),Yt=0|u(),zt=0|Zt(2097151&L|0,0,2097151&Pt|0,0),$=0|u(),Xt=0|Zt(2097151&S|0,0,2097151&yt|0,0),Vt=0|u(),nn=0|Zt(2097151&Q|0,0,2097151&ie|0,0),qt=0|u(),an=0|Zt(2097151&nt|0,0,2097151&Ie|0,0),en=0|u(),lt=0|Sn(0|(At=0|Sn(0|(D=0|Sn(0|(Yt=0|Sn(0|($=0|Sn(0|(Vt=0|Sn(0|(qt=0|Sn(0|(en=0|Sn(0|(rn=0|Sn(0|(on=0|Zt(2097151&bt|0,0,2097151&k|0,0)),0|u(),0|(rn=0|Zt(2097151&Gt|0,0,2097151&ae|0,0)),0|u())),0|u(),0|an,0|en)),0|u(),0|nn,0|qt)),0|u(),0|Xt,0|Vt)),0|u(),0|zt,0|$)),0|u(),0|$t,0|Yt)),0|u(),0|Jt,0|D)),0|u(),0|Y,0|At)),0|u(),2097151&lt|0,0),At=0|u(),Y=0|Zt(2097151&te|0,0,2097151&ge|0,0),D=0|u(),Jt=0|Zt(2097151&je|0,0,2097151&Mt|0,0),Yt=0|u(),$t=0|Zt(2097151&ve|0,0,2097151&Bt|0,0),$=0|u(),zt=0|Zt(2097151&ze|0,0,2097151&Pt|0,0),Vt=0|u(),Xt=0|Zt(2097151&L|0,0,2097151&yt|0,0),qt=0|u(),nn=0|Zt(2097151&S|0,0,2097151&ie|0,0),en=0|u(),an=0|Zt(2097151&Q|0,0,2097151&Ie|0,0),rn=0|u(),C=0|Zt(2097151&nt|0,0,2097151&k|0,0),on=0|u(),c=0|Zt(2097151&bt|0,0,2097151&ae|0,0),s=0|u(),o=0|Zt(2097151&Gt|0,0,2097151&J|0,0),sn=0|u(),ye=0|Zt(2097151&Ht|0,0,2097151&ge|0,0),de=0|u(),q=0|Zt(2097151&te|0,0,2097151&Mt|0,0),z=0|u(),st=0|Zt(2097151&je|0,0,2097151&Bt|0,0),ot=0|u(),Rt=0|Zt(2097151&ve|0,0,2097151&Pt|0,0),Ot=0|u(),oe=0|Zt(2097151&ze|0,0,2097151&yt|0,0),O=0|u(),_t=0|Zt(2097151&L|0,0,2097151&ie|0,0),Et=0|u(),tt=0|Zt(2097151&S|0,0,2097151&Ie|0,0),et=0|u(),ht=0|Zt(2097151&Q|0,0,2097151&k|0,0),ft=0|u(),V=0|Zt(2097151&nt|0,0,2097151&ae|0,0),i=0|u(),pe=0|Sn(0|(de=0|Sn(0|(z=0|Sn(0|(Ot=0|Sn(0|(ot=0|Sn(0|(O=0|Sn(0|(Et=0|Sn(0|(et=0|Sn(0|(ft=0|Sn(0|(i=0|Sn(0|(Lt=0|Sn(0|Zt(2097151&bt|0,0,2097151&J|0,0),0|(Nt=0|u()),0|(Lt=0|Zt(2097151&Gt|0,0,2097151&Be|0,0)),0|u())),0|u(),0|V,0|i)),0|u(),0|ht,0|ft)),0|u(),0|tt,0|et)),0|u(),0|_t,0|Et)),0|u(),0|oe,0|O)),0|u(),0|st,0|ot)),0|u(),0|Rt,0|Ot)),0|u(),0|q,0|z)),0|u(),0|ye,0|de)),0|u(),2097151&pe|0,0),de=0|u(),ge=0|Zt(0|he,0|fe,2097151&ge|0,0),ye=0|u(),z=0|Zt(2097151&Ht|0,0,2097151&Mt|0,0),q=0|u(),Ot=0|Zt(2097151&te|0,0,2097151&Bt|0,0),Rt=0|u(),ot=0|Zt(2097151&je|0,0,2097151&Pt|0,0),st=0|u(),O=0|Zt(2097151&ve|0,0,2097151&yt|0,0),oe=0|u(),Et=0|Zt(2097151&ze|0,0,2097151&ie|0,0),_t=0|u(),et=0|Zt(2097151&L|0,0,2097151&Ie|0,0),tt=0|u(),ft=0|Zt(2097151&S|0,0,2097151&k|0,0),ht=0|u(),i=0|Zt(2097151&Q|0,0,2097151&ae|0,0),V=0|u(),Lt=0|Zt(2097151&nt|0,0,2097151&J|0,0),Nt=0|u(),w=0|Zt(2097151&bt|0,0,2097151&Be|0,0),a=0|u(),Gt=0|Zt(2097151&Gt|0,0,0|Qe,0|Se),Kt=0|u(),Mt=0|Zt(0|he,0|fe,2097151&Mt|0,0),Ft=0|u(),me=0|Zt(2097151&Ht|0,0,2097151&Bt|0,0),Ct=0|u(),Tt=0|Zt(2097151&te|0,0,2097151&Pt|0,0),H=0|u(),Ce=0|Zt(2097151&je|0,0,2097151&yt|0,0),le=0|u(),ue=0|Zt(2097151&ve|0,0,2097151&ie|0,0),jt=0|u(),Pe=0|Zt(2097151&ze|0,0,2097151&Ie|0,0),N=0|u(),Ee=0|Zt(2097151&L|0,0,2097151&k|0,0),Me=0|u(),dt=0|Zt(2097151&S|0,0,2097151&ae|0,0),xe=0|u(),vt=0|Zt(2097151&Q|0,0,2097151&J|0,0),pt=0|u(),Ft=0|Sn(0|(Ct=0|Sn(0|(H=0|Sn(0|(jt=0|Sn(0|(le=0|Sn(0|(N=0|Sn(0|(Me=0|Sn(0|(xe=0|Sn(0|(pt=0|Sn(0|(bt=0|Sn(0|(Dt=0|Zt(2097151&nt|0,0,2097151&Be|0,0)),0|(rt=0|u()),0|(bt=0|Zt(2097151&bt|0,0,0|Qe,0|Se)),0|u())),0|u(),0|vt,0|pt)),0|u(),0|dt,0|xe)),0|u(),0|Ee,0|Me)),0|u(),0|Pe,0|N)),0|u(),0|Ce,0|le)),0|u(),0|ue,0|jt)),0|u(),0|Tt,0|H)),0|u(),0|me,0|Ct)),0|u(),0|Mt,0|Ft),Mt=0|u(),Bt=0|Zt(0|he,0|fe,2097151&Bt|0,0),Ct=0|u(),me=0|Zt(2097151&Ht|0,0,2097151&Pt|0,0),H=0|u(),Tt=0|Zt(2097151&te|0,0,2097151&yt|0,0),jt=0|u(),ue=0|Zt(2097151&je|0,0,2097151&ie|0,0),le=0|u(),Ce=0|Zt(2097151&ve|0,0,2097151&Ie|0,0),N=0|u(),Pe=0|Zt(2097151&ze|0,0,2097151&k|0,0),Me=0|u(),Ee=0|Zt(2097151&L|0,0,2097151&ae|0,0),xe=0|u(),dt=0|Zt(2097151&S|0,0,2097151&J|0,0),pt=0|u(),vt=0|Zt(2097151&Q|0,0,2097151&Be|0,0),bt=0|u(),nt=0|Zt(2097151&nt|0,0,0|Qe,0|Se),rt=0|u(),Pt=0|Zt(0|he,0|fe,2097151&Pt|0,0),Dt=0|u(),St=0|Zt(2097151&Ht|0,0,2097151&yt|0,0),gt=0|u(),K=0|Zt(2097151&te|0,0,2097151&ie|0,0),xt=0|u(),Je=0|Zt(2097151&je|0,0,2097151&Ie|0,0),Z=0|u(),R=0|Zt(2097151&ve|0,0,2097151&k|0,0),n=0|u(),F=0|Zt(2097151&ze|0,0,2097151&ae|0,0),Xe=0|u(),we=0|Zt(2097151&L|0,0,2097151&J|0,0),be=0|u(),Dt=0|Sn(0|(gt=0|Sn(0|(xt=0|Sn(0|(n=0|Sn(0|(Z=0|Sn(0|(Xe=0|Sn(0|(be=0|Sn(0|(Q=0|Sn(0|(Ut=0|Zt(2097151&S|0,0,2097151&Be|0,0)),0|(U=0|u()),0|(Q=0|Zt(2097151&Q|0,0,0|Qe,0|Se)),0|u())),0|u(),0|we,0|be)),0|u(),0|F,0|Xe)),0|u(),0|Je,0|Z)),0|u(),0|R,0|n)),0|u(),0|K,0|xt)),0|u(),0|St,0|gt)),0|u(),0|Pt,0|Dt),Pt=0|u(),yt=0|Zt(0|he,0|fe,2097151&yt|0,0),gt=0|u(),St=0|Zt(2097151&Ht|0,0,2097151&ie|0,0),xt=0|u(),K=0|Zt(2097151&te|0,0,2097151&Ie|0,0),n=0|u(),R=0|Zt(2097151&je|0,0,2097151&k|0,0),Z=0|u(),Je=0|Zt(2097151&ve|0,0,2097151&ae|0,0),Xe=0|u(),F=0|Zt(2097151&ze|0,0,2097151&J|0,0),be=0|u(),we=0|Zt(2097151&L|0,0,2097151&Be|0,0),Q=0|u(),S=0|Zt(2097151&S|0,0,0|Qe,0|Se),U=0|u(),ie=0|Zt(0|he,0|fe,2097151&ie|0,0),Ut=0|u(),at=0|Zt(2097151&Ht|0,0,2097151&Ie|0,0),ne=0|u(),ke=0|Zt(2097151&te|0,0,2097151&k|0,0),it=0|u(),G=0|Zt(2097151&je|0,0,2097151&ae|0,0),se=0|u(),ce=0|Zt(2097151&ve|0,0,2097151&J|0,0),_e=0|u(),Ut=0|Sn(0|(ne=0|Sn(0|(it=0|Sn(0|(_e=0|Sn(0|(se=0|Sn(0|(L=0|Sn(0|(j=0|Zt(2097151&ze|0,0,2097151&Be|0,0)),0|(Ve=0|u()),0|(L=0|Zt(2097151&L|0,0,0|Qe,0|Se)),0|u())),0|u(),0|G,0|se)),0|u(),0|ce,0|_e)),0|u(),0|ke,0|it)),0|u(),0|at,0|ne)),0|u(),0|ie,0|Ut),ie=0|u(),Ie=0|Zt(0|he,0|fe,2097151&Ie|0,0),ne=0|u(),at=0|Zt(2097151&Ht|0,0,2097151&k|0,0),it=0|u(),ke=0|Zt(2097151&te|0,0,2097151&ae|0,0),_e=0|u(),ce=0|Zt(2097151&je|0,0,2097151&J|0,0),se=0|u(),G=0|Zt(2097151&ve|0,0,2097151&Be|0,0),L=0|u(),ze=0|Zt(2097151&ze|0,0,0|Qe,0|Se),Ve=0|u(),k=0|Zt(0|he,0|fe,2097151&k|0,0),j=0|u(),Ge=0|Zt(2097151&Ht|0,0,2097151&ae|0,0),ee=0|u(),ut=0|Zt(2097151&te|0,0,2097151&J|0,0),$e=0|u(),He=0|Zt(2097151&je|0,0,2097151&Be|0,0),ct=0|u(),j=0|Sn(0|(ee=0|Sn(0|($e=0|Sn(0|(ct=0|Sn(0|(ve=0|Zt(2097151&ve|0,0,0|Qe,0|Se)),0|u(),0|He,0|ct)),0|u(),0|ut,0|$e)),0|u(),0|Ge,0|ee)),0|u(),0|k,0|j),k=0|u(),ae=0|Zt(0|he,0|fe,2097151&ae|0,0),ee=0|u(),Ge=0|Zt(2097151&Ht|0,0,2097151&J|0,0),$e=0|u(),ut=0|Zt(2097151&te|0,0,2097151&Be|0,0),ct=0|u(),je=0|Zt(2097151&je|0,0,0|Qe,0|Se),He=0|u(),J=0|Zt(0|he,0|fe,2097151&J|0,0),ve=0|u(),ve=0|Sn(0|(te=0|Sn(0|Zt(2097151&Ht|0,0,2097151&Be|0,0),0|(De=0|u()),0|(te=0|Zt(2097151&te|0,0,0|Qe,0|Se)),0|u())),0|u(),0|J,0|ve),J=0|u(),Ht=0|Sn(0|(Be=0|Zt(0|he,0|fe,2097151&Be|0,0)),0|(te=0|u()),0|(Ht=0|Zt(2097151&Ht|0,0,0|Qe,0|Se)),0|u()),te=0|u(),Se=0|Zt(0|he,0|fe,0|Qe,0|Se),Qe=0|u(),Be=0|fn(0|(fe=0|Sn(0|Ue,0|Ne,1048576,0)),0|(he=0|u()),21),De=0|u(),De=0|Sn(0|(re=0|Sn(0|(Ze=0|Sn(0|I,0|b,0|m,0|Ze)),0|u(),2097151&re|0,0)),0|u(),0|Be,0|De),Be=0|u(),he=0|Qn(0|Ue,0|Ne,-2097152&fe|0,4095&he|0),fe=0|u(),re=0|fn(0|(Ne=0|Sn(0|Ke,0|Le,1048576,0)),0|(Ue=0|u()),21),Ze=0|u(),Ze=0|Sn(0|(Oe=0|Sn(0|(Fe=0|Sn(0|(W=0|Sn(0|(Bn=0|Sn(0|v,0|y,0|g,0|Bn)),0|u(),0|_,0|W)),0|u(),0|X,0|Fe)),0|u(),2097151&Oe|0,0)),0|u(),0|re,0|Ze),re=0|u(),X=0|tn(0|(Oe=0|Sn(0|Te,0|Re,1048576,0)),0|(Fe=0|u()),21),W=0|u(),W=0|Sn(0|(qe=0|Sn(0|(We=0|Sn(0|(T=0|Sn(0|(bn=0|Sn(0|(wn=0|Sn(0|(Cn=0|Sn(0|d,0|p,0|h,0|Cn)),0|u(),0|E,0|wn)),0|u(),0|In,0|bn)),0|u(),0|mn,0|T)),0|u(),0|Ae,0|We)),0|u(),2097151&qe|0,0)),0|u(),0|X,0|W),X=0|u(),Ae=0|tn(0|(qe=0|Sn(0|kt,0|It,1048576,0)),0|(We=0|u()),21),T=0|u(),T=0|Sn(0|(M=0|Sn(0|(x=0|Sn(0|(P=0|Sn(0|(ln=0|Sn(0|(hn=0|Sn(0|(dn=0|Sn(0|(yn=0|Sn(0|(vn=0|Sn(0|f,0|A,0|l,0|vn)),0|u(),0|B,0|yn)),0|u(),0|gn,0|dn)),0|u(),0|pn,0|hn)),0|u(),0|An,0|ln)),0|u(),0|un,0|P)),0|u(),0|t,0|x)),0|u(),2097151&M|0,0)),0|u(),0|Ae,0|T),Ae=0|u(),t=0|tn(0|(M=0|Sn(0|lt,0|At,1048576,0)),0|(x=0|u()),21),P=0|u(),P=0|Sn(0|(Ye=0|Sn(0|(D=0|Sn(0|($=0|Sn(0|(Yt=0|Sn(0|(Vt=0|Sn(0|(qt=0|Sn(0|(en=0|Sn(0|(rn=0|Sn(0|(on=0|Sn(0|(sn=0|Sn(0|c,0|s,0|o,0|sn)),0|u(),0|C,0|on)),0|u(),0|an,0|rn)),0|u(),0|nn,0|en)),0|u(),0|Xt,0|qt)),0|u(),0|zt,0|Vt)),0|u(),0|Jt,0|Yt)),0|u(),0|$t,0|$)),0|u(),0|Y,0|D)),0|u(),2097151&Ye|0,0)),0|u(),0|t,0|P),t=0|u(),Y=0|tn(0|(Ye=0|Sn(0|pe,0|de,1048576,0)),0|(D=0|u()),21),$=0|u(),$=0|Sn(0|(Qt=0|Sn(0|(q=0|Sn(0|(ye=0|Sn(0|(Rt=0|Sn(0|(oe=0|Sn(0|(st=0|Sn(0|(_t=0|Sn(0|(tt=0|Sn(0|(ht=0|Sn(0|(V=0|Sn(0|(Nt=0|Sn(0|(Kt=0|Sn(0|w,0|a,0|Gt,0|Kt)),0|u(),0|Lt,0|Nt)),0|u(),0|i,0|V)),0|u(),0|ft,0|ht)),0|u(),0|et,0|tt)),0|u(),0|Et,0|_t)),0|u(),0|ot,0|st)),0|u(),0|O,0|oe)),0|u(),0|Ot,0|Rt)),0|u(),0|ge,0|ye)),0|u(),0|z,0|q)),0|u(),0|wt,0|Qt)),0|u(),0|Y,0|$),Y=0|u(),q=0|tn(0|(Qt=0|Sn(0|Ft,0|Mt,1048576,0)),0|(wt=0|u()),21),z=0|u(),z=0|Sn(0|(Ct=0|Sn(0|(H=0|Sn(0|(jt=0|Sn(0|(N=0|Sn(0|(le=0|Sn(0|(Me=0|Sn(0|(xe=0|Sn(0|(pt=0|Sn(0|(rt=0|Sn(0|vt,0|bt,0|nt,0|rt)),0|u(),0|dt,0|pt)),0|u(),0|Ee,0|xe)),0|u(),0|Pe,0|Me)),0|u(),0|ue,0|le)),0|u(),0|Ce,0|N)),0|u(),0|Tt,0|jt)),0|u(),0|me,0|H)),0|u(),0|Bt,0|Ct)),0|u(),0|q,0|z),q=0|u(),H=0|tn(0|(Ct=0|Sn(0|Dt,0|Pt,1048576,0)),0|(Bt=0|u()),21),me=0|u(),me=0|Sn(0|(gt=0|Sn(0|(xt=0|Sn(0|(n=0|Sn(0|(Xe=0|Sn(0|(Z=0|Sn(0|(be=0|Sn(0|(U=0|Sn(0|we,0|Q,0|S,0|U)),0|u(),0|F,0|be)),0|u(),0|R,0|Z)),0|u(),0|Je,0|Xe)),0|u(),0|K,0|n)),0|u(),0|St,0|xt)),0|u(),0|yt,0|gt)),0|u(),0|H,0|me),H=0|u(),xt=0|tn(0|(gt=0|Sn(0|Ut,0|ie,1048576,0)),0|(yt=0|u()),21),St=0|u(),St=0|Sn(0|(ne=0|Sn(0|(it=0|Sn(0|(_e=0|Sn(0|(L=0|Sn(0|(Ve=0|Sn(0|ce,0|se,0|ze,0|Ve)),0|u(),0|G,0|L)),0|u(),0|ke,0|_e)),0|u(),0|at,0|it)),0|u(),0|Ie,0|ne)),0|u(),0|xt,0|St),xt=0|u(),it=0|tn(0|(ne=0|Sn(0|j,0|k,1048576,0)),0|(Ie=0|u()),21),at=0|u(),at=0|Sn(0|(ee=0|Sn(0|($e=0|Sn(0|(He=0|Sn(0|ut,0|ct,0|je,0|He)),0|u(),0|Ge,0|$e)),0|u(),0|ae,0|ee)),0|u(),0|it,0|at),it=0|u(),Ie=0|Qn(0|j,0|k,-2097152&ne|0,0|Ie),ne=0|u(),ee=0|Sn(0|Ht,0|te,0|(ee=0|tn(0|(k=0|Sn(0|ve,0|J,1048576,0)),0|(j=0|u()),21)),0|u()),te=0|u(),j=0|Qn(0|ve,0|J,-2097152&k|0,0|j),k=0|u(),Ht=0|tn(0|(J=0|Sn(0|Se,0|Qe,1048576,0)),0|(ve=0|u()),21),ae=0|u(),ve=0|Qn(0|Se,0|Qe,-2097152&J|0,0|ve),J=0|u(),$e=0|fn(0|(Qe=0|Sn(0|De,0|Be,1048576,0)),0|(Se=0|u()),21),Ge=0|u(),Se=0|Qn(0|De,0|Be,-2097152&Qe|0,0|Se),Qe=0|u(),He=0|tn(0|(Be=0|Sn(0|Ze,0|re,1048576,0)),0|(De=0|u()),21),je=0|u(),De=0|Qn(0|Ze,0|re,-2097152&Be|0,0|De),Be=0|u(),ct=0|tn(0|(re=0|Sn(0|W,0|X,1048576,0)),0|(Ze=0|u()),21),ut=0|u(),Ze=0|Qn(0|W,0|X,-2097152&re|0,0|Ze),re=0|u(),_e=0|tn(0|(X=0|Sn(0|T,0|Ae,1048576,0)),0|(W=0|u()),21),ke=0|u(),Ve=0|tn(0|(L=0|Sn(0|P,0|t,1048576,0)),0|(G=0|u()),21),ze=0|u(),n=0|tn(0|(se=0|Sn(0|$,0|Y,1048576,0)),0|(ce=0|u()),21),K=0|u(),Z=0|tn(0|(Xe=0|Sn(0|z,0|q,1048576,0)),0|(Je=0|u()),21),R=0|u(),U=0|tn(0|(be=0|Sn(0|me,0|H,1048576,0)),0|(F=0|u()),21),S=0|u(),ne=0|Sn(0|(jt=0|tn(0|(Q=0|Sn(0|St,0|xt,1048576,0)),0|(we=0|u()),21)),0|u(),0|Ie,0|ne),Ie=0|u(),we=0|Qn(0|St,0|xt,-2097152&Q|0,0|we),Q=0|u(),k=0|Sn(0|(jt=0|tn(0|(xt=0|Sn(0|at,0|it,1048576,0)),0|(St=0|u()),21)),0|u(),0|j,0|k),j=0|u(),St=0|Qn(0|at,0|it,-2097152&xt|0,0|St),xt=0|u(),J=0|Sn(0|(jt=0|tn(0|(it=0|Sn(0|ee,0|te,1048576,0)),0|(at=0|u()),21)),0|u(),0|ve,0|J),ve=0|u(),at=0|Qn(0|ee,0|te,-2097152&it|0,0|at),it=0|u(),te=0|Zt(0|Ht,0|ae,666643,0),ee=0|u(),jt=0|Zt(0|Ht,0|ae,470296,0),Tt=0|u(),N=0|Zt(0|Ht,0|ae,654183,0),Ce=0|u(),le=0|Zt(0|Ht,0|ae,-997805,-1),ue=0|u(),Me=0|Zt(0|Ht,0|ae,136657,0),Pe=0|u(),S=0|Sn(0|(yt=0|Qn(0|(ae=0|Sn(0|Ut,0|ie,0|(ae=0|Zt(0|Ht,0|ae,-683901,-1)),0|u())),0|u(),-2097152&gt|0,0|yt)),0|u(),0|U,0|S),U=0|u(),yt=0|Zt(0|J,0|ve,666643,0),gt=0|u(),ae=0|Zt(0|J,0|ve,470296,0),ie=0|u(),Ut=0|Zt(0|J,0|ve,654183,0),Ht=0|u(),xe=0|Zt(0|J,0|ve,-997805,-1),Ee=0|u(),pt=0|Zt(0|J,0|ve,136657,0),dt=0|u(),ve=0|Zt(0|J,0|ve,-683901,-1),J=0|u(),rt=0|Zt(0|at,0|it,666643,0),nt=0|u(),bt=0|Zt(0|at,0|it,470296,0),vt=0|u(),ye=0|Zt(0|at,0|it,654183,0),ge=0|u(),Rt=0|Zt(0|at,0|it,-997805,-1),Ot=0|u(),oe=0|Zt(0|at,0|it,136657,0),O=0|u(),it=0|Zt(0|at,0|it,-683901,-1),at=0|u(),R=0|Sn(0|(Bt=0|Qn(0|(at=0|Sn(0|(dt=0|Sn(0|(ue=0|Sn(0|Dt,0|Pt,0|le,0|ue)),0|u(),0|pt,0|dt)),0|u(),0|it,0|at)),0|u(),-2097152&Ct|0,0|Bt)),0|u(),0|Z,0|R),Z=0|u(),Bt=0|Zt(0|k,0|j,666643,0),Ct=0|u(),at=0|Zt(0|k,0|j,470296,0),it=0|u(),dt=0|Zt(0|k,0|j,654183,0),pt=0|u(),ue=0|Zt(0|k,0|j,-997805,-1),le=0|u(),Pt=0|Zt(0|k,0|j,136657,0),Dt=0|u(),j=0|Zt(0|k,0|j,-683901,-1),k=0|u(),st=0|Zt(0|St,0|xt,666643,0),ot=0|u(),_t=0|Zt(0|St,0|xt,470296,0),Et=0|u(),tt=0|Zt(0|St,0|xt,654183,0),et=0|u(),ht=0|Zt(0|St,0|xt,-997805,-1),ft=0|u(),V=0|Zt(0|St,0|xt,136657,0),i=0|u(),xt=0|Zt(0|St,0|xt,-683901,-1),St=0|u(),K=0|Sn(0|(wt=0|Qn(0|(St=0|Sn(0|(Dt=0|Sn(0|(Mt=0|Sn(0|(Ot=0|Sn(0|(Tt=0|Sn(0|Ut,0|Ht,0|jt,0|Tt)),0|u(),0|Rt,0|Ot)),0|u(),0|Ft,0|Mt)),0|u(),0|Pt,0|Dt)),0|u(),0|xt,0|St)),0|u(),-2097152&Qt|0,0|wt)),0|u(),0|n,0|K),n=0|u(),We=0|Qn(0|(ut=0|Sn(0|(wt=0|Sn(0|kt,0|It,0|(wt=0|Zt(0|ne,0|Ie,666643,0)),0|u())),0|u(),0|ct,0|ut)),0|u(),-2097152&qe|0,0|We),qe=0|u(),ut=0|Zt(0|ne,0|Ie,470296,0),ct=0|u(),wt=0|Zt(0|ne,0|Ie,654183,0),It=0|u(),ke=0|Sn(0|(x=0|Qn(0|(At=0|Sn(0|(It=0|Sn(0|(Ct=0|Sn(0|_t,0|Et,0|Bt,0|Ct)),0|u(),0|wt,0|It)),0|u(),0|lt,0|At)),0|u(),-2097152&M|0,0|x)),0|u(),0|_e,0|ke),_e=0|u(),x=0|Zt(0|ne,0|Ie,-997805,-1),M=0|u(),At=0|Zt(0|ne,0|Ie,136657,0),lt=0|u(),D=0|Qn(0|(ze=0|Sn(0|(de=0|Sn(0|(lt=0|Sn(0|(ft=0|Sn(0|(pt=0|Sn(0|(gt=0|Sn(0|bt,0|vt,0|yt,0|gt)),0|u(),0|dt,0|pt)),0|u(),0|ht,0|ft)),0|u(),0|At,0|lt)),0|u(),0|pe,0|de)),0|u(),0|Ve,0|ze)),0|u(),-2097152&Ye|0,0|D),Ye=0|u(),Ie=0|Zt(0|ne,0|Ie,-683901,-1),ne=0|u(),de=0|tn(0|(ze=0|Sn(0|We,0|qe,1048576,0)),0|(Ve=0|u()),21),pe=0|u(),pe=0|Sn(0|(W=0|Qn(0|(Ae=0|Sn(0|(ot=0|Sn(0|ut,0|ct,0|st,0|ot)),0|u(),0|T,0|Ae)),0|u(),-2097152&X|0,0|W)),0|u(),0|de,0|pe),de=0|u(),Ae=0|tn(0|(W=0|Sn(0|ke,0|_e,1048576,0)),0|(X=0|u()),21),T=0|u(),T=0|Sn(0|(G=0|Qn(0|(t=0|Sn(0|(M=0|Sn(0|(et=0|Sn(0|(nt=0|Sn(0|at,0|it,0|rt,0|nt)),0|u(),0|tt,0|et)),0|u(),0|x,0|M)),0|u(),0|P,0|t)),0|u(),-2097152&L|0,0|G)),0|u(),0|Ae,0|T),Ae=0|u(),t=0|tn(0|(G=0|Sn(0|D,0|Ye,1048576,0)),0|(L=0|u()),21),P=0|u(),P=0|Sn(0|(ce=0|Qn(0|(Y=0|Sn(0|(ne=0|Sn(0|(i=0|Sn(0|(le=0|Sn(0|(ge=0|Sn(0|(ee=0|Sn(0|ae,0|ie,0|te,0|ee)),0|u(),0|ye,0|ge)),0|u(),0|ue,0|le)),0|u(),0|V,0|i)),0|u(),0|Ie,0|ne)),0|u(),0|$,0|Y)),0|u(),-2097152&se|0,0|ce)),0|u(),0|t,0|P),t=0|u(),Y=0|tn(0|(ce=0|Sn(0|K,0|n,1048576,0)),0|(se=0|u()),21),$=0|u(),$=0|Sn(0|(Je=0|Qn(0|(q=0|Sn(0|(k=0|Sn(0|(O=0|Sn(0|(Ce=0|Sn(0|xe,0|Ee,0|N,0|Ce)),0|u(),0|oe,0|O)),0|u(),0|j,0|k)),0|u(),0|z,0|q)),0|u(),-2097152&Xe|0,0|Je)),0|u(),0|Y,0|$),Y=0|u(),se=0|Qn(0|K,0|n,-2097152&ce|0,0|se),ce=0|u(),Je=0|tn(0|(n=0|Sn(0|R,0|Z,1048576,0)),0|(K=0|u()),21),Xe=0|u(),Xe=0|Sn(0|(F=0|Qn(0|(H=0|Sn(0|(Pe=0|Sn(0|ve,0|J,0|Me,0|Pe)),0|u(),0|me,0|H)),0|u(),-2097152&be|0,0|F)),0|u(),0|Je,0|Xe),Je=0|u(),K=0|Qn(0|R,0|Z,-2097152&n|0,0|K),n=0|u(),Q=0|Sn(0|(F=0|tn(0|(Z=0|Sn(0|S,0|U,1048576,0)),0|(R=0|u()),21)),0|u(),0|we,0|Q),we=0|u(),R=0|Qn(0|S,0|U,-2097152&Z|0,0|R),Z=0|u(),F=0|tn(0|(U=0|Sn(0|pe,0|de,1048576,0)),0|(S=0|u()),21),be=0|u(),Pe=0|tn(0|(H=0|Sn(0|T,0|Ae,1048576,0)),0|(me=0|u()),21),Me=0|u(),ce=0|Sn(0|(q=0|tn(0|(J=0|Sn(0|P,0|t,1048576,0)),0|(ve=0|u()),21)),0|u(),0|se,0|ce),se=0|u(),ve=0|Qn(0|P,0|t,-2097152&J|0,0|ve),J=0|u(),n=0|Sn(0|(q=0|tn(0|(t=0|Sn(0|$,0|Y,1048576,0)),0|(P=0|u()),21)),0|u(),0|K,0|n),K=0|u(),P=0|Qn(0|$,0|Y,-2097152&t|0,0|P),t=0|u(),Z=0|Sn(0|(q=0|tn(0|(Y=0|Sn(0|Xe,0|Je,1048576,0)),0|($=0|u()),21)),0|u(),0|R,0|Z),R=0|u(),$=0|Qn(0|Xe,0|Je,-2097152&Y|0,0|$),Y=0|u(),Je=0|Sn(0|Ze,0|re,0|(Je=0|Zt(0|Q,0|we,666643,0)),0|u()),re=0|u(),Ze=0|Zt(0|Q,0|we,470296,0),Xe=0|u(),q=0|Zt(0|Q,0|we,654183,0),z=0|u(),k=0|Zt(0|Q,0|we,-997805,-1),j=0|u(),O=0|Zt(0|Q,0|we,136657,0),oe=0|u(),L=0|Qn(0|(Me=0|Sn(0|(we=0|Sn(0|D,0|Ye,0|(we=0|Zt(0|Q,0|we,-683901,-1)),0|u())),0|u(),0|Pe,0|Me)),0|u(),-2097152&G|0,0|L),G=0|u(),Me=0|Zt(0|Z,0|R,666643,0),Pe=0|u(),we=0|Sn(0|Je,0|re,0|(we=0|Zt(0|Z,0|R,470296,0)),0|u()),re=0|u(),Je=0|Zt(0|Z,0|R,654183,0),Ye=0|u(),D=0|Zt(0|Z,0|R,-997805,-1),Q=0|u(),Ce=0|Zt(0|Z,0|R,136657,0),N=0|u(),R=0|Zt(0|Z,0|R,-683901,-1),Z=0|u(),Ee=0|Sn(0|De,0|Be,0|(Ee=0|Zt(0|$,0|Y,666643,0)),0|u()),Be=0|u(),De=0|Zt(0|$,0|Y,470296,0),xe=0|u(),ne=0|Sn(0|we,0|re,0|(ne=0|Zt(0|$,0|Y,654183,0)),0|u()),re=0|u(),we=0|Zt(0|$,0|Y,-997805,-1),Ie=0|u(),i=0|Zt(0|$,0|Y,136657,0),V=0|u(),Y=0|Zt(0|$,0|Y,-683901,-1),$=0|u(),$=0|Sn(0|(N=0|Sn(0|(X=0|Qn(0|(be=0|Sn(0|(j=0|Sn(0|ke,0|_e,0|k,0|j)),0|u(),0|F,0|be)),0|u(),-2097152&W|0,0|X)),0|u(),0|Ce,0|N)),0|u(),0|Y,0|$),Y=0|u(),N=0|Zt(0|n,0|K,666643,0),Ce=0|u(),X=0|Zt(0|n,0|K,470296,0),W=0|u(),be=0|Zt(0|n,0|K,654183,0),F=0|u(),j=0|Zt(0|n,0|K,-997805,-1),k=0|u(),_e=0|Zt(0|n,0|K,136657,0),ke=0|u(),K=0|Zt(0|n,0|K,-683901,-1),n=0|u(),le=0|Zt(0|P,0|t,666643,0),ue=0|u(),ge=0|Zt(0|P,0|t,470296,0),ye=0|u(),ee=0|Zt(0|P,0|t,654183,0),te=0|u(),ie=0|Zt(0|P,0|t,-997805,-1),ae=0|u(),M=0|Zt(0|P,0|t,136657,0),x=0|u(),t=0|Zt(0|P,0|t,-683901,-1),P=0|u(),P=0|Sn(0|(ke=0|Sn(0|(Ie=0|Sn(0|(Ye=0|Sn(0|(Ve=0|Qn(0|(qe=0|Sn(0|Ze,0|Xe,0|We,0|qe)),0|u(),-2097152&ze|0,0|Ve)),0|u(),0|Je,0|Ye)),0|u(),0|we,0|Ie)),0|u(),0|_e,0|ke)),0|u(),0|t,0|P),t=0|u(),fe=0|Sn(0|(ke=0|Zt(0|ce,0|se,666643,0)),0|u(),0|he,0|fe),he=0|u(),ke=0|Zt(0|ce,0|se,470296,0),_e=0|u(),Ie=0|Zt(0|ce,0|se,654183,0),we=0|u(),ye=0|Sn(0|(Ce=0|Sn(0|(we=0|Sn(0|(Ue=0|Qn(0|(Le=0|Sn(0|$e,0|Ge,0|Ke,0|Le)),0|u(),-2097152&Ne|0,0|Ue)),0|u(),0|Ie,0|we)),0|u(),0|N,0|Ce)),0|u(),0|ge,0|ye),ge=0|u(),Ce=0|Zt(0|ce,0|se,-997805,-1),N=0|u(),we=0|Zt(0|ce,0|se,136657,0),Ie=0|u(),ae=0|Sn(0|(F=0|Sn(0|(Ie=0|Sn(0|(xe=0|Sn(0|(Pe=0|Sn(0|(Fe=0|Qn(0|(Re=0|Sn(0|He,0|je,0|Te,0|Re)),0|u(),-2097152&Oe|0,0|Fe)),0|u(),0|Me,0|Pe)),0|u(),0|De,0|xe)),0|u(),0|we,0|Ie)),0|u(),0|be,0|F)),0|u(),0|ie,0|ae),ie=0|u(),se=0|Zt(0|ce,0|se,-683901,-1),ce=0|u(),Ie=0|tn(0|(F=0|Sn(0|fe,0|he,1048576,0)),0|(be=0|u()),21),we=0|u(),we=0|Sn(0|(ue=0|Sn(0|(_e=0|Sn(0|Se,0|Qe,0|ke,0|_e)),0|u(),0|le,0|ue)),0|u(),0|Ie,0|we),Ie=0|u(),be=0|Qn(0|fe,0|he,-2097152&F|0,0|be),F=0|u(),ue=0|tn(0|(he=0|Sn(0|ye,0|ge,1048576,0)),0|(fe=0|u()),21),le=0|u(),le=0|Sn(0|(te=0|Sn(0|(W=0|Sn(0|(N=0|Sn(0|Ee,0|Be,0|Ce,0|N)),0|u(),0|X,0|W)),0|u(),0|ee,0|te)),0|u(),0|ue,0|le),ue=0|u(),W=0|tn(0|(te=0|Sn(0|ae,0|ie,1048576,0)),0|(ee=0|u()),21),X=0|u(),X=0|Sn(0|(x=0|Sn(0|(k=0|Sn(0|(ce=0|Sn(0|ne,0|re,0|se,0|ce)),0|u(),0|j,0|k)),0|u(),0|M,0|x)),0|u(),0|W,0|X),W=0|u(),k=0|tn(0|(x=0|Sn(0|P,0|t,1048576,0)),0|(M=0|u()),21),j=0|u(),j=0|Sn(0|(n=0|Sn(0|(V=0|Sn(0|(Q=0|Sn(0|(S=0|Qn(0|(z=0|Sn(0|pe,0|de,0|q,0|z)),0|u(),-2097152&U|0,0|S)),0|u(),0|D,0|Q)),0|u(),0|i,0|V)),0|u(),0|K,0|n)),0|u(),0|k,0|j),k=0|u(),M=0|Qn(0|P,0|t,-2097152&x|0,0|M),x=0|u(),n=0|tn(0|(t=0|Sn(0|$,0|Y,1048576,0)),0|(P=0|u()),21),K=0|u(),K=0|Sn(0|(me=0|Qn(0|(Ae=0|Sn(0|(oe=0|Sn(0|R,0|Z,0|O,0|oe)),0|u(),0|T,0|Ae)),0|u(),-2097152&H|0,0|me)),0|u(),0|n,0|K),n=0|u(),P=0|Qn(0|$,0|Y,-2097152&t|0,0|P),t=0|u(),me=0|Sn(0|ve,0|J,0|(me=0|tn(0|(Y=0|Sn(0|L,0|G,1048576,0)),0|($=0|u()),21)),0|u()),J=0|u(),Ae=0|tn(0|(ve=0|Sn(0|we,0|Ie,1048576,0)),0|(H=0|u()),21),T=0|u(),Z=0|tn(0|(oe=0|Sn(0|le,0|ue,1048576,0)),0|(O=0|u()),21),R=0|u(),Q=0|Sn(0|M,0|x,0|(Q=0|tn(0|(V=0|Sn(0|X,0|W,1048576,0)),0|(i=0|u()),21)),0|u()),x=0|u(),S=0|Sn(0|P,0|t,0|(S=0|tn(0|(M=0|Sn(0|j,0|k,1048576,0)),0|(D=0|u()),21)),0|u()),t=0|u(),D=0|Qn(0|j,0|k,-2097152&M|0,0|D),M=0|u(),P=0|tn(0|(k=0|Sn(0|K,0|n,1048576,0)),0|(j=0|u()),21),U=0|u(),j=0|Qn(0|K,0|n,-2097152&k|0,0|j),k=0|u(),z=0|tn(0|(n=0|Sn(0|me,0|J,1048576,0)),0|(K=0|u()),21),q=0|u(),K=0|Qn(0|me,0|J,-2097152&n|0,0|K),n=0|u(),J=0|Sn(0|be,0|F,0|(J=0|Zt(0|z,0|q,666643,0)),0|u()),F=0|u(),be=0|Zt(0|z,0|q,470296,0),me=0|u(),de=0|Zt(0|z,0|q,654183,0),pe=0|u(),ce=0|Zt(0|z,0|q,-997805,-1),se=0|u(),re=0|Zt(0|z,0|q,136657,0),ne=0|u(),q=0|Zt(0|z,0|q,-683901,-1),z=0|u(),F=0|tn(0|J,0|F,21),N=0|u(),F=0|tn(0|(N=0|Sn(0|(H=0|Qn(0|(me=0|Sn(0|we,0|Ie,0|be,0|me)),0|u(),-2097152&ve|0,0|H)),0|u(),0|F,0|N)),0|u(),21),H=0|u(),F=0|tn(0|(H=0|Sn(0|(T=0|Sn(0|(fe=0|Qn(0|(pe=0|Sn(0|ye,0|ge,0|de,0|pe)),0|u(),-2097152&he|0,0|fe)),0|u(),0|Ae,0|T)),0|u(),0|F,0|H)),0|u(),21),T=0|u(),F=0|tn(0|(T=0|Sn(0|(O=0|Qn(0|(se=0|Sn(0|le,0|ue,0|ce,0|se)),0|u(),-2097152&oe|0,0|O)),0|u(),0|F,0|T)),0|u(),21),O=0|u(),F=0|tn(0|(O=0|Sn(0|(R=0|Sn(0|(ee=0|Qn(0|(ne=0|Sn(0|ae,0|ie,0|re,0|ne)),0|u(),-2097152&te|0,0|ee)),0|u(),0|Z,0|R)),0|u(),0|F,0|O)),0|u(),21),R=0|u(),j=0|tn(0|(k=0|Sn(0|(t=0|tn(0|(D=0|Sn(0|S,0|t,0|(D=0|tn(0|(M=0|Sn(0|(x=0|tn(0|(F=0|Sn(0|Q,0|x,0|(F=0|tn(0|(R=0|Sn(0|(i=0|Qn(0|(z=0|Sn(0|X,0|W,0|q,0|z)),0|u(),-2097152&V|0,0|i)),0|u(),0|F,0|R)),0|u(),21)),0|u())),0|u(),21)),0|u(),0|D,0|M)),0|u(),21)),0|u())),0|u(),21)),0|u(),0|j,0|k)),0|u(),21),t=0|u(),J=0|Sn(0|($=0|Zt(0|(K=0|tn(0|(n=0|Sn(0|(j=0|tn(0|(t=0|Sn(0|($=0|Qn(0|(G=0|Sn(0|P,0|U,0|L,0|G)),0|u(),-2097152&Y|0,0|$)),0|u(),0|j,0|t)),0|u(),21)),0|u(),0|K,0|n)),0|u(),21)),0|(j=0|u()),666643,0)),0|u(),2097151&J|0,0),$=0|u(),N=0|Sn(0|(Y=0|Zt(0|K,0|j,470296,0)),0|u(),2097151&N|0,0),Y=0|u(),H=0|Sn(0|(G=0|Zt(0|K,0|j,654183,0)),0|u(),2097151&H|0,0),G=0|u(),T=0|Sn(0|(L=0|Zt(0|K,0|j,-997805,-1)),0|u(),2097151&T|0,0),L=0|u(),O=0|Sn(0|(U=0|Zt(0|K,0|j,136657,0)),0|u(),2097151&O|0,0),U=0|u(),n=0|Sn(0|(i=0|tn(0|(t=0|Sn(0|(Q=0|tn(0|(k=0|Sn(0|(x=0|tn(0|(D=0|Sn(0|(S=0|tn(0|(M=0|Sn(0|(P=0|tn(0|(F=0|Sn(0|(R=0|tn(0|(O=0|Sn(0|(R=0|Sn(0|(j=0|Zt(0|K,0|j,-683901,-1)),0|u(),2097151&R|0,0)),0|(j=0|u()),0|(O=0|tn(0|(T=0|Sn(0|O,0|U,0|(T=0|tn(0|(H=0|Sn(0|T,0|L,0|(H=0|tn(0|(N=0|Sn(0|H,0|G,0|(N=0|tn(0|(K=0|Sn(0|N,0|Y,0|(K=0|tn(0|J,0|$,21)),0|u())),0|(Y=0|u()),21)),0|u())),0|(G=0|u()),21)),0|u())),0|(L=0|u()),21)),0|u())),0|(U=0|u()),21)),0|u())),0|(j=0|u()),21)),0|u(),2097151&F|0,0)),0|(R=0|u()),21)),0|u(),2097151&M|0,0)),0|(P=0|u()),21)),0|u(),2097151&D|0,0)),0|(S=0|u()),21)),0|u(),2097151&k|0,0)),0|(x=0|u()),21)),0|u(),2097151&t|0,0)),0|(Q=0|u()),21)),0|u(),2097151&n|0,0),i=0|u(),r[e>>0]=J,V=0|fn(0|J,0|$,8),u(),r[e+1>>0]=V,$=0|fn(0|J,0|$,16),u(),J=0|cn(2097151&K|0,0,5),u(),r[e+2>>0]=J|31&$,$=0|fn(0|K,0|Y,3),u(),r[e+3>>0]=$,Y=0|fn(0|K,0|Y,11),u(),r[e+4>>0]=Y,K=0|fn(2097151&K|0,0,19),Y=0|u(),$=0|cn(2097151&N|0,0,2),u(),r[e+5>>0]=$|K,G=0|fn(0|N,0|G,6),u(),r[e+6>>0]=G,N=0|fn(2097151&N|0,0,14),G=0|u(),K=0|cn(2097151&H|0,0,7),u(),r[e+7>>0]=K|N,N=0|fn(0|H,0|L,1),u(),r[e+8>>0]=N,L=0|fn(0|H,0|L,9),u(),r[e+9>>0]=L,H=0|fn(2097151&H|0,0,17),L=0|u(),N=0|cn(2097151&T|0,0,4),u(),r[e+10>>0]=N|H,H=0|fn(0|T,0|U,4),u(),r[e+11>>0]=H,U=0|fn(0|T,0|U,12),u(),r[e+12>>0]=U,T=0|fn(2097151&T|0,0,20),U=0|u(),H=0|cn(2097151&O|0,0,1),u(),r[e+13>>0]=H|T,j=0|fn(0|O,0|j,7),u(),r[e+14>>0]=j,O=0|fn(2097151&O|0,0,15),j=0|u(),T=0|cn(2097151&F|0,0,6),u(),r[e+15>>0]=T|O,O=0|fn(0|F,0|R,2),u(),r[e+16>>0]=O,R=0|fn(0|F,0|R,10),u(),r[e+17>>0]=R,F=0|fn(2097151&F|0,0,18),R=0|u(),O=0|cn(0|M,0|P,3),u(),r[e+18>>0]=O|F,F=0|fn(0|M,0|P,5),u(),r[e+19>>0]=F,P=0|fn(0|M,0|P,13),u(),r[e+20>>0]=P,r[e+21>>0]=D,P=0|fn(0|D,0|S,8),u(),r[e+22>>0]=P,S=0|fn(0|D,0|S,16),u(),D=0|cn(2097151&k|0,0,5),u(),r[e+23>>0]=D|31&S,S=0|fn(0|k,0|x,3),u(),r[e+24>>0]=S,x=0|fn(0|k,0|x,11),u(),r[e+25>>0]=x,k=0|fn(2097151&k|0,0,19),x=0|u(),S=0|cn(2097151&t|0,0,2),u(),r[e+26>>0]=S|k,Q=0|fn(0|t,0|Q,6),u(),r[e+27>>0]=Q,t=0|fn(2097151&t|0,0,14),Q=0|u(),k=0|cn(0|n,0|i,7),u(),r[e+28>>0]=k|t,t=0|fn(0|n,0|i,1),u(),r[e+29>>0]=t,t=0|fn(0|n,0|i,9),u(),r[e+30>>0]=t,i=0|tn(0|n,0|i,17),u(),r[e+31>>0]=i}function b(e,t,n,r){e|=0,r|=0;var a=0,o=0,s=0,c=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,y=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0,E=0,_=0,k=0,Q=0,S=0,x=0,D=0,P=0,M=0,F=0,O=0,R=0,T=0,j=0,H=0,U=0,N=0,L=0,K=0,G=0;!function(e,t){e|=0,t|=0;var n=0,r=0,a=0,o=0;n=0;do{o=0|Le(t+(n<<3)|0),a=0|u(),i[(r=e+(n<<3)|0)>>2]=o,i[r+4>>2]=a,n=n+1|0}while(16!=(0|n))}(n|=0,t|=0),a=e,o=(t=r)+64|0;do{i[t>>2]=i[a>>2],t=t+4|0,a=a+4|0}while((0|t)<(0|o));t=0|i[n>>2],a=0|i[n+4>>2],b=0;do{if(y=0|Yt(B=0|i[r+32>>2],c=0|i[r+32+4>>2],14),h=0|u(),Q=0|Yt(B,c,18),h=(0|u())^h,N=0|Yt(B,c,41),h^=0|u(),O=0|i[r+40>>2],s=0|i[r+40+4>>2],m=0|i[r+48>>2],o=0|i[r+48+4>>2],l=0|i[(T=32416+(b<<3)|0)>>2],T=0|i[T+4>>2],p=0|i[r+56>>2],C=0|i[r+56+4>>2],T=0|Sn(0|(C=0|Sn(0|(T=0|Sn(0|(T=0|Sn(0|(h=0|Sn(0|t,0|a,Q^y^N|0,0|h)),0|u(),0|l,0|T)),0|u(),(m^O)&B^m|0,(o^s)&c^o|0)),0|u(),0|p,0|C)),0|(p=0|u()),0|i[r+24>>2],0|i[r+24+4>>2]),l=0|u(),i[r+24>>2]=T,i[r+24+4>>2]=l,y=0|Yt(h=0|i[r>>2],N=0|i[r+4>>2],28),t=0|u(),Q=0|Yt(h,N,34),t=(0|u())^t,M=0|Yt(h,N,39),t^=0|u(),f=0|i[r+8>>2],U=0|i[r+8+4>>2],A=0|i[r+16>>2],H=0|i[r+16+4>>2],p=0|Sn(0|(p=0|Sn(Q^y^M|0,0|t,0|C,0|p)),0|u(),(A|f)&h|A&f|0,(H|U)&N|H&U|0),C=0|u(),i[r+56>>2]=p,i[r+56+4>>2]=C,t=0|Yt(T,l,14),M=0|u(),y=0|Yt(T,l,18),M=(0|u())^M,Q=0|Yt(T,l,41),M^=0|u(),d=0|i[n+((g=1|b)<<3)>>2],a=0|i[n+(g<<3)+4>>2],v=0|i[32416+(g<<3)>>2],S=0|i[32416+(g<<3)+4>>2],H=0|Sn(0|(S=0|Sn(0|(a=0|Sn(0|(M=0|Sn(0|(o=0|Sn(T&(O^B)^O|0,l&(s^c)^s|0,0|m,0|o)),0|u(),y^t^Q|0,0|M)),0|u(),0|d,0|a)),0|u(),0|v,0|S)),0|(v=0|u()),0|A,0|H),A=0|u(),i[r+16>>2]=H,i[r+16+4>>2]=A,a=0|Yt(p,C,28),d=0|u(),M=0|Yt(p,C,34),d=(0|u())^d,Q=0|Yt(p,C,39),d^=0|u(),d=0|Sn(0|(v=0|Sn(0|S,0|v,p&(f|h)|f&h|0,C&(U|N)|U&N|0)),0|u(),M^a^Q|0,0|d),Q=0|u(),i[r+48>>2]=d,i[r+48+4>>2]=Q,a=0|Yt(H,A,14),M=0|u(),v=0|Yt(H,A,18),M=(0|u())^M,S=0|Yt(H,A,41),M^=0|u(),y=0|i[n+((t=2|b)<<3)>>2],o=0|i[n+(t<<3)+4>>2],m=0|i[32416+(t<<3)>>2],x=0|i[32416+(t<<3)+4>>2],U=0|Sn(0|(x=0|Sn(0|(o=0|Sn(0|(M=0|Sn(0|(s=0|Sn(H&(T^B)^B|0,A&(l^c)^c|0,0|O,0|s)),0|u(),v^a^S|0,0|M)),0|u(),0|y,0|o)),0|u(),0|m,0|x)),0|(m=0|u()),0|f,0|U),f=0|u(),i[r+8>>2]=U,i[r+8+4>>2]=f,o=0|Yt(d,Q,28),y=0|u(),M=0|Yt(d,Q,34),y=(0|u())^y,S=0|Yt(d,Q,39),y^=0|u(),y=0|Sn(0|(m=0|Sn(0|x,0|m,d&(p|h)|p&h|0,Q&(C|N)|C&N|0)),0|u(),M^o^S|0,0|y),S=0|u(),i[r+40>>2]=y,i[r+40+4>>2]=S,o=0|Yt(U,f,14),M=0|u(),m=0|Yt(U,f,18),M=(0|u())^M,x=0|Yt(U,f,41),M^=0|u(),v=0|i[n+((a=3|b)<<3)>>2],s=0|i[n+(a<<3)+4>>2],O=0|i[32416+(a<<3)>>2],I=0|i[32416+(a<<3)+4>>2],N=0|Sn(0|(I=0|Sn(0|(s=0|Sn(0|(M=0|Sn(0|(c=0|Sn(U&(H^T)^T|0,f&(A^l)^l|0,0|B,0|c)),0|u(),m^o^x|0,0|M)),0|u(),0|v,0|s)),0|u(),0|O,0|I)),0|(O=0|u()),0|h,0|N),h=0|u(),i[r>>2]=N,i[r+4>>2]=h,s=0|Yt(y,S,28),v=0|u(),M=0|Yt(y,S,34),v=(0|u())^v,x=0|Yt(y,S,39),v^=0|u(),v=0|Sn(0|(O=0|Sn(0|I,0|O,y&(d|p)|d&p|0,S&(Q|C)|Q&C|0)),0|u(),M^s^x|0,0|v),x=0|u(),i[r+32>>2]=v,i[r+32+4>>2]=x,s=0|Yt(N,h,14),M=0|u(),O=0|Yt(N,h,18),M=(0|u())^M,I=0|Yt(N,h,41),M^=0|u(),m=0|i[n+((o=4|b)<<3)>>2],c=0|i[n+(o<<3)+4>>2],B=0|i[32416+(o<<3)>>2],R=0|i[32416+(o<<3)+4>>2],C=0|Sn(0|(R=0|Sn(0|(c=0|Sn(0|(M=0|Sn(0|(l=0|Sn(N&(U^H)^H|0,h&(f^A)^A|0,0|T,0|l)),0|u(),O^s^I|0,0|M)),0|u(),0|m,0|c)),0|u(),0|B,0|R)),0|(B=0|u()),0|p,0|C),p=0|u(),i[r+56>>2]=C,i[r+56+4>>2]=p,c=0|Yt(v,x,28),m=0|u(),M=0|Yt(v,x,34),m=(0|u())^m,I=0|Yt(v,x,39),m^=0|u(),m=0|Sn(0|(B=0|Sn(0|R,0|B,v&(y|d)|y&d|0,x&(S|Q)|S&Q|0)),0|u(),M^c^I|0,0|m),I=0|u(),i[r+24>>2]=m,i[r+24+4>>2]=I,c=0|Yt(C,p,14),M=0|u(),B=0|Yt(C,p,18),M=(0|u())^M,R=0|Yt(C,p,41),M^=0|u(),O=0|i[n+((s=5|b)<<3)>>2],l=0|i[n+(s<<3)+4>>2],T=0|i[32416+(s<<3)>>2],D=0|i[32416+(s<<3)+4>>2],Q=0|Sn(0|(D=0|Sn(0|(l=0|Sn(0|(M=0|Sn(0|(A=0|Sn(C&(N^U)^U|0,p&(h^f)^f|0,0|H,0|A)),0|u(),B^c^R|0,0|M)),0|u(),0|O,0|l)),0|u(),0|T,0|D)),0|(T=0|u()),0|d,0|Q),d=0|u(),i[r+48>>2]=Q,i[r+48+4>>2]=d,l=0|Yt(m,I,28),O=0|u(),M=0|Yt(m,I,34),O=(0|u())^O,R=0|Yt(m,I,39),O^=0|u(),O=0|Sn(0|(T=0|Sn(0|D,0|T,m&(v|y)|v&y|0,I&(x|S)|x&S|0)),0|u(),M^l^R|0,0|O),R=0|u(),i[r+16>>2]=O,i[r+16+4>>2]=R,l=0|Yt(Q,d,14),M=0|u(),T=0|Yt(Q,d,18),M=(0|u())^M,D=0|Yt(Q,d,41),M^=0|u(),B=0|i[n+((c=6|b)<<3)>>2],A=0|i[n+(c<<3)+4>>2],H=0|i[32416+(c<<3)>>2],j=0|i[32416+(c<<3)+4>>2],S=0|Sn(0|(j=0|Sn(0|(A=0|Sn(0|(M=0|Sn(0|(f=0|Sn(Q&(C^N)^N|0,d&(p^h)^h|0,0|U,0|f)),0|u(),T^l^D|0,0|M)),0|u(),0|B,0|A)),0|u(),0|H,0|j)),0|(H=0|u()),0|y,0|S),y=0|u(),i[r+40>>2]=S,i[r+40+4>>2]=y,A=0|Yt(O,R,28),B=0|u(),M=0|Yt(O,R,34),B=(0|u())^B,D=0|Yt(O,R,39),B^=0|u(),B=0|Sn(0|(H=0|Sn(0|j,0|H,O&(m|v)|m&v|0,R&(I|x)|I&x|0)),0|u(),M^A^D|0,0|B),D=0|u(),i[r+8>>2]=B,i[r+8+4>>2]=D,A=0|Yt(S,y,14),M=0|u(),H=0|Yt(S,y,18),M=(0|u())^M,j=0|Yt(S,y,41),M^=0|u(),T=0|i[n+((l=7|b)<<3)>>2],f=0|i[n+(l<<3)+4>>2],U=0|i[32416+(l<<3)>>2],L=0|i[32416+(l<<3)+4>>2],x=0|Sn(0|(L=0|Sn(0|(f=0|Sn(0|(M=0|Sn(0|(h=0|Sn(S&(Q^C)^C|0,y&(d^p)^p|0,0|N,0|h)),0|u(),H^A^j|0,0|M)),0|u(),0|T,0|f)),0|u(),0|U,0|L)),0|(U=0|u()),0|v,0|x),v=0|u(),i[r+32>>2]=x,i[r+32+4>>2]=v,f=0|Yt(B,D,28),T=0|u(),M=0|Yt(B,D,34),T=(0|u())^T,j=0|Yt(B,D,39),T^=0|u(),T=0|Sn(0|(U=0|Sn(0|L,0|U,B&(O|m)|O&m|0,D&(R|I)|R&I|0)),0|u(),M^f^j|0,0|T),j=0|u(),i[r>>2]=T,i[r+4>>2]=j,f=0|Yt(x,v,14),M=0|u(),U=0|Yt(x,v,18),M=(0|u())^M,L=0|Yt(x,v,41),M^=0|u(),H=0|i[n+((A=8|b)<<3)>>2],h=0|i[n+(A<<3)+4>>2],N=0|i[32416+(A<<3)>>2],K=0|i[32416+(A<<3)+4>>2],I=0|Sn(0|(K=0|Sn(0|(h=0|Sn(0|(M=0|Sn(0|(p=0|Sn(x&(S^Q)^Q|0,v&(y^d)^d|0,0|C,0|p)),0|u(),U^f^L|0,0|M)),0|u(),0|H,0|h)),0|u(),0|N,0|K)),0|(N=0|u()),0|m,0|I),m=0|u(),i[r+24>>2]=I,i[r+24+4>>2]=m,h=0|Yt(T,j,28),H=0|u(),M=0|Yt(T,j,34),H=(0|u())^H,L=0|Yt(T,j,39),H^=0|u(),H=0|Sn(0|(N=0|Sn(0|K,0|N,T&(B|O)|B&O|0,j&(D|R)|D&R|0)),0|u(),M^h^L|0,0|H),L=0|u(),i[r+56>>2]=H,i[r+56+4>>2]=L,h=0|Yt(I,m,14),M=0|u(),N=0|Yt(I,m,18),M=(0|u())^M,K=0|Yt(I,m,41),M^=0|u(),U=0|i[n+((f=9|b)<<3)>>2],p=0|i[n+(f<<3)+4>>2],C=0|i[32416+(f<<3)>>2],G=0|i[32416+(f<<3)+4>>2],R=0|Sn(0|(G=0|Sn(0|(p=0|Sn(0|(M=0|Sn(0|(d=0|Sn(I&(x^S)^S|0,m&(v^y)^y|0,0|Q,0|d)),0|u(),N^h^K|0,0|M)),0|u(),0|U,0|p)),0|u(),0|C,0|G)),0|(C=0|u()),0|O,0|R),O=0|u(),i[r+16>>2]=R,i[r+16+4>>2]=O,p=0|Yt(H,L,28),U=0|u(),M=0|Yt(H,L,34),U=(0|u())^U,K=0|Yt(H,L,39),U^=0|u(),U=0|Sn(0|(C=0|Sn(0|G,0|C,H&(T|B)|T&B|0,L&(j|D)|j&D|0)),0|u(),M^p^K|0,0|U),K=0|u(),i[r+48>>2]=U,i[r+48+4>>2]=K,p=0|Yt(R,O,14),M=0|u(),C=0|Yt(R,O,18),M=(0|u())^M,G=0|Yt(R,O,41),M^=0|u(),N=0|i[n+((h=10|b)<<3)>>2],d=0|i[n+(h<<3)+4>>2],Q=0|i[32416+(h<<3)>>2],w=0|i[32416+(h<<3)+4>>2],D=0|Sn(0|(w=0|Sn(0|(d=0|Sn(0|(M=0|Sn(0|(y=0|Sn(R&(I^x)^x|0,O&(m^v)^v|0,0|S,0|y)),0|u(),C^p^G|0,0|M)),0|u(),0|N,0|d)),0|u(),0|Q,0|w)),0|(Q=0|u()),0|B,0|D),B=0|u(),i[r+8>>2]=D,i[r+8+4>>2]=B,d=0|Yt(U,K,28),N=0|u(),M=0|Yt(U,K,34),N=(0|u())^N,G=0|Yt(U,K,39),N^=0|u(),N=0|Sn(0|(Q=0|Sn(0|w,0|Q,U&(H|T)|H&T|0,K&(L|j)|L&j|0)),0|u(),M^d^G|0,0|N),G=0|u(),i[r+40>>2]=N,i[r+40+4>>2]=G,d=0|Yt(D,B,14),M=0|u(),Q=0|Yt(D,B,18),M=(0|u())^M,w=0|Yt(D,B,41),M^=0|u(),C=0|i[n+((p=11|b)<<3)>>2],y=0|i[n+(p<<3)+4>>2],S=0|i[32416+(p<<3)>>2],E=0|i[32416+(p<<3)+4>>2],j=0|Sn(0|(E=0|Sn(0|(y=0|Sn(0|(M=0|Sn(0|(v=0|Sn(D&(R^I)^I|0,B&(O^m)^m|0,0|x,0|v)),0|u(),Q^d^w|0,0|M)),0|u(),0|C,0|y)),0|u(),0|S,0|E)),0|(S=0|u()),0|T,0|j),T=0|u(),i[r>>2]=j,i[r+4>>2]=T,y=0|Yt(N,G,28),C=0|u(),M=0|Yt(N,G,34),C=(0|u())^C,w=0|Yt(N,G,39),C^=0|u(),C=0|Sn(0|(S=0|Sn(0|E,0|S,N&(U|H)|U&H|0,G&(K|L)|K&L|0)),0|u(),M^y^w|0,0|C),w=0|u(),i[r+32>>2]=C,i[r+32+4>>2]=w,y=0|Yt(j,T,14),M=0|u(),S=0|Yt(j,T,18),M=(0|u())^M,E=0|Yt(j,T,41),M^=0|u(),Q=0|i[n+((d=12|b)<<3)>>2],v=0|i[n+(d<<3)+4>>2],x=0|i[32416+(d<<3)>>2],_=0|i[32416+(d<<3)+4>>2],L=0|Sn(0|(_=0|Sn(0|(v=0|Sn(0|(M=0|Sn(0|(m=0|Sn(j&(D^R)^R|0,T&(B^O)^O|0,0|I,0|m)),0|u(),S^y^E|0,0|M)),0|u(),0|Q,0|v)),0|u(),0|x,0|_)),0|(x=0|u()),0|H,0|L),H=0|u(),i[r+56>>2]=L,i[r+56+4>>2]=H,v=0|Yt(C,w,28),Q=0|u(),M=0|Yt(C,w,34),Q=(0|u())^Q,E=0|Yt(C,w,39),Q^=0|u(),Q=0|Sn(0|(x=0|Sn(0|_,0|x,C&(N|U)|N&U|0,w&(G|K)|G&K|0)),0|u(),M^v^E|0,0|Q),E=0|u(),i[r+24>>2]=Q,i[r+24+4>>2]=E,v=0|Yt(L,H,14),M=0|u(),x=0|Yt(L,H,18),M=(0|u())^M,_=0|Yt(L,H,41),M^=0|u(),S=0|i[n+((y=13|b)<<3)>>2],m=0|i[n+(y<<3)+4>>2],I=0|i[32416+(y<<3)>>2],k=0|i[32416+(y<<3)+4>>2],K=0|Sn(0|(k=0|Sn(0|(m=0|Sn(0|(M=0|Sn(0|(O=0|Sn(L&(j^D)^D|0,H&(T^B)^B|0,0|R,0|O)),0|u(),x^v^_|0,0|M)),0|u(),0|S,0|m)),0|u(),0|I,0|k)),0|(I=0|u()),0|U,0|K),U=0|u(),i[r+48>>2]=K,i[r+48+4>>2]=U,m=0|Yt(Q,E,28),S=0|u(),M=0|Yt(Q,E,34),S=(0|u())^S,_=0|Yt(Q,E,39),S^=0|u(),S=0|Sn(0|(I=0|Sn(0|k,0|I,Q&(C|N)|C&N|0,E&(w|G)|w&G|0)),0|u(),M^m^_|0,0|S),_=0|u(),i[r+16>>2]=S,i[r+16+4>>2]=_,m=0|Yt(K,U,14),M=0|u(),I=0|Yt(K,U,18),M=(0|u())^M,k=0|Yt(K,U,41),M^=0|u(),x=0|i[n+((v=14|b)<<3)>>2],O=0|i[n+(v<<3)+4>>2],R=0|i[32416+(v<<3)>>2],F=0|i[32416+(v<<3)+4>>2],G=0|Sn(0|(F=0|Sn(0|(O=0|Sn(0|(M=0|Sn(0|(B=0|Sn(K&(L^j)^j|0,U&(H^T)^T|0,0|D,0|B)),0|u(),I^m^k|0,0|M)),0|u(),0|x,0|O)),0|u(),0|R,0|F)),0|(R=0|u()),0|N,0|G),N=0|u(),i[r+40>>2]=G,i[r+40+4>>2]=N,O=0|Yt(S,_,28),x=0|u(),M=0|Yt(S,_,34),x=(0|u())^x,k=0|Yt(S,_,39),x^=0|u(),x=0|Sn(0|(R=0|Sn(0|F,0|R,S&(Q|C)|Q&C|0,_&(E|w)|E&w|0)),0|u(),M^O^k|0,0|x),k=0|u(),i[r+8>>2]=x,i[r+8+4>>2]=k,O=0|Yt(G,N,14),M=0|u(),R=0|Yt(G,N,18),M=(0|u())^M,F=0|Yt(G,N,41),M^=0|u(),I=0|i[n+((m=15|b)<<3)>>2],B=0|i[n+(m<<3)+4>>2],D=0|i[32416+(m<<3)>>2],P=0|i[32416+(m<<3)+4>>2],w=0|Sn(0|(P=0|Sn(0|(B=0|Sn(0|(M=0|Sn(0|(T=0|Sn(G&(K^L)^L|0,N&(U^H)^H|0,0|j,0|T)),0|u(),R^O^F|0,0|M)),0|u(),0|I,0|B)),0|u(),0|D,0|P)),0|(D=0|u()),0|C,0|w),C=0|u(),i[r+32>>2]=w,i[r+32+4>>2]=C,C=0|Yt(x,k,28),w=0|u(),B=0|Yt(x,k,34),w=(0|u())^w,I=0|Yt(x,k,39),w^=0|u(),w=0|Sn(0|(E=0|Sn(0|P,0|D,x&(S|Q)|S&Q|0,k&(_|E)|_&E|0)),0|u(),B^C^I|0,0|w),I=0|u(),i[r>>2]=w,i[r+4>>2]=I,64==(0|b))break;S=0|Yt(K=0|i[n+(v<<3)>>2],G=0|i[n+(v<<3)+4>>2],19),H=0|u(),B=0|Yt(K,G,61),E=0|u(),E=0|Sn((j=0|fn(0|K,0|G,6))^S^B|0,0|(E=(0|u())^H^E),0|(H=0|i[n+(f<<3)>>2]),0|(x=0|i[n+(f<<3)+4>>2])),B=0|u(),O=0|Yt(S=0|i[n+(g<<3)>>2],j=0|i[n+(g<<3)+4>>2],1),w=0|u(),U=0|Yt(S,j,8),T=0|u(),R=0|fn(0|S,0|j,7),T=(0|u())^w^T,T=0|Sn(0|(w=0|Sn(0|E,0|B,0|i[(w=n+(b<<3)|0)>>2],0|i[w+4>>2])),0|u(),R^O^U|0,0|T),U=0|u(),i[(O=n+((b=b+16|0)<<3)|0)>>2]=T,i[O+4>>2]=U,w=0|Yt(O=0|i[n+(m<<3)>>2],R=0|i[n+(m<<3)+4>>2],19),B=0|u(),E=0|Yt(O,R,61),_=0|u(),I=0|fn(0|O,0|R,6),_=(0|u())^B^_,B=0|i[n+(g+9<<3)>>2],N=0|i[n+(g+9<<3)+4>>2],C=0|Yt(k=0|i[n+(g+1<<3)>>2],D=0|i[n+(g+1<<3)+4>>2],1),M=0|u(),Q=0|Yt(k,D,8),P=0|u(),F=0|fn(0|k,0|D,7),P=(0|u())^M^P,P=0|Sn(0|(_=0|Sn(0|(j=0|Sn(0|B,0|N,0|S,0|j)),0|u(),I^w^E|0,0|_)),0|u(),F^C^Q|0,0|P),Q=0|u(),i[n+(g+16<<3)>>2]=P,i[n+(g+16<<3)+4>>2]=Q,C=0|Yt(T,U,19),F=0|u(),_=0|Yt(T,U,61),g=0|u(),g=0|Sn((U=0|fn(0|T,0|U,6))^C^_|0,0|(g=(0|u())^F^g),0|(F=0|i[n+(p<<3)>>2]),0|(T=0|i[n+(p<<3)+4>>2])),_=0|u(),E=0|Yt(C=0|i[n+(a<<3)>>2],U=0|i[n+(a<<3)+4>>2],1),w=0|u(),I=0|Yt(C,U,8),j=0|u(),S=0|fn(0|C,0|U,7),j=(0|u())^w^j,j=0|Sn(0|(D=0|Sn(0|g,0|_,0|k,0|D)),0|u(),S^E^I|0,0|j),I=0|u(),i[n+(t+16<<3)>>2]=j,i[n+(t+16<<3)+4>>2]=I,E=0|Yt(P,Q,19),S=0|u(),D=0|Yt(P,Q,61),k=0|u(),Q=0|fn(0|P,0|Q,6),k=(0|u())^S^k,S=0|i[n+(a+9<<3)>>2],P=0|i[n+(a+9<<3)+4>>2],g=0|Yt(_=0|i[n+(a+1<<3)>>2],t=0|i[n+(a+1<<3)+4>>2],1),w=0|u(),N=0|Yt(_,t,8),B=0|u(),M=0|fn(0|_,0|t,7),B=(0|u())^w^B,B=0|Sn(0|(k=0|Sn(0|(U=0|Sn(0|S,0|P,0|C,0|U)),0|u(),Q^E^D|0,0|k)),0|u(),M^g^N|0,0|B),N=0|u(),i[n+(a+16<<3)>>2]=B,i[n+(a+16<<3)+4>>2]=N,g=0|Yt(j,I,19),M=0|u(),k=0|Yt(j,I,61),D=0|u(),D=0|Sn((I=0|fn(0|j,0|I,6))^g^k|0,0|(D=(0|u())^M^D),0|(M=0|i[n+(y<<3)>>2]),0|(j=0|i[n+(y<<3)+4>>2])),k=0|u(),E=0|Yt(g=0|i[n+(s<<3)>>2],I=0|i[n+(s<<3)+4>>2],1),Q=0|u(),U=0|Yt(g,I,8),C=0|u(),P=0|fn(0|g,0|I,7),C=(0|u())^Q^C,C=0|Sn(0|(t=0|Sn(0|D,0|k,0|_,0|t)),0|u(),P^E^U|0,0|C),U=0|u(),i[n+(o+16<<3)>>2]=C,i[n+(o+16<<3)+4>>2]=U,E=0|Yt(B,N,19),P=0|u(),t=0|Yt(B,N,61),_=0|u(),N=0|fn(0|B,0|N,6),_=(0|u())^P^_,P=0|i[n+(s+9<<3)>>2],B=0|i[n+(s+9<<3)+4>>2],Q=0|Yt(k=0|i[n+(s+1<<3)>>2],D=0|i[n+(s+1<<3)+4>>2],1),S=0|u(),w=0|Yt(k,D,8),L=0|u(),a=0|fn(0|k,0|D,7),L=(0|u())^S^L,L=0|Sn(0|(_=0|Sn(0|(I=0|Sn(0|P,0|B,0|g,0|I)),0|u(),N^E^t|0,0|_)),0|u(),a^Q^w|0,0|L),w=0|u(),i[n+(s+16<<3)>>2]=L,i[n+(s+16<<3)+4>>2]=w,Q=0|Yt(C,U,19),a=0|u(),_=0|Yt(C,U,61),t=0|u(),t=0|Sn((U=0|fn(0|C,0|U,6))^Q^_|0,(0|u())^a^t|0,0|O,0|R),a=0|u(),U=0|Yt(_=0|i[n+(l<<3)>>2],Q=0|i[n+(l<<3)+4>>2],1),C=0|u(),E=0|Yt(_,Q,8),N=0|u(),I=0|fn(0|_,0|Q,7),N=(0|u())^C^N,N=0|Sn(0|(D=0|Sn(0|t,0|a,0|k,0|D)),0|u(),I^U^E|0,0|N),E=0|u(),i[n+(c+16<<3)>>2]=N,i[n+(c+16<<3)+4>>2]=E,U=0|Yt(L,w,19),I=0|u(),D=0|Yt(L,w,61),k=0|u(),w=0|fn(0|L,0|w,6),k=(0|u())^I^k,I=0|i[n+(l+9<<3)>>2],L=0|i[n+(l+9<<3)+4>>2],C=0|Yt(a=0|i[n+(l+1<<3)>>2],t=0|i[n+(l+1<<3)+4>>2],1),g=0|u(),B=0|Yt(a,t,8),P=0|u(),S=0|fn(0|a,0|t,7),P=(0|u())^g^P,P=0|Sn(0|(k=0|Sn(0|(Q=0|Sn(0|I,0|L,0|_,0|Q)),0|u(),w^U^D|0,0|k)),0|u(),S^C^B|0,0|P),B=0|u(),i[n+(l+16<<3)>>2]=P,i[n+(l+16<<3)+4>>2]=B,C=0|Yt(N,E,19),S=0|u(),k=0|Yt(N,E,61),D=0|u(),D=0|Sn((E=0|fn(0|N,0|E,6))^C^k|0,0|(D=(0|u())^S^D),0|i[n+(A+9<<3)>>2],0|i[n+(A+9<<3)+4>>2]),k=0|u(),C=0|Yt(H,x,1),E=0|u(),S=0|Yt(H,x,8),N=0|u(),U=0|fn(0|H,0|x,7),N=E^(0|u())^N,N=0|Sn(0|(t=0|Sn(0|D,0|k,0|a,0|t)),0|u(),C^U^S|0,0|N),S=0|u(),i[n+(A+16<<3)>>2]=N,i[n+(A+16<<3)+4>>2]=S,U=0|Yt(P,B,19),C=0|u(),t=0|Yt(P,B,61),a=0|u(),B=0|fn(0|P,0|B,6),a=(0|u())^C^a,C=0|i[n+(f+9<<3)>>2],P=0|i[n+(f+9<<3)+4>>2],E=0|Yt(k=0|i[n+(f+1<<3)>>2],D=0|i[n+(f+1<<3)+4>>2],1),w=0|u(),Q=0|Yt(k,D,8),_=0|u(),L=0|fn(0|k,0|D,7),_=(0|u())^w^_,_=0|Sn(0|(a=0|Sn(0|(x=0|Sn(0|C,0|P,0|H,0|x)),0|u(),B^U^t|0,0|a)),0|u(),L^E^Q|0,0|_),Q=0|u(),i[n+(f+16<<3)>>2]=_,i[n+(f+16<<3)+4>>2]=Q,E=0|Yt(N,S,19),L=0|u(),a=0|Yt(N,S,61),t=0|u(),t=0|Sn((S=0|fn(0|N,0|S,6))^E^a|0,0|(t=(0|u())^L^t),0|i[n+(h+9<<3)>>2],0|i[n+(h+9<<3)+4>>2]),a=0|u(),E=0|Yt(F,T,1),S=0|u(),L=0|Yt(F,T,8),N=0|u(),U=0|fn(0|F,0|T,7),N=S^(0|u())^N,N=0|Sn(0|(D=0|Sn(0|t,0|a,0|k,0|D)),0|u(),E^U^L|0,0|N),L=0|u(),i[n+(h+16<<3)>>2]=N,i[n+(h+16<<3)+4>>2]=L,U=0|Yt(_,Q,19),E=0|u(),D=0|Yt(_,Q,61),k=0|u(),Q=0|fn(0|_,0|Q,6),k=(0|u())^E^k,E=0|i[n+(p+9<<3)>>2],_=0|i[n+(p+9<<3)+4>>2],S=0|Yt(a=0|i[n+(p+1<<3)>>2],t=0|i[n+(p+1<<3)+4>>2],1),B=0|u(),x=0|Yt(a,t,8),H=0|u(),P=0|fn(0|a,0|t,7),H=(0|u())^B^H,H=0|Sn(0|(k=0|Sn(0|(T=0|Sn(0|E,0|_,0|F,0|T)),0|u(),Q^U^D|0,0|k)),0|u(),P^S^x|0,0|H),x=0|u(),i[n+(p+16<<3)>>2]=H,i[n+(p+16<<3)+4>>2]=x,S=0|Yt(N,L,19),P=0|u(),k=0|Yt(N,L,61),D=0|u(),D=0|Sn((L=0|fn(0|N,0|L,6))^S^k|0,0|(D=(0|u())^P^D),0|i[n+(d+9<<3)>>2],0|i[n+(d+9<<3)+4>>2]),k=0|u(),S=0|Yt(M,j,1),L=0|u(),P=0|Yt(M,j,8),N=0|u(),U=0|fn(0|M,0|j,7),N=L^(0|u())^N,N=0|Sn(0|(t=0|Sn(0|D,0|k,0|a,0|t)),0|u(),S^U^P|0,0|N),P=0|u(),i[n+(d+16<<3)>>2]=N,i[n+(d+16<<3)+4>>2]=P,U=0|Yt(H,x,19),S=0|u(),t=0|Yt(H,x,61),a=0|u(),x=0|fn(0|H,0|x,6),a=(0|u())^S^a,S=0|i[n+(y+9<<3)>>2],H=0|i[n+(y+9<<3)+4>>2],L=0|Yt(k=0|i[n+(y+1<<3)>>2],D=0|i[n+(y+1<<3)+4>>2],1),Q=0|u(),T=0|Yt(k,D,8),F=0|u(),D=0|fn(0|k,0|D,7),F=(0|u())^Q^F,F=0|Sn(0|(a=0|Sn(0|(j=0|Sn(0|S,0|H,0|M,0|j)),0|u(),x^U^t|0,0|a)),0|u(),D^L^T|0,0|F),T=0|u(),i[n+(y+16<<3)>>2]=F,i[n+(y+16<<3)+4>>2]=T,L=0|Yt(N,P,19),D=0|u(),a=0|Yt(N,P,61),t=0|u(),P=0|fn(0|N,0|P,6),t=(0|u())^D^t,D=0|i[n+(v+9<<3)>>2],N=0|i[n+(v+9<<3)+4>>2],U=0|Yt(O,R,1),x=0|u(),j=0|Yt(O,R,8),M=0|u(),H=0|fn(0|O,0|R,7),M=x^(0|u())^M,M=0|Sn(0|(t=0|Sn(0|(G=0|Sn(0|D,0|N,0|K,0|G)),0|u(),P^L^a|0,0|t)),0|u(),U^H^j|0,0|M),j=0|u(),i[n+(v+16<<3)>>2]=M,i[n+(v+16<<3)+4>>2]=j,j=0|Yt(F,T,19),M=0|u(),H=0|Yt(F,T,61),U=0|u(),T=0|fn(0|F,0|T,6),U=(0|u())^M^U,M=0|i[n+(m+9<<3)>>2],F=0|i[n+(m+9<<3)+4>>2],L=0|Yt(t=0|i[n+(m+1<<3)>>2],a=0|i[n+(m+1<<3)+4>>2],1),P=0|u(),G=0|Yt(t,a,8),K=0|u(),N=0|fn(0|t,0|a,7),K=(0|u())^P^K,K=0|Sn(0|(U=0|Sn(0|(R=0|Sn(0|M,0|F,0|O,0|R)),0|u(),T^j^H|0,0|U)),0|u(),N^L^G|0,0|K),G=0|u(),i[n+(m+16<<3)>>2]=K,i[n+(m+16<<3)+4>>2]=G}while(b>>>0<80);t=0;do{L=r+(t<<3)|0,L=0|Sn(0|i[(G=e+(t<<3)|0)>>2],0|i[G+4>>2],0|i[L>>2],0|i[L+4>>2]),K=0|u(),i[G>>2]=L,i[G+4>>2]=K,t=t+1|0}while(8!=(0|t))}function I(e){e|=0;var t,n=0,r=0,a=0,o=0,s=0,c=0,u=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,v=0,m=0,b=0,I=0,w=0,C=0;t=y,d=y=y+63&-64,y=y+16|0;do{if(e>>>0<245){if(p=e>>>0<11?16:e+11&-8,(f=0|i[8679])>>>(p>>>3)&3|0)return e=0|i[8+(r=34756+((f>>>(p>>>3)&1^1)+(p>>>3)<<1<<2)|0)>>2],(0|(n=0|i[e+8>>2]))==(0|r)?i[8679]=f&~(1<<(f>>>(p>>>3)&1^1)+(p>>>3)):(i[n+12>>2]=r,i[r+8>>2]=n),C=(f>>>(p>>>3)&1^1)+(p>>>3)<<3,i[e+4>>2]=3|C,i[e+C+4>>2]=1|i[e+C+4>>2],y=t,0|e+8;if(p>>>0>(h=0|i[8681])>>>0){if(f>>>(p>>>3)|0)return a=0|i[34756+((o=((a=(((e=f>>>(p>>>3)<<(p>>>3)&(2<<(p>>>3)|0-(2<<(p>>>3))))&0-e)-1|0)>>>(((e&0-e)-1|0)>>>12&16))>>>5&8|((e&0-e)-1|0)>>>12&16|a>>>(a>>>5&8)>>>2&4|(o=a>>>(a>>>5&8)>>>(a>>>(a>>>5&8)>>>2&4))>>>1&2|o>>>(o>>>1&2)>>>1&1)+(o>>>(o>>>1&2)>>>(o>>>(o>>>1&2)>>>1&1))|0)<<1<<2)+8>>2],(0|(e=0|i[a+8>>2]))==(34756+(o<<1<<2)|0)?(i[8679]=f&~(1<<o),e=f&~(1<<o)):(i[e+12>>2]=34756+(o<<1<<2),i[34756+(o<<1<<2)+8>>2]=e,e=f),i[a+4>>2]=3|p,i[a+p+4>>2]=(o<<3)-p|1,i[a+(o<<3)>>2]=(o<<3)-p,0|h&&(r=0|i[8684],e&1<<(h>>>3)?(e=34756+(h>>>3<<1<<2)+8|0,n=0|i[34756+(h>>>3<<1<<2)+8>>2]):(i[8679]=e|1<<(h>>>3),e=34756+(h>>>3<<1<<2)+8|0,n=34756+(h>>>3<<1<<2)|0),i[e>>2]=r,i[n+12>>2]=r,i[r+8>>2]=n,i[r+12>>2]=34756+(h>>>3<<1<<2)),i[8681]=(o<<3)-p,i[8684]=a+p,y=t,0|a+8;if(c=0|i[8680]){for(A=0|i[35020+(((l=((c&0-c)-1|0)>>>(((c&0-c)-1|0)>>>12&16))>>>5&8|((c&0-c)-1|0)>>>12&16|l>>>(l>>>5&8)>>>2&4|(A=l>>>(l>>>5&8)>>>(l>>>(l>>>5&8)>>>2&4))>>>1&2|A>>>(A>>>1&2)>>>1&1)+(A>>>(A>>>1&2)>>>(A>>>(A>>>1&2)>>>1&1))<<2)>>2],l=(-8&i[A+4>>2])-p|0,n=A;(e=0|i[n+16>>2])||(e=0|i[n+20>>2]);)l=(u=(n=(-8&i[e+4>>2])-p|0)>>>0<l>>>0)?n:l,n=e,A=u?e:A;if((u=A+p|0)>>>0>A>>>0){o=0|i[A+24>>2],e=0|i[A+12>>2];do{if((0|e)==(0|A)){if(!(e=0|i[(n=A+20|0)>>2])&&!(e=0|i[(n=A+16|0)>>2])){n=0;break}for(;;)if(r=0|i[(a=e+20|0)>>2])e=r,n=a;else{if(!(r=0|i[(a=e+16|0)>>2]))break;e=r,n=a}i[n>>2]=0,n=e}else n=0|i[A+8>>2],i[n+12>>2]=e,i[e+8>>2]=n,n=e}while(0);do{if(0|o){if(e=0|i[A+28>>2],(0|A)==(0|i[35020+(e<<2)>>2])){if(i[35020+(e<<2)>>2]=n,!n){i[8680]=c&~(1<<e);break}}else if(i[((0|i[o+16>>2])==(0|A)?o+16|0:o+20|0)>>2]=n,!n)break;i[n+24>>2]=o,0|(e=0|i[A+16>>2])&&(i[n+16>>2]=e,i[e+24>>2]=n),0|(e=0|i[A+20>>2])&&(i[n+20>>2]=e,i[e+24>>2]=n)}}while(0);return l>>>0<16?(C=l+p|0,i[A+4>>2]=3|C,i[(C=A+C+4|0)>>2]=1|i[C>>2]):(i[A+4>>2]=3|p,i[u+4>>2]=1|l,i[u+l>>2]=l,0|h&&(r=0|i[8684],1<<(h>>>3)&f?(e=34756+(h>>>3<<1<<2)+8|0,n=0|i[34756+(h>>>3<<1<<2)+8>>2]):(i[8679]=1<<(h>>>3)|f,e=34756+(h>>>3<<1<<2)+8|0,n=34756+(h>>>3<<1<<2)|0),i[e>>2]=r,i[n+12>>2]=r,i[r+8>>2]=n,i[r+12>>2]=34756+(h>>>3<<1<<2)),i[8681]=l,i[8684]=u),y=t,0|A+8}}}}else if(e>>>0<=4294967231){if(p=e+11&-8,a=0|i[8680]){l=(e+11|0)>>>8?p>>>0>16777215?31:p>>>(7+(l=14-((520192+(l=(e+11|0)>>>8<<((1048320+((e+11|0)>>>8)|0)>>>16&8))|0)>>>16&4|(1048320+((e+11|0)>>>8)|0)>>>16&8|(245760+(l<<((l+520192|0)>>>16&4))|0)>>>16&2)+(l<<((l+520192|0)>>>16&4)<<((245760+(l<<((l+520192|0)>>>16&4))|0)>>>16&2)>>>15)|0)|0)&1|l<<1:0,e=0|i[35020+(l<<2)>>2];e:do{if(e)for(r=0-p|0,n=0,u=p<<(31==(0|l)?0:25-(l>>>1)|0),c=0;;){if((o=(-8&i[e+4>>2])-p|0)>>>0<r>>>0){if(!o){r=0,n=e,m=65;break e}r=o,c=e}if(n=0==(0|(m=0|i[e+20>>2]))|(0|m)==(0|(e=0|i[e+16+(u>>>31<<2)>>2]))?n:m,!e){e=c,m=61;break}u<<=1}else r=0-p|0,n=0,e=0,m=61}while(0);if(61==(0|m)){if(0==(0|n)&0==(0|e)){if(!(((e=2<<l)|0-e)&a))break;n=0|i[35020+(((h=((e|0-e)&a&0-((e|0-e)&a))-1|0)>>>(h>>>12&16)>>>5&8|h>>>12&16|(e=h>>>(h>>>12&16)>>>(h>>>(h>>>12&16)>>>5&8))>>>2&4|e>>>(e>>>2&4)>>>1&2|(n=e>>>(e>>>2&4)>>>(e>>>(e>>>2&4)>>>1&2))>>>1&1)+(n>>>(n>>>1&1))<<2)>>2],e=0}n?m=65:(c=r,u=e)}if(65==(0|m))for(;;){if(r=(o=(h=(-8&i[n+4>>2])-p|0)>>>0<r>>>0)?h:r,o=o?n:e,(e=0|i[n+16>>2])||(e=0|i[n+20>>2]),!e){c=r,u=o;break}n=e,e=o}if(0!=(0|u)&&c>>>0<((0|i[8681])-p|0)>>>0&&(A=u+p|0)>>>0>u>>>0){s=0|i[u+24>>2],e=0|i[u+12>>2];do{if((0|e)==(0|u)){if(!(e=0|i[(n=u+20|0)>>2])&&!(e=0|i[(n=u+16|0)>>2])){e=0;break}for(;;)if(r=0|i[(o=e+20|0)>>2])e=r,n=o;else{if(!(r=0|i[(o=e+16|0)>>2]))break;e=r,n=o}i[n>>2]=0}else C=0|i[u+8>>2],i[C+12>>2]=e,i[e+8>>2]=C}while(0);do{if(s){if(n=0|i[u+28>>2],(0|u)==(0|i[35020+(n<<2)>>2])){if(i[35020+(n<<2)>>2]=e,!e){i[8680]=a&~(1<<n),a&=~(1<<n);break}}else if(i[((0|i[s+16>>2])==(0|u)?s+16|0:s+20|0)>>2]=e,!e)break;i[e+24>>2]=s,0|(n=0|i[u+16>>2])&&(i[e+16>>2]=n,i[n+24>>2]=e),(n=0|i[u+20>>2])&&(i[e+20>>2]=n,i[n+24>>2]=e)}}while(0);e:do{if(c>>>0<16)C=c+p|0,i[u+4>>2]=3|C,i[(C=u+C+4|0)>>2]=1|i[C>>2];else{if(i[u+4>>2]=3|p,i[A+4>>2]=1|c,i[A+c>>2]=c,r=c>>>3,c>>>0<256){(e=0|i[8679])&1<<r?(e=34756+(r<<1<<2)+8|0,n=0|i[34756+(r<<1<<2)+8>>2]):(i[8679]=e|1<<r,e=34756+(r<<1<<2)+8|0,n=34756+(r<<1<<2)|0),i[e>>2]=A,i[n+12>>2]=A,i[A+8>>2]=n,i[A+12>>2]=34756+(r<<1<<2);break}if(e=35020+((r=(e=c>>>8)?c>>>0>16777215?31:c>>>(7+(r=14-((520192+(e<<((e+1048320|0)>>>16&8))|0)>>>16&4|(e+1048320|0)>>>16&8|(245760+(r=e<<((e+1048320|0)>>>16&8)<<((520192+(e<<((e+1048320|0)>>>16&8))|0)>>>16&4))|0)>>>16&2)+(r<<((r+245760|0)>>>16&2)>>>15)|0)|0)&1|r<<1:0)<<2)|0,i[A+28>>2]=r,i[A+16+4>>2]=0,i[A+16>>2]=0,!(a&(n=1<<r))){i[8680]=a|n,i[e>>2]=A,i[A+24>>2]=e,i[A+12>>2]=A,i[A+8>>2]=A;break}e=0|i[e>>2];t:do{if((-8&i[e+4>>2]|0)!=(0|c)){for(a=c<<(31==(0|r)?0:25-(r>>>1)|0);n=0|i[(r=e+16+(a>>>31<<2)|0)>>2];){if((-8&i[n+4>>2]|0)==(0|c)){e=n;break t}a<<=1,e=n}i[r>>2]=A,i[A+24>>2]=e,i[A+12>>2]=A,i[A+8>>2]=A;break e}}while(0);C=0|i[(w=e+8|0)>>2],i[C+12>>2]=A,i[w>>2]=A,i[A+8>>2]=C,i[A+12>>2]=e,i[A+24>>2]=0}}while(0);return y=t,0|u+8}}}else p=-1}while(0);if((r=0|i[8681])>>>0>=p>>>0)return n=r-p|0,e=0|i[8684],n>>>0>15?(C=e+p|0,i[8684]=C,i[8681]=n,i[C+4>>2]=1|n,i[e+r>>2]=n,i[e+4>>2]=3|p):(i[8681]=0,i[8684]=0,i[e+4>>2]=3|r,i[e+r+4>>2]=1|i[e+r+4>>2]),y=t,0|e+8;if((o=0|i[8682])>>>0>p>>>0)return I=o-p|0,i[8682]=I,w=(C=0|i[8685])+p|0,i[8685]=w,i[w+4>>2]=1|I,i[C+4>>2]=3|p,y=t,0|C+8;if(0|i[8797]?e=0|i[8799]:(i[8799]=4096,i[8798]=4096,i[8800]=-1,i[8801]=-1,i[8802]=0,i[8790]=0,i[8797]=-16&d^1431655768,e=4096),c=p+48|0,((A=e+(u=p+47|0)|0)&(l=0-e|0))>>>0<=p>>>0)return y=t,0;if(0|(e=0|i[8789])&&(((d=0|i[8787])+(A&l)|0)>>>0<=d>>>0||(d+(A&l)|0)>>>0>e>>>0))return y=t,0;e:do{if(4&i[8790])e=0,m=143;else{n=0|i[8685];t:do{if(n){for(r=35164;!((e=0|i[r>>2])>>>0<=n>>>0&&(e+(0|i[(v=r+4|0)>>2])|0)>>>0>n>>>0);){if(!(e=0|i[r+8>>2])){m=128;break t}r=e}if((A-o&l)>>>0<2147483647)if((0|(e=0|St(A-o&l)))==((0|i[r>>2])+(0|i[v>>2])|0)){if(-1!=(0|e)){c=e,s=A-o&l,m=145;break e}e=A-o&l}else a=e,r=A-o&l,m=136;else e=0}else m=128}while(0);do{if(128==(0|m))if(-1!=(0|(n=0|St(0)))&&(s=(0==((s=0|i[8798])-1&n|0)?0:(s+-1+n&0-s)-n|0)+(A&l)|0,g=0|i[8787],s>>>0>p>>>0&s>>>0<2147483647)){if(0|(v=0|i[8789])&&(s+g|0)>>>0<=g>>>0|(s+g|0)>>>0>v>>>0){e=0;break}if((0|(e=0|St(s)))==(0|n)){c=n,m=145;break e}a=e,r=s,m=136}else e=0}while(0);do{if(136==(0|m)){if(n=0-r|0,!(c>>>0>r>>>0&r>>>0<2147483647&-1!=(0|a))){if(-1==(0|a)){e=0;break}c=a,s=r,m=145;break e}if((e=u-r+(e=0|i[8799])&0-e)>>>0>=2147483647){c=a,s=r,m=145;break e}if(-1==(0|St(e))){St(n),e=0;break}c=a,s=e+r|0,m=145;break e}}while(0);i[8790]=4|i[8790],m=143}}while(0);if(143==(0|m)&&(A&l)>>>0<2147483647&&!(-1==(0|(b=0|St(A&l)))|1^(w=((I=0|St(0))-b|0)>>>0>(p+40|0)>>>0)|b>>>0<I>>>0&-1!=(0|b)&-1!=(0|I)^1)&&(c=b,s=w?I-b|0:e,m=145),145==(0|m)){e=(0|i[8787])+s|0,i[8787]=e,e>>>0>(0|i[8788])>>>0&&(i[8788]=e),l=0|i[8685];e:do{if(l){for(o=35164;;){if((0|c)==((e=0|i[o>>2])+(n=0|i[(a=o+4|0)>>2])|0)){m=154;break}if(!(r=0|i[o+8>>2]))break;o=r}if(154==(0|m)&&0==(8&i[o+12>>2]|0)&&c>>>0>l>>>0&e>>>0<=l>>>0){i[a>>2]=n+s,C=(0|i[8682])+s|0,w=0==(l+8&7|0)?0:0-(l+8)&7,i[8685]=l+w,i[8682]=C-w,i[l+w+4>>2]=C-w|1,i[l+C+4>>2]=40,i[8686]=i[8801];break}for(c>>>0<(0|i[8683])>>>0&&(i[8683]=c),r=c+s|0,n=35164;;){if((0|i[n>>2])==(0|r)){m=162;break}if(!(e=0|i[n+8>>2]))break;n=e}if(162==(0|m)&&0==(8&i[n+12>>2]|0)){i[n>>2]=c,i[(f=n+4|0)>>2]=(0|i[f>>2])+s,A=(f=c+(0==(7&(f=c+8|0)|0)?0:0-f&7)|0)+p|0,u=(e=r+(0==(r+8&7|0)?0:0-(r+8)&7)|0)-f-p|0,i[f+4>>2]=3|p;t:do{if((0|l)==(0|e))C=(0|i[8682])+u|0,i[8682]=C,i[8685]=A,i[A+4>>2]=1|C;else{if((0|i[8684])==(0|e)){C=(0|i[8681])+u|0,i[8681]=C,i[8684]=A,i[A+4>>2]=1|C,i[A+C>>2]=C;break}if(1==(3&(c=0|i[e+4>>2])|0)){n:do{if(c>>>0<256){if(n=0|i[e+8>>2],(0|(r=0|i[e+12>>2]))==(0|n)){i[8679]=i[8679]&~(1<<(c>>>3));break}i[n+12>>2]=r,i[r+8>>2]=n;break}s=0|i[e+24>>2],n=0|i[e+12>>2];do{if((0|n)==(0|e)){if(n=0|i[e+16+4>>2])r=e+16+4|0;else{if(!(n=0|i[e+16>>2])){n=0;break}r=e+16|0}for(;;)if(a=0|i[(o=n+20|0)>>2])n=a,r=o;else{if(!(a=0|i[(o=n+16|0)>>2]))break;n=a,r=o}i[r>>2]=0}else C=0|i[e+8>>2],i[C+12>>2]=n,i[n+8>>2]=C}while(0);if(!s)break;r=0|i[e+28>>2];do{if((0|i[35020+(r<<2)>>2])==(0|e)){if(i[35020+(r<<2)>>2]=n,0|n)break;i[8680]=i[8680]&~(1<<r);break n}if(i[((0|i[s+16>>2])==(0|e)?s+16|0:s+20|0)>>2]=n,!n)break n}while(0);if(i[n+24>>2]=s,0|(r=0|i[e+16>>2])&&(i[n+16>>2]=r,i[r+24>>2]=n),!(r=0|i[e+16+4>>2]))break;i[n+20>>2]=r,i[r+24>>2]=n}while(0);e=e+(-8&c)|0,o=(-8&c)+u|0}else o=u;if(i[(r=e+4|0)>>2]=-2&i[r>>2],i[A+4>>2]=1|o,i[A+o>>2]=o,r=o>>>3,o>>>0<256){(e=0|i[8679])&1<<r?(e=34756+(r<<1<<2)+8|0,n=0|i[34756+(r<<1<<2)+8>>2]):(i[8679]=e|1<<r,e=34756+(r<<1<<2)+8|0,n=34756+(r<<1<<2)|0),i[e>>2]=A,i[n+12>>2]=A,i[A+8>>2]=n,i[A+12>>2]=34756+(r<<1<<2);break}e=o>>>8;do{if(e){if(o>>>0>16777215){a=31;break}a=o>>>(7+(a=14-((520192+(e<<((e+1048320|0)>>>16&8))|0)>>>16&4|(e+1048320|0)>>>16&8|(245760+(a=e<<((e+1048320|0)>>>16&8)<<((520192+(e<<((e+1048320|0)>>>16&8))|0)>>>16&4))|0)>>>16&2)+(a<<((a+245760|0)>>>16&2)>>>15)|0)|0)&1|a<<1}else a=0}while(0);if(n=35020+(a<<2)|0,i[A+28>>2]=a,i[A+16+4>>2]=0,i[A+16>>2]=0,!((e=0|i[8680])&(r=1<<a))){i[8680]=e|r,i[n>>2]=A,i[A+24>>2]=n,i[A+12>>2]=A,i[A+8>>2]=A;break}e=0|i[n>>2];n:do{if((-8&i[e+4>>2]|0)!=(0|o)){for(a=o<<(31==(0|a)?0:25-(a>>>1)|0);n=0|i[(r=e+16+(a>>>31<<2)|0)>>2];){if((-8&i[n+4>>2]|0)==(0|o)){e=n;break n}a<<=1,e=n}i[r>>2]=A,i[A+24>>2]=e,i[A+12>>2]=A,i[A+8>>2]=A;break t}}while(0);C=0|i[(w=e+8|0)>>2],i[C+12>>2]=A,i[w>>2]=A,i[A+8>>2]=C,i[A+12>>2]=e,i[A+24>>2]=0}}while(0);return y=t,0|f+8}for(n=35164;!((e=0|i[n>>2])>>>0<=l>>>0&&(C=e+(0|i[n+4>>2])|0)>>>0>l>>>0);)n=0|i[n+8>>2];o=(o=C+-47+(0==(C+-47+8&7|0)?0:0-(C+-47+8)&7)|0)>>>0<(l+16|0)>>>0?l:o,e=s+-40|0,w=c+(I=0==(7&(I=c+8|0)|0)?0:0-I&7)|0,i[8685]=w,i[8682]=e-I,i[w+4>>2]=e-I|1,i[c+e+4>>2]=40,i[8686]=i[8801],i[o+4>>2]=27,i[o+8>>2]=i[8791],i[o+8+4>>2]=i[8792],i[o+8+8>>2]=i[8793],i[o+8+12>>2]=i[8794],i[8791]=c,i[8792]=s,i[8794]=0,i[8793]=o+8,e=o+24|0;do{w=e,i[(e=e+4|0)>>2]=7}while((w+8|0)>>>0<C>>>0);if((0|o)!=(0|l)){if(i[o+4>>2]=-2&i[o+4>>2],i[l+4>>2]=o-l|1,i[o>>2]=o-l,(o-l|0)>>>0<256){r=34756+((o-l|0)>>>3<<1<<2)|0,(e=0|i[8679])&1<<((o-l|0)>>>3)?(e=r+8|0,n=0|i[r+8>>2]):(i[8679]=e|1<<((o-l|0)>>>3),e=r+8|0,n=r),i[e>>2]=l,i[n+12>>2]=l,i[l+8>>2]=n,i[l+12>>2]=r;break}if(n=35020+((a=(o-l|0)>>>8?(o-l|0)>>>0>16777215?31:(o-l|0)>>>(7+(a=14-((520192+(a=(o-l|0)>>>8<<((1048320+((o-l|0)>>>8)|0)>>>16&8))|0)>>>16&4|(1048320+((o-l|0)>>>8)|0)>>>16&8|(245760+(a<<((a+520192|0)>>>16&4))|0)>>>16&2)+(a<<((a+520192|0)>>>16&4)<<((245760+(a<<((a+520192|0)>>>16&4))|0)>>>16&2)>>>15)|0)|0)&1|a<<1:0)<<2)|0,i[l+28>>2]=a,i[l+20>>2]=0,i[l+16>>2]=0,!((e=0|i[8680])&(r=1<<a))){i[8680]=e|r,i[n>>2]=l,i[l+24>>2]=n,i[l+12>>2]=l,i[l+8>>2]=l;break}e=0|i[n>>2];t:do{if((-8&i[e+4>>2]|0)!=(o-l|0)){for(a=o-l<<(31==(0|a)?0:25-(a>>>1)|0);n=0|i[(r=e+16+(a>>>31<<2)|0)>>2];){if((-8&i[n+4>>2]|0)==(o-l|0)){e=n;break t}a<<=1,e=n}i[r>>2]=l,i[l+24>>2]=e,i[l+12>>2]=l,i[l+8>>2]=l;break e}}while(0);C=0|i[(w=e+8|0)>>2],i[C+12>>2]=l,i[w>>2]=l,i[l+8>>2]=C,i[l+12>>2]=e,i[l+24>>2]=0}}else 0==(0|(C=0|i[8683]))|c>>>0<C>>>0&&(i[8683]=c),i[8791]=c,i[8792]=s,i[8794]=0,i[8688]=i[8797],i[8687]=-1,i[8692]=34756,i[8691]=34756,i[8694]=34764,i[8693]=34764,i[8696]=34772,i[8695]=34772,i[8698]=34780,i[8697]=34780,i[8700]=34788,i[8699]=34788,i[8702]=34796,i[8701]=34796,i[8704]=34804,i[8703]=34804,i[8706]=34812,i[8705]=34812,i[8708]=34820,i[8707]=34820,i[8710]=34828,i[8709]=34828,i[8712]=34836,i[8711]=34836,i[8714]=34844,i[8713]=34844,i[8716]=34852,i[8715]=34852,i[8718]=34860,i[8717]=34860,i[8720]=34868,i[8719]=34868,i[8722]=34876,i[8721]=34876,i[8724]=34884,i[8723]=34884,i[8726]=34892,i[8725]=34892,i[8728]=34900,i[8727]=34900,i[8730]=34908,i[8729]=34908,i[8732]=34916,i[8731]=34916,i[8734]=34924,i[8733]=34924,i[8736]=34932,i[8735]=34932,i[8738]=34940,i[8737]=34940,i[8740]=34948,i[8739]=34948,i[8742]=34956,i[8741]=34956,i[8744]=34964,i[8743]=34964,i[8746]=34972,i[8745]=34972,i[8748]=34980,i[8747]=34980,i[8750]=34988,i[8749]=34988,i[8752]=34996,i[8751]=34996,i[8754]=35004,i[8753]=35004,C=s+-40|0,w=c+(I=0==(7&(I=c+8|0)|0)?0:0-I&7)|0,i[8685]=w,i[8682]=C-I,i[w+4>>2]=C-I|1,i[c+C+4>>2]=40,i[8686]=i[8801]}while(0);if((e=0|i[8682])>>>0>p>>>0)return I=e-p|0,i[8682]=I,w=(C=0|i[8685])+p|0,i[8685]=w,i[w+4>>2]=1|I,i[C+4>>2]=3|p,y=t,0|C+8}return i[8678]=48,y=t,0}function w(e){var t,n,i,a,o=0,s=0,c=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,y=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0,E=0,_=0,k=0,Q=0,S=0,x=0,D=0,P=0,M=0,F=0,O=0,R=0,T=0,j=0,H=0,U=0,N=0,L=0,K=0,G=0,$=0,Y=0,J=0,V=0,z=0,q=0,W=0,X=0,Z=0,ee=0,te=0,ne=0,re=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,le=0,Ae=0,fe=0,he=0,pe=0,de=0,ge=0,ye=0;$=0|Wt(0|r[(e|=0)>>0],0|r[e+1>>0],0|r[e+2>>0]),u(),V=0|fn(0|(V=0|mt(e+2|0)),0|u(),5),u(),R=0|fn(0|(R=0|Wt(0|r[e+5>>0],0|r[e+6>>0],0|r[e+7>>0])),0|u(),2),u(),y=0|fn(0|(y=0|mt(e+7|0)),0|u(),7),u(),Y=0|fn(0|(Y=0|mt(e+10|0)),0|u(),4),u(),X=0|fn(0|(X=0|Wt(0|r[e+13>>0],0|r[e+14>>0],0|r[e+15>>0])),0|u(),1),u(),_=0|fn(0|(_=0|mt(e+15|0)),0|u(),6),u(),ue=0|fn(0|(ue=0|Wt(0|r[e+18>>0],0|r[e+19>>0],0|r[e+20>>0])),0|u(),3),u(),he=0|Wt(0|r[e+21>>0],0|r[e+22>>0],0|r[e+23>>0]),u(),oe=0|fn(0|(oe=0|mt(e+23|0)),0|u(),5),u(),fe=0|fn(0|(fe=0|Wt(0|r[e+26>>0],0|r[e+27>>0],0|r[e+28>>0])),0|u(),2),u(),ne=0|fn(0|(ne=0|mt(e+28|0)),0|u(),7),u(),ge=0|fn(0|(ge=0|mt(e+31|0)),0|u(),4),u(),x=0|fn(0|(x=0|Wt(0|r[e+34>>0],0|r[e+35>>0],0|r[e+36>>0])),0|u(),1),u(),K=0|fn(0|(K=0|mt(e+36|0)),0|u(),6),u(),w=0|fn(0|(w=0|Wt(0|r[e+39>>0],0|r[e+40>>0],0|r[e+41>>0])),0|u(),3),u(),c=0|Wt(0|r[e+42>>0],0|r[e+43>>0],0|r[e+44>>0]),u(),N=0|fn(0|(N=0|mt(e+44|0)),0|u(),5),u(),ie=0|fn(0|(ie=0|Wt(0|r[e+47>>0],0|r[e+48>>0],0|r[e+49>>0])),0|u(),2),u(),ye=0|fn(0|(ye=0|mt(e+49|0)),0|u(),7),u(),d=0|fn(0|(d=0|mt(e+52|0)),0|u(),4),u(),Q=0|fn(0|(Q=0|Wt(0|r[e+55>>0],0|r[e+56>>0],0|r[e+57>>0])),0|u(),1),u(),M=0|fn(0|(M=0|mt(e+57|0)),0|u(),6),u(),h=0|Zt(0|(J=0|fn(0|(J=0|mt(e+60|0)),0|u(),3)),0|(l=0|u()),666643,0),I=0|u(),Ae=0|Zt(0|J,0|l,470296,0),C=0|u(),D=0|Zt(0|J,0|l,654183,0),A=0|u(),k=0|Zt(0|J,0|l,-997805,-1),p=0|u(),w=0|Sn(0|(o=0|Zt(0|J,0|l,136657,0)),0|u(),2097151&w|0,0),o=0|u(),c=0|Sn(0|(l=0|Zt(0|J,0|l,-683901,-1)),0|u(),2097151&c|0,0),l=0|u(),J=0|Zt(2097151&M|0,0,666643,0),L=0|u(),E=0|Zt(2097151&M|0,0,470296,0),te=0|u(),F=0|Zt(2097151&M|0,0,654183,0),s=0|u(),q=0|Zt(2097151&M|0,0,-997805,-1),z=0|u(),G=0|Zt(2097151&M|0,0,136657,0),b=0|u(),M=0|Sn(0|w,0|o,0|(M=0|Zt(2097151&M|0,0,-683901,-1)),0|u()),o=0|u(),w=0|Zt(2097151&Q|0,0,666643,0),W=0|u(),S=0|Zt(2097151&Q|0,0,470296,0),re=0|u(),U=0|Zt(2097151&Q|0,0,654183,0),f=0|u(),pe=0|Zt(2097151&Q|0,0,-997805,-1),le=0|u(),ee=0|Zt(2097151&Q|0,0,136657,0),O=0|u(),b=0|Sn(0|(p=0|Sn(0|(K=0|Sn(0|(Q=0|Zt(2097151&Q|0,0,-683901,-1)),0|u(),2097151&K|0,0)),0|u(),0|k,0|p)),0|u(),0|G,0|b),G=0|u(),p=0|Zt(2097151&d|0,0,666643,0),k=0|u(),K=0|Zt(2097151&d|0,0,470296,0),Q=0|u(),v=0|Zt(2097151&d|0,0,654183,0),Z=0|u(),T=0|Zt(2097151&d|0,0,-997805,-1),j=0|u(),a=0|Zt(2097151&d|0,0,136657,0),de=0|u(),d=0|Zt(2097151&d|0,0,-683901,-1),g=0|u(),m=0|Zt(2097151&ye|0,0,666643,0),P=0|u(),se=0|Zt(2097151&ye|0,0,470296,0),ce=0|u(),n=0|Zt(2097151&ye|0,0,654183,0),ae=0|u(),i=0|Zt(2097151&ye|0,0,-997805,-1),H=0|u(),t=0|Zt(2097151&ye|0,0,136657,0),B=0|u(),s=0|Sn(0|(C=0|Sn(0|(le=0|Sn(0|(de=0|Sn(0|(ge=0|Sn(0|(ye=0|Zt(2097151&ye|0,0,-683901,-1)),0|u(),2097151&ge|0,0)),0|u(),0|a,0|de)),0|u(),0|pe,0|le)),0|u(),0|Ae,0|C)),0|u(),0|F,0|s),F=0|u(),_=0|Sn(0|(C=0|Zt(2097151&ie|0,0,666643,0)),0|u(),2097151&_|0,0),C=0|u(),Ae=0|Zt(2097151&ie|0,0,470296,0),le=0|u(),k=0|Sn(0|(ce=0|Sn(0|(he=0|Sn(0|(pe=0|Zt(2097151&ie|0,0,654183,0)),0|u(),2097151&he|0,0)),0|u(),0|se,0|ce)),0|u(),0|p,0|k),p=0|u(),ce=0|Zt(2097151&ie|0,0,-997805,-1),se=0|u(),L=0|Sn(0|(re=0|Sn(0|(Z=0|Sn(0|(H=0|Sn(0|(fe=0|Sn(0|(he=0|Zt(2097151&ie|0,0,136657,0)),0|u(),2097151&fe|0,0)),0|u(),0|i,0|H)),0|u(),0|v,0|Z)),0|u(),0|S,0|re)),0|u(),0|J,0|L),J=0|u(),ie=0|Zt(2097151&ie|0,0,-683901,-1),re=0|u(),v=0|fn(0|(S=0|Sn(0|_,0|C,1048576,0)),0|(Z=0|u()),21),H=0|u(),H=0|Sn(0|(P=0|Sn(0|(ue=0|Sn(0|Ae,0|le,2097151&ue|0,0)),0|u(),0|m,0|P)),0|u(),0|v,0|H),v=0|u(),Z=0|Qn(0|_,0|C,-2097152&S|0,2047&Z|0),S=0|u(),P=0|fn(0|(C=0|Sn(0|k,0|p,1048576,0)),0|(_=0|u()),21),m=0|u(),m=0|Sn(0|(W=0|Sn(0|(Q=0|Sn(0|(ae=0|Sn(0|(oe=0|Sn(0|ce,0|se,2097151&oe|0,0)),0|u(),0|n,0|ae)),0|u(),0|K,0|Q)),0|u(),0|w,0|W)),0|u(),0|P,0|m),P=0|u(),Q=0|tn(0|(W=0|Sn(0|L,0|J,1048576,0)),0|(w=0|u()),21),K=0|u(),K=0|Sn(0|(te=0|Sn(0|(I=0|Sn(0|(f=0|Sn(0|(j=0|Sn(0|(B=0|Sn(0|(ne=0|Sn(0|ie,0|re,2097151&ne|0,0)),0|u(),0|t,0|B)),0|u(),0|T,0|j)),0|u(),0|U,0|f)),0|u(),0|h,0|I)),0|u(),0|E,0|te)),0|u(),0|Q,0|K),Q=0|u(),I=0|tn(0|(te=0|Sn(0|s,0|F,1048576,0)),0|(E=0|u()),21),h=0|u(),h=0|Sn(0|(z=0|Sn(0|(A=0|Sn(0|(O=0|Sn(0|(x=0|Sn(0|d,0|g,2097151&x|0,0)),0|u(),0|ee,0|O)),0|u(),0|D,0|A)),0|u(),0|q,0|z)),0|u(),0|I,0|h),I=0|u(),E=0|Qn(0|s,0|F,-2097152&te|0,0|E),te=0|u(),z=0|Sn(0|M,0|o,0|(z=0|tn(0|(F=0|Sn(0|b,0|G,1048576,0)),0|(s=0|u()),21)),0|u()),o=0|u(),s=0|Qn(0|b,0|G,-2097152&F|0,0|s),F=0|u(),N=0|Sn(0|(M=0|tn(0|(G=0|Sn(0|c,0|l,1048576,0)),0|(b=0|u()),21)),0|u(),2097151&N|0,0),M=0|u(),b=0|Qn(0|c,0|l,-2097152&G|0,0|b),G=0|u(),q=0|fn(0|(l=0|Sn(0|H,0|v,1048576,0)),0|(c=0|u()),21),A=0|u(),c=0|Qn(0|H,0|v,-2097152&l|0,0|c),l=0|u(),D=0|tn(0|(v=0|Sn(0|m,0|P,1048576,0)),0|(H=0|u()),21),O=0|u(),te=0|Sn(0|(g=0|tn(0|(ee=0|Sn(0|K,0|Q,1048576,0)),0|(x=0|u()),21)),0|u(),0|E,0|te),E=0|u(),x=0|Qn(0|K,0|Q,-2097152&ee|0,0|x),ee=0|u(),F=0|Sn(0|(g=0|tn(0|(Q=0|Sn(0|h,0|I,1048576,0)),0|(K=0|u()),21)),0|u(),0|s,0|F),s=0|u(),K=0|Qn(0|h,0|I,-2097152&Q|0,0|K),Q=0|u(),G=0|Sn(0|(g=0|tn(0|(I=0|Sn(0|z,0|o,1048576,0)),0|(h=0|u()),21)),0|u(),0|b,0|G),b=0|u(),h=0|Qn(0|z,0|o,-2097152&I|0,0|h),I=0|u(),X=0|Sn(0|(o=0|Zt(0|N,0|M,666643,0)),0|u(),2097151&X|0,0),o=0|u(),z=0|Sn(0|Z,0|S,0|(z=0|Zt(0|N,0|M,470296,0)),0|u()),S=0|u(),Z=0|Sn(0|c,0|l,0|(Z=0|Zt(0|N,0|M,654183,0)),0|u()),l=0|u(),c=0|Zt(0|N,0|M,-997805,-1),g=0|u(),d=0|Zt(0|N,0|M,136657,0),f=0|u(),w=0|Qn(0|(O=0|Sn(0|(J=0|Sn(0|(M=0|Zt(0|N,0|M,-683901,-1)),0|u(),0|L,0|J)),0|u(),0|D,0|O)),0|u(),-2097152&W|0,0|w),W=0|u(),Y=0|Sn(0|(O=0|Zt(0|G,0|b,666643,0)),0|u(),2097151&Y|0,0),O=0|u(),D=0|Sn(0|X,0|o,0|(D=0|Zt(0|G,0|b,470296,0)),0|u()),o=0|u(),X=0|Sn(0|z,0|S,0|(X=0|Zt(0|G,0|b,654183,0)),0|u()),S=0|u(),z=0|Sn(0|Z,0|l,0|(z=0|Zt(0|G,0|b,-997805,-1)),0|u()),l=0|u(),Z=0|Zt(0|G,0|b,136657,0),J=0|u(),b=0|Zt(0|G,0|b,-683901,-1),G=0|u(),y=0|Sn(0|(L=0|Zt(0|h,0|I,666643,0)),0|u(),2097151&y|0,0),L=0|u(),M=0|Sn(0|Y,0|O,0|(M=0|Zt(0|h,0|I,470296,0)),0|u()),O=0|u(),Y=0|Sn(0|D,0|o,0|(Y=0|Zt(0|h,0|I,654183,0)),0|u()),o=0|u(),D=0|Sn(0|X,0|S,0|(D=0|Zt(0|h,0|I,-997805,-1)),0|u()),S=0|u(),X=0|Sn(0|z,0|l,0|(X=0|Zt(0|h,0|I,136657,0)),0|u()),l=0|u(),I=0|Zt(0|h,0|I,-683901,-1),h=0|u(),h=0|Sn(0|(J=0|Sn(0|(g=0|Sn(0|(_=0|Qn(0|(p=0|Sn(0|q,0|A,0|k,0|p)),0|u(),-2097152&C|0,0|_)),0|u(),0|c,0|g)),0|u(),0|Z,0|J)),0|u(),0|I,0|h),I=0|u(),R=0|Sn(0|(J=0|Zt(0|F,0|s,666643,0)),0|u(),2097151&R|0,0),J=0|u(),Z=0|Sn(0|y,0|L,0|(Z=0|Zt(0|F,0|s,470296,0)),0|u()),L=0|u(),y=0|Sn(0|M,0|O,0|(y=0|Zt(0|F,0|s,654183,0)),0|u()),O=0|u(),M=0|Sn(0|Y,0|o,0|(M=0|Zt(0|F,0|s,-997805,-1)),0|u()),o=0|u(),Y=0|Sn(0|D,0|S,0|(Y=0|Zt(0|F,0|s,136657,0)),0|u()),S=0|u(),s=0|Sn(0|X,0|l,0|(s=0|Zt(0|F,0|s,-683901,-1)),0|u()),l=0|u(),V=0|Sn(0|(X=0|Zt(0|K,0|Q,666643,0)),0|u(),2097151&V|0,0),X=0|u(),F=0|Sn(0|R,0|J,0|(F=0|Zt(0|K,0|Q,470296,0)),0|u()),J=0|u(),R=0|Sn(0|Z,0|L,0|(R=0|Zt(0|K,0|Q,654183,0)),0|u()),L=0|u(),Z=0|Sn(0|y,0|O,0|(Z=0|Zt(0|K,0|Q,-997805,-1)),0|u()),O=0|u(),y=0|Sn(0|M,0|o,0|(y=0|Zt(0|K,0|Q,136657,0)),0|u()),o=0|u(),Q=0|Sn(0|Y,0|S,0|(Q=0|Zt(0|K,0|Q,-683901,-1)),0|u()),S=0|u(),$=0|Sn(0|(Y=0|Zt(0|te,0|E,666643,0)),0|u(),2097151&$|0,0),Y=0|u(),K=0|Sn(0|V,0|X,0|(K=0|Zt(0|te,0|E,470296,0)),0|u()),X=0|u(),V=0|Sn(0|F,0|J,0|(V=0|Zt(0|te,0|E,654183,0)),0|u()),J=0|u(),F=0|Sn(0|R,0|L,0|(F=0|Zt(0|te,0|E,-997805,-1)),0|u()),L=0|u(),R=0|Sn(0|Z,0|O,0|(R=0|Zt(0|te,0|E,136657,0)),0|u()),O=0|u(),E=0|Sn(0|y,0|o,0|(E=0|Zt(0|te,0|E,-683901,-1)),0|u()),o=0|u(),Z=0|Sn(0|K,0|X,0|(Z=0|tn(0|(y=0|Sn(0|$,0|Y,1048576,0)),0|(te=0|u()),21)),0|u()),X=0|u(),te=0|Qn(0|$,0|Y,-2097152&y|0,0|te),y=0|u(),K=0|Sn(0|F,0|L,0|(K=0|tn(0|(Y=0|Sn(0|V,0|J,1048576,0)),0|($=0|u()),21)),0|u()),L=0|u(),D=0|Sn(0|E,0|o,0|(D=0|tn(0|(F=0|Sn(0|R,0|O,1048576,0)),0|(M=0|u()),21)),0|u()),o=0|u(),c=0|Sn(0|s,0|l,0|(c=0|tn(0|(E=0|Sn(0|Q,0|S,1048576,0)),0|(g=0|u()),21)),0|u()),l=0|u(),g=0|Qn(0|Q,0|S,-2097152&E|0,0|g),E=0|u(),s=0|tn(0|(S=0|Sn(0|h,0|I,1048576,0)),0|(Q=0|u()),21),_=0|u(),_=0|Sn(0|(G=0|Sn(0|(H=0|Qn(0|(P=0|Sn(0|d,0|f,0|m,0|P)),0|u(),-2097152&v|0,0|H)),0|u(),0|b,0|G)),0|u(),0|s,0|_),s=0|u(),Q=0|Qn(0|h,0|I,-2097152&S|0,0|Q),S=0|u(),ee=0|Sn(0|(G=0|tn(0|(I=0|Sn(0|w,0|W,1048576,0)),0|(h=0|u()),21)),0|u(),0|x,0|ee),x=0|u(),h=0|Qn(0|w,0|W,-2097152&I|0,0|h),I=0|u(),G=0|tn(0|(W=0|Sn(0|Z,0|X,1048576,0)),0|(w=0|u()),21),b=0|u(),P=0|tn(0|(H=0|Sn(0|K,0|L,1048576,0)),0|(v=0|u()),21),m=0|u(),C=0|Sn(0|g,0|E,0|(C=0|tn(0|(f=0|Sn(0|D,0|o,1048576,0)),0|(d=0|u()),21)),0|u()),E=0|u(),k=0|Sn(0|Q,0|S,0|(k=0|tn(0|(g=0|Sn(0|c,0|l,1048576,0)),0|(p=0|u()),21)),0|u()),S=0|u(),p=0|Qn(0|c,0|l,-2097152&g|0,0|p),g=0|u(),Q=0|Sn(0|h,0|I,0|(Q=0|tn(0|(l=0|Sn(0|_,0|s,1048576,0)),0|(c=0|u()),21)),0|u()),I=0|u(),c=0|Qn(0|_,0|s,-2097152&l|0,0|c),l=0|u(),h=0|tn(0|(s=0|Sn(0|ee,0|x,1048576,0)),0|(_=0|u()),21),A=0|u(),_=0|Qn(0|ee,0|x,-2097152&s|0,0|_),s=0|u(),x=0|Sn(0|te,0|y,0|(x=0|Zt(0|h,0|A,666643,0)),0|u()),y=0|u(),te=0|Zt(0|h,0|A,470296,0),ee=0|u(),q=0|Zt(0|h,0|A,654183,0),z=0|u(),N=0|Zt(0|h,0|A,-997805,-1),U=0|u(),j=0|Zt(0|h,0|A,136657,0),T=0|u(),A=0|Zt(0|h,0|A,-683901,-1),h=0|u(),y=0|tn(0|x,0|y,21),B=0|u(),y=0|tn(0|(B=0|Sn(0|(w=0|Qn(0|(X=0|Sn(0|te,0|ee,0|Z,0|X)),0|u(),-2097152&W|0,0|w)),0|u(),0|y,0|B)),0|u(),21),w=0|u(),y=0|tn(0|(w=0|Sn(0|(b=0|Sn(0|($=0|Qn(0|(J=0|Sn(0|q,0|z,0|V,0|J)),0|u(),-2097152&Y|0,0|$)),0|u(),0|G,0|b)),0|u(),0|y,0|w)),0|u(),21),b=0|u(),y=0|tn(0|(b=0|Sn(0|(v=0|Qn(0|(U=0|Sn(0|K,0|L,0|N,0|U)),0|u(),-2097152&H|0,0|v)),0|u(),0|y,0|b)),0|u(),21),v=0|u(),y=0|tn(0|(v=0|Sn(0|(m=0|Sn(0|(M=0|Qn(0|(O=0|Sn(0|j,0|T,0|R,0|O)),0|u(),-2097152&F|0,0|M)),0|u(),0|P,0|m)),0|u(),0|y,0|v)),0|u(),21),m=0|u(),x=0|Sn(0|(Q=0|Zt(0|(_=0|tn(0|(s=0|Sn(0|(I=0|tn(0|(c=0|Sn(0|Q,0|I,0|(c=0|tn(0|(l=0|Sn(0|(S=0|tn(0|(p=0|Sn(0|k,0|S,0|(p=0|tn(0|(g=0|Sn(0|(E=0|tn(0|(y=0|Sn(0|C,0|E,0|(y=0|tn(0|(m=0|Sn(0|(d=0|Qn(0|(h=0|Sn(0|D,0|o,0|A,0|h)),0|u(),-2097152&f|0,0|d)),0|u(),0|y,0|m)),0|u(),21)),0|u())),0|u(),21)),0|u(),0|p,0|g)),0|u(),21)),0|u())),0|u(),21)),0|u(),0|c,0|l)),0|u(),21)),0|u())),0|u(),21)),0|u(),0|_,0|s)),0|u(),21)),0|(I=0|u()),666643,0)),0|u(),2097151&x|0,0),Q=0|u(),B=0|Sn(0|(S=0|Zt(0|_,0|I,470296,0)),0|u(),2097151&B|0,0),S=0|u(),w=0|Sn(0|(k=0|Zt(0|_,0|I,654183,0)),0|u(),2097151&w|0,0),k=0|u(),b=0|Sn(0|(E=0|Zt(0|_,0|I,-997805,-1)),0|u(),2097151&b|0,0),E=0|u(),v=0|Sn(0|(C=0|Zt(0|_,0|I,136657,0)),0|u(),2097151&v|0,0),C=0|u(),s=0|Sn(0|(o=0|tn(0|(c=0|Sn(0|(A=0|tn(0|(l=0|Sn(0|(h=0|tn(0|(p=0|Sn(0|(f=0|tn(0|(g=0|Sn(0|(d=0|tn(0|(y=0|Sn(0|(m=0|tn(0|(v=0|Sn(0|(m=0|Sn(0|(I=0|Zt(0|_,0|I,-683901,-1)),0|u(),2097151&m|0,0)),0|(I=0|u()),0|(v=0|tn(0|(b=0|Sn(0|v,0|C,0|(b=0|tn(0|(w=0|Sn(0|b,0|E,0|(w=0|tn(0|(B=0|Sn(0|w,0|k,0|(B=0|tn(0|(_=0|Sn(0|B,0|S,0|(_=0|tn(0|x,0|Q,21)),0|u())),0|(S=0|u()),21)),0|u())),0|(k=0|u()),21)),0|u())),0|(E=0|u()),21)),0|u())),0|(C=0|u()),21)),0|u())),0|(I=0|u()),21)),0|u(),2097151&y|0,0)),0|(m=0|u()),21)),0|u(),2097151&g|0,0)),0|(d=0|u()),21)),0|u(),2097151&p|0,0)),0|(f=0|u()),21)),0|u(),2097151&l|0,0)),0|(h=0|u()),21)),0|u(),2097151&c|0,0)),0|(A=0|u()),21)),0|u(),2097151&s|0,0),o=0|u(),r[e>>0]=x,D=0|fn(0|x,0|Q,8),u(),r[e+1>>0]=D,Q=0|fn(0|x,0|Q,16),u(),x=0|cn(2097151&_|0,0,5),u(),r[e+2>>0]=x|31&Q,Q=0|fn(0|_,0|S,3),u(),r[e+3>>0]=Q,S=0|fn(0|_,0|S,11),u(),r[e+4>>0]=S,_=0|fn(2097151&_|0,0,19),S=0|u(),Q=0|cn(2097151&B|0,0,2),u(),r[e+5>>0]=Q|_,k=0|fn(0|B,0|k,6),u(),r[e+6>>0]=k,B=0|fn(2097151&B|0,0,14),k=0|u(),_=0|cn(2097151&w|0,0,7),u(),r[e+7>>0]=_|B,B=0|fn(0|w,0|E,1),u(),r[e+8>>0]=B,E=0|fn(0|w,0|E,9),u(),r[e+9>>0]=E,w=0|fn(2097151&w|0,0,17),E=0|u(),B=0|cn(2097151&b|0,0,4),u(),r[e+10>>0]=B|w,w=0|fn(0|b,0|C,4),u(),r[e+11>>0]=w,C=0|fn(0|b,0|C,12),u(),r[e+12>>0]=C,b=0|fn(2097151&b|0,0,20),C=0|u(),w=0|cn(2097151&v|0,0,1),u(),r[e+13>>0]=w|b,I=0|fn(0|v,0|I,7),u(),r[e+14>>0]=I,v=0|fn(2097151&v|0,0,15),I=0|u(),b=0|cn(2097151&y|0,0,6),u(),r[e+15>>0]=b|v,v=0|fn(0|y,0|m,2),u(),r[e+16>>0]=v,m=0|fn(0|y,0|m,10),u(),r[e+17>>0]=m,y=0|fn(2097151&y|0,0,18),m=0|u(),v=0|cn(0|g,0|d,3),u(),r[e+18>>0]=v|y,y=0|fn(0|g,0|d,5),u(),r[e+19>>0]=y,d=0|fn(0|g,0|d,13),u(),r[e+20>>0]=d,r[e+21>>0]=p,d=0|fn(0|p,0|f,8),u(),r[e+22>>0]=d,f=0|fn(0|p,0|f,16),u(),p=0|cn(2097151&l|0,0,5),u(),r[e+23>>0]=p|31&f,f=0|fn(0|l,0|h,3),u(),r[e+24>>0]=f,h=0|fn(0|l,0|h,11),u(),r[e+25>>0]=h,l=0|fn(2097151&l|0,0,19),h=0|u(),f=0|cn(2097151&c|0,0,2),u(),r[e+26>>0]=f|l,A=0|fn(0|c,0|A,6),u(),r[e+27>>0]=A,c=0|fn(2097151&c|0,0,14),A=0|u(),l=0|cn(0|s,0|o,7),u(),r[e+28>>0]=l|c,c=0|fn(0|s,0|o,1),u(),r[e+29>>0]=c,c=0|fn(0|s,0|o,9),u(),r[e+30>>0]=c,o=0|tn(0|s,0|o,17),u(),r[e+31>>0]=o}function C(e,t,n){e|=0,n|=0;var r,a,o,s,c,l,A,f,h,p,d,g,y,v,m,b,I,w,C,B,E,_,k,Q,S,x,D,P,M,F,O,R,T,j,H,U,N,L,K,G,$,Y,J,V,z,q,W,X,Z,ee,te,ne,re,ie,ae,oe,se,ce,ue,le,Ae,fe,he,pe,de,ge,ye,ve,me,be,Ie,we,Ce,Be,Ee,_e,ke,Qe,Se,xe,De,Pe,Me,Fe,Oe,Re,Te,je,He,Ue=0,Ne=0,Le=0,Ke=0,Ge=0,$e=0,Ye=0,Je=0,Ve=0,ze=0,qe=0,We=0,Xe=0,Ze=0,et=0,tt=0,nt=0,rt=0,it=0,at=0,ot=0,st=0,ct=0,ut=0,lt=0,At=0,ft=0,ht=0,pt=0,dt=0,gt=0,yt=0,vt=0,mt=0,bt=0,It=0,wt=0,Ct=0,Bt=0,Et=0,_t=0,kt=0,Qt=0,St=0,xt=0,Dt=0,Pt=0,Mt=0,Ft=0,Ot=0,Rt=0,Tt=0,jt=0,Ht=0,Ut=0,Nt=0,Lt=0,Kt=0,Gt=0,$t=0,Yt=0,Jt=0,Vt=0,zt=0,qt=0,Wt=0,Xt=0,en=0,nn=0,rn=0,an=0,on=0,sn=0,cn=0,un=0,ln=0,An=0,hn=0,pn=0,dn=0,gn=0,yn=0,vn=0,mn=0,bn=0,In=0,wn=0,Cn=0,Bn=0,En=0,_n=0,kn=0,xn=0,Dn=0,Pn=0,Mn=0,Fn=0,On=0,Rn=0,Tn=0,jn=0,Hn=0,Un=0,Nn=0,Ln=0,Kn=0,Gn=0,$n=0,Yn=0,Jn=0;et=0|i[(t|=0)>>2],Je=0|i[t+4>>2],$e=0|i[t+8>>2],Xe=0|i[t+12>>2],Pt=0|i[t+16>>2],We=0|i[t+20>>2],un=0|i[t+24>>2],Ue=0|i[t+28>>2],wt=0|i[t+32>>2],ft=0|i[t+36>>2],ut=0|i[n>>2],Jn=0|i[n+4>>2],kn=0|i[n+8>>2],on=0|i[n+12>>2],jt=0|i[n+16>>2],Mn=0|i[n+20>>2],hn=0|i[n+24>>2],Kt=0|i[n+28>>2],Ct=0|i[n+32>>2],He=0|i[n+36>>2],Te=0|Zt(0|ut,((0|ut)<0)<<31>>31|0,0|et,((0|et)<0)<<31>>31|0),Yn=0|u(),Se=0|Zt(0|Jn,((0|Jn)<0)<<31>>31|0,0|et,((0|et)<0)<<31>>31|0),Qe=0|u(),ne=0|Zt(0|kn,((0|kn)<0)<<31>>31|0,0|et,((0|et)<0)<<31>>31|0),sn=0|u(),T=0|Zt(0|on,((0|on)<0)<<31>>31|0,0|et,((0|et)<0)<<31>>31|0),Ht=0|u(),we=0|Zt(0|jt,((0|jt)<0)<<31>>31|0,0|et,((0|et)<0)<<31>>31|0),On=0|u(),ce=0|Zt(0|Mn,((0|Mn)<0)<<31>>31|0,0|et,((0|et)<0)<<31>>31|0),dn=0|u(),K=0|Zt(0|hn,((0|hn)<0)<<31>>31|0,0|et,((0|et)<0)<<31>>31|0),$t=0|u(),B=0|Zt(0|Kt,((0|Kt)<0)<<31>>31|0,0|et,((0|et)<0)<<31>>31|0),Et=0|u(),p=0|Zt(0|Ct,((0|Ct)<0)<<31>>31|0,0|et,((0|et)<0)<<31>>31|0),ht=0|u(),et=0|Zt(0|He,((0|He)<0)<<31>>31|0,0|et,((0|et)<0)<<31>>31|0),Ze=0|u(),xn=0|Zt(0|ut,((0|ut)<0)<<31>>31|0,0|Je,((0|Je)<0)<<31>>31|0),Dn=0|u(),ae=0|Zt(0|Jn,((0|Jn)<0)<<31>>31|0,Je<<1|0,((Je<<1|0)<0)<<31>>31|0),ie=0|u(),j=0|Zt(0|kn,((0|kn)<0)<<31>>31|0,0|Je,((0|Je)<0)<<31>>31|0),Ut=0|u(),Ce=0|Zt(0|on,((0|on)<0)<<31>>31|0,Je<<1|0,((Je<<1|0)<0)<<31>>31|0),Rn=0|u(),ue=0|Zt(0|jt,((0|jt)<0)<<31>>31|0,0|Je,((0|Je)<0)<<31>>31|0),gn=0|u(),G=0|Zt(0|Mn,((0|Mn)<0)<<31>>31|0,Je<<1|0,((Je<<1|0)<0)<<31>>31|0),Yt=0|u(),E=0|Zt(0|hn,((0|hn)<0)<<31>>31|0,0|Je,((0|Je)<0)<<31>>31|0),_t=0|u(),d=0|Zt(0|Kt,((0|Kt)<0)<<31>>31|0,Je<<1|0,((Je<<1|0)<0)<<31>>31|0),pt=0|u(),r=0|Zt(0|Ct,((0|Ct)<0)<<31>>31|0,0|Je,((0|Je)<0)<<31>>31|0),tt=0|u(),Je=0|Zt(19*He|0,0|(At=((19*He|0)<0)<<31>>31),Je<<1|0,((Je<<1|0)<0)<<31>>31|0),t=0|u(),re=0|Zt(0|ut,((0|ut)<0)<<31>>31|0,0|$e,((0|$e)<0)<<31>>31|0),cn=0|u(),N=0|Zt(0|Jn,((0|Jn)<0)<<31>>31|0,0|$e,((0|$e)<0)<<31>>31|0),U=0|u(),Be=0|Zt(0|kn,((0|kn)<0)<<31>>31|0,0|$e,((0|$e)<0)<<31>>31|0),Tn=0|u(),le=0|Zt(0|on,((0|on)<0)<<31>>31|0,0|$e,((0|$e)<0)<<31>>31|0),yn=0|u(),$=0|Zt(0|jt,((0|jt)<0)<<31>>31|0,0|$e,((0|$e)<0)<<31>>31|0),Jt=0|u(),_=0|Zt(0|Mn,((0|Mn)<0)<<31>>31|0,0|$e,((0|$e)<0)<<31>>31|0),kt=0|u(),g=0|Zt(0|hn,((0|hn)<0)<<31>>31|0,0|$e,((0|$e)<0)<<31>>31|0),dt=0|u(),a=0|Zt(0|Kt,((0|Kt)<0)<<31>>31|0,0|$e,((0|$e)<0)<<31>>31|0),nt=0|u(),xe=0|Zt(19*Ct|0,0|(Bt=((19*Ct|0)<0)<<31>>31),0|$e,((0|$e)<0)<<31>>31|0),Hn=0|u(),$e=0|Zt(19*He|0,0|At,0|$e,((0|$e)<0)<<31>>31|0),Ye=0|u(),H=0|Zt(0|ut,((0|ut)<0)<<31>>31|0,0|Xe,((0|Xe)<0)<<31>>31|0),Nt=0|u(),ke=0|Zt(0|Jn,((0|Jn)<0)<<31>>31|0,Xe<<1|0,((Xe<<1|0)<0)<<31>>31|0),_e=0|u(),Ae=0|Zt(0|kn,((0|kn)<0)<<31>>31|0,0|Xe,((0|Xe)<0)<<31>>31|0),vn=0|u(),Y=0|Zt(0|on,((0|on)<0)<<31>>31|0,Xe<<1|0,((Xe<<1|0)<0)<<31>>31|0),Vt=0|u(),k=0|Zt(0|jt,((0|jt)<0)<<31>>31|0,0|Xe,((0|Xe)<0)<<31>>31|0),Qt=0|u(),y=0|Zt(0|Mn,((0|Mn)<0)<<31>>31|0,Xe<<1|0,((Xe<<1|0)<0)<<31>>31|0),gt=0|u(),o=0|Zt(0|hn,((0|hn)<0)<<31>>31|0,0|Xe,((0|Xe)<0)<<31>>31|0),rt=0|u(),De=0|Zt(19*Kt|0,0|(Gt=((19*Kt|0)<0)<<31>>31),Xe<<1|0,((Xe<<1|0)<0)<<31>>31|0),Un=0|u(),de=0|Zt(19*Ct|0,0|Bt,0|Xe,((0|Xe)<0)<<31>>31|0),bn=0|u(),Xe=0|Zt(19*He|0,0|At,Xe<<1|0,((Xe<<1|0)<0)<<31>>31|0),Ge=0|u(),Ee=0|Zt(0|ut,((0|ut)<0)<<31>>31|0,0|Pt,((0|Pt)<0)<<31>>31|0),jn=0|u(),pe=0|Zt(0|Jn,((0|Jn)<0)<<31>>31|0,0|Pt,((0|Pt)<0)<<31>>31|0),he=0|u(),J=0|Zt(0|kn,((0|kn)<0)<<31>>31|0,0|Pt,((0|Pt)<0)<<31>>31|0),zt=0|u(),Q=0|Zt(0|on,((0|on)<0)<<31>>31|0,0|Pt,((0|Pt)<0)<<31>>31|0),St=0|u(),v=0|Zt(0|jt,((0|jt)<0)<<31>>31|0,0|Pt,((0|Pt)<0)<<31>>31|0),yt=0|u(),s=0|Zt(0|Mn,((0|Mn)<0)<<31>>31|0,0|Pt,((0|Pt)<0)<<31>>31|0),it=0|u(),Pe=0|Zt(19*hn|0,0|(pn=((19*hn|0)<0)<<31>>31),0|Pt,((0|Pt)<0)<<31>>31|0),Nn=0|u(),ge=0|Zt(19*Kt|0,0|Gt,0|Pt,((0|Pt)<0)<<31>>31|0),In=0|u(),W=0|Zt(19*Ct|0,0|Bt,0|Pt,((0|Pt)<0)<<31>>31|0),Wt=0|u(),Pt=0|Zt(19*He|0,0|At,0|Pt,((0|Pt)<0)<<31>>31|0),Le=0|u(),fe=0|Zt(0|ut,((0|ut)<0)<<31>>31|0,0|We,((0|We)<0)<<31>>31|0),mn=0|u(),q=0|Zt(0|Jn,((0|Jn)<0)<<31>>31|0,We<<1|0,((We<<1|0)<0)<<31>>31|0),z=0|u(),S=0|Zt(0|kn,((0|kn)<0)<<31>>31|0,0|We,((0|We)<0)<<31>>31|0),xt=0|u(),m=0|Zt(0|on,((0|on)<0)<<31>>31|0,We<<1|0,((We<<1|0)<0)<<31>>31|0),vt=0|u(),c=0|Zt(0|jt,((0|jt)<0)<<31>>31|0,0|We,((0|We)<0)<<31>>31|0),at=0|u(),Me=0|Zt(19*Mn|0,0|(Fn=((19*Mn|0)<0)<<31>>31),We<<1|0,((We<<1|0)<0)<<31>>31|0),Ln=0|u(),ye=0|Zt(19*hn|0,0|pn,0|We,((0|We)<0)<<31>>31|0),wn=0|u(),X=0|Zt(19*Kt|0,0|Gt,We<<1|0,((We<<1|0)<0)<<31>>31|0),Xt=0|u(),M=0|Zt(19*Ct|0,0|Bt,0|We,((0|We)<0)<<31>>31|0),Mt=0|u(),We=0|Zt(19*He|0,0|At,We<<1|0,((We<<1|0)<0)<<31>>31|0),Ne=0|u(),V=0|Zt(0|ut,((0|ut)<0)<<31>>31|0,0|un,((0|un)<0)<<31>>31|0),qt=0|u(),P=0|Zt(0|Jn,((0|Jn)<0)<<31>>31|0,0|un,((0|un)<0)<<31>>31|0),D=0|u(),b=0|Zt(0|kn,((0|kn)<0)<<31>>31|0,0|un,((0|un)<0)<<31>>31|0),mt=0|u(),l=0|Zt(0|on,((0|on)<0)<<31>>31|0,0|un,((0|un)<0)<<31>>31|0),ot=0|u(),Fe=0|Zt(19*jt|0,((19*jt|0)<0)<<31>>31|0,0|un,((0|un)<0)<<31>>31|0),Kn=0|u(),ve=0|Zt(19*Mn|0,0|Fn,0|un,((0|un)<0)<<31>>31|0),Cn=0|u(),Z=0|Zt(19*hn|0,0|pn,0|un,((0|un)<0)<<31>>31|0),en=0|u(),F=0|Zt(19*Kt|0,0|Gt,0|un,((0|un)<0)<<31>>31|0),Ft=0|u(),Ve=0|Zt(19*Ct|0,0|Bt,0|un,((0|un)<0)<<31>>31|0),ze=0|u(),un=0|Zt(19*He|0,0|At,0|un,((0|un)<0)<<31>>31|0),Ke=0|u(),x=0|Zt(0|ut,((0|ut)<0)<<31>>31|0,0|Ue,((0|Ue)<0)<<31>>31|0),Dt=0|u(),C=0|Zt(0|Jn,((0|Jn)<0)<<31>>31|0,Ue<<1|0,((Ue<<1|0)<0)<<31>>31|0),w=0|u(),A=0|Zt(0|kn,((0|kn)<0)<<31>>31|0,0|Ue,((0|Ue)<0)<<31>>31|0),st=0|u(),Oe=0|Zt(19*on|0,((19*on|0)<0)<<31>>31|0,Ue<<1|0,((Ue<<1|0)<0)<<31>>31|0),Gn=0|u(),me=0|Zt(19*jt|0,((19*jt|0)<0)<<31>>31|0,0|Ue,((0|Ue)<0)<<31>>31|0),Bn=0|u(),ee=0|Zt(19*Mn|0,0|Fn,Ue<<1|0,((Ue<<1|0)<0)<<31>>31|0),nn=0|u(),O=0|Zt(19*hn|0,0|pn,0|Ue,((0|Ue)<0)<<31>>31|0),Ot=0|u(),lt=0|Zt(19*Kt|0,0|Gt,Ue<<1|0,((Ue<<1|0)<0)<<31>>31|0),qe=0|u(),oe=0|Zt(19*Ct|0,0|Bt,0|Ue,((0|Ue)<0)<<31>>31|0),ln=0|u(),n=0|Zt(19*He|0,0|At,Ue<<1|0,((Ue<<1|0)<0)<<31>>31|0),Ue=0|u(),I=0|Zt(0|ut,((0|ut)<0)<<31>>31|0,0|wt,((0|wt)<0)<<31>>31|0),bt=0|u(),h=0|Zt(0|Jn,((0|Jn)<0)<<31>>31|0,0|wt,((0|wt)<0)<<31>>31|0),f=0|u(),Re=0|Zt(19*kn|0,((19*kn|0)<0)<<31>>31|0,0|wt,((0|wt)<0)<<31>>31|0),$n=0|u(),be=0|Zt(19*on|0,((19*on|0)<0)<<31>>31|0,0|wt,((0|wt)<0)<<31>>31|0),En=0|u(),te=0|Zt(19*jt|0,((19*jt|0)<0)<<31>>31|0,0|wt,((0|wt)<0)<<31>>31|0),rn=0|u(),R=0|Zt(19*Mn|0,0|Fn,0|wt,((0|wt)<0)<<31>>31|0),Rt=0|u(),Ie=0|Zt(19*hn|0,0|pn,0|wt,((0|wt)<0)<<31>>31|0),Pn=0|u(),se=0|Zt(19*Kt|0,0|Gt,0|wt,((0|wt)<0)<<31>>31|0),An=0|u(),L=0|Zt(19*Ct|0,0|Bt,0|wt,((0|wt)<0)<<31>>31|0),Lt=0|u(),wt=0|Zt(19*He|0,0|At,0|wt,((0|wt)<0)<<31>>31|0),It=0|u(),ut=0|Zt(0|ut,((0|ut)<0)<<31>>31|0,0|ft,((0|ft)<0)<<31>>31|0),ct=0|u(),Jn=0|Zt(19*Jn|0,((19*Jn|0)<0)<<31>>31|0,ft<<1|0,((ft<<1|0)<0)<<31>>31|0),je=0|u(),kn=0|Zt(19*kn|0,((19*kn|0)<0)<<31>>31|0,0|ft,((0|ft)<0)<<31>>31|0),_n=0|u(),on=0|Zt(19*on|0,((19*on|0)<0)<<31>>31|0,ft<<1|0,((ft<<1|0)<0)<<31>>31|0),an=0|u(),jt=0|Zt(19*jt|0,((19*jt|0)<0)<<31>>31|0,0|ft,((0|ft)<0)<<31>>31|0),Tt=0|u(),Fn=0|Zt(19*Mn|0,0|Fn,ft<<1|0,((ft<<1|0)<0)<<31>>31|0),Mn=0|u(),pn=0|Zt(19*hn|0,0|pn,0|ft,((0|ft)<0)<<31>>31|0),hn=0|u(),Gt=0|Zt(19*Kt|0,0|Gt,ft<<1|0,((ft<<1|0)<0)<<31>>31|0),Kt=0|u(),Bt=0|Zt(19*Ct|0,0|Bt,0|ft,((0|ft)<0)<<31>>31|0),Ct=0|u(),ft=0|Zt(19*He|0,0|At,ft<<1|0,((ft<<1|0)<0)<<31>>31|0),At=0|u(),t=0|Sn(0|(Hn=0|Sn(0|(Un=0|Sn(0|(Nn=0|Sn(0|(Ln=0|Sn(0|(Kn=0|Sn(0|(Gn=0|Sn(0|($n=0|Sn(0|(Yn=0|Sn(0|Jn,0|je,0|Te,0|Yn)),0|u(),0|Re,0|$n)),0|u(),0|Oe,0|Gn)),0|u(),0|Fe,0|Kn)),0|u(),0|Me,0|Ln)),0|u(),0|Pe,0|Nn)),0|u(),0|De,0|Un)),0|u(),0|xe,0|Hn)),0|u(),0|Je,0|t),Je=0|u(),Dn=0|Sn(0|Se,0|Qe,0|xn,0|Dn),xn=0|u(),Ne=0|Sn(0|(ze=0|Sn(0|(qe=0|Sn(0|(Pn=0|Sn(0|(Mn=0|Sn(0|(On=0|Sn(0|(Rn=0|Sn(0|(Tn=0|Sn(0|(jn=0|Sn(0|ke,0|_e,0|Ee,0|jn)),0|u(),0|Be,0|Tn)),0|u(),0|Ce,0|Rn)),0|u(),0|we,0|On)),0|u(),0|Fn,0|Mn)),0|u(),0|Ie,0|Pn)),0|u(),0|lt,0|qe)),0|u(),0|Ve,0|ze)),0|u(),0|We,0|Ne),We=0|u(),qe=0|tn(0|(ze=0|Sn(0|t,0|Je,33554432,0)),0|(Ve=0|u()),26),lt=0|u(),lt=0|Sn(0|(Ye=0|Sn(0|(bn=0|Sn(0|(In=0|Sn(0|(wn=0|Sn(0|(Cn=0|Sn(0|(Bn=0|Sn(0|(En=0|Sn(0|(_n=0|Sn(0|Dn,0|xn,0|kn,0|_n)),0|u(),0|be,0|En)),0|u(),0|me,0|Bn)),0|u(),0|ve,0|Cn)),0|u(),0|ye,0|wn)),0|u(),0|ge,0|In)),0|u(),0|de,0|bn)),0|u(),0|$e,0|Ye)),0|u(),0|qe,0|lt),qe=0|u(),Ve=0|Qn(0|t,0|Je,-67108864&ze|0,0|Ve),ze=0|u(),Ye=0|tn(0|(Je=0|Sn(0|Ne,0|We,33554432,0)),0|(t=0|u()),26),$e=0|u(),$e=0|Sn(0|(Ke=0|Sn(0|(ln=0|Sn(0|(An=0|Sn(0|(hn=0|Sn(0|(dn=0|Sn(0|(gn=0|Sn(0|(yn=0|Sn(0|(vn=0|Sn(0|(mn=0|Sn(0|pe,0|he,0|fe,0|mn)),0|u(),0|Ae,0|vn)),0|u(),0|le,0|yn)),0|u(),0|ue,0|gn)),0|u(),0|ce,0|dn)),0|u(),0|pn,0|hn)),0|u(),0|se,0|An)),0|u(),0|oe,0|ln)),0|u(),0|un,0|Ke)),0|u(),0|Ye,0|$e),Ye=0|u(),t=0|Qn(0|Ne,0|We,-67108864&Je|0,0|t),Je=0|u(),Ne=0|tn(0|(We=0|Sn(0|lt,0|qe,16777216,0)),0|u(),25),Ke=0|u(),Ke=0|Sn(0|(Ge=0|Sn(0|(Wt=0|Sn(0|(Xt=0|Sn(0|(en=0|Sn(0|(nn=0|Sn(0|(rn=0|Sn(0|(an=0|Sn(0|(sn=0|Sn(0|(cn=0|Sn(0|ae,0|ie,0|re,0|cn)),0|u(),0|ne,0|sn)),0|u(),0|on,0|an)),0|u(),0|te,0|rn)),0|u(),0|ee,0|nn)),0|u(),0|Z,0|en)),0|u(),0|X,0|Xt)),0|u(),0|W,0|Wt)),0|u(),0|Xe,0|Ge)),0|u(),0|Ne,0|Ke),Ne=0|u(),We=0|Qn(0|lt,0|qe,-33554432&We|0,0),qe=0|u(),Ge=0|tn(0|(lt=0|Sn(0|$e,0|Ye,16777216,0)),0|u(),25),Xe=0|u(),Xe=0|Sn(0|(Ue=0|Sn(0|(Lt=0|Sn(0|(Kt=0|Sn(0|($t=0|Sn(0|(Yt=0|Sn(0|(Jt=0|Sn(0|(Vt=0|Sn(0|(zt=0|Sn(0|(qt=0|Sn(0|q,0|z,0|V,0|qt)),0|u(),0|J,0|zt)),0|u(),0|Y,0|Vt)),0|u(),0|$,0|Jt)),0|u(),0|G,0|Yt)),0|u(),0|K,0|$t)),0|u(),0|Gt,0|Kt)),0|u(),0|L,0|Lt)),0|u(),0|n,0|Ue)),0|u(),0|Ge,0|Xe),Ge=0|u(),lt=0|Qn(0|$e,0|Ye,-33554432&lt|0,0),Ye=0|u(),Ue=0|tn(0|($e=0|Sn(0|Ke,0|Ne,33554432,0)),0|u(),26),n=0|u(),n=0|Sn(0|(Le=0|Sn(0|(Mt=0|Sn(0|(Ft=0|Sn(0|(Ot=0|Sn(0|(Rt=0|Sn(0|(Tt=0|Sn(0|(Ht=0|Sn(0|(Ut=0|Sn(0|(Nt=0|Sn(0|N,0|U,0|H,0|Nt)),0|u(),0|j,0|Ut)),0|u(),0|T,0|Ht)),0|u(),0|jt,0|Tt)),0|u(),0|R,0|Rt)),0|u(),0|O,0|Ot)),0|u(),0|F,0|Ft)),0|u(),0|M,0|Mt)),0|u(),0|Pt,0|Le)),0|u(),0|Ue,0|n),Ue=0|u(),$e=0|Qn(0|Ke,0|Ne,-67108864&$e|0,0),u(),Ke=0|tn(0|(Ne=0|Sn(0|Xe,0|Ge,33554432,0)),0|u(),26),Le=0|u(),Le=0|Sn(0|(It=0|Sn(0|(Ct=0|Sn(0|(Et=0|Sn(0|(_t=0|Sn(0|(kt=0|Sn(0|(Qt=0|Sn(0|(St=0|Sn(0|(xt=0|Sn(0|(Dt=0|Sn(0|P,0|D,0|x,0|Dt)),0|u(),0|S,0|xt)),0|u(),0|Q,0|St)),0|u(),0|k,0|Qt)),0|u(),0|_,0|kt)),0|u(),0|E,0|_t)),0|u(),0|B,0|Et)),0|u(),0|Bt,0|Ct)),0|u(),0|wt,0|It)),0|u(),0|Ke,0|Le),Ke=0|u(),Ne=0|Qn(0|Xe,0|Ge,-67108864&Ne|0,0),u(),Je=0|Sn(0|(Xe=0|tn(0|(Ge=0|Sn(0|n,0|Ue,16777216,0)),0|u(),25)),0|u(),0|t,0|Je),t=0|u(),Ge=0|Qn(0|n,0|Ue,-33554432&Ge|0,0),u(),n=0|tn(0|(Ue=0|Sn(0|Le,0|Ke,16777216,0)),0|u(),25),Xe=0|u(),Xe=0|Sn(0|(At=0|Sn(0|(ht=0|Sn(0|(pt=0|Sn(0|(dt=0|Sn(0|(gt=0|Sn(0|(yt=0|Sn(0|(vt=0|Sn(0|(mt=0|Sn(0|(bt=0|Sn(0|C,0|w,0|I,0|bt)),0|u(),0|b,0|mt)),0|u(),0|m,0|vt)),0|u(),0|v,0|yt)),0|u(),0|y,0|gt)),0|u(),0|g,0|dt)),0|u(),0|d,0|pt)),0|u(),0|p,0|ht)),0|u(),0|ft,0|At)),0|u(),0|n,0|Xe),n=0|u(),Ue=0|Qn(0|Le,0|Ke,-33554432&Ue|0,0),u(),Le=0|Sn(0|lt,0|Ye,0|(Le=0|fn(0|(Ke=0|Sn(0|Je,0|t,33554432,0)),0|u(),26)),0|u()),u(),Ke=0|Qn(0|Je,0|t,-67108864&Ke|0,0),u(),Je=0|tn(0|(t=0|Sn(0|Xe,0|n,33554432,0)),0|u(),26),Ye=0|u(),Ye=0|Sn(0|(Ze=0|Sn(0|(tt=0|Sn(0|(nt=0|Sn(0|(rt=0|Sn(0|(it=0|Sn(0|(at=0|Sn(0|(ot=0|Sn(0|(st=0|Sn(0|(ct=0|Sn(0|h,0|f,0|ut,0|ct)),0|u(),0|A,0|st)),0|u(),0|l,0|ot)),0|u(),0|c,0|at)),0|u(),0|s,0|it)),0|u(),0|o,0|rt)),0|u(),0|a,0|nt)),0|u(),0|r,0|tt)),0|u(),0|et,0|Ze)),0|u(),0|Je,0|Ye),Je=0|u(),t=0|Qn(0|Xe,0|n,-67108864&t|0,0),u(),ze=0|Sn(0|(Xe=0|Zt(0|(Xe=0|tn(0|(n=0|Sn(0|Ye,0|Je,16777216,0)),0|u(),25)),0|u(),19,0)),0|u(),0|Ve,0|ze),Ve=0|u(),n=0|Qn(0|Ye,0|Je,-33554432&n|0,0),u(),Ye=0|Sn(0|We,0|qe,0|(Ye=0|fn(0|(Je=0|Sn(0|ze,0|Ve,33554432,0)),0|u(),26)),0|u()),u(),Je=0|Qn(0|ze,0|Ve,-67108864&Je|0,0),u(),i[e>>2]=Je,i[e+4>>2]=Ye,i[e+8>>2]=$e,i[e+12>>2]=Ge,i[e+16>>2]=Ke,i[e+20>>2]=Le,i[e+24>>2]=Ne,i[e+28>>2]=Ue,i[e+32>>2]=t,i[e+36>>2]=n}function B(e,t,n){e|=0,n|=0;var r,a,o=0,s=0,c=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0,E=0,_=0,k=0,Q=0,S=0,x=0,D=0,P=0,M=0,F=0,O=0,R=0,T=0,j=0,H=0;r=y,a=y=y+63&-64,y=y+2048|0,lr(a+1024|0,t|=0),_t(a+1024|0,e),lr(a,a+1024|0),_t(a,n),e=0;do{s=0|i[a+1024+((4|(t=e<<4))<<3)>>2],c=0|i[a+1024+((4|t)<<3)+4>>2],O=0|yt(0|i[a+1024+(t<<3)>>2],0|i[a+1024+(t<<3)+4>>2],s,c),H=0|u(),x=0|Yt(i[a+1024+((12|t)<<3)>>2]^O,i[a+1024+((12|t)<<3)+4>>2]^H,32),B=0|u(),B=0|Yt((H=0|yt(O,H,c=0|Yt((I=0|yt(0|i[a+1024+((8|t)<<3)>>2],0|i[a+1024+((8|t)<<3)+4>>2],x,B))^s,(b=0|u())^c,24),s=0|u()))^x,(O=0|u())^B,16),x=0|u(),i[a+1024+((12|t)<<3)>>2]=B,i[a+1024+((12|t)<<3)+4>>2]=x,b=0|yt(I,b,B,x),I=0|u(),i[a+1024+((8|t)<<3)>>2]=b,i[a+1024+((8|t)<<3)+4>>2]=I,s=0|Yt(b^c,I^s,63),c=0|u(),i[a+1024+((4|t)<<3)>>2]=s,i[a+1024+((4|t)<<3)+4>>2]=c,M=0|i[a+1024+((5|t)<<3)>>2],F=0|i[a+1024+((5|t)<<3)+4>>2],k=0|yt(0|i[a+1024+((1|t)<<3)>>2],0|i[a+1024+((1|t)<<3)+4>>2],M,F),D=0|u(),w=0|Yt(i[a+1024+((13|t)<<3)>>2]^k,i[a+1024+((13|t)<<3)+4>>2]^D,32),d=0|u(),A=0|yt(f=0|yt(0|i[a+1024+((9|t)<<3)>>2],0|i[a+1024+((9|t)<<3)+4>>2],w,d),A=0|u(),d=0|Yt((D=0|yt(k,D,F=0|Yt(f^M,A^F,24),M=0|u()))^w,(k=0|u())^d,16),w=0|u()),f=0|u(),i[a+1024+((9|t)<<3)>>2]=A,i[a+1024+((9|t)<<3)+4>>2]=f,M=0|Yt(A^F,f^M,63),F=0|u(),E=0|i[a+1024+((6|t)<<3)>>2],_=0|i[a+1024+((6|t)<<3)+4>>2],m=0|yt(0|i[a+1024+((2|t)<<3)>>2],0|i[a+1024+((2|t)<<3)+4>>2],E,_),C=0|u(),h=0|Yt(i[a+1024+((14|t)<<3)>>2]^m,i[a+1024+((14|t)<<3)+4>>2]^C,32),o=0|u(),E=0|Yt((R=0|yt(T=0|yt(0|i[a+1024+((10|t)<<3)>>2],0|i[a+1024+((10|t)<<3)+4>>2],h,o),R=0|u(),o=0|Yt((C=0|yt(m,C,_=0|Yt(T^E,R^_,24),E=0|u()))^h,(m=0|u())^o,16),h=0|u()))^_,(T=0|u())^E,63),_=0|u(),g=0|i[a+1024+((7|t)<<3)>>2],v=0|i[a+1024+((7|t)<<3)+4>>2],l=0|yt(0|i[a+1024+((3|t)<<3)>>2],0|i[a+1024+((3|t)<<3)+4>>2],g,v),p=0|u(),j=0|Yt(i[a+1024+((15|t)<<3)>>2]^l,i[a+1024+((15|t)<<3)+4>>2]^p,32),P=0|u(),g=0|Yt((Q=0|yt(S=0|yt(0|i[a+1024+((11|t)<<3)>>2],0|i[a+1024+((11|t)<<3)+4>>2],j,P),Q=0|u(),P=0|Yt((p=0|yt(l,p,v=0|Yt(S^g,Q^v,24),g=0|u()))^j,(l=0|u())^P,16),j=0|u()))^v,(S=0|u())^g,63),v=0|u(),H=0|yt(O=0|yt(H,O,M,F),H=0|u(),F=0|Yt((T=0|yt(R,T,j=0|Yt(O^P,H^j,32),P=0|u()))^M,(R=0|u())^F,24),M=0|u()),O=0|u(),i[a+1024+(t<<3)>>2]=H,i[a+1024+(t<<3)+4>>2]=O,P=0|Yt(H^j,O^P,16),O=0|u(),i[a+1024+((15|t)<<3)>>2]=P,i[a+1024+((15|t)<<3)+4>>2]=O,O=0|yt(T,R,P,O),P=0|u(),i[a+1024+((10|t)<<3)>>2]=O,i[a+1024+((10|t)<<3)+4>>2]=P,M=0|Yt(O^F,P^M,63),P=0|u(),i[a+1024+((5|t)<<3)>>2]=M,i[a+1024+((5|t)<<3)+4>>2]=P,D=0|yt(k=0|yt(D,k,E,_),D=0|u(),_=0|Yt((S=0|yt(Q,S,x=0|Yt(k^B,D^x,32),B=0|u()))^E,(Q=0|u())^_,24),E=0|u()),k=0|u(),i[a+1024+((1|t)<<3)>>2]=D,i[a+1024+((1|t)<<3)+4>>2]=k,B=0|Yt(D^x,k^B,16),k=0|u(),i[a+1024+((12|t)<<3)>>2]=B,i[a+1024+((12|t)<<3)+4>>2]=k,k=0|yt(S,Q,B,k),B=0|u(),i[a+1024+((11|t)<<3)>>2]=k,i[a+1024+((11|t)<<3)+4>>2]=B,E=0|Yt(k^_,B^E,63),B=0|u(),i[a+1024+((6|t)<<3)>>2]=E,i[a+1024+((6|t)<<3)+4>>2]=B,C=0|yt(m=0|yt(C,m,g,v),C=0|u(),v=0|Yt((I=0|yt(b,I,w=0|Yt(m^d,C^w,32),d=0|u()))^g,(b=0|u())^v,24),g=0|u()),m=0|u(),i[a+1024+((2|t)<<3)>>2]=C,i[a+1024+((2|t)<<3)+4>>2]=m,d=0|Yt(C^w,m^d,16),m=0|u(),i[a+1024+((13|t)<<3)>>2]=d,i[a+1024+((13|t)<<3)+4>>2]=m,m=0|yt(I,b,d,m),d=0|u(),i[a+1024+((8|t)<<3)>>2]=m,i[a+1024+((8|t)<<3)+4>>2]=d,g=0|Yt(m^v,d^g,63),d=0|u(),i[a+1024+((7|t)<<3)>>2]=g,i[a+1024+((7|t)<<3)+4>>2]=d,p=0|yt(l=0|yt(p,l,s,c),p=0|u(),c=0|Yt((f=0|yt(A,f,h=0|Yt(l^o,p^h,32),o=0|u()))^s,(A=0|u())^c,24),s=0|u()),l=0|u(),i[a+1024+((3|t)<<3)>>2]=p,i[a+1024+((3|t)<<3)+4>>2]=l,o=0|Yt(p^h,l^o,16),l=0|u(),i[a+1024+((14|t)<<3)>>2]=o,i[a+1024+((14|t)<<3)+4>>2]=l,l=0|yt(f,A,o,l),o=0|u(),i[a+1024+((9|t)<<3)>>2]=l,i[a+1024+((9|t)<<3)+4>>2]=o,s=0|Yt(l^c,o^s,63),o=0|u(),i[a+1024+((4|t)<<3)>>2]=s,i[a+1024+((4|t)<<3)+4>>2]=o,e=e+1|0}while(8!=(0|e));e=0;do{T=0|i[(R=a+1024+(32+(H=e<<1)<<3)|0)>>2],R=0|i[R+4>>2],l=0|yt(0|i[a+1024+(H<<3)>>2],0|i[a+1024+(H<<3)+4>>2],T,R),t=0|u(),d=0|Yt(i[(d=a+1024+(H+96<<3)|0)>>2]^l,i[d+4>>2]^t,32),I=0|u(),I=0|Yt((t=0|yt(l,t,R=0|Yt((E=0|yt(0|i[(E=a+1024+(H+64<<3)|0)>>2],0|i[E+4>>2],d,I))^T,(_=0|u())^R,24),T=0|u()))^d,(l=0|u())^I,16),d=0|u(),i[(h=a+1024+(H+96<<3)|0)>>2]=I,i[h+4>>2]=d,_=0|yt(E,_,I,d),E=0|u(),i[(h=a+1024+(H+64<<3)|0)>>2]=_,i[h+4>>2]=E,T=0|Yt(_^R,E^T,63),R=0|u(),i[(h=a+1024+(H+32<<3)|0)>>2]=T,i[h+4>>2]=R,A=0|i[(h=a+1024+(H+33<<3)|0)>>2],h=0|i[h+4>>2],m=0|yt(0|i[a+1024+((1|H)<<3)>>2],0|i[a+1024+((1|H)<<3)+4>>2],A,h),p=0|u(),B=0|Yt(i[(B=a+1024+(H+97<<3)|0)>>2]^m,i[B+4>>2]^p,32),S=0|u(),F=0|yt(M=0|yt(0|i[(M=a+1024+(H+65<<3)|0)>>2],0|i[M+4>>2],B,S),F=0|u(),S=0|Yt((p=0|yt(m,p,h=0|Yt(M^A,F^h,24),A=0|u()))^B,(m=0|u())^S,16),B=0|u()),M=0|u(),i[(k=a+1024+(H+65<<3)|0)>>2]=F,i[k+4>>2]=M,A=0|Yt(F^h,M^A,63),h=0|u(),k=a+1024+(H+16<<3)|0,b=0|i[(w=a+1024+(H+48<<3)|0)>>2],w=0|i[w+4>>2],k=0|yt(0|i[k>>2],0|i[k+4>>2],b,w),C=0|u(),P=0|Yt(i[(P=a+1024+(H+112<<3)|0)>>2]^k,i[P+4>>2]^C,32),j=0|u(),b=0|Yt((c=0|yt(s=0|yt(0|i[(s=a+1024+(H+80<<3)|0)>>2],0|i[s+4>>2],P,j),c=0|u(),j=0|Yt((C=0|yt(k,C,w=0|Yt(s^b,c^w,24),b=0|u()))^P,(k=0|u())^j,16),P=0|u()))^w,(s=0|u())^b,63),w=0|u(),O=a+1024+(H+17<<3)|0,Q=0|i[(x=a+1024+(H+49<<3)|0)>>2],x=0|i[x+4>>2],O=0|yt(0|i[O>>2],0|i[O+4>>2],Q,x),D=0|u(),o=0|Yt(i[(o=a+1024+(H+113<<3)|0)>>2]^O,i[o+4>>2]^D,32),f=0|u(),Q=0|Yt((v=0|yt(g=0|yt(0|i[(g=a+1024+(H+81<<3)|0)>>2],0|i[g+4>>2],o,f),v=0|u(),f=0|Yt((D=0|yt(O,D,x=0|Yt(g^Q,v^x,24),Q=0|u()))^o,(O=0|u())^f,16),o=0|u()))^x,(g=0|u())^Q,63),x=0|u(),t=0|yt(l=0|yt(t,l,A,h),t=0|u(),h=0|Yt((s=0|yt(c,s,o=0|Yt(l^f,t^o,32),f=0|u()))^A,(c=0|u())^h,24),A=0|u()),l=0|u(),i[a+1024+(H<<3)>>2]=t,i[a+1024+(H<<3)+4>>2]=l,f=0|Yt(t^o,l^f,16),l=0|u(),i[(o=a+1024+(H+113<<3)|0)>>2]=f,i[o+4>>2]=l,l=0|yt(s,c,f,l),f=0|u(),i[(c=a+1024+(H+80<<3)|0)>>2]=l,i[c+4>>2]=f,A=0|Yt(l^h,f^A,63),f=0|u(),i[(h=a+1024+(H+33<<3)|0)>>2]=A,i[h+4>>2]=f,p=0|yt(m=0|yt(p,m,b,w),p=0|u(),w=0|Yt((g=0|yt(v,g,d=0|Yt(m^I,p^d,32),I=0|u()))^b,(v=0|u())^w,24),b=0|u()),m=0|u(),i[a+1024+((1|H)<<3)>>2]=p,i[a+1024+((1|H)<<3)+4>>2]=m,I=0|Yt(p^d,m^I,16),m=0|u(),i[(d=a+1024+(H+96<<3)|0)>>2]=I,i[d+4>>2]=m,m=0|yt(g,v,I,m),I=0|u(),i[(v=a+1024+(H+81<<3)|0)>>2]=m,i[v+4>>2]=I,b=0|Yt(m^w,I^b,63),I=0|u(),i[(w=a+1024+(H+48<<3)|0)>>2]=b,i[w+4>>2]=I,C=0|yt(k=0|yt(C,k,Q,x),C=0|u(),x=0|Yt((E=0|yt(_,E,B=0|Yt(k^S,C^B,32),S=0|u()))^Q,(_=0|u())^x,24),Q=0|u()),k=0|u(),i[(w=a+1024+(H+16<<3)|0)>>2]=C,i[w+4>>2]=k,S=0|Yt(C^B,k^S,16),k=0|u(),i[(B=a+1024+(H+97<<3)|0)>>2]=S,i[B+4>>2]=k,k=0|yt(E,_,S,k),S=0|u(),i[(_=a+1024+(H+64<<3)|0)>>2]=k,i[_+4>>2]=S,Q=0|Yt(k^x,S^Q,63),S=0|u(),i[(x=a+1024+(H+49<<3)|0)>>2]=Q,i[x+4>>2]=S,D=0|yt(O=0|yt(D,O,T,R),D=0|u(),R=0|Yt((M=0|yt(F,M,P=0|Yt(O^j,D^P,32),j=0|u()))^T,(F=0|u())^R,24),T=0|u()),O=0|u(),i[(x=a+1024+(H+17<<3)|0)>>2]=D,i[x+4>>2]=O,j=0|Yt(D^P,O^j,16),O=0|u(),i[(P=a+1024+(H+112<<3)|0)>>2]=j,i[P+4>>2]=O,O=0|yt(M,F,j,O),j=0|u(),i[(F=a+1024+(H+65<<3)|0)>>2]=O,i[F+4>>2]=j,T=0|Yt(O^R,j^T,63),j=0|u(),i[(H=a+1024+(H+32<<3)|0)>>2]=T,i[H+4>>2]=j,e=e+1|0}while(8!=(0|e));lr(n,a),_t(n,a+1024|0),y=r}function E(e,t,n){e|=0,n|=0;var r,a,o=0,s=0,c=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0,E=0,_=0,k=0,Q=0,S=0,x=0,D=0,P=0,M=0,F=0,O=0,R=0,T=0,j=0,H=0;r=y,a=y=y+63&-64,y=y+2048|0,lr(a+1024|0,t|=0),_t(a+1024|0,e),lr(a,a+1024|0),e=0;do{s=0|i[a+1024+((4|(t=e<<4))<<3)>>2],c=0|i[a+1024+((4|t)<<3)+4>>2],O=0|yt(0|i[a+1024+(t<<3)>>2],0|i[a+1024+(t<<3)+4>>2],s,c),H=0|u(),x=0|Yt(i[a+1024+((12|t)<<3)>>2]^O,i[a+1024+((12|t)<<3)+4>>2]^H,32),B=0|u(),B=0|Yt((H=0|yt(O,H,c=0|Yt((I=0|yt(0|i[a+1024+((8|t)<<3)>>2],0|i[a+1024+((8|t)<<3)+4>>2],x,B))^s,(b=0|u())^c,24),s=0|u()))^x,(O=0|u())^B,16),x=0|u(),i[a+1024+((12|t)<<3)>>2]=B,i[a+1024+((12|t)<<3)+4>>2]=x,b=0|yt(I,b,B,x),I=0|u(),i[a+1024+((8|t)<<3)>>2]=b,i[a+1024+((8|t)<<3)+4>>2]=I,s=0|Yt(b^c,I^s,63),c=0|u(),i[a+1024+((4|t)<<3)>>2]=s,i[a+1024+((4|t)<<3)+4>>2]=c,M=0|i[a+1024+((5|t)<<3)>>2],F=0|i[a+1024+((5|t)<<3)+4>>2],k=0|yt(0|i[a+1024+((1|t)<<3)>>2],0|i[a+1024+((1|t)<<3)+4>>2],M,F),D=0|u(),w=0|Yt(i[a+1024+((13|t)<<3)>>2]^k,i[a+1024+((13|t)<<3)+4>>2]^D,32),d=0|u(),A=0|yt(f=0|yt(0|i[a+1024+((9|t)<<3)>>2],0|i[a+1024+((9|t)<<3)+4>>2],w,d),A=0|u(),d=0|Yt((D=0|yt(k,D,F=0|Yt(f^M,A^F,24),M=0|u()))^w,(k=0|u())^d,16),w=0|u()),f=0|u(),i[a+1024+((9|t)<<3)>>2]=A,i[a+1024+((9|t)<<3)+4>>2]=f,M=0|Yt(A^F,f^M,63),F=0|u(),E=0|i[a+1024+((6|t)<<3)>>2],_=0|i[a+1024+((6|t)<<3)+4>>2],m=0|yt(0|i[a+1024+((2|t)<<3)>>2],0|i[a+1024+((2|t)<<3)+4>>2],E,_),C=0|u(),h=0|Yt(i[a+1024+((14|t)<<3)>>2]^m,i[a+1024+((14|t)<<3)+4>>2]^C,32),o=0|u(),E=0|Yt((R=0|yt(T=0|yt(0|i[a+1024+((10|t)<<3)>>2],0|i[a+1024+((10|t)<<3)+4>>2],h,o),R=0|u(),o=0|Yt((C=0|yt(m,C,_=0|Yt(T^E,R^_,24),E=0|u()))^h,(m=0|u())^o,16),h=0|u()))^_,(T=0|u())^E,63),_=0|u(),g=0|i[a+1024+((7|t)<<3)>>2],v=0|i[a+1024+((7|t)<<3)+4>>2],l=0|yt(0|i[a+1024+((3|t)<<3)>>2],0|i[a+1024+((3|t)<<3)+4>>2],g,v),p=0|u(),j=0|Yt(i[a+1024+((15|t)<<3)>>2]^l,i[a+1024+((15|t)<<3)+4>>2]^p,32),P=0|u(),g=0|Yt((Q=0|yt(S=0|yt(0|i[a+1024+((11|t)<<3)>>2],0|i[a+1024+((11|t)<<3)+4>>2],j,P),Q=0|u(),P=0|Yt((p=0|yt(l,p,v=0|Yt(S^g,Q^v,24),g=0|u()))^j,(l=0|u())^P,16),j=0|u()))^v,(S=0|u())^g,63),v=0|u(),H=0|yt(O=0|yt(H,O,M,F),H=0|u(),F=0|Yt((T=0|yt(R,T,j=0|Yt(O^P,H^j,32),P=0|u()))^M,(R=0|u())^F,24),M=0|u()),O=0|u(),i[a+1024+(t<<3)>>2]=H,i[a+1024+(t<<3)+4>>2]=O,P=0|Yt(H^j,O^P,16),O=0|u(),i[a+1024+((15|t)<<3)>>2]=P,i[a+1024+((15|t)<<3)+4>>2]=O,O=0|yt(T,R,P,O),P=0|u(),i[a+1024+((10|t)<<3)>>2]=O,i[a+1024+((10|t)<<3)+4>>2]=P,M=0|Yt(O^F,P^M,63),P=0|u(),i[a+1024+((5|t)<<3)>>2]=M,i[a+1024+((5|t)<<3)+4>>2]=P,D=0|yt(k=0|yt(D,k,E,_),D=0|u(),_=0|Yt((S=0|yt(Q,S,x=0|Yt(k^B,D^x,32),B=0|u()))^E,(Q=0|u())^_,24),E=0|u()),k=0|u(),i[a+1024+((1|t)<<3)>>2]=D,i[a+1024+((1|t)<<3)+4>>2]=k,B=0|Yt(D^x,k^B,16),k=0|u(),i[a+1024+((12|t)<<3)>>2]=B,i[a+1024+((12|t)<<3)+4>>2]=k,k=0|yt(S,Q,B,k),B=0|u(),i[a+1024+((11|t)<<3)>>2]=k,i[a+1024+((11|t)<<3)+4>>2]=B,E=0|Yt(k^_,B^E,63),B=0|u(),i[a+1024+((6|t)<<3)>>2]=E,i[a+1024+((6|t)<<3)+4>>2]=B,C=0|yt(m=0|yt(C,m,g,v),C=0|u(),v=0|Yt((I=0|yt(b,I,w=0|Yt(m^d,C^w,32),d=0|u()))^g,(b=0|u())^v,24),g=0|u()),m=0|u(),i[a+1024+((2|t)<<3)>>2]=C,i[a+1024+((2|t)<<3)+4>>2]=m,d=0|Yt(C^w,m^d,16),m=0|u(),i[a+1024+((13|t)<<3)>>2]=d,i[a+1024+((13|t)<<3)+4>>2]=m,m=0|yt(I,b,d,m),d=0|u(),i[a+1024+((8|t)<<3)>>2]=m,i[a+1024+((8|t)<<3)+4>>2]=d,g=0|Yt(m^v,d^g,63),d=0|u(),i[a+1024+((7|t)<<3)>>2]=g,i[a+1024+((7|t)<<3)+4>>2]=d,p=0|yt(l=0|yt(p,l,s,c),p=0|u(),c=0|Yt((f=0|yt(A,f,h=0|Yt(l^o,p^h,32),o=0|u()))^s,(A=0|u())^c,24),s=0|u()),l=0|u(),i[a+1024+((3|t)<<3)>>2]=p,i[a+1024+((3|t)<<3)+4>>2]=l,o=0|Yt(p^h,l^o,16),l=0|u(),i[a+1024+((14|t)<<3)>>2]=o,i[a+1024+((14|t)<<3)+4>>2]=l,l=0|yt(f,A,o,l),o=0|u(),i[a+1024+((9|t)<<3)>>2]=l,i[a+1024+((9|t)<<3)+4>>2]=o,s=0|Yt(l^c,o^s,63),o=0|u(),i[a+1024+((4|t)<<3)>>2]=s,i[a+1024+((4|t)<<3)+4>>2]=o,e=e+1|0}while(8!=(0|e));e=0;do{T=0|i[(R=a+1024+(32+(H=e<<1)<<3)|0)>>2],R=0|i[R+4>>2],l=0|yt(0|i[a+1024+(H<<3)>>2],0|i[a+1024+(H<<3)+4>>2],T,R),t=0|u(),d=0|Yt(i[(d=a+1024+(H+96<<3)|0)>>2]^l,i[d+4>>2]^t,32),I=0|u(),I=0|Yt((t=0|yt(l,t,R=0|Yt((E=0|yt(0|i[(E=a+1024+(H+64<<3)|0)>>2],0|i[E+4>>2],d,I))^T,(_=0|u())^R,24),T=0|u()))^d,(l=0|u())^I,16),d=0|u(),i[(h=a+1024+(H+96<<3)|0)>>2]=I,i[h+4>>2]=d,_=0|yt(E,_,I,d),E=0|u(),i[(h=a+1024+(H+64<<3)|0)>>2]=_,i[h+4>>2]=E,T=0|Yt(_^R,E^T,63),R=0|u(),i[(h=a+1024+(H+32<<3)|0)>>2]=T,i[h+4>>2]=R,A=0|i[(h=a+1024+(H+33<<3)|0)>>2],h=0|i[h+4>>2],m=0|yt(0|i[a+1024+((1|H)<<3)>>2],0|i[a+1024+((1|H)<<3)+4>>2],A,h),p=0|u(),B=0|Yt(i[(B=a+1024+(H+97<<3)|0)>>2]^m,i[B+4>>2]^p,32),S=0|u(),F=0|yt(M=0|yt(0|i[(M=a+1024+(H+65<<3)|0)>>2],0|i[M+4>>2],B,S),F=0|u(),S=0|Yt((p=0|yt(m,p,h=0|Yt(M^A,F^h,24),A=0|u()))^B,(m=0|u())^S,16),B=0|u()),M=0|u(),i[(k=a+1024+(H+65<<3)|0)>>2]=F,i[k+4>>2]=M,A=0|Yt(F^h,M^A,63),h=0|u(),k=a+1024+(H+16<<3)|0,b=0|i[(w=a+1024+(H+48<<3)|0)>>2],w=0|i[w+4>>2],k=0|yt(0|i[k>>2],0|i[k+4>>2],b,w),C=0|u(),P=0|Yt(i[(P=a+1024+(H+112<<3)|0)>>2]^k,i[P+4>>2]^C,32),j=0|u(),b=0|Yt((c=0|yt(s=0|yt(0|i[(s=a+1024+(H+80<<3)|0)>>2],0|i[s+4>>2],P,j),c=0|u(),j=0|Yt((C=0|yt(k,C,w=0|Yt(s^b,c^w,24),b=0|u()))^P,(k=0|u())^j,16),P=0|u()))^w,(s=0|u())^b,63),w=0|u(),O=a+1024+(H+17<<3)|0,Q=0|i[(x=a+1024+(H+49<<3)|0)>>2],x=0|i[x+4>>2],O=0|yt(0|i[O>>2],0|i[O+4>>2],Q,x),D=0|u(),o=0|Yt(i[(o=a+1024+(H+113<<3)|0)>>2]^O,i[o+4>>2]^D,32),f=0|u(),Q=0|Yt((v=0|yt(g=0|yt(0|i[(g=a+1024+(H+81<<3)|0)>>2],0|i[g+4>>2],o,f),v=0|u(),f=0|Yt((D=0|yt(O,D,x=0|Yt(g^Q,v^x,24),Q=0|u()))^o,(O=0|u())^f,16),o=0|u()))^x,(g=0|u())^Q,63),x=0|u(),t=0|yt(l=0|yt(t,l,A,h),t=0|u(),h=0|Yt((s=0|yt(c,s,o=0|Yt(l^f,t^o,32),f=0|u()))^A,(c=0|u())^h,24),A=0|u()),l=0|u(),i[a+1024+(H<<3)>>2]=t,i[a+1024+(H<<3)+4>>2]=l,f=0|Yt(t^o,l^f,16),l=0|u(),i[(o=a+1024+(H+113<<3)|0)>>2]=f,i[o+4>>2]=l,l=0|yt(s,c,f,l),f=0|u(),i[(c=a+1024+(H+80<<3)|0)>>2]=l,i[c+4>>2]=f,A=0|Yt(l^h,f^A,63),f=0|u(),i[(h=a+1024+(H+33<<3)|0)>>2]=A,i[h+4>>2]=f,p=0|yt(m=0|yt(p,m,b,w),p=0|u(),w=0|Yt((g=0|yt(v,g,d=0|Yt(m^I,p^d,32),I=0|u()))^b,(v=0|u())^w,24),b=0|u()),m=0|u(),i[a+1024+((1|H)<<3)>>2]=p,i[a+1024+((1|H)<<3)+4>>2]=m,I=0|Yt(p^d,m^I,16),m=0|u(),i[(d=a+1024+(H+96<<3)|0)>>2]=I,i[d+4>>2]=m,m=0|yt(g,v,I,m),I=0|u(),i[(v=a+1024+(H+81<<3)|0)>>2]=m,i[v+4>>2]=I,b=0|Yt(m^w,I^b,63),I=0|u(),i[(w=a+1024+(H+48<<3)|0)>>2]=b,i[w+4>>2]=I,C=0|yt(k=0|yt(C,k,Q,x),C=0|u(),x=0|Yt((E=0|yt(_,E,B=0|Yt(k^S,C^B,32),S=0|u()))^Q,(_=0|u())^x,24),Q=0|u()),k=0|u(),i[(w=a+1024+(H+16<<3)|0)>>2]=C,i[w+4>>2]=k,S=0|Yt(C^B,k^S,16),k=0|u(),i[(B=a+1024+(H+97<<3)|0)>>2]=S,i[B+4>>2]=k,k=0|yt(E,_,S,k),S=0|u(),i[(_=a+1024+(H+64<<3)|0)>>2]=k,i[_+4>>2]=S,Q=0|Yt(k^x,S^Q,63),S=0|u(),i[(x=a+1024+(H+49<<3)|0)>>2]=Q,i[x+4>>2]=S,D=0|yt(O=0|yt(D,O,T,R),D=0|u(),R=0|Yt((M=0|yt(F,M,P=0|Yt(O^j,D^P,32),j=0|u()))^T,(F=0|u())^R,24),T=0|u()),O=0|u(),i[(x=a+1024+(H+17<<3)|0)>>2]=D,i[x+4>>2]=O,j=0|Yt(D^P,O^j,16),O=0|u(),i[(P=a+1024+(H+112<<3)|0)>>2]=j,i[P+4>>2]=O,O=0|yt(M,F,j,O),j=0|u(),i[(F=a+1024+(H+65<<3)|0)>>2]=O,i[F+4>>2]=j,T=0|Yt(O^R,j^T,63),j=0|u(),i[(H=a+1024+(H+32<<3)|0)>>2]=T,i[H+4>>2]=j,e=e+1|0}while(8!=(0|e));lr(n,a),_t(n,a+1024|0),y=r}function _(e,t){e|=0;var n,r,a,o,s,c,l,A,f,h,p,d,g,y,v,m,b,I,w,C,B,E,_,k,Q,S,x,D,P,M,F,O,R,T,j,H,U,N,L,K,G,$,Y,J,V,z,q,W,X,Z,ee=0,te=0,ne=0,re=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,le=0,Ae=0,fe=0,he=0,pe=0,de=0,ge=0,ye=0,ve=0,me=0,be=0,Ie=0,we=0,Ce=0,Be=0,Ee=0,_e=0,ke=0,Qe=0,Se=0,xe=0,De=0,Pe=0,Me=0,Fe=0,Oe=0,Re=0,Te=0,je=0,He=0,Ue=0,Ne=0,Le=0,Ke=0,Ge=0,$e=0,Ye=0,Je=0,Ve=0,ze=0,qe=0,We=0,Xe=0,Ze=0,et=0,tt=0,nt=0,rt=0,it=0;pe=0|i[(t|=0)>>2],ee=0|i[t+4>>2],oe=0|i[t+8>>2],ae=0|i[t+12>>2],De=0|i[t+16>>2],fe=0|i[t+20>>2],Ye=0|i[t+24>>2],te=0|i[t+28>>2],ke=0|i[t+32>>2],Ie=0|i[t+36>>2],W=0|Zt(0|pe,((0|pe)<0)<<31>>31|0,0|pe,((0|pe)<0)<<31>>31|0),it=0|u(),T=0|Zt(pe<<1|0,0|(de=((pe<<1|0)<0)<<31>>31),0|ee,((0|ee)<0)<<31>>31|0),Xe=0|u(),J=0|Zt(0|oe,((0|oe)<0)<<31>>31|0,pe<<1|0,0|de),Y=0|u(),$=0|Zt(0|ae,((0|ae)<0)<<31>>31|0,pe<<1|0,0|de),G=0|u(),U=0|Zt(0|De,((0|De)<0)<<31>>31|0,pe<<1|0,0|de),Ze=0|u(),D=0|Zt(0|fe,((0|fe)<0)<<31>>31|0,pe<<1|0,0|de),Ve=0|u(),w=0|Zt(0|Ye,((0|Ye)<0)<<31>>31|0,pe<<1|0,0|de),je=0|u(),d=0|Zt(0|te,((0|te)<0)<<31>>31|0,pe<<1|0,0|de),Qe=0|u(),c=0|Zt(0|ke,((0|ke)<0)<<31>>31|0,pe<<1|0,0|de),we=0|u(),de=0|Zt(0|Ie,((0|Ie)<0)<<31>>31|0,pe<<1|0,0|de),pe=0|u(),Ge=0|Zt(ee<<1|0,0|(ce=((ee<<1|0)<0)<<31>>31),0|ee,((0|ee)<0)<<31>>31|0),$e=0|u(),Fe=0|Zt(ee<<1|0,0|ce,0|oe,((0|oe)<0)<<31>>31|0),Oe=0|u(),K=0|Zt(ae<<1|0,0|(he=((ae<<1|0)<0)<<31>>31),ee<<1|0,0|ce),L=0|u(),F=0|Zt(0|De,((0|De)<0)<<31>>31|0,ee<<1|0,0|ce),M=0|u(),C=0|Zt(fe<<1|0,((fe<<1|0)<0)<<31>>31|0,ee<<1|0,0|ce),He=0|u(),g=0|Zt(0|Ye,((0|Ye)<0)<<31>>31|0,ee<<1|0,0|ce),Se=0|u(),l=0|Zt(te<<1|0,((te<<1|0)<0)<<31>>31|0,ee<<1|0,0|ce),Ce=0|u(),n=0|Zt(0|ke,((0|ke)<0)<<31>>31|0,ee<<1|0,0|ce),ge=0|u(),ce=0|Zt(38*Ie|0,0|(be=((38*Ie|0)<0)<<31>>31),ee<<1|0,0|ce),ee=0|u(),N=0|Zt(0|oe,((0|oe)<0)<<31>>31|0,0|oe,((0|oe)<0)<<31>>31|0),et=0|u(),P=0|Zt(oe<<1|0,((oe<<1|0)<0)<<31>>31|0,0|ae,((0|ae)<0)<<31>>31|0),ze=0|u(),B=0|Zt(0|De,((0|De)<0)<<31>>31|0,oe<<1|0,((oe<<1|0)<0)<<31>>31|0),Ue=0|u(),m=0|Zt(0|fe,((0|fe)<0)<<31>>31|0,oe<<1|0,((oe<<1|0)<0)<<31>>31|0),v=0|u(),p=0|Zt(0|Ye,((0|Ye)<0)<<31>>31|0,oe<<1|0,((oe<<1|0)<0)<<31>>31|0),h=0|u(),r=0|Zt(0|te,((0|te)<0)<<31>>31|0,oe<<1|0,((oe<<1|0)<0)<<31>>31|0),ye=0|u(),V=0|Zt(19*ke|0,0|(Te=((19*ke|0)<0)<<31>>31),oe<<1|0,((oe<<1|0)<0)<<31>>31|0),tt=0|u(),oe=0|Zt(38*Ie|0,0|be,0|oe,((0|oe)<0)<<31>>31|0),se=0|u(),_=0|Zt(ae<<1|0,0|he,0|ae,((0|ae)<0)<<31>>31|0),E=0|u(),y=0|Zt(ae<<1|0,0|he,0|De,((0|De)<0)<<31>>31|0),xe=0|u(),A=0|Zt(fe<<1|0,((fe<<1|0)<0)<<31>>31|0,ae<<1|0,0|he),Be=0|u(),s=0|Zt(0|Ye,((0|Ye)<0)<<31>>31|0,ae<<1|0,0|he),o=0|u(),z=0|Zt(38*te|0,0|(me=((38*te|0)<0)<<31>>31),ae<<1|0,0|he),nt=0|u(),O=0|Zt(19*ke|0,0|Te,ae<<1|0,0|he),qe=0|u(),he=0|Zt(38*Ie|0,0|be,ae<<1|0,0|he),ae=0|u(),f=0|Zt(0|De,((0|De)<0)<<31>>31|0,0|De,((0|De)<0)<<31>>31|0),Ee=0|u(),a=0|Zt(De<<1|0,((De<<1|0)<0)<<31>>31|0,0|fe,((0|fe)<0)<<31>>31|0),ve=0|u(),q=0|Zt(19*Ye|0,((19*Ye|0)<0)<<31>>31|0,De<<1|0,((De<<1|0)<0)<<31>>31|0),rt=0|u(),R=0|Zt(38*te|0,0|me,0|De,((0|De)<0)<<31>>31|0),We=0|u(),k=0|Zt(19*ke|0,0|Te,De<<1|0,((De<<1|0)<0)<<31>>31|0),Ne=0|u(),De=0|Zt(38*Ie|0,0|be,0|De,((0|De)<0)<<31>>31|0),re=0|u(),Z=0|Zt(38*fe|0,((38*fe|0)<0)<<31>>31|0,0|fe,((0|fe)<0)<<31>>31|0),X=0|u(),H=0|Zt(19*Ye|0,((19*Ye|0)<0)<<31>>31|0,fe<<1|0,((fe<<1|0)<0)<<31>>31|0),j=0|u(),Q=0|Zt(38*te|0,0|me,fe<<1|0,((fe<<1|0)<0)<<31>>31|0),Le=0|u(),b=0|Zt(19*ke|0,0|Te,fe<<1|0,((fe<<1|0)<0)<<31>>31|0),Pe=0|u(),fe=0|Zt(38*Ie|0,0|be,fe<<1|0,((fe<<1|0)<0)<<31>>31|0),ne=0|u(),S=0|Zt(19*Ye|0,((19*Ye|0)<0)<<31>>31|0,0|Ye,((0|Ye)<0)<<31>>31|0),Ke=0|u(),I=0|Zt(38*te|0,0|me,0|Ye,((0|Ye)<0)<<31>>31|0),Me=0|u(),ue=0|Zt(19*ke|0,0|Te,Ye<<1|0,((Ye<<1|0)<0)<<31>>31|0),le=0|u(),Ye=0|Zt(38*Ie|0,0|be,0|Ye,((0|Ye)<0)<<31>>31|0),ie=0|u(),me=0|Zt(38*te|0,0|me,0|te,((0|te)<0)<<31>>31|0),Ae=0|u(),x=0|Zt(19*ke|0,0|Te,te<<1|0,((te<<1|0)<0)<<31>>31|0),Je=0|u(),t=0|Zt(38*Ie|0,0|be,te<<1|0,((te<<1|0)<0)<<31>>31|0),te=0|u(),Te=0|Zt(19*ke|0,0|Te,0|ke,((0|ke)<0)<<31>>31|0),Re=0|u(),ke=0|Zt(38*Ie|0,0|be,0|ke,((0|ke)<0)<<31>>31|0),_e=0|u(),Ie=0|Zt(38*Ie|0,0|be,0|Ie,((0|Ie)<0)<<31>>31|0),be=0|u(),ee=0|Sn(0|(tt=0|Sn(0|(nt=0|Sn(0|(rt=0|Sn(0|(it=0|Sn(0|Z,0|X,0|W,0|it)),0|u(),0|q,0|rt)),0|u(),0|z,0|nt)),0|u(),0|V,0|tt)),0|u(),0|ce,0|ee),ce=0|u(),$e=0|Sn(0|J,0|Y,0|Ge,0|$e),Ge=0|u(),Oe=0|Sn(0|$,0|G,0|Fe,0|Oe),Fe=0|u(),ne=0|Sn(0|(le=0|Sn(0|(Ae=0|Sn(0|(Ze=0|Sn(0|(et=0|Sn(0|K,0|L,0|N,0|et)),0|u(),0|U,0|Ze)),0|u(),0|me,0|Ae)),0|u(),0|ue,0|le)),0|u(),0|fe,0|ne),fe=0|u(),Ae=0|tn(0|(le=0|Sn(0|ee,0|ce,33554432,0)),0|(ue=0|u()),26),me=0|u(),me=0|Sn(0|(se=0|Sn(0|(qe=0|Sn(0|(We=0|Sn(0|(Xe=0|Sn(0|H,0|j,0|T,0|Xe)),0|u(),0|R,0|We)),0|u(),0|O,0|qe)),0|u(),0|oe,0|se)),0|u(),0|Ae,0|me),Ae=0|u(),ue=0|Qn(0|ee,0|ce,-67108864&le|0,0|ue),le=0|u(),se=0|tn(0|(ce=0|Sn(0|ne,0|fe,33554432,0)),0|(ee=0|u()),26),oe=0|u(),oe=0|Sn(0|(ie=0|Sn(0|(Je=0|Sn(0|(Ve=0|Sn(0|(ze=0|Sn(0|F,0|M,0|P,0|ze)),0|u(),0|D,0|Ve)),0|u(),0|x,0|Je)),0|u(),0|Ye,0|ie)),0|u(),0|se,0|oe),se=0|u(),ee=0|Qn(0|ne,0|fe,-67108864&ce|0,0|ee),ce=0|u(),ne=0|tn(0|(fe=0|Sn(0|me,0|Ae,16777216,0)),0|u(),25),ie=0|u(),ie=0|Sn(0|(ae=0|Sn(0|(Ne=0|Sn(0|(Le=0|Sn(0|(Ke=0|Sn(0|$e,0|Ge,0|S,0|Ke)),0|u(),0|Q,0|Le)),0|u(),0|k,0|Ne)),0|u(),0|he,0|ae)),0|u(),0|ne,0|ie),ne=0|u(),fe=0|Qn(0|me,0|Ae,-33554432&fe|0,0),Ae=0|u(),ae=0|tn(0|(me=0|Sn(0|oe,0|se,16777216,0)),0|u(),25),he=0|u(),he=0|Sn(0|(te=0|Sn(0|(Re=0|Sn(0|(je=0|Sn(0|(He=0|Sn(0|(Ue=0|Sn(0|_,0|E,0|B,0|Ue)),0|u(),0|C,0|He)),0|u(),0|w,0|je)),0|u(),0|Te,0|Re)),0|u(),0|t,0|te)),0|u(),0|ae,0|he),ae=0|u(),me=0|Qn(0|oe,0|se,-33554432&me|0,0),se=0|u(),te=0|tn(0|(oe=0|Sn(0|ie,0|ne,33554432,0)),0|u(),26),t=0|u(),t=0|Sn(0|(re=0|Sn(0|(Pe=0|Sn(0|(Me=0|Sn(0|Oe,0|Fe,0|I,0|Me)),0|u(),0|b,0|Pe)),0|u(),0|De,0|re)),0|u(),0|te,0|t),te=0|u(),oe=0|Qn(0|ie,0|ne,-67108864&oe|0,0),u(),ie=0|tn(0|(ne=0|Sn(0|he,0|ae,33554432,0)),0|u(),26),re=0|u(),re=0|Sn(0|(_e=0|Sn(0|(Qe=0|Sn(0|(Se=0|Sn(0|(xe=0|Sn(0|m,0|v,0|y,0|xe)),0|u(),0|g,0|Se)),0|u(),0|d,0|Qe)),0|u(),0|ke,0|_e)),0|u(),0|ie,0|re),ie=0|u(),ne=0|Qn(0|he,0|ae,-67108864&ne|0,0),u(),ce=0|Sn(0|(he=0|tn(0|(ae=0|Sn(0|t,0|te,16777216,0)),0|u(),25)),0|u(),0|ee,0|ce),ee=0|u(),ae=0|Qn(0|t,0|te,-33554432&ae|0,0),u(),t=0|tn(0|(te=0|Sn(0|re,0|ie,16777216,0)),0|u(),25),he=0|u(),he=0|Sn(0|(be=0|Sn(0|(we=0|Sn(0|(Ce=0|Sn(0|(Be=0|Sn(0|(Ee=0|Sn(0|p,0|h,0|f,0|Ee)),0|u(),0|A,0|Be)),0|u(),0|l,0|Ce)),0|u(),0|c,0|we)),0|u(),0|Ie,0|be)),0|u(),0|t,0|he),t=0|u(),te=0|Qn(0|re,0|ie,-33554432&te|0,0),u(),re=0|Sn(0|me,0|se,0|(re=0|fn(0|(ie=0|Sn(0|ce,0|ee,33554432,0)),0|u(),26)),0|u()),u(),ie=0|Qn(0|ce,0|ee,-67108864&ie|0,0),u(),ce=0|tn(0|(ee=0|Sn(0|he,0|t,33554432,0)),0|u(),26),se=0|u(),se=0|Sn(0|(pe=0|Sn(0|(ge=0|Sn(0|(ye=0|Sn(0|(ve=0|Sn(0|s,0|o,0|a,0|ve)),0|u(),0|r,0|ye)),0|u(),0|n,0|ge)),0|u(),0|de,0|pe)),0|u(),0|ce,0|se),ce=0|u(),ee=0|Qn(0|he,0|t,-67108864&ee|0,0),u(),le=0|Sn(0|(he=0|Zt(0|(he=0|tn(0|(t=0|Sn(0|se,0|ce,16777216,0)),0|u(),25)),0|u(),19,0)),0|u(),0|ue,0|le),ue=0|u(),t=0|Qn(0|se,0|ce,-33554432&t|0,0),u(),se=0|Sn(0|fe,0|Ae,0|(se=0|fn(0|(ce=0|Sn(0|le,0|ue,33554432,0)),0|u(),26)),0|u()),u(),ce=0|Qn(0|le,0|ue,-67108864&ce|0,0),u(),i[e>>2]=ce,i[e+4>>2]=se,i[e+8>>2]=oe,i[e+12>>2]=ae,i[e+16>>2]=ie,i[e+20>>2]=re,i[e+24>>2]=ne,i[e+28>>2]=te,i[e+32>>2]=ee,i[e+36>>2]=t}function k(e){var t=0,n=0,r=0,a=0,o=0,s=0,c=0,u=0,l=0;if(e|=0){t=0|i[8683],l=e+-8+(-8&(n=0|i[e+-4>>2]))|0;do{if(1&n)c=e+-8|0,u=e+-8|0,e=-8&n;else{if(r=0|i[e+-8>>2],!(3&n))return;if(s=r+(-8&n)|0,(o=e+-8+(0-r)|0)>>>0<t>>>0)return;if((0|i[8684])==(0|o)){if(3!=(3&(e=0|i[l+4>>2])|0)){c=o,u=o,e=s;break}return i[8681]=s,i[l+4>>2]=-2&e,i[o+4>>2]=1|s,void(i[o+s>>2]=s)}if(r>>>0<256){if(e=0|i[o+8>>2],(0|(t=0|i[o+12>>2]))==(0|e)){i[8679]=i[8679]&~(1<<(r>>>3)),c=o,u=o,e=s;break}i[e+12>>2]=t,i[t+8>>2]=e,c=o,u=o,e=s;break}a=0|i[o+24>>2],e=0|i[o+12>>2];do{if((0|e)==(0|o)){if(e=0|i[o+16+4>>2])t=o+16+4|0;else{if(!(e=0|i[o+16>>2])){e=0;break}t=o+16|0}for(;;)if(n=0|i[(r=e+20|0)>>2])e=n,t=r;else{if(!(n=0|i[(r=e+16|0)>>2]))break;e=n,t=r}i[t>>2]=0}else u=0|i[o+8>>2],i[u+12>>2]=e,i[e+8>>2]=u}while(0);if(a){if(t=0|i[o+28>>2],(0|i[35020+(t<<2)>>2])==(0|o)){if(i[35020+(t<<2)>>2]=e,!e){i[8680]=i[8680]&~(1<<t),c=o,u=o,e=s;break}}else if(i[((0|i[a+16>>2])==(0|o)?a+16|0:a+20|0)>>2]=e,!e){c=o,u=o,e=s;break}i[e+24>>2]=a,0|(t=0|i[o+16>>2])&&(i[e+16>>2]=t,i[t+24>>2]=e),(t=0|i[o+16+4>>2])?(i[e+20>>2]=t,i[t+24>>2]=e,c=o,u=o,e=s):(c=o,u=o,e=s)}else c=o,u=o,e=s}}while(0);if(!(c>>>0>=l>>>0)&&1&(n=0|i[l+4>>2])){if(2&n)i[l+4>>2]=-2&n,i[u+4>>2]=1|e,i[c+e>>2]=e,a=e;else{if((0|i[8685])==(0|l)){if(l=(0|i[8682])+e|0,i[8682]=l,i[8685]=u,i[u+4>>2]=1|l,(0|u)!=(0|i[8684]))return;return i[8684]=0,void(i[8681]=0)}if((0|i[8684])==(0|l))return l=(0|i[8681])+e|0,i[8681]=l,i[8684]=c,i[u+4>>2]=1|l,void(i[c+l>>2]=l);a=(-8&n)+e|0;do{if(n>>>0<256){if(t=0|i[l+8>>2],(0|(e=0|i[l+12>>2]))==(0|t)){i[8679]=i[8679]&~(1<<(n>>>3));break}i[t+12>>2]=e,i[e+8>>2]=t;break}o=0|i[l+24>>2],e=0|i[l+12>>2];do{if((0|e)==(0|l)){if(e=0|i[l+16+4>>2])t=l+16+4|0;else{if(!(e=0|i[l+16>>2])){t=0;break}t=l+16|0}for(;;)if(n=0|i[(r=e+20|0)>>2])e=n,t=r;else{if(!(n=0|i[(r=e+16|0)>>2]))break;e=n,t=r}i[t>>2]=0,t=e}else t=0|i[l+8>>2],i[t+12>>2]=e,i[e+8>>2]=t,t=e}while(0);if(0|o){if(e=0|i[l+28>>2],(0|i[35020+(e<<2)>>2])==(0|l)){if(i[35020+(e<<2)>>2]=t,!t){i[8680]=i[8680]&~(1<<e);break}}else if(i[((0|i[o+16>>2])==(0|l)?o+16|0:o+20|0)>>2]=t,!t)break;i[t+24>>2]=o,0|(e=0|i[l+16>>2])&&(i[t+16>>2]=e,i[e+24>>2]=t),0|(e=0|i[l+16+4>>2])&&(i[t+20>>2]=e,i[e+24>>2]=t)}}while(0);if(i[u+4>>2]=1|a,i[c+a>>2]=a,(0|u)==(0|i[8684]))return void(i[8681]=a)}if(n=a>>>3,a>>>0<256)return(e=0|i[8679])&1<<n?(e=34756+(n<<1<<2)+8|0,t=0|i[34756+(n<<1<<2)+8>>2]):(i[8679]=e|1<<n,e=34756+(n<<1<<2)+8|0,t=34756+(n<<1<<2)|0),i[e>>2]=u,i[t+12>>2]=u,i[u+8>>2]=t,void(i[u+12>>2]=34756+(n<<1<<2));t=35020+((r=(e=a>>>8)?a>>>0>16777215?31:a>>>(7+(r=14-((520192+(e<<((e+1048320|0)>>>16&8))|0)>>>16&4|(e+1048320|0)>>>16&8|(245760+(r=e<<((e+1048320|0)>>>16&8)<<((520192+(e<<((e+1048320|0)>>>16&8))|0)>>>16&4))|0)>>>16&2)+(r<<((r+245760|0)>>>16&2)>>>15)|0)|0)&1|r<<1:0)<<2)|0,i[u+28>>2]=r,i[u+20>>2]=0,i[u+16>>2]=0,e=0|i[8680],n=1<<r;e:do{if(e&n){e=0|i[t>>2];t:do{if((-8&i[e+4>>2]|0)!=(0|a)){for(r=a<<(31==(0|r)?0:25-(r>>>1)|0);t=0|i[(n=e+16+(r>>>31<<2)|0)>>2];){if((-8&i[t+4>>2]|0)==(0|a)){e=t;break t}r<<=1,e=t}i[n>>2]=u,i[u+24>>2]=e,i[u+12>>2]=u,i[u+8>>2]=u;break e}}while(0);l=0|i[(c=e+8|0)>>2],i[l+12>>2]=u,i[c>>2]=u,i[u+8>>2]=l,i[u+12>>2]=e,i[u+24>>2]=0}else i[8680]=e|n,i[t>>2]=u,i[u+24>>2]=t,i[u+12>>2]=u,i[u+8>>2]=u}while(0);if(l=(0|i[8687])-1|0,i[8687]=l,!(0|l)){for(e=35172;e=0|i[e>>2];)e=e+8|0;i[8687]=-1}}}}function Q(e,t){t|=0;var n=0,r=0,a=0,o=0,s=0,c=0,u=0;n=0|i[4+(e|=0)>>2];do{if(1&n)u=e,n=t;else{if(c=0|i[e>>2],!(3&n))return;if((0|i[8684])==(e+(0-c)|0)){if(3!=(3&(n=0|i[e+t+4>>2])|0)){u=e+(0-c)|0,n=c+t|0;break}return i[8681]=c+t,i[e+t+4>>2]=-2&n,i[e+(0-c)+4>>2]=c+t|1,void(i[e+t>>2]=c+t)}if(c>>>0<256){if(n=0|i[e+(0-c)+8>>2],(0|(r=0|i[e+(0-c)+12>>2]))==(0|n)){i[8679]=i[8679]&~(1<<(c>>>3)),u=e+(0-c)|0,n=c+t|0;break}i[n+12>>2]=r,i[r+8>>2]=n,u=e+(0-c)|0,n=c+t|0;break}s=0|i[e+(0-c)+24>>2],n=0|i[e+(0-c)+12>>2];do{if((0|n)==(e+(0-c)|0)){if(n=0|i[4+(r=e+(0-c)+16|0)>>2])r=r+4|0;else if(!(n=0|i[r>>2])){r=0;break}for(;;)if(a=0|i[(o=n+20|0)>>2])n=a,r=o;else{if(!(a=0|i[(o=n+16|0)>>2]))break;n=a,r=o}i[r>>2]=0,r=n}else r=0|i[e+(0-c)+8>>2],i[r+12>>2]=n,i[n+8>>2]=r,r=n}while(0);if(s){if(n=0|i[e+(0-c)+28>>2],(0|i[35020+(n<<2)>>2])==(e+(0-c)|0)){if(i[35020+(n<<2)>>2]=r,!r){i[8680]=i[8680]&~(1<<n),u=e+(0-c)|0,n=c+t|0;break}}else if(i[((0|i[s+16>>2])==(e+(0-c)|0)?s+16|0:s+20|0)>>2]=r,!r){u=e+(0-c)|0,n=c+t|0;break}i[r+24>>2]=s,0|(n=0|i[e+(0-c)+16>>2])&&(i[r+16>>2]=n,i[n+24>>2]=r),(n=0|i[e+(0-c)+16+4>>2])?(i[r+20>>2]=n,i[n+24>>2]=r,u=e+(0-c)|0,n=c+t|0):(u=e+(0-c)|0,n=c+t|0)}else u=e+(0-c)|0,n=c+t|0}}while(0);if(2&(a=0|i[e+t+4>>2]))i[e+t+4>>2]=-2&a,i[u+4>>2]=1|n,i[u+n>>2]=n,s=n;else{if((0|i[8685])==(e+t|0)){if(t=(0|i[8682])+n|0,i[8682]=t,i[8685]=u,i[u+4>>2]=1|t,(0|u)!=(0|i[8684]))return;return i[8684]=0,void(i[8681]=0)}if((0|i[8684])==(e+t|0))return t=(0|i[8681])+n|0,i[8681]=t,i[8684]=u,i[u+4>>2]=1|t,void(i[u+t>>2]=t);s=(-8&a)+n|0;do{if(a>>>0<256){if(r=0|i[e+t+8>>2],(0|(n=0|i[e+t+12>>2]))==(0|r)){i[8679]=i[8679]&~(1<<(a>>>3));break}i[r+12>>2]=n,i[n+8>>2]=r;break}c=0|i[e+t+24>>2],n=0|i[e+t+12>>2];do{if((0|n)==(e+t|0)){if(n=0|i[e+t+16+4>>2])r=e+t+16+4|0;else{if(!(n=0|i[e+t+16>>2])){r=0;break}r=e+t+16|0}for(;;)if(a=0|i[(o=n+20|0)>>2])n=a,r=o;else{if(!(a=0|i[(o=n+16|0)>>2]))break;n=a,r=o}i[r>>2]=0,r=n}else r=0|i[e+t+8>>2],i[r+12>>2]=n,i[n+8>>2]=r,r=n}while(0);if(0|c){if(n=0|i[e+t+28>>2],(0|i[35020+(n<<2)>>2])==(e+t|0)){if(i[35020+(n<<2)>>2]=r,!r){i[8680]=i[8680]&~(1<<n);break}}else if(i[((0|i[c+16>>2])==(e+t|0)?c+16|0:c+20|0)>>2]=r,!r)break;i[r+24>>2]=c,0|(n=0|i[e+t+16>>2])&&(i[r+16>>2]=n,i[n+24>>2]=r),0|(n=0|i[e+t+16+4>>2])&&(i[r+20>>2]=n,i[n+24>>2]=r)}}while(0);if(i[u+4>>2]=1|s,i[u+s>>2]=s,(0|u)==(0|i[8684]))return void(i[8681]=s)}if(a=s>>>3,s>>>0<256)return(n=0|i[8679])&1<<a?(n=34756+(a<<1<<2)+8|0,r=0|i[34756+(a<<1<<2)+8>>2]):(i[8679]=n|1<<a,n=34756+(a<<1<<2)+8|0,r=34756+(a<<1<<2)|0),i[n>>2]=u,i[r+12>>2]=u,i[u+8>>2]=r,void(i[u+12>>2]=34756+(a<<1<<2));if(r=35020+((o=(n=s>>>8)?s>>>0>16777215?31:s>>>(7+(o=14-((520192+(n<<((n+1048320|0)>>>16&8))|0)>>>16&4|(n+1048320|0)>>>16&8|(245760+(o=n<<((n+1048320|0)>>>16&8)<<((520192+(n<<((n+1048320|0)>>>16&8))|0)>>>16&4))|0)>>>16&2)+(o<<((o+245760|0)>>>16&2)>>>15)|0)|0)&1|o<<1:0)<<2)|0,i[u+28>>2]=o,i[u+20>>2]=0,i[u+16>>2]=0,!((n=0|i[8680])&(a=1<<o)))return i[8680]=n|a,i[r>>2]=u,i[u+24>>2]=r,i[u+12>>2]=u,void(i[u+8>>2]=u);n=0|i[r>>2];e:do{if((-8&i[n+4>>2]|0)!=(0|s)){for(o=s<<(31==(0|o)?0:25-(o>>>1)|0);r=0|i[(a=n+16+(o>>>31<<2)|0)>>2];){if((-8&i[r+4>>2]|0)==(0|s)){n=r;break e}o<<=1,n=r}return i[a>>2]=u,i[u+24>>2]=n,i[u+12>>2]=u,void(i[u+8>>2]=u)}}while(0);t=0|i[(e=n+8|0)>>2],i[t+12>>2]=u,i[e>>2]=u,i[u+8>>2]=t,i[u+12>>2]=n,i[u+24>>2]=0}function S(e,t,n,a,o){e|=0,t|=0,n|=0;var s,c,l=0,A=0,f=0,h=0,p=0,d=0,g=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0,E=0,_=0,k=0,Q=0,S=0,x=0,D=0,P=0,M=0,F=0,O=0,R=0,T=0,j=0,H=0,U=0,N=0,L=0,K=0,G=0,$=0,Y=0,J=0,V=0,z=0,q=0,W=0,X=0,Z=0,ee=0,te=0,ne=0,re=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,le=0,Ae=0,fe=0,he=0;if(c=y,s=y=y+63&-64,y=y+64|0,!(0==(0|(a|=0))&0==(0|(o|=0)))){for(N=0|i[e>>2],L=0|i[e+4>>2],K=0|i[e+8>>2],G=0|i[e+12>>2],$=0|i[e+16>>2],P=0|i[e+20>>2],M=0|i[e+24>>2],F=0|i[e+28>>2],O=0|i[e+32>>2],R=0|i[e+36>>2],T=0|i[e+40>>2],j=0|i[e+44>>2],H=0|i[e+56>>2],U=0|i[e+60>>2],A=0,x=0|i[e+48>>2],D=0|i[e+52>>2],f=t;;){if(S=o>>>0<0|0==(0|o)&a>>>0<64){l=(t=s)+64|0;do{i[t>>2]=0,t=t+4|0}while((0|t)<(0|l));t=0;do{r[s+t>>0]=0|r[f+t>>0],t=t+1|0}while(o>>>0>0|0==(0|o)&a>>>0>t>>>0);Q=s,A=n,f=s}else Q=n;n=20,t=N,l=L,h=T,p=j,d=x,g=D,v=H,m=U,b=K,I=G,w=$,C=P,B=M,E=F,_=O,k=R;do{q=0|Ar((ee=0|Ar((fe=0|Ar((Z=(ee=0|Ar((Ae=t+w|0)^d,16))+_|0)^w,12))+Ae^ee,8))+Z^fe,7),he=0|Ar((V=0|Ar((ce=0|Ar((J=(V=0|Ar((se=l+C|0)^g,16))+k|0)^C,12))+se^V,8))+J^ce,7),ue=0|Ar((z=0|Ar((re=0|Ar((te=(z=0|Ar((ne=b+B|0)^v,16))+h|0)^B,12))+ne^z,8))+te^re,7),ie=0|Ar((ae=0|Ar((X=0|Ar((Y=(ae=0|Ar((W=I+E|0)^m,16))+p|0)^E,12))+W^ae,8))+Y^X,7),C=0|Ar((h=(m=0|Ar((t=(oe=0|Ar((le=0|Ar(ae^he+(fe+Ae),16))+(z+te)^he,12))+(he+(fe+Ae))|0)^le,8))+(le+(z+te))|0)^oe,7),B=0|Ar((p=(d=0|Ar((l=(te=0|Ar((oe=0|Ar(ue+(ce+se)^ee,16))+(ae+Y)^ue,12))+(ue+(ce+se))|0)^oe,8))+(oe+(ae+Y))|0)^te,7),E=0|Ar((_=(g=0|Ar((b=(Y=0|Ar((te=0|Ar(ie+(re+ne)^V,16))+(ee+Z)^ie,12))+(ie+(re+ne))|0)^te,8))+(te+(ee+Z))|0)^Y,7),w=0|Ar((k=(v=0|Ar((I=(Y=0|Ar((z=0|Ar(X+W+q^z,16))+(V+J)^q,12))+(X+W+q)|0)^z,8))+(z+(V+J))|0)^Y,7),n=n+-2|0}while(0!=(0|n));if(X=(0|Kn(f))^t+N,Z=(0|Kn(f+4|0))^l+L,ee=(0|Kn(f+8|0))^b+K,te=(0|Kn(f+12|0))^I+G,ne=(0|Kn(f+16|0))^w+$,re=(0|Kn(f+20|0))^C+P,ie=(0|Kn(f+24|0))^B+M,ae=(0|Kn(f+28|0))^E+F,oe=(0|Kn(f+32|0))^_+O,se=(0|Kn(f+36|0))^k+R,ce=(0|Kn(f+40|0))^h+T,ue=(0|Kn(f+44|0))^p+j,le=(0|Kn(f+48|0))^d+x,Ae=(0|Kn(f+52|0))^g+D,fe=(0|Kn(f+56|0))^v+H,he=(0|Kn(f+60|0))^m+U,l=D+(0==(0|(t=x+1|0))&1)|0,Pn(Q,X),Pn(Q+4|0,Z),Pn(Q+8|0,ee),Pn(Q+12|0,te),Pn(Q+16|0,ne),Pn(Q+20|0,re),Pn(Q+24|0,ie),Pn(Q+28|0,ae),Pn(Q+32|0,oe),Pn(Q+36|0,se),Pn(Q+40|0,ce),Pn(Q+44|0,ue),Pn(Q+48|0,le),Pn(Q+52|0,Ae),Pn(Q+56|0,fe),Pn(Q+60|0,he),o>>>0<0|0==(0|o)&a>>>0<65)break;n=0|Sn(0|a,0|o,-64,-1),o=0|u(),a=n,n=Q+64|0,x=t,D=l,f=f+64|0}if(S&&0|a){o=0;do{r[A+o>>0]=0|r[Q+o>>0],o=o+1|0}while((0|o)!=(0|a))}i[e+48>>2]=t,i[e+52>>2]=l}y=c}function x(e,t,n,a){t|=0,n|=0,a|=0;var o,s,c,l,A,f=0,h=0,p=0,d=0,g=0,y=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0,E=0,_=0;if(A=0==(0|r[80+(e|=0)>>0])?16777216:0,o=0|i[e+4>>2],s=0|i[e+8>>2],c=0|i[e+12>>2],l=0|i[e+16>>2],g=0|i[e+20>>2],d=0|i[e+24>>2],p=0|i[e+28>>2],h=0|i[e+32>>2],f=0|i[e+36>>2],a>>>0>0|0==(0|a)&n>>>0>15)for(b=0|i[e>>2];;){if(E=(67108863&(0|Kn(t)))+g|0,_=((0|Kn(t+3|0))>>>2&67108863)+d|0,B=((0|Kn(t+6|0))>>>4&67108863)+p|0,C=((0|Kn(t+9|0))>>>6)+h|0,g=((0|Kn(t+12|0))>>>8|A)+f|0,f=0|Zt(0|E,0,0|b,0),y=0|u(),p=0|Sn(0|(y=0|Sn(0|(p=0|Sn(0|(y=0|Sn(0|(p=0|Zt(0|_,0,5*l|0,0)),0|u(),0|f,0|y)),0|(f=0|u()),0|(p=0|Zt(0|B,0,5*c|0,0)),0|u())),0|(f=0|u()),0|(y=0|Zt(0|C,0,5*s|0,0)),0|u())),0|(f=0|u()),0|(p=0|Zt(0|g,0,5*o|0,0)),0|u()),f=0|u(),y=0|Zt(0|E,0,0|o,0),v=0|u(),w=0|Sn(0|(v=0|Sn(0|(w=0|Sn(0|(v=0|Sn(0|(w=0|Zt(0|_,0,0|b,0)),0|u(),0|y,0|v)),0|(y=0|u()),0|(w=0|Zt(0|B,0,5*l|0,0)),0|u())),0|(y=0|u()),0|(v=0|Zt(0|C,0,5*c|0,0)),0|u())),0|(y=0|u()),0|(w=0|Zt(0|g,0,5*s|0,0)),0|u()),y=0|u(),v=0|Zt(0|E,0,0|s,0),m=0|u(),I=0|Sn(0|(m=0|Sn(0|(I=0|Sn(0|(m=0|Sn(0|(I=0|Zt(0|_,0,0|o,0)),0|u(),0|v,0|m)),0|(v=0|u()),0|(I=0|Zt(0|B,0,0|b,0)),0|u())),0|(v=0|u()),0|(m=0|Zt(0|C,0,5*l|0,0)),0|u())),0|(v=0|u()),0|(I=0|Zt(0|g,0,5*c|0,0)),0|u()),v=0|u(),m=0|Zt(0|E,0,0|c,0),h=0|u(),d=0|Sn(0|(h=0|Sn(0|(d=0|Sn(0|(h=0|Sn(0|(d=0|Zt(0|_,0,0|s,0)),0|u(),0|m,0|h)),0|(m=0|u()),0|(d=0|Zt(0|B,0,0|o,0)),0|u())),0|(m=0|u()),0|(h=0|Zt(0|C,0,0|b,0)),0|u())),0|(m=0|u()),0|(d=0|Zt(0|g,0,5*l|0,0)),0|u()),m=0|u(),h=0|Zt(0|E,0,0|l,0),E=0|u(),g=0|Sn(0|(C=0|Sn(0|(B=0|Sn(0|(E=0|Sn(0|(_=0|Zt(0|_,0,0|c,0)),0|u(),0|h,0|E)),0|(h=0|u()),0|(B=0|Zt(0|B,0,0|s,0)),0|u())),0|(h=0|u()),0|(C=0|Zt(0|C,0,0|o,0)),0|u())),0|(h=0|u()),0|(g=0|Zt(0|g,0,0|b,0)),0|u()),h=0|u(),f=0|fn(0|p,0|f,26),u(),y=0|fn(0|(f=0|Sn(0|w,0|y,0|f,0)),0|u(),26),u(),v=0|fn(0|(y=0|Sn(0|I,0|v,0|y,0)),0|u(),26),u(),m=0|fn(0|(v=0|Sn(0|d,0|m,0|v,0)),0|u(),26),u(),h=0|fn(0|(m=0|Sn(0|g,0|h,0|m,0)),0|u(),26),u(),n=0|Sn(0|n,0|a,-16,-1),!((a=0|u())>>>0>0|0==(0|a)&n>>>0>15)){n=(5*h|0)+(67108863&p)&67108863,d=(((5*h|0)+(67108863&p)|0)>>>26)+(67108863&f)|0,p=67108863&y,h=67108863&v,f=67108863&m;break}g=(5*h|0)+(67108863&p)&67108863,d=(((5*h|0)+(67108863&p)|0)>>>26)+(67108863&f)|0,p=67108863&y,h=67108863&v,f=67108863&m,t=t+16|0}else n=g;i[e+20>>2]=n,i[e+24>>2]=d,i[e+28>>2]=p,i[e+32>>2]=h,i[e+36>>2]=f}function D(e,t){e|=0;var n=0,a=0,o=0,s=0,c=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,y=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0,E=0;A=0|mt(t|=0),l=0|u(),C=0|cn(0|(C=0|Wt(0|r[t+4>>0],0|r[t+5>>0],0|r[t+6>>0])),0|u(),6),B=0|u(),c=0|cn(0|(c=0|Wt(0|r[t+7>>0],0|r[t+8>>0],0|r[t+9>>0])),0|u(),5),s=0|u(),I=0|cn(0|(I=0|Wt(0|r[t+10>>0],0|r[t+11>>0],0|r[t+12>>0])),0|u(),3),w=0|u(),o=0|cn(0|(o=0|Wt(0|r[t+13>>0],0|r[t+14>>0],0|r[t+15>>0])),0|u(),2),a=0|u(),m=0|mt(t+16|0),b=0|u(),f=0|cn(0|(f=0|Wt(0|r[t+20>>0],0|r[t+21>>0],0|r[t+22>>0])),0|u(),7),n=0|u(),h=0|cn(0|(h=0|Wt(0|r[t+23>>0],0|r[t+24>>0],0|r[t+25>>0])),0|u(),5),v=0|u(),p=0|cn(0|(p=0|Wt(0|r[t+26>>0],0|r[t+27>>0],0|r[t+28>>0])),0|u(),4),d=0|u(),g=0|cn(0|(g=0|Wt(0|r[t+29>>0],0|r[t+30>>0],0|r[t+31>>0])),0|u(),2),u(),E=0|Qn(0,0,0|(E=0|fn(0|(y=0|Sn(33554428&g|0,0,16777216,0)),0|u(),25)),0|u()),u(),l=0|Sn(19&E|0,0,0|A,0|l),A=0|u(),y=0|Qn(33554428&g|0,0,33554432&y|0,0),g=0|u(),s=0|Sn(0|(t=0|tn(0|(E=0|Sn(0|C,0|B,16777216,0)),0|u(),25)),0|u(),0|c,0|s),c=0|u(),E=0|Qn(0|C,0|B,-33554432&E|0,0),B=0|u(),a=0|Sn(0|(t=0|tn(0|(C=0|Sn(0|I,0|w,16777216,0)),0|u(),25)),0|u(),0|o,0|a),o=0|u(),C=0|Qn(0|I,0|w,-33554432&C|0,0),w=0|u(),t=0|Sn(0|f,0|n,0|(t=0|tn(0|(I=0|Sn(0|m,0|b,16777216,0)),0|u(),25)),0|u()),n=0|u(),I=0|Qn(0|m,0|b,-33554432&I|0,0),b=0|u(),d=0|Sn(0|(f=0|tn(0|(m=0|Sn(0|h,0|v,16777216,0)),0|u(),25)),0|u(),0|p,0|d),p=0|u(),m=0|Qn(0|h,0|v,-33554432&m|0,0),v=0|u(),f=0|Sn(0|E,0|B,0|(f=0|fn(0|(h=0|Sn(0|l,0|A,33554432,0)),0|u(),26)),0|u()),u(),h=0|Qn(0|l,0|A,-67108864&h|0,0),u(),l=0|Sn(0|C,0|w,0|(l=0|fn(0|(A=0|Sn(0|s,0|c,33554432,0)),0|u(),26)),0|u()),u(),A=0|Qn(0|s,0|c,-67108864&A|0,0),u(),s=0|Sn(0|I,0|b,0|(s=0|fn(0|(c=0|Sn(0|a,0|o,33554432,0)),0|u(),26)),0|u()),u(),c=0|Qn(0|a,0|o,-67108864&c|0,0),u(),a=0|Sn(0|m,0|v,0|(a=0|fn(0|(o=0|Sn(0|t,0|n,33554432,0)),0|u(),26)),0|u()),u(),o=0|Qn(0|t,0|n,-67108864&o|0,0),u(),t=0|Sn(0|y,0|g,0|(t=0|fn(0|(n=0|Sn(0|d,0|p,33554432,0)),0|u(),26)),0|u()),u(),n=0|Qn(0|d,0|p,-67108864&n|0,0),u(),i[e>>2]=h,i[e+4>>2]=f,i[e+8>>2]=A,i[e+12>>2]=l,i[e+16>>2]=c,i[e+20>>2]=s,i[e+24>>2]=o,i[e+28>>2]=a,i[e+32>>2]=n,i[e+36>>2]=t}function P(e,t){e|=0;var n=0,r=0,a=0,o=0,s=0,c=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,y=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0;l=0|i[(t|=0)>>2],w=0|i[t+4>>2],s=0|i[t+8>>2],b=0|i[t+12>>2],a=0|i[t+16>>2],v=0|i[t+20>>2],n=0|i[t+24>>2],f=0|i[t+28>>2],h=0|i[t+32>>2],B=0|i[t+36>>2],l=0|Zt(0|l,((0|l)<0)<<31>>31|0,121666,0),c=0|u(),w=0|Zt(0|w,((0|w)<0)<<31>>31|0,121666,0),C=0|u(),s=0|Zt(0|s,((0|s)<0)<<31>>31|0,121666,0),o=0|u(),b=0|Zt(0|b,((0|b)<0)<<31>>31|0,121666,0),I=0|u(),a=0|Zt(0|a,((0|a)<0)<<31>>31|0,121666,0),r=0|u(),v=0|Zt(0|v,((0|v)<0)<<31>>31|0,121666,0),m=0|u(),n=0|Zt(0|n,((0|n)<0)<<31>>31|0,121666,0),t=0|u(),f=0|Zt(0|f,((0|f)<0)<<31>>31|0,121666,0),y=0|u(),h=0|Zt(0|h,((0|h)<0)<<31>>31|0,121666,0),p=0|u(),c=0|Sn(0|(A=0|Zt(0|(A=0|tn(0|(g=0|Sn(0|(B=0|Zt(0|B,((0|B)<0)<<31>>31|0,121666,0)),0|(d=0|u()),16777216,0)),0|u(),25)),0|u(),19,0)),0|u(),0|l,0|c),l=0|u(),g=0|Qn(0|B,0|d,-33554432&g|0,0),d=0|u(),o=0|Sn(0|(A=0|tn(0|(B=0|Sn(0|w,0|C,16777216,0)),0|u(),25)),0|u(),0|s,0|o),s=0|u(),B=0|Qn(0|w,0|C,-33554432&B|0,0),C=0|u(),r=0|Sn(0|(A=0|tn(0|(w=0|Sn(0|b,0|I,16777216,0)),0|u(),25)),0|u(),0|a,0|r),a=0|u(),w=0|Qn(0|b,0|I,-33554432&w|0,0),I=0|u(),t=0|Sn(0|(A=0|tn(0|(b=0|Sn(0|v,0|m,16777216,0)),0|u(),25)),0|u(),0|n,0|t),n=0|u(),b=0|Qn(0|v,0|m,-33554432&b|0,0),m=0|u(),p=0|Sn(0|(A=0|tn(0|(v=0|Sn(0|f,0|y,16777216,0)),0|u(),25)),0|u(),0|h,0|p),h=0|u(),v=0|Qn(0|f,0|y,-33554432&v|0,0),y=0|u(),A=0|Sn(0|B,0|C,0|(A=0|fn(0|(f=0|Sn(0|c,0|l,33554432,0)),0|u(),26)),0|u()),u(),f=0|Qn(0|c,0|l,-67108864&f|0,0),u(),c=0|Sn(0|w,0|I,0|(c=0|fn(0|(l=0|Sn(0|o,0|s,33554432,0)),0|u(),26)),0|u()),u(),l=0|Qn(0|o,0|s,-67108864&l|0,0),u(),o=0|Sn(0|b,0|m,0|(o=0|fn(0|(s=0|Sn(0|r,0|a,33554432,0)),0|u(),26)),0|u()),u(),s=0|Qn(0|r,0|a,-67108864&s|0,0),u(),r=0|Sn(0|v,0|y,0|(r=0|fn(0|(a=0|Sn(0|t,0|n,33554432,0)),0|u(),26)),0|u()),u(),a=0|Qn(0|t,0|n,-67108864&a|0,0),u(),t=0|Sn(0|g,0|d,0|(t=0|fn(0|(n=0|Sn(0|p,0|h,33554432,0)),0|u(),26)),0|u()),u(),n=0|Qn(0|p,0|h,-67108864&n|0,0),u(),i[e>>2]=f,i[e+4>>2]=A,i[e+8>>2]=l,i[e+12>>2]=c,i[e+16>>2]=s,i[e+20>>2]=o,i[e+24>>2]=a,i[e+28>>2]=r,i[e+32>>2]=n,i[e+36>>2]=t}function M(e,t,n){e|=0,t|=0;var i,o,s=0,c=0,u=0;if(o=y,i=y=y+63&-64,y=y+64|0,(n|=0)<<24>>24&&(255&n)<=64){if(0|function(e,t){return 1&(0!=(0|(e|=0))|0!=(0|(t|=0)))|0}(a[e+80>>0]|a[e+80+1>>0]<<8|a[e+80+2>>0]<<16|a[e+80+3>>0]<<24,a[e+80+4>>0]|a[e+80+4+1>>0]<<8|a[e+80+4+2>>0]<<16|a[e+80+4+3>>0]<<24))s=-1;else{s=a[e+352>>0]|a[e+352+1>>0]<<8|a[e+352+2>>0]<<16|a[e+352+3>>0]<<24;do{if(s>>>0>128){if(ue(e,128,0),v(e,e+96|0),s=(a[e+352>>0]|a[e+352+1>>0]<<8|a[e+352+2>>0]<<16|a[e+352+3>>0]<<24)-128|0,r[e+352>>0]=s,r[e+352+1>>0]=s>>8,r[e+352+2>>0]=s>>16,r[e+352+3>>0]=s>>24,s>>>0<129){te(e+96|0,e+224|0,0|s),c=a[e+352>>0]|a[e+352+1>>0]<<8|a[e+352+2>>0]<<16|a[e+352+3>>0]<<24,u=e+96|0;break}l(33456,33488,306,33533)}else c=s,u=e+96|0}while(0);ue(e,c,0),function(e){0|r[356+(e|=0)>>0]&&function(e){r[88+(e|=0)>>0]=-1,r[e+88+1>>0]=-1,r[e+88+2>>0]=-1,r[e+88+3>>0]=-1,r[e+88+4>>0]=-1,r[e+88+4+1>>0]=-1,r[e+88+4+2>>0]=-1,r[e+88+4+3>>0]=-1}(e),r[e+80>>0]=-1,r[e+80+1>>0]=-1,r[e+80+2>>0]=-1,r[e+80+3>>0]=-1,r[e+80+4>>0]=-1,r[e+80+4+1>>0]=-1,r[e+80+4+2>>0]=-1,r[e+80+4+3>>0]=-1}(e),ke(e+96+(s=a[e+352>>0]|a[e+352+1>>0]<<8|a[e+352+2>>0]<<16|a[e+352+3>>0]<<24)|0,0,256-s|0),v(e,u),Ot(i,a[e>>0]|a[e+1>>0]<<8|a[e+2>>0]<<16|a[e+3>>0]<<24,a[e+4>>0]|a[e+4+1>>0]<<8|a[e+4+2>>0]<<16|a[e+4+3>>0]<<24),Ot(i+8|0,a[e+8>>0]|a[e+8+1>>0]<<8|a[e+8+2>>0]<<16|a[e+8+3>>0]<<24,a[e+8+4>>0]|a[e+8+4+1>>0]<<8|a[e+8+4+2>>0]<<16|a[e+8+4+3>>0]<<24),Ot(i+16|0,a[e+16>>0]|a[e+16+1>>0]<<8|a[e+16+2>>0]<<16|a[e+16+3>>0]<<24,a[e+16+4>>0]|a[e+16+4+1>>0]<<8|a[e+16+4+2>>0]<<16|a[e+16+4+3>>0]<<24),Ot(i+24|0,a[e+24>>0]|a[e+24+1>>0]<<8|a[e+24+2>>0]<<16|a[e+24+3>>0]<<24,a[e+24+4>>0]|a[e+24+4+1>>0]<<8|a[e+24+4+2>>0]<<16|a[e+24+4+3>>0]<<24),Ot(i+32|0,a[e+32>>0]|a[e+32+1>>0]<<8|a[e+32+2>>0]<<16|a[e+32+3>>0]<<24,a[e+32+4>>0]|a[e+32+4+1>>0]<<8|a[e+32+4+2>>0]<<16|a[e+32+4+3>>0]<<24),Ot(i+40|0,a[e+40>>0]|a[e+40+1>>0]<<8|a[e+40+2>>0]<<16|a[e+40+3>>0]<<24,a[e+40+4>>0]|a[e+40+4+1>>0]<<8|a[e+40+4+2>>0]<<16|a[e+40+4+3>>0]<<24),Ot(i+48|0,a[e+48>>0]|a[e+48+1>>0]<<8|a[e+48+2>>0]<<16|a[e+48+3>>0]<<24,a[e+48+4>>0]|a[e+48+4+1>>0]<<8|a[e+48+4+2>>0]<<16|a[e+48+4+3>>0]<<24),Ot(i+56|0,a[e+56>>0]|a[e+56+1>>0]<<8|a[e+56+2>>0]<<16|a[e+56+3>>0]<<24,a[e+56+4>>0]|a[e+56+4+1>>0]<<8|a[e+56+4+2>>0]<<16|a[e+56+4+3>>0]<<24),te(0|t,0|i,255&n|0),Et(e,64),Et(u,256),s=0}return y=o,0|s}return kr(),0}function F(e,t,n,a){e|=0,t|=0,n|=0;var o,s,c=0,u=0,l=0,A=0,f=0,h=0;switch(s=y,o=y=y+63&-64,y=y+16|0,0|(a|=0)){case 2:if(t>>>0<13)a=-31;else{c=33688,u=(a=e)+13|0;do{r[a>>0]=0|r[c>>0],a=a+1|0,c=c+1|0}while((0|a)<(0|u));e=e+12|0,u=t+-12|0,c=6}break;case 1:if(t>>>0<12)a=-31;else{c=33701,u=(a=e)+12|0;do{r[a>>0]=0|r[c>>0],a=a+1|0,c=c+1|0}while((0|a)<(0|u));e=e+11|0,u=t+-11|0,c=6}break;default:a=-31}do{if(6==(0|c)&&!(a=0|se(n))){if(at(o,19),c=e+(a=0|Ve(o))|0,A=u-a|0,u>>>0<=a>>>0){a=-31;break}if(te(0|e,0|o,a+1|0),A>>>0>=4){if(r[c>>0]=36,r[c+1>>0]=109,r[c+2>>0]=61,r[c+3>>0]=0,at(o,0|i[n+44>>2]),u=c+3+(e=0|Ve(o))|0,(A+-3|0)>>>0<=e>>>0){a=-31;break}if(te(c+3|0,0|o,e+1|0),(A+-3-e|0)>>>0>=4){if(r[u>>0]=44,r[u+1>>0]=116,r[u+2>>0]=61,r[u+3>>0]=0,at(o,0|i[n+40>>2]),t=u+3+(a=0|Ve(o))|0,l=A+-3-e-3-a|0,(A+-3-e-3|0)>>>0<=a>>>0){a=-31;break}if(te(u+3|0,0|o,a+1|0),l>>>0>=4){if(r[t>>0]=44,r[t+1>>0]=112,r[t+2>>0]=61,r[t+3>>0]=0,at(o,0|i[n+48>>2]),(l+-3|0)>>>0<=(c=0|Ve(o))>>>0){a=-31;break}if(te(t+3|0,0|o,c+1|0),a=t+3+c+1|0,(l+-3-c|0)>>>0>=2&&(r[t+3+c>>0]=36,r[t+3+c+1>>0]=0,$(a,l+-3-c-1|0,0|i[n+16>>2],0|i[n+20>>2],3),(h=l+-3-c-1-(f=0|Ve(a))|0)>>>0>=2))return r[a+f>>0]=36,r[a+f+1>>0]=0,$(a+f+1|0,h+-1|0,0|i[n>>2],0|i[n+4>>2],3),y=s,0;a=-31}else a=-31}else a=-31}else a=-31}}while(0);return y=s,0|a}function O(e,t,n,a){e|=0,t|=0,n|=0,a|=0;var o,s,c=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,v=0;s=y,o=y=y+63&-64,y=y+704|0;e:do{if(!(0==(0|n)&0==(0|a))){if(h=0|fn(0|(v=0|i[e+72>>2]),0|(d=0|i[e+72+4>>2]),3),u(),p=0|cn(0|n,0|a,3),g=0|u(),A=0|fn(0|n,0|a,61),f=0|u(),d=0|Sn(0|v,0|d,0|p,0|g),v=0|u(),i[e+72>>2]=d,i[e+72+4>>2]=v,c=0|i[e+64>>2],l=0|i[e+64+4>>2],v>>>0<g>>>0|(0|v)==(0|g)&d>>>0<p>>>0&&(c=0|Sn(0|c,0|l,1,0),l=0|u(),i[e+64>>2]=c,i[e+64+4>>2]=l),c=0|Sn(0|c,0|l,0|A,0|f),f=0|u(),i[e+64>>2]=c,i[e+64+4>>2]=f,f=0|Qn(128,0,127&h|0,0),(c=0|u())>>>0>a>>>0|(0|c)==(0|a)&f>>>0>n>>>0)for(c=0,l=0;;)if(g=0|r[t+c>>0],v=0|Sn(0|c,0|l,127&h|0,0),u(),r[e+80+v>>0]=g,c=0|Sn(0|c,0|l,1,0),!((l=0|u())>>>0<a>>>0|(0|l)==(0|a)&c>>>0<n>>>0))break e;if(!(0==(0|f)&0==(0|c))){l=0,A=0;do{g=0|r[t+l>>0],v=0|Sn(0|l,0|A,127&h|0,0),u(),r[e+80+v>>0]=g,l=0|Sn(0|l,0|A,1,0),A=0|u()}while(A>>>0<c>>>0|(0|A)==(0|c)&l>>>0<f>>>0)}if(b(e,e+80|0,o,o+640|0),c=0|Qn(0|n,0|a,0|f,0|c),(A=0|u())>>>0>0|0==(0|A)&c>>>0>127){l=t+f|0;do{b(e,l,o,o+640|0),l=l+128|0,c=0|Sn(0|c,0|A,-128,-1),A=0|u()}while(A>>>0>0|0==(0|A)&c>>>0>127)}else l=t+f|0;if(!(0==(0|(f=127&c))&!0)){c=0,A=0;do{r[e+80+c>>0]=0|r[l+c>>0],c=0|Sn(0|c,0|A,1,0),A=0|u()}while(A>>>0<0|0==(0|A)&c>>>0<f>>>0)}Et(o,704)}}while(0);y=s}function R(e,t,n){e|=0,t|=0;var r=0,i=0,a=0,o=0,s=0,c=0,u=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,y=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0,E=0,_=0,k=0,Q=0,S=0,x=0,D=0,P=0,M=0,F=0,O=0,R=0,T=0,j=0,H=0;i=0|Kn(n|=0),a=0|Kn(n+4|0),o=0|Kn(n+8|0),s=0|Kn(n+12|0),c=0|Kn(n+16|0),u=0|Kn(n+20|0),h=0|Kn(n+24|0),p=0|Kn(n+28|0),d=0|Kn(t),g=0|Kn(t+4|0),y=0|Kn(t+8|0),l=0,A=1634760805,f=857760878,n=0|Kn(t+12|0),t=2036477234,r=1797285236;do{w=0|Ar((_=0|Ar((j=0|Ar((E=(_=0|Ar(d^(T=i+A|0),16))+c|0)^i,12))+T^_,8))+E^j,7),H=0|Ar((b=0|Ar((F=0|Ar((m=(b=0|Ar(g^(M=a+f|0),16))+u|0)^a,12))+M^b,8))+m^F,7),O=0|Ar((I=0|Ar((S=0|Ar((k=(I=0|Ar(y^(Q=o+t|0),16))+h|0)^o,12))+Q^I,8))+k^S,7),x=0|Ar((D=0|Ar((B=0|Ar((v=(D=0|Ar(n^(C=s+r|0),16))+p|0)^s,12))+C^D,8))+v^B,7),a=0|Ar((h=(n=0|Ar((A=(P=0|Ar((R=0|Ar(D^H+(j+T),16))+(I+k)^H,12))+(H+(j+T))|0)^R,8))+(R+(I+k))|0)^P,7),o=0|Ar((p=(d=0|Ar((f=(k=0|Ar((P=0|Ar(O+(F+M)^_,16))+(D+v)^O,12))+(O+(F+M))|0)^P,8))+(P+(D+v))|0)^k,7),s=0|Ar((c=(g=0|Ar((t=(v=0|Ar((k=0|Ar(x+(S+Q)^b,16))+(_+E)^x,12))+(x+(S+Q))|0)^k,8))+(k+(_+E))|0)^v,7),i=0|Ar((u=(y=0|Ar((r=(v=0|Ar((I=0|Ar(B+C+w^I,16))+(b+m)^w,12))+(B+C+w)|0)^I,8))+(I+(b+m))|0)^v,7),l=l+1|0}while(10!=(0|l));Pn(e,A),Pn(e+4|0,f),Pn(e+8|0,t),Pn(e+12|0,r),Pn(e+16|0,d),Pn(e+20|0,g),Pn(e+24|0,y),Pn(e+28|0,n)}function T(e,t,n,i){e|=0,n|=0,i|=0;var a,o,s=0,c=0;for(a=y,o=y=y+63&-64,y=y+2272|0,de(o+1536|0,t|=0),de(o+1280|0,i),nn(o,n),rn(o+2112|0,n),en(o+1792|0,o+2112|0),Xe(o+2112|0,o+1792|0,o),en(o+1952|0,o+2112|0),nn(o+160|0,o+1952|0),Xe(o+2112|0,o+1792|0,o+160|0),en(o+1952|0,o+2112|0),nn(o+320|0,o+1952|0),Xe(o+2112|0,o+1792|0,o+320|0),en(o+1952|0,o+2112|0),nn(o+480|0,o+1952|0),Xe(o+2112|0,o+1792|0,o+480|0),en(o+1952|0,o+2112|0),nn(o+640|0,o+1952|0),Xe(o+2112|0,o+1792|0,o+640|0),en(o+1952|0,o+2112|0),nn(o+800|0,o+1952|0),Xe(o+2112|0,o+1792|0,o+800|0),en(o+1952|0,o+2112|0),nn(o+960|0,o+1952|0),Xe(o+2112|0,o+1792|0,o+960|0),en(o+1952|0,o+2112|0),nn(o+1120|0,o+1952|0),function(e){jn(e|=0),kn(e+40|0),kn(e+80|0)}(e),n=255;;){if(0|r[o+1536+n>>0]){s=n,c=5;break}if(0|r[o+1280+n>>0]){s=n,c=5;break}if(!n)break;n=n+-1|0}if(5==(0|c)&&(0|s)>-1)for(;ot(o+2112|0,e),(n=0|r[o+1536+s>>0])<<24>>24<=0?n<<24>>24<0&&(en(o+1952|0,o+2112|0),We(o+2112|0,o+1952|0,o+(160*(((n<<24>>24)/-2|0)<<24>>24)|0)|0)):(en(o+1952|0,o+2112|0),Xe(o+2112|0,o+1952|0,o+(160*((255&n)>>>1&255)|0)|0)),(n=0|r[o+1280+s>>0])<<24>>24<=0?n<<24>>24<0&&(en(o+1952|0,o+2112|0),Ze(o+2112|0,o+1952|0,160+(120*(((n<<24>>24)/-2|0)<<24>>24)|0)|0)):(en(o+1952|0,o+2112|0),et(o+2112|0,o+1952|0,160+(120*((255&n)>>>1&255)|0)|0)),mn(e,o+2112|0),(0|s)>0;)s=s+-1|0;y=a}function j(e,t,n,a,o,s,c,u){e|=0,t|=0,n|=0,a|=0,o|=0,s|=0,c|=0,u|=0;var l,A,f=0,h=0,p=0,d=0,g=0,v=0,m=0;if(A=y,l=y=y+63&-64,y=y+16|0,i[l>>2]=0,tr(u),a){d=0,h=0,p=0,f=0;e:for(;;){for(v=f;f=0|r[n+v>>0],255==(0|(g=4&u?0|$e(f):0|Ye(f)));){if(!o){g=18;break e}if(!(0|Ln(o,f))){g=19;break e}if(!((f=v+1|0)>>>0<a>>>0)){g=17;break e}v=f}if(d=g+(d<<6)|0,(f=h+6|0)>>>0>7){if(h=h+-2|0,p>>>0>=t>>>0){g=13;break}r[e+p>>0]=d>>>h,p=p+1|0}else h=f;if((f=v+1|0)>>>0>=a>>>0){g=16;break}}13==(0|g)?(i[l>>2]=v,i[8678]=68,f=-1):16==(0|g)||17==(0|g)?(i[l>>2]=f,f=0):(18==(0|g)||19==(0|g))&&(i[l>>2]=v,f=0),h>>>0>4?(p=0,f=-1):g=21}else d=0,h=0,p=0,f=0,g=21;do{if(21==(0|g))if((1<<h)-1&d)p=0,f=-1;else if(f|2&u||(f=0|Te(n,a,l,o,h>>>1)),f)p=0;else if(0!=(0|o)&&(m=0|i[l>>2])>>>0<a>>>0){for(f=m;;){if(!(0|Ln(o,0|r[n+f>>0]))){g=31;break}if((f=f+1|0)>>>0>=a>>>0){g=30;break}}if(30==(0|g)){i[l>>2]=f,f=0;break}if(31==(0|g)){i[l>>2]=f,f=0;break}}else f=0}while(0);return h=0|i[l>>2],c?i[c>>2]=n+h:(0|h)!=(0|a)&&(i[8678]=28,f=-1),0|s&&(i[s>>2]=p),y=A,0|f}function H(e,t,n){t|=0,n|=0;var a,o,s,c=0,u=0,l=0;switch(s=y,o=y=y+63&-64,y=y+16|0,l=0|i[20+(e|=0)>>2],a=0|i[e+4>>2],i[e+20>>2]=0,i[e+4>>2]=0,0|n){case 2:0|it(t,33653,9)?t=-32:(t=t+9|0,u=4);break;case 1:0|it(t,33663,8)?t=-32:(t=t+8|0,u=4);break;default:t=-26}do{if(4==(0|u))if(0==(0|it(t,33672,3))&&0!=(0|(c=0|Ge(t+3|0,o+4|0))))if(19==(0|i[o+4>>2]))if(0|it(c,33676,3))t=-32;else{if(!(t=0|Ge(c+3|0,o+4|0))){t=-32;break}if(i[e+44>>2]=i[o+4>>2],0|it(t,33680,3))t=-32;else{if(!(t=0|Ge(t+3|0,o+4|0))){t=-32;break}if(i[e+40>>2]=i[o+4>>2],0|it(t,33684,3))t=-32;else{if(!(t=0|Ge(t+3|0,o+4|0))){t=-32;break}if(u=0|i[o+4>>2],i[e+48>>2]=u,i[e+52>>2]=u,t=(u=36==(0|r[t>>0]))?t+1|0:t,u){if(i[o+4>>2]=l,0|j(u=0|i[e+16>>2],l,t,0|Ve(t),0,o+4|0,o,3)){t=-32;break}if(i[e+20>>2]=i[o+4>>2],t=0|i[o>>2],t=(l=36==(0|r[t>>0]))?t+1|0:t,l){if(i[o+4>>2]=a,0|j(l=0|i[e>>2],a,t,0|Ve(t),0,o+4|0,o,3)){t=-32;break}i[e+4>>2]=i[o+4>>2],n=0|i[o>>2],(t=0|se(e))||(t=0==(0|r[n>>0])?0:-32)}else t=-32}else t=-32}}}else t=-26;else t=-32}while(0);return y=s,0|t}function U(e,t,n){e|=0,t|=0;var r=0,i=0,a=0,o=0,s=0,c=0,u=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,y=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0,E=0,_=0,k=0,Q=0,S=0,x=0,D=0,P=0,M=0;a=0|Kn(n|=0),f=0|Kn(n+4|0),h=0|Kn(n+8|0),p=0|Kn(n+12|0),s=0|Kn(n+16|0),c=0|Kn(n+20|0),u=0|Kn(n+24|0),l=0|Kn(n+28|0),g=0|Kn(t),y=0|Kn(t+4|0),v=0|Kn(t+8|0),r=20,i=1634760805,o=2036477234,A=1797285236,d=857760878,n=0|Kn(t+12|0);do{x=(0|Ar((I=(0|Ar((B=(0|Ar((k=(0|Ar(c+i|0,7))^p)+i|0,9))^v)+k|0,13))^c)+B|0,18))^i,_=(0|Ar((M=(0|Ar((b=(0|Ar((C=(0|Ar(d+a|0,7))^n)+d|0,9))^u)+C|0,13))^a)+b|0,18))^d,w=(0|Ar((S=(0|Ar((P=(0|Ar((m=(0|Ar(o+g|0,7))^l)+o|0,9))^f)+m|0,13))^g)+P|0,18))^o,t=(0|Ar((E=(0|Ar((Q=(0|Ar((D=(0|Ar(A+s|0,7))^h)+A|0,9))^y)+D|0,13))^s)+Q|0,18))^A,i=(0|Ar((h=(0|Ar((f=(0|Ar((a=(0|Ar(D+x|0,7))^M)+x|0,9))^P)+a|0,13))^D)+f|0,18))^x,d=(0|Ar((p=(0|Ar((y=(0|Ar((g=(0|Ar(_+k|0,7))^S)+_|0,9))^Q)+g|0,13))^k)+y|0,18))^_,o=(0|Ar((n=(0|Ar((v=(0|Ar((s=(0|Ar(w+C|0,7))^E)+w|0,9))^B)+s|0,13))^C)+v|0,18))^w,A=(0|Ar((l=(0|Ar((u=(0|Ar((c=(0|Ar(t+m|0,7))^I)+t|0,9))^b)+c|0,13))^m)+u|0,18))^t,r=r+-2|0}while(0!=(0|r));Pn(e,i),Pn(e+4|0,d),Pn(e+8|0,o),Pn(e+12|0,A),Pn(e+16|0,g),Pn(e+20|0,y),Pn(e+24|0,v),Pn(e+28|0,n)}function N(e,t,n,a){t|=0,n|=0,a|=0;var o=0,s=0,c=0,l=0,A=0,f=0,h=0,p=0;if(0==(0|(s=0|i[56+(e|=0)>>2]))&0==(0|(o=0|i[e+56+4>>2])))h=7;else{if(l=0|Qn(16,0,0|s,0|o),!(0==(0|(f=(A=0|u())>>>0>a>>>0|(0|A)==(0|a)&l>>>0>n>>>0?n:l))&0==(0|(A=A>>>0>a>>>0|(0|A)==(0|a)&l>>>0>n>>>0?a:A)))){l=0,c=0;do{p=0|r[t+l>>0],s=0|Sn(0|s,0|o,0|l,0|c),u(),r[e+64+s>>0]=p,l=0|Sn(0|l,0|c,1,0),c=0|u(),s=0|i[e+56>>2],o=0|i[e+56+4>>2]}while(c>>>0<A>>>0|(0|c)==(0|A)&l>>>0<f>>>0)}p=0|Sn(0|s,0|o,0|f,0|A),l=0|u(),i[e+56>>2]=p,i[e+56+4>>2]=l,l>>>0<0|0==(0|l)&p>>>0<16||(n=0|Qn(0|n,0|a,0|f,0|A),a=0|u(),x(e,e+64|0,16,0),i[e+56>>2]=0,i[e+56+4>>2]=0,t=t+f|0,h=7)}if(7==(0|h)&&(o=-16&n,a>>>0>0|0==(0|a)&n>>>0>15?(s=0|Qn(0|n,0|a,0|o,0|a),p=0|u(),x(e,t,o,a),a=p,t=t+o|0):s=n,!(0==(0|s)&0==(0|a)))){o=0,n=0;do{h=0|r[t+o>>0],p=0|Sn(0|i[e+56>>2],0|i[e+56+4>>2],0|o,0|n),u(),r[e+64+p>>0]=h,o=0|Sn(0|o,0|n,1,0),n=0|u()}while(n>>>0<a>>>0|(0|n)==(0|a)&o>>>0<s>>>0);h=0|Sn(0|i[e+56>>2],0|i[e+56+4>>2],0|s,0|a),p=0|u(),i[e+56>>2]=h,i[e+56+4>>2]=p}}function L(e,t){e|=0,t|=0;var n=0,s=0,c=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,y=0;e:do{if(0|e){do{if(2==(0|i[e+36>>2])){if(0==(0|(n=0|i[t>>2]))&&(0|a[t+8>>0])<=1){s=6;break}p=0|i[e+4>>2],h=0}else s=6}while(0);if(6==(0|s)&&(re(e,t,p=0|i[e+4>>2]),n=0|i[t>>2],h=1),n=0==(0|n)&(c=0|r[t+8>>0])<<24>>24==0?2:0,s=0|i[e+24>>2],A=0|o(s,0|i[t+4>>2]),f=0|i[e+20>>2],c=A+n+(0|o(f,255&c))|0,n>>>0<f>>>0)for(l=s,f=c,s=(0==(0|(c>>>0)%(s>>>0))?s+-1|0:-1)+c|0;;){if(A=1==(0|(f>>>0)%(l>>>0))?f+-1|0:s,s=h?p+(n<<3)|0:(0|i[4+(0|i[e>>2])>>2])+(A<<10)|0,y=0|i[(l=s)>>2],l=0|Vt(0|i[l+4>>2],0,0|i[e+28>>2],0),c=0|u(),d=0|i[t>>2],s=0|r[t+8>>0],g=0|i[t+4>>2],l=0==(0|d)&s<<24>>24==0?g:l,i[t+12>>2]=n,c=0|ve(e,d,s,n,y,1&((0|l)==(0|g)?0==(0|(0==(0|d)&s<<24>>24==0?0:c)):0)),c=(s=0|i[4+(0|i[e>>2])>>2])+((0|o(0|i[e+24>>2],l))<<10)+(c<<10)|0,l=s+(f<<10)|0,d?B(s+(A<<10)|0,c,l):E(s+(A<<10)|0,c,l),(n=n+1|0)>>>0>=(0|i[e+20>>2])>>>0)break e;l=0|i[e+24>>2],f=f+1|0,s=A+1|0}}}while(0)}function K(e,t,n){var r,a;n|=0,r=y,a=y=y+63&-64,y=y+400|0,0==(0|(e|=0))|0==(0|(t|=0))||(vt(a,0,0,64),Pn(a+384|0,0|i[t+48>>2]),Hn(a,a+384|0,4,0),Pn(a+384|0,0|i[t+4>>2]),Hn(a,a+384|0,4,0),Pn(a+384|0,0|i[t+44>>2]),Hn(a,a+384|0,4,0),Pn(a+384|0,0|i[t+40>>2]),Hn(a,a+384|0,4,0),Pn(a+384|0,19),Hn(a,a+384|0,4,0),Pn(a+384|0,n),Hn(a,a+384|0,4,0),Pn(a+384|0,0|i[t+12>>2]),Hn(a,a+384|0,4,0),0|(n=0|i[t+8>>2])&&(Hn(a,n,0|i[t+12>>2],0),1&i[t+56>>2]|0)&&(Et(0|i[t+8>>2],0|i[t+12>>2]),i[t+12>>2]=0),Pn(a+384|0,0|i[t+20>>2]),Hn(a,a+384|0,4,0),0|(n=0|i[t+16>>2])&&Hn(a,n,0|i[t+20>>2],0),Pn(a+384|0,0|i[t+28>>2]),Hn(a,a+384|0,4,0),0|(n=0|i[t+24>>2])&&(Hn(a,n,0|i[t+28>>2],0),2&i[t+56>>2]|0)&&(Et(0|i[t+24>>2],0|i[t+28>>2]),i[t+28>>2]=0),Pn(a+384|0,0|i[t+36>>2]),Hn(a,a+384|0,4,0),0|(n=0|i[t+32>>2])&&Hn(a,n,0|i[t+36>>2],0),ln(a,e,64)),y=r}function G(e,t,n,a){e|=0,t|=0,n|=0,a|=0;var o,s,c=0,u=0,l=0;if(o=y,s=y=y+63&-64,y=y+528|0,i[s+512>>2]=0,Pn(s+512|0,t),t>>>0<65)(0|vt(s,0,0,t))>=0&&(Hn(s,s+512|0,4,0),Hn(s,n,a,0),ln(s,e,t));else e:do{if((0|vt(s,0,0,64))>=0&&(Hn(s,s+512|0,4,0),Hn(s,n,a,0),(0|ln(s,s+448|0,64))>=0)){u=s+448|0,l=(c=e)+32|0;do{r[c>>0]=0|r[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|l));u=s+448|0,l=64+(c=s+384|0)|0;do{i[c>>2]=i[u>>2],c=c+4|0,u=u+4|0}while((0|c)<(0|l));if((t+-32|0)>>>0>64){a=e+32|0,n=t+-32|0;do{if((0|Ut(s+448|0,64,s+384|0,64,0,0,0))<0)break e;u=s+448|0,l=(c=a)+32|0;do{r[c>>0]=0|r[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|l));n=n+-32|0,a=a+32|0,u=s+448|0,l=64+(c=s+384|0)|0;do{i[c>>2]=i[u>>2],c=c+4|0,u=u+4|0}while((0|c)<(0|l))}while(n>>>0>64)}else a=e+32|0,n=t+-32|0;(0|Ut(s+448|0,n,s+384|0,64,0,0,0))>=0&&te(0|a,s+448|0,0|n)}}while(0);Et(s,384),y=o}function $(e,t,n,i,s){e|=0,t|=0,n|=0,i|=0;var c=0,u=0,A=0,f=0,h=0,p=0;tr(s|=0),u=(0|o((i>>>0)/3|0,-3))+i|0,c=((i>>>0)/3|0)<<2;do{if(u){if(2&s){c=(2|c)+(u>>>1)|0;break}c=c+4|0;break}}while(0);if(c>>>0>=t>>>0&&kr(),4&s)if(0|i){f=0,s=0,u=0,h=0;do{if(p=h,h=h+1|0,f=f<<8|0|a[n+p>>0],(s=s+8|0)>>>0>5)for(;;){if(p=255&(0|jt(f>>>(s=s+-6|0)&63)),A=u+1|0,r[e+u>>0]=p,!(s>>>0>5)){u=A;break}u=A}}while((0|h)!=(0|i));s&&(p=255&(0|jt(f<<6-s&63)),r[e+u>>0]=p,u=u+1|0)}else u=0;else if(0|i){f=0,s=0,u=0,h=0;do{if(A=h,h=h+1|0,f=f<<8|0|a[n+A>>0],(s=s+8|0)>>>0>5)for(;;){if(p=255&(0|Ht(f>>>(s=s+-6|0)&63)),A=u+1|0,r[e+u>>0]=p,!(s>>>0>5)){u=A;break}u=A}}while((0|h)!=(0|i));s&&(p=255&(0|Ht(f<<6-s&63)),r[e+u>>0]=p,u=u+1|0)}else u=0;return c>>>0<u>>>0&&l(34564,34583,230,34599),c>>>0>u>>>0?ke(e+u|0,61,c-u|0):c=u,ke(e+c|0,0,((p=c+1|0)>>>0<t>>>0?t:p)-c|0),0|e}function Y(e,t,n,o,s,c,l,A){e|=0,t|=0,s|=0,c|=0,l|=0,A|=0;var f,h,p=0,d=0;if(f=y,h=y=y+63&-64,y=y+112|0,!(0==(0|(n|=0))&0==(0|(o|=0)))){p=(d=h)+32|0;do{r[d>>0]=0|r[A>>0],d=d+1|0,A=A+1|0}while((0|d)<(0|p));A=a[s+4>>0]|a[s+4+1>>0]<<8|a[s+4+2>>0]<<16|a[s+4+3>>0]<<24,i[h+96>>2]=a[s>>0]|a[s+1>>0]<<8|a[s+2>>0]<<16|a[s+3>>0]<<24,i[h+96+4>>2]=A,A=8;do{r[h+96+A>>0]=c,c=0|fn(0|c,0|l,8),l=0|u(),A=A+1|0}while(16!=(0|A));if(o>>>0>0|0==(0|o)&n>>>0>63)for(c=o;;){nr(h+32|0,h+96|0,h),l=0;do{r[e+l>>0]=r[h+32+l>>0]^r[t+l>>0],l=l+1|0}while(64!=(0|l));for(A=8,l=1;l=l+(0|a[(o=h+96+A|0)>>0])|0,r[o>>0]=l,16!=(0|(A=A+1|0));)l>>>=8;if(l=0|Sn(0|n,0|c,-64,-1),e=e+64|0,t=t+64|0,!((A=0|u())>>>0>0|0==(0|A)&l>>>0>63)){c=l;break}n=l,c=A}else c=n,A=o;if(!(0==(0|c)&0==(0|A))&&(nr(h+32|0,h+96|0,h),0|c)){l=0;do{r[e+l>>0]=r[h+32+l>>0]^r[t+l>>0],l=l+1|0}while((0|l)!=(0|c))}Et(h+32|0,64),Et(h,32)}y=f}function J(e,t){t|=0;var n,a,o,s,c,l,A=0,f=0,h=0,p=0;0==(0|(f=0|i[56+(e|=0)>>2]))&0==(0|(A=0|i[e+56+4>>2]))||(r[e+64+f>>0]=1,A=0|Sn(0|f,0|A,1,0),(h=0|u())>>>0<0|0==(0|h)&A>>>0<16&&ke(e+64+A|0,0,14-f+1|0),r[e+80>>0]=1,x(e,e+64|0,16,0)),f=0|i[e+24>>2],p=(o=(-67108864|(a=((p=((h=(0|i[e+28>>2])+(f>>>26)|0)>>>26)+(0|i[e+32>>2])|0)>>>26)+(0|i[e+36>>2])|0))+((((((s=((l=(5*(a>>>26)|0)+(0|i[e+20>>2])|0)>>>26)+(67108863&f)+((5+(67108863&l)|0)>>>26)|0)>>>26)+(67108863&h)|0)>>>26)+(67108863&p)|0)>>>26)|0)>>31&67108863&p|(c=(o>>>31)-1&67108863)&(((s>>>26)+(67108863&h)|0)>>>26)+(67108863&p),n=0|Sn(o>>31&67108863&l|c&5+(67108863&l)|(o>>31&(l>>>26)+(67108863&f)|c&s)<<26|0,0,0|i[e+40>>2],0),A=0|u(),A=0|Sn(0|(f=0|Sn((o>>31&(l>>>26)+(67108863&f)|c&s)>>>6|(o>>31&67108863&h|c&(s>>>26)+(67108863&h))<<20|0,0,0|i[e+44>>2],0)),0|u(),0|A,0),f=0|u(),f=0|Sn(0|(h=0|Sn((o>>31&67108863&h|c&(s>>>26)+(67108863&h))>>>12|p<<14|0,0,0|i[e+48>>2],0)),0|u(),0|f,0),h=0|u(),h=0|Sn(0|(p=0|Sn(((o>>>31)-1&o|o>>31&a)<<8|p>>>18|0,0,0|i[e+52>>2],0)),0|u(),0|h,0),u(),Pn(t,n),Pn(t+4|0,A),Pn(t+8|0,f),Pn(t+12|0,h),Et(e,88)}function V(e,t){var n,r;e|=0,n=y,r=y=y+63&-64,y=y+192|0,_(r+144|0,t|=0),_(r+96|0,r+144|0),_(r+96|0,r+96|0),C(r+96|0,t,r+96|0),C(r+144|0,r+144|0,r+96|0),_(r+48|0,r+144|0),C(r+96|0,r+96|0,r+48|0),_(r+48|0,r+96|0),t=1;do{_(r+48|0,r+48|0),t=t+1|0}while(5!=(0|t));C(r+96|0,r+48|0,r+96|0),_(r+48|0,r+96|0),t=1;do{_(r+48|0,r+48|0),t=t+1|0}while(10!=(0|t));C(r+48|0,r+48|0,r+96|0),_(r,r+48|0),t=1;do{_(r,r),t=t+1|0}while(20!=(0|t));C(r+48|0,r,r+48|0),_(r+48|0,r+48|0),t=1;do{_(r+48|0,r+48|0),t=t+1|0}while(10!=(0|t));C(r+96|0,r+48|0,r+96|0),_(r+48|0,r+96|0),t=1;do{_(r+48|0,r+48|0),t=t+1|0}while(50!=(0|t));C(r+48|0,r+48|0,r+96|0),_(r,r+48|0),t=1;do{_(r,r),t=t+1|0}while(100!=(0|t));C(r+48|0,r,r+48|0),_(r+48|0,r+48|0),t=1;do{_(r+48|0,r+48|0),t=t+1|0}while(50!=(0|t));C(r+96|0,r+48|0,r+96|0),_(r+96|0,r+96|0),t=1;do{_(r+96|0,r+96|0),t=t+1|0}while(5!=(0|t));C(e,r+96|0,r+144|0),y=n}function z(e,t){e|=0;var n,i,a=0;for(n=y,i=y=y+63&-64,y=y+1760|0,nn(i,t|=0),rn(i+1600|0,t),en(i+1280|0,i+1600|0),Xe(i+1600|0,i+1280|0,i),en(i+1440|0,i+1600|0),nn(i+160|0,i+1440|0),Xe(i+1600|0,i+1280|0,i+160|0),en(i+1440|0,i+1600|0),nn(i+320|0,i+1440|0),Xe(i+1600|0,i+1280|0,i+320|0),en(i+1440|0,i+1600|0),nn(i+480|0,i+1440|0),Xe(i+1600|0,i+1280|0,i+480|0),en(i+1440|0,i+1600|0),nn(i+640|0,i+1440|0),Xe(i+1600|0,i+1280|0,i+640|0),en(i+1440|0,i+1600|0),nn(i+800|0,i+1440|0),Xe(i+1600|0,i+1280|0,i+800|0),en(i+1440|0,i+1600|0),nn(i+960|0,i+1440|0),Xe(i+1600|0,i+1280|0,i+960|0),en(i+1440|0,i+1600|0),nn(i+1120|0,i+1440|0),Yn(e),a=252;rn(i+1600|0,e),(t=0|r[31840+a>>0])<<24>>24<=0?t<<24>>24<0&&(en(i+1440|0,i+1600|0),We(i+1600|0,i+1440|0,i+(160*(((t<<24>>24)/-2|0)<<24>>24)|0)|0)):(en(i+1440|0,i+1600|0),Xe(i+1600|0,i+1440|0,i+(160*((255&t)>>>1&255)|0)|0)),en(e,i+1600|0),a;)a=a+-1|0;y=n}function q(e,t,n,r,a,o,s){e|=0,t|=0,n|=0,r|=0,a|=0;var c,l,A=0,f=0;return c=y,l=y=y+63&-64,y=y+352|0,U(l,o|=0,s|=0),e>>>0>n>>>0&&0<a>>>0|0==(0|a)&(e-n|0)>>>0<r>>>0||n>>>0>e>>>0&&0<a>>>0|0==(0|a)&(n-e|0)>>>0<r>>>0?f=5:A=n,5==(0|f)&&(Bt(0|e,0|n,0|r),A=e),i[l+32>>2]=0,i[l+32+4>>2]=0,i[l+32+8>>2]=0,i[l+32+12>>2]=0,i[l+32+16>>2]=0,i[l+32+20>>2]=0,i[l+32+24>>2]=0,i[l+32+28>>2]=0,0==(0|(s=a>>>0>0|0==(0|a)&r>>>0>32?32:r))&0==(0|(n=a>>>0>0|0==(0|a)&r>>>0>32?0:a))||te(l+32+32|0,0|A,-2-(f=~a>>>0>4294967295|-1==(0|~a)&~r>>>0>4294967263?~r:-33)+1|0),En(l+32|0,l+32|0,f=0|Sn(0|s,0|n,32,0),0|u(),o+16|0,l),Wn(l+96|0,l+32|0),0==(0|s)&0==(0|n)||te(0|e,l+32+32|0,-2-(f=~a>>>0>4294967295|-1==(0|~a)&~r>>>0>4294967263?~r:-33)+1|0),Et(l+32|0,64),a>>>0>0|0==(0|a)&r>>>0>32&&wn(e+s|0,A+s|0,f=0|Qn(0|r,0|a,0|s,0|n),0|u(),o+16|0,l),Et(l,32),xn(l+96|0,e,r,a),qn(l+96|0,t),Et(l+96|0,256),y=c,0}function W(e,t,n,i){e|=0,t|=0,n|=0,i|=0;var o=0,s=0,c=0,l=0;e:do{if(!(0==(0|n)&0==(0|i))){for(o=a[e+352>>0]|a[e+352+1>>0]<<8|a[e+352+2>>0]<<16|a[e+352+3>>0]<<24,c=t;t=e+96+o|0,i>>>0>0|0==(0|i)&n>>>0>(l=256-o|0)>>>0;){te(0|t,0|c,0|l),t=(a[e+352>>0]|a[e+352+1>>0]<<8|a[e+352+2>>0]<<16|a[e+352+3>>0]<<24)+l|0,r[e+352>>0]=t,r[e+352+1>>0]=t>>8,r[e+352+2>>0]=t>>16,r[e+352+3>>0]=t>>24,ue(e,128,0),v(e,e+96|0),o=e+224|0,s=128+(t=e+96|0)|0;do{r[t>>0]=0|r[o>>0],t=t+1|0,o=o+1|0}while((0|t)<(0|s));if(o=(a[e+352>>0]|a[e+352+1>>0]<<8|a[e+352+2>>0]<<16|a[e+352+3>>0]<<24)-128|0,r[e+352>>0]=o,r[e+352+1>>0]=o>>8,r[e+352+2>>0]=o>>16,r[e+352+3>>0]=o>>24,0==(0|(n=0|Qn(0|n,0|i,0|l,0)))&0==(0|(i=0|u())))break e;c=c+l|0}te(0|t,0|c,0|n),l=(a[e+352>>0]|a[e+352+1>>0]<<8|a[e+352+2>>0]<<16|a[e+352+3>>0]<<24)+n|0,r[e+352>>0]=l,r[e+352+1>>0]=l>>8,r[e+352+2>>0]=l>>16,r[e+352+3>>0]=l>>24}}while(0)}function X(e,t,n){var r,a,o,s,c,u,l,A,f,h,p,d,g,y,v,m,b,I,w,C;t|=0,n|=0,C=0|i[(e|=0)>>2],I=0|i[e+4>>2],m=0|i[e+8>>2],y=0|i[e+12>>2],d=0|i[e+16>>2],h=0|i[e+20>>2],A=0|i[e+24>>2],u=0|i[e+28>>2],s=0|i[e+32>>2],a=0|i[e+36>>2],w=0|i[t>>2],b=0|i[t+4>>2],v=0|i[t+8>>2],g=0|i[t+12>>2],p=0|i[t+16>>2],f=0|i[t+20>>2],l=0|i[t+24>>2],c=0|i[t+28>>2],o=0|i[t+32>>2],r=0|i[t+36>>2],i[e>>2]=(w^C)&0-n^C,i[e+4>>2]=(b^I)&0-n^I,i[e+8>>2]=(v^m)&0-n^m,i[e+12>>2]=(g^y)&0-n^y,i[e+16>>2]=(p^d)&0-n^d,i[e+20>>2]=(f^h)&0-n^h,i[e+24>>2]=(l^A)&0-n^A,i[e+28>>2]=(c^u)&0-n^u,i[e+32>>2]=(o^s)&0-n^s,i[e+36>>2]=(r^a)&0-n^a,i[t>>2]=(w^C)&0-n^w,i[t+4>>2]=(b^I)&0-n^b,i[t+8>>2]=(v^m)&0-n^v,i[t+12>>2]=(g^y)&0-n^g,i[t+16>>2]=(p^d)&0-n^p,i[t+20>>2]=(f^h)&0-n^f,i[t+24>>2]=(l^A)&0-n^l,i[t+28>>2]=(c^u)&0-n^c,i[t+32>>2]=(o^s)&0-n^o,i[t+36>>2]=(r^a)&0-n^r}function Z(e,t,n,o,s){e|=0,o|=0,s|=0;var c,l,A=0,f=0,h=0,p=0,d=0;if(c=y,l=y=y+63&-64,y=y+112|0,!(0==(0|(t|=0))&0==(0|(n|=0)))){A=(f=l)+32|0;do{r[f>>0]=0|r[s>>0],f=f+1|0,s=s+1|0}while((0|f)<(0|A));if(f=a[o+4>>0]|a[o+4+1>>0]<<8|a[o+4+2>>0]<<16|a[o+4+3>>0]<<24,i[l+96>>2]=a[o>>0]|a[o+1>>0]<<8|a[o+2>>0]<<16|a[o+3>>0]<<24,i[l+96+4>>2]=f,i[l+96+8>>2]=0,i[l+96+8+4>>2]=0,n>>>0>0|0==(0|n)&t>>>0>63){do{for(nr(e,l+96|0,l),A=8,s=1;s=s+(0|a[(f=l+96+A|0)>>0])|0,r[f>>0]=s,16!=(0|(A=A+1|0));)s>>>=8;t=0|Sn(0|t,0|n,-64,-1),n=0|u(),e=e+64|0}while(n>>>0>0|0==(0|n)&t>>>0>63);0==(0|t)&0==(0|n)||(p=e,d=t,h=8)}else p=e,d=t,h=8;if(8==(0|h)&&(nr(l+32|0,l+96|0,l),0|d)){s=0;do{r[p+s>>0]=0|r[l+32+s>>0],s=s+1|0}while((0|s)!=(0|d))}Et(l+32|0,64),Et(l,32)}y=c}function ee(e,t,n,r,i,a,o){e|=0,t|=0,n|=0,r|=0,i|=0;var s,c,l=0;return c=y,s=y=y+63&-64,y=y+96|0,U(s,a|=0,o|=0),function(e,t,n){Z(e|=0,32,0,t|=0,n|=0)}(s+32|0,a+16|0,s),0|function(e,t,n,r,i){return 0|function(e,t,n,r,i){var a,o;return e|=0,a=y,o=y=y+63&-64,y=y+16|0,function(e,t,n,r,i){var a,o;e|=0,t|=0,n|=0,r|=0,a=y,o=y=y+63&-64,y=y+96|0,Qe(o,i|=0),N(o,t,n,r),J(o,e),y=a}(o,t|=0,n|=0,r|=0,i|=0),i=0|ur(e,o),y=a,0|i}(e|=0,t|=0,n|=0,r|=0,i|=0)}(n,t,r,i,s+32|0)?(Et(s,32),t=-1):e?(t>>>0>=e>>>0&&0<i>>>0|0==(0|i)&(t-e|0)>>>0<r>>>0||e>>>0>=t>>>0&&0<i>>>0|0==(0|i)&(e-t|0)>>>0<r>>>0?l=8:n=t,8==(0|l)&&(Bt(0|e,0|t,0|r),n=e),0==(0|(t=i>>>0>0|0==(0|i)&r>>>0>32?32:r))&0==(0|(o=i>>>0>0|0==(0|i)&r>>>0>32?0:i))?En(s+32|0,s+32|0,32,0,a+16|0,s):(te(s+32+32|0,0|n,-2-(l=~i>>>0>4294967295|-1==(0|~i)&~r>>>0>4294967263?~r:-33)+1|0),En(s+32|0,s+32|0,0|Sn(0|t,0|o,32,0),0|u(),a+16|0,s),te(0|e,s+32+32|0,-2-l+1|0)),i>>>0>0|0==(0|i)&r>>>0>32&&wn(e+t|0,n+t|0,0|Qn(0|r,0|i,0|t,0|o),0|u(),a+16|0,s),Et(s,32),t=0):t=0,y=c,0|t}function te(e,t,n){e|=0,t|=0;var a,o,s=0;if((0|(n|=0))>=8192)return p(0|e,0|t,0|n),0|e;if(o=0|e,a=e+n|0,(3&e)==(3&t)){for(;3&e;){if(!n)return 0|o;r[e>>0]=0|r[t>>0],e=e+1|0,t=t+1|0,n=n-1|0}for(s=(n=-4&a|0)-64|0;(0|e)<=(0|s);)i[e>>2]=i[t>>2],i[e+4>>2]=i[t+4>>2],i[e+8>>2]=i[t+8>>2],i[e+12>>2]=i[t+12>>2],i[e+16>>2]=i[t+16>>2],i[e+20>>2]=i[t+20>>2],i[e+24>>2]=i[t+24>>2],i[e+28>>2]=i[t+28>>2],i[e+32>>2]=i[t+32>>2],i[e+36>>2]=i[t+36>>2],i[e+40>>2]=i[t+40>>2],i[e+44>>2]=i[t+44>>2],i[e+48>>2]=i[t+48>>2],i[e+52>>2]=i[t+52>>2],i[e+56>>2]=i[t+56>>2],i[e+60>>2]=i[t+60>>2],e=e+64|0,t=t+64|0;for(;(0|e)<(0|n);)i[e>>2]=i[t>>2],e=e+4|0,t=t+4|0}else for(n=a-4|0;(0|e)<(0|n);)r[e>>0]=0|r[t>>0],r[e+1>>0]=0|r[t+1>>0],r[e+2>>0]=0|r[t+2>>0],r[e+3>>0]=0|r[t+3>>0],e=e+4|0,t=t+4|0;for(;(0|e)<(0|a);)r[e>>0]=0|r[t>>0],e=e+1|0,t=t+1|0;return 0|o}function ne(e,t){e|=0;var n,a,o=0;n=y,a=y=y+63&-64,y=y+48|0,function(e,t){var n,r,a,o,s,c,u,l,A,f,h;e|=0,A=0|i[(t|=0)>>2],h=0|i[t+4>>2],u=0|i[t+8>>2],c=0|i[t+12>>2],s=0|i[t+16>>2],f=0|i[t+20>>2],a=0|i[t+24>>2],r=0|i[t+28>>2],n=0|i[t+32>>2],o=(((((l=((19*((((((((((((16777216+(19*(t=0|i[t+36>>2])|0)|0)>>>25)+A>>26)+h>>25)+u>>26)+c>>25)+s>>26)+f>>25)+a>>26)+r>>25)+n>>26)+t>>25)|0)+A>>26)+h|0)>>25)+u>>26)+c>>25)+s>>26)+f|0,i[e>>2]=(19*((((((((((((16777216+(19*t|0)|0)>>>25)+A>>26)+h>>25)+u>>26)+c>>25)+s>>26)+f>>25)+a>>26)+r>>25)+n>>26)+t>>25)|0)+A&67108863,i[e+4>>2]=33554431&l,i[e+8>>2]=(l>>25)+u&67108863,i[e+12>>2]=((l>>25)+u>>26)+c&33554431,i[e+16>>2]=(((l>>25)+u>>26)+c>>25)+s&67108863,i[e+20>>2]=33554431&o,i[e+24>>2]=(o>>25)+a&67108863,i[e+28>>2]=((o>>25)+a>>26)+r&33554431,i[e+32>>2]=(((o>>25)+a>>26)+r>>25)+n&67108863,i[e+36>>2]=((((o>>25)+a>>26)+r>>25)+n>>26)+t&33554431}(a,t|=0),t=0|i[a>>2],r[e>>0]=t,r[e+1>>0]=t>>>8,r[e+2>>0]=t>>>16,o=0|i[a+4>>2],r[e+3>>0]=o<<2|t>>>24,r[e+4>>0]=o>>>6,r[e+5>>0]=o>>>14,t=0|i[a+8>>2],r[e+6>>0]=t<<3|o>>>22,r[e+7>>0]=t>>>5,r[e+8>>0]=t>>>13,o=0|i[a+12>>2],r[e+9>>0]=o<<5|t>>>21,r[e+10>>0]=o>>>3,r[e+11>>0]=o>>>11,t=0|i[a+16>>2],r[e+12>>0]=t<<6|o>>>19,r[e+13>>0]=t>>>2,r[e+14>>0]=t>>>10,r[e+15>>0]=t>>>18,t=0|i[a+20>>2],r[e+16>>0]=t,r[e+17>>0]=t>>>8,r[e+18>>0]=t>>>16,o=0|i[a+24>>2],r[e+19>>0]=o<<1|t>>>24,r[e+20>>0]=o>>>7,r[e+21>>0]=o>>>15,t=0|i[a+28>>2],r[e+22>>0]=t<<3|o>>>23,r[e+23>>0]=t>>>5,r[e+24>>0]=t>>>13,o=0|i[a+32>>2],r[e+25>>0]=o<<4|t>>>21,r[e+26>>0]=o>>>4,r[e+27>>0]=o>>>12,t=0|i[a+36>>2],r[e+28>>0]=t<<6|o>>>20,r[e+29>>0]=t>>>2,r[e+30>>0]=t>>>10,r[e+31>>0]=t>>>18,y=n}function re(e,t,n){e|=0,t|=0,n|=0;var r,o,s=0,c=0,l=0;if(r=y,o=y=y+63&-64,y=y+4096|0,fr(o+3072|0),fr(o+2048|0),0!=(0|e)&0!=(0|t)&&(i[o+2048>>2]=i[t>>2],i[o+2048+4>>2]=0,i[o+2048+8>>2]=i[t+4>>2],i[o+2048+8+4>>2]=0,i[o+2048+16>>2]=a[t+8>>0],i[o+2048+16+4>>2]=0,i[o+2048+24>>2]=i[e+16>>2],i[o+2048+24+4>>2]=0,i[o+2048+32>>2]=i[e+8>>2],i[o+2048+32+4>>2]=0,i[o+2048+40>>2]=i[e+36>>2],i[o+2048+40+4>>2]=0,0|i[e+20>>2])){t=0;do{(s=127&t)||(l=0|Sn(0|i[o+2048+48>>2],0|i[o+2048+48+4>>2],1,0),c=0|u(),i[o+2048+48>>2]=l,i[o+2048+48+4>>2]=c,fr(o),fr(o+1024|0),B(o+3072|0,o+2048|0,o),B(o+3072|0,o,o+1024|0)),c=0|i[o+1024+(s<<3)+4>>2],i[(l=n+(t<<3)|0)>>2]=i[o+1024+(s<<3)>>2],i[l+4>>2]=c,t=t+1|0}while(t>>>0<(0|i[e+20>>2])>>>0)}y=r}function ie(e,t,n,r){e|=0,t|=0,n|=0,r|=0;var a,o,s,c,u=0,l=0,A=0;c=y,s=y=y+63&-64,y=y+64|0,l=52+(u=s+8|0)|0;do{i[u>>2]=0,u=u+4|0}while((0|u)<(0|l));u=0|Ve(e),i[s+36>>2]=u,i[s+20>>2]=u,i[s+4>>2]=u,l=0|I(u),i[s+32>>2]=l,a=0|I(u),i[s+16>>2]=a,o=0|I(u),i[s>>2]=o;do{if(0==(0|l)|0==(0|a)|0==(0|o))k(l),k(a),k(o),u=-22;else{if(!(A=0|I(u))){k(l),k(a),k(o),u=-22;break}if(0|(u=0|H(s,e,r))){k(0|i[s+32>>2]),k(0|i[s+16>>2]),k(0|i[s>>2]),k(A);break}r=0|le(0|i[s+40>>2],0|i[s+44>>2],0|i[s+52>>2],t,n,0|i[s+16>>2],0|i[s+20>>2],A,0|i[s+4>>2],0,0,r),k(0|i[s+32>>2]),k(0|i[s+16>>2]),u=0==(0|r)&&0==(0|tt(A,0|i[s>>2],0|i[s+4>>2]))?0:-35,k(A),k(0|i[s>>2])}}while(0);return y=c,0|u}function ae(e,t){e|=0,t|=0;var n,i,o=0,s=0,c=0;n=y,i=y=y+63&-64,y=y+464|0,o=0;do{c=0|r[t+o>>0],r[i+(s=o<<1)>>0]=15&c,r[i+(1|s)>>0]=(255&c)>>>4,o=o+1|0}while(32!=(0|o));t=0,o=0;do{t=134217728+((s=t+(0|a[(c=i+o|0)>>0])|0)<<24)>>28,r[c>>0]=s-(t<<4),o=o+1|0}while(63!=(0|o));r[i+63>>0]=t+(0|a[i+63>>0]),Yn(e),t=1;do{Vn(i+64|0,t>>>1,0|r[i+t>>0]),et(i+304|0,e,i+64|0),en(e,i+304|0),t=t+2|0}while(t>>>0<64);rn(i+304|0,e),mn(i+184|0,i+304|0),ot(i+304|0,i+184|0),mn(i+184|0,i+304|0),ot(i+304|0,i+184|0),mn(i+184|0,i+304|0),ot(i+304|0,i+184|0),en(e,i+304|0),t=0;do{Vn(i+64|0,t>>>1,0|r[i+t>>0]),et(i+304|0,e,i+64|0),en(e,i+304|0),t=t+2|0}while(t>>>0<64);y=n}function oe(e,t,n,r,i,a,o,s,c,l,A){var f;e|=0,t|=0,n|=0,r|=0,i|=0,a|=0,o|=0,s|=0,c|=0,f=y,y=y+352|0,$t(f+16|0,64,0,l|=0,A|=0),Wn(f+80|0,f+16|0),Et(f+16|0,64),xn(f+80|0,o,s,c),t=0|Qn(0,0,0|s,0|c),u(),xn(f+80|0,34624,15&t,0),xn(f+80|0,n,r,i),t=0|Qn(0,0,0|r,0|i),u(),xn(f+80|0,34624,15&t,0),Ot(f+336|0,s,c),xn(f+80|0,f+336|0,8,0),Ot(f+336|0,r,i),xn(f+80|0,f+336|0,8,0),qn(f+80|0,f),Et(f+80|0,256),t=0|ur(f,a),Et(f,16);do{if(e){if(t){ke(0|e,0,0|r),t=-1;break}ct(e,n,r,i,l,1,A),t=0;break}}while(0);return y=f,0|t}function se(e){e|=0;var t=0,n=0;do{if(e)if(0|i[e>>2])if((0|i[e+4>>2])>>>0>=16){if(0==(0|i[e+8>>2])&&0|i[e+12>>2]){t=-18;break}if(t=0|i[e+20>>2],!(0|i[e+16>>2]))return 0|(0==(0|t)?-6:-19);if(t>>>0>=8){if(0==(0|i[e+24>>2])&&0|i[e+28>>2]){t=-20;break}if(0==(0|i[e+32>>2])&&0|i[e+36>>2]){t=-21;break}if((t=0|i[e+44>>2])>>>0>=8)if(t>>>0<=2097152)if(t>>>0>=(n=0|i[e+48>>2])<<3>>>0)if(0|i[e+40>>2])if(n){if(!(n>>>0>16777215))return 0|(0==(0|(e=0|i[e+52>>2]))?-28:e>>>0>16777215?-29:0);t=-17}else t=-16;else t=-12;else t=-14;else t=-15;else t=-14}else t=-6}else t=-2;else t=-1;else t=-25}while(0);return 0|t}function ce(e,t,n,a,o){var s,c;e|=0,n|=0,a|=0,o|=0,s=y,c=y=y+63&-64,y=y+192|0,((t|=0)-1&255)>63&&kr(),n||kr(),r[c+128>>0]=t,r[c+128+1>>0]=32,r[c+128+2>>0]=1,r[c+128+3>>0]=1,$n(c+128+4|0),Ot(c+128+8|0,0,0),i[c+128+16>>2]=0,i[c+128+16+4>>2]=0,i[c+128+16+8>>2]=0,i[c+128+16+12>>2]=0,a?function(e,t){t|=0;var n=0;e=16+(n=32+(e|=0)|0)|0;do{r[n>>0]=0|r[t>>0],n=n+1|0,t=t+1|0}while((0|n)<(0|e))}(c+128|0,a):(i[c+128+32>>2]=0,i[c+128+32+4>>2]=0,i[c+128+32+8>>2]=0,i[c+128+32+12>>2]=0),o?function(e,t){t|=0;var n=0;e=16+(n=48+(e|=0)|0)|0;do{r[n>>0]=0|r[t>>0],n=n+1|0,t=t+1|0}while((0|n)<(0|e))}(c+128|0,o):(i[c+128+48>>2]=0,i[c+128+48+4>>2]=0,i[c+128+48+8>>2]=0,i[c+128+48+12>>2]=0),Ne(e,c+128|0),o=96+(t=c+32|0)|0;do{i[t>>2]=0,t=t+4|0}while((0|t)<(0|o));o=(t=c)+32|0;do{r[t>>0]=0|r[n>>0],t=t+1|0,n=n+1|0}while((0|t)<(0|o));W(e,c,128,0),Et(c,128),y=s}function ue(e,t,n){var i,o;t|=0,n|=0,i=0|Sn(a[64+(e|=0)>>0]|a[e+64+1>>0]<<8|a[e+64+2>>0]<<16|a[e+64+3>>0]<<24|0,a[e+64+4>>0]|a[e+64+4+1>>0]<<8|a[e+64+4+2>>0]<<16|a[e+64+4+3>>0]<<24|0,0|t,0|n),o=0|u(),r[e+64>>0]=i,r[e+64+1>>0]=i>>8,r[e+64+2>>0]=i>>16,r[e+64+3>>0]=i>>24,r[e+64+4>>0]=o,r[e+64+4+1>>0]=o>>8,r[e+64+4+2>>0]=o>>16,r[e+64+4+3>>0]=o>>24,t=0|Sn(a[e+72>>0]|a[e+72+1>>0]<<8|a[e+72+2>>0]<<16|a[e+72+3>>0]<<24|0,a[e+72+4>>0]|a[e+72+4+1>>0]<<8|a[e+72+4+2>>0]<<16|a[e+72+4+3>>0]<<24|0,1&(o>>>0<n>>>0|(0|o)==(0|n)&i>>>0<t>>>0)|0,0),n=0|u(),r[e+72>>0]=t,r[e+72+1>>0]=t>>8,r[e+72+2>>0]=t>>16,r[e+72+3>>0]=t>>24,r[e+72+4>>0]=n,r[e+72+4+1>>0]=n>>8,r[e+72+4+2>>0]=n>>16,r[e+72+4+3>>0]=n>>24}function le(e,t,n,r,a,o,s,c,u,l,A,f){var h,p,d;e|=0,t|=0,n|=0,r|=0,a|=0,o|=0,s|=0,c|=0,l|=0,A|=0,f|=0,d=y,p=y=y+63&-64,y=y+64|0,h=0|I(u|=0);do{if(h){if(i[p>>2]=h,i[p+4>>2]=u,i[p+8>>2]=r,i[p+12>>2]=a,i[p+16>>2]=o,i[p+20>>2]=s,i[p+24>>2]=0,i[p+24+4>>2]=0,i[p+24+8>>2]=0,i[p+24+12>>2]=0,i[p+40>>2]=e,i[p+44>>2]=t,i[p+48>>2]=n,i[p+52>>2]=n,i[p+56>>2]=0,0|(t=0|be(p,f))){Et(h,u),k(h);break}if(0|c&&te(0|c,0|h,0|u),0!=(0|l)&0!=(0|A)&&0|F(l,A,p,f)){Et(h,u),Et(l,A),k(h),t=-31;break}Et(h,u),k(h),t=0}else t=-22}while(0);return y=d,0|t}function Ae(e,t){var n,r,i=0;return r=y,n=y=y+63&-64,y=y+288|0,D(40+(e|=0)|0,t|=0),kn(e+80|0),_(n+240|0,e+40|0),C(n+192|0,n+240|0,16),Ce(n+240|0,n+240|0,e+80|0),Be(n+192|0,n+192|0,e+80|0),_(n+144|0,n+192|0),C(n+144|0,n+144|0,n+192|0),_(e,n+144|0),C(e,e,n+192|0),C(e,e,n+240|0),function(e,t){e|=0;var n,r,i=0;n=y,r=y=y+63&-64,y=y+144|0,_(r+96|0,t|=0),_(r+48|0,r+96|0),_(r+48|0,r+48|0),C(r+48|0,t,r+48|0),C(r+96|0,r+96|0,r+48|0),_(r+96|0,r+96|0),C(r+96|0,r+48|0,r+96|0),_(r+48|0,r+96|0),i=1;do{_(r+48|0,r+48|0),i=i+1|0}while(5!=(0|i));C(r+96|0,r+48|0,r+96|0),_(r+48|0,r+96|0),i=1;do{_(r+48|0,r+48|0),i=i+1|0}while(10!=(0|i));C(r+48|0,r+48|0,r+96|0),_(r,r+48|0),i=1;do{_(r,r),i=i+1|0}while(20!=(0|i));C(r+48|0,r,r+48|0),_(r+48|0,r+48|0),i=1;do{_(r+48|0,r+48|0),i=i+1|0}while(10!=(0|i));C(r+96|0,r+48|0,r+96|0),_(r+48|0,r+96|0),i=1;do{_(r+48|0,r+48|0),i=i+1|0}while(50!=(0|i));C(r+48|0,r+48|0,r+96|0),_(r,r+48|0),i=1;do{_(r,r),i=i+1|0}while(100!=(0|i));C(r+48|0,r,r+48|0),_(r+48|0,r+48|0),i=1;do{_(r+48|0,r+48|0),i=i+1|0}while(50!=(0|i));C(r+96|0,r+48|0,r+96|0),_(r+96|0,r+96|0),_(r+96|0,r+96|0),C(e,r+96|0,t),y=n}(e,e),C(e,e,n+144|0),C(e,e,n+240|0),_(n+96|0,e),C(n+96|0,n+96|0,n+192|0),Ce(n+48|0,n+96|0,n+240|0),0|an(n+48|0)?i=4:(Be(n,n+96|0,n+240|0),0|an(n)?(C(e,e,64),i=4):e=-1),4==(0|i)&&((0|(i=0|hn(e)))==((0|a[t+31>>0])>>>7|0)&&He(e,e),C(e+120|0,e,e+40|0),e=0),y=r,0|e}function fe(e,t,n){var r,a,o,s,c,u,l,A,f,h,p,d,g,y,v,m,b,I,w;t|=0,n|=0,w=0|i[(e|=0)>>2],b=0|i[e+4>>2],v=0|i[e+8>>2],g=0|i[e+12>>2],p=0|i[e+16>>2],f=0|i[e+20>>2],l=0|i[e+24>>2],c=0|i[e+28>>2],o=0|i[e+32>>2],r=0|i[e+36>>2],I=(i[t+4>>2]^b)&0-n,m=(i[t+8>>2]^v)&0-n,y=(i[t+12>>2]^g)&0-n,d=(i[t+16>>2]^p)&0-n,h=(i[t+20>>2]^f)&0-n,A=(i[t+24>>2]^l)&0-n,u=(i[t+28>>2]^c)&0-n,s=(i[t+32>>2]^o)&0-n,a=(i[t+36>>2]^r)&0-n,i[e>>2]=(i[t>>2]^w)&0-n^w,i[e+4>>2]=I^b,i[e+8>>2]=m^v,i[e+12>>2]=y^g,i[e+16>>2]=d^p,i[e+20>>2]=h^f,i[e+24>>2]=A^l,i[e+28>>2]=u^c,i[e+32>>2]=s^o,i[e+36>>2]=a^r}function he(e,t,n,r,a,o,s,c,l,A,f,h){return e|=0,t|=0,n|=0,r|=0,a|=0,o|=0,s|=0,c|=0,l|=0,A|=0,A=y,y=y+336|0,$t(A,64,0,f|=0,h|=0),Wn(A+64|0,A),Et(A,64),xn(A+64|0,s,c,l),s=0|Qn(0,0,0|c,0|l),u(),xn(A+64|0,34624,15&s,0),ct(e,r,a,o,f,1,h),xn(A+64|0,e,a,o),f=0|Qn(0,0,0|a,0|o),u(),xn(A+64|0,34624,15&f,0),Ot(A+320|0,c,l),xn(A+64|0,A+320|0,8,0),Ot(A+320|0,a,o),xn(A+64|0,A+320|0,8,0),qn(A+64|0,t),Et(A+64|0,256),0|n&&(i[n>>2]=16,i[n+4>>2]=0),y=A,0}function pe(e){var t,n,o=0,s=0,c=0;t=y,n=y=y+63&-64,y=y+48|0,s=e|=0,c=(o=n)+32|0;do{r[o>>0]=0|r[s>>0],o=o+1|0,s=s+1|0}while((0|o)<(0|c));o=a[e+36+4>>0]|a[e+36+4+1>>0]<<8|a[e+36+4+2>>0]<<16|a[e+36+4+3>>0]<<24,i[n+32>>2]=a[e+36>>0]|a[e+36+1>>0]<<8|a[e+36+2>>0]<<16|a[e+36+3>>0]<<24,i[n+32+4>>2]=o,function(e,t,n,r){!function(e,t,n,r){ut(e|=0,t|=0,40,0,n|=0,0,r|=0)}(e|=0,t|=0,n|=0,r|=0)}(n,n,e+32|0,e),s=n,c=(o=e)+32|0;do{r[o>>0]=0|r[s>>0],o=o+1|0,s=s+1|0}while((0|o)<(0|c));s=0|i[n+32>>2],c=0|i[n+32+4>>2],r[e+36>>0]=s,r[e+36+1>>0]=s>>8,r[e+36+2>>0]=s>>16,r[e+36+3>>0]=s>>24,r[e+36+4>>0]=c,r[e+36+4+1>>0]=c>>8,r[e+36+4+2>>0]=c>>16,r[e+36+4+3>>0]=c>>24,_n(e),y=t}function de(e,t){e|=0,t|=0;var n=0,i=0,o=0,s=0,c=0;n=0;do{r[e+n>>0]=(0|a[t+(n>>>3)>>0])>>>(7&n)&1,n=n+1|0}while(256!=(0|n));c=0;do{o=e+c|0;e:do{if(0|r[o>>0]){s=1;do{if((n=s+c|0)>>>0>=256)break e;t=0|r[e+n>>0];t:do{if(t<<24>>24){if(((i=t<<24>>24<<s)+(t=0|r[o>>0])|0)<16){r[o>>0]=i+t,r[e+n>>0]=0;break}if((t-i|0)<-15)break e;for(r[o>>0]=t-i;0|r[(t=e+n|0)>>0];)if(r[t>>0]=0,(n=n+1|0)>>>0>=256)break t;r[t>>0]=1}}while(0);s=s+1|0}while(s>>>0<7)}}while(0);c=c+1|0}while(256!=(0|c))}function ge(e,t,n,r,i,a,o,s,c,u,l){var A;e|=0,t|=0,n|=0,r|=0,i|=0,a|=0,o|=0,s|=0,c|=0,A=y,y=y+352|0,er(A+16|0,u|=0,l|=0),Wn(A+80|0,A+16|0),Et(A+16|0,64),xn(A+80|0,o,s,c),Ot(A+336|0,s,c),xn(A+80|0,A+336|0,8,0),xn(A+80|0,n,r,i),Ot(A+336|0,r,i),xn(A+80|0,A+336|0,8,0),qn(A+80|0,A),Et(A+80|0,256),t=0|ur(A,a),Et(A,16);do{if(e){if(t){ke(0|e,0,0|r),t=-1;break}Kt(e,n,r,i,u,l),t=0;break}}while(0);return y=A,0|t}function ye(e,t,n,r,a,o,s){var c,u;e|=0,t|=0,n|=0,r|=0,a|=0,o|=0,c=y,u=y=y+63&-64,y=y+560|0,Dn(u+192|0,s|=0),Pt(u+128|0,o,32,0),O(u+192|0,u+128+32|0,32,0),O(u+192|0,n,r,a),Lt(u+192|0,u+64|0),Bt(e+32|0,o+32|0,32),w(u+64|0),ae(u+400|0,u+64|0),ft(e,u+400|0),Dn(u+192|0,s),O(u+192|0,e,64,0),O(u+192|0,n,r,a),Lt(u+192|0,u),w(u),Nn(u+128|0),m(e+32|0,u,u+128|0,u+64|0),Et(u+128|0,64),Et(u+64|0,64),0|t&&(i[t>>2]=64,i[t+4>>2]=0),y=c}function ve(e,t,n,r,a,s){e|=0,t|=0,n|=0,r|=0,a|=0,s|=0;var c=0;do{if(t){if(c=(0|i[e+24>>2])-(0|i[e+20>>2])|0,s){c=r+-1+c|0;break}c=c+((0==(0|r))<<31>>31)|0;break}if(!(n<<24>>24)){c=r+-1|0;break}if(c=0|o(0|i[e+20>>2],255&n),s){c=r+-1+c|0;break}c=c+((0==(0|r))<<31>>31)|0;break}while(0);return Zt(0|a,0,0|a,0),Zt(0|u(),0,0|c,0),s=0|Qn(c+-1|0,0,0|u(),0),a=0|u(),0==(0|t)|n<<24>>24==3?(c=0,r=0):(c=0|o(0|i[e+20>>2],1+(255&n)|0),r=0),e=0|Vt(0|(t=0|Sn(0|s,0|a,0|c,0|r)),0|(n=0|u()),0|i[e+24>>2],0),u(),0|e}function me(e,t,n,r,a){r|=0,a|=0;var o,s,c,u=0;if(c=y,s=y=y+63&-64,y=y+64|0,(n|=0)>>>0>0|0==(0|n)&(t|=0)>>>0>4294967295|(o=0|Ve(e|=0))>>>0>127)i[8678]=28,n=-1;else{u=(n=s)+60|0;do{i[n>>2]=0,n=n+4|0}while((0|n)<(0|u));(u=0|function(e){var t;return(t=0|I(e|=0))&&3&i[t+-4>>2]?(ke(0|t,0,0|e),0|t):0|t}(o))?(i[s+16>>2]=u,i[s+8>>2]=u,i[s>>2]=u,i[s+20>>2]=o,i[s+12>>2]=o,i[s+4>>2]=o,i[s+24>>2]=0,i[s+24+4>>2]=0,i[s+24+8>>2]=0,i[s+24+12>>2]=0,0|H(s,e,a)?(i[8678]=28,n=-1):n=(0|i[s+40>>2])==(0|t)?(0|i[s+44>>2])!=(r>>>10|0)&1:1,k(u)):n=-1}return y=c,0|n}function be(e,t){t|=0;var n,r,a=0,s=0,c=0;if(r=y,n=y=y+63&-64,y=y+48|0,!(a=0|se(e|=0)))if((t+-1|0)>>>0<=1){if(s=0|i[e+44>>2],a=0|i[e+48>>2],c=0|o(s=((s>>>0<a<<3>>>0?a<<3:s)>>>0)/(a<<2>>>0)|0,a<<2),i[n>>2]=0,i[n+8>>2]=i[e+40>>2],i[n+12>>2]=-1,i[n+16>>2]=c,i[n+20>>2]=s,i[n+24>>2]=s<<2,i[n+28>>2]=a,i[n+32>>2]=i[e+52>>2],i[n+36>>2]=t,!(a=0|function(e,t){e|=0,t|=0;var n,r,a=0;r=y,n=y=y+63&-64,y=y+80|0;do{if(0==(0|e)|0==(0|t))a=-25;else{if(a=0|I(i[e+20>>2]<<3),i[e+4>>2]=a,a){if(a=0|Pe(e,0|i[e+16>>2])){vn(e,0|i[t+56>>2]);break}K(n,t,0|i[e+36>>2]),Et(n+64|0,8),Ue(n,e),Et(n,72),a=0;break}a=-22}}while(0);return y=r,0|a}(n,e))){if(0|i[n+8>>2]){a=0;do{xe(n,a),a=a+1|0}while(a>>>0<(0|i[n+8>>2])>>>0)}!function(e,t){var n,r,a=0,s=0;if(n=y,r=y=y+63&-64,y=y+2048|0,0!=(0|(e|=0))&0!=(0|(t|=0))){if(lr(r+1024|0,(0|i[4+(0|i[t>>2])>>2])+(i[t+24>>2]<<10)-1024|0),(0|i[t+28>>2])>>>0>1){a=1;do{s=(s=0|i[t+24>>2])-1+(0|o(s,a))|0,_t(r+1024|0,(0|i[4+(0|i[t>>2])>>2])+(s<<10)|0),a=a+1|0}while(a>>>0<(0|i[t+28>>2])>>>0)}!function(e,t){e|=0,t|=0;var n=0,r=0;n=0;do{Ot(e+(n<<3)|0,0|i[(r=t+(n<<3)|0)>>2],0|i[r+4>>2]),n=n+1|0}while(128!=(0|n))}(r,r+1024|0),G(0|i[e>>2],0|i[e+4>>2],r,1024),Et(r+1024|0,1024),Et(r,1024),vn(t,0|i[e+56>>2])}y=n}(e,n),a=0}}else a=-26;return y=r,0|a}function Ie(e,t,n,r,i,a){var o,s;return t|=0,n|=0,r|=0,i|=0,a|=0,s=y,o=y=y+63&-64,y=y+592|0,0!=(0|gt(32+(e|=0)|0))&&0==(0|Ee(e))&&0!=(0|Gt(i))&&0==(0|Ee(i))&&0==(0|Ae(o+424|0,i))?(Dn(o+96|0,a),O(o+96|0,e,32,0),O(o+96|0,i,32,0),O(o+96|0,t,n,r),Lt(o+96|0,o+32|0),w(o+32|0),T(o+304|0,o+32|0,o+424|0,e+32|0),ft(o,o+304|0),n=0|cr(o,e),n=0|((0|o)==(0|e)?-1:n)|tt(e,o,32)):n=-1,y=s,0|n}function we(e,t){t|=0;var n,a=0,o=0;n=y,y=y+192|0,Dt(e|=0),o=128+(a=n+64|0)|0;do{i[a>>2]=909522486,a=a+4|0}while((0|a)<(0|o));r[n+64>>0]=54^r[t>>0],a=1;do{r[(o=n+64+a|0)>>0]=r[o>>0]^r[t+a>>0],a=a+1|0}while(32!=(0|a));O(e,n+64|0,128,0),Dt(e+208|0),o=128+(a=n+64|0)|0;do{i[a>>2]=1549556828,a=a+4|0}while((0|a)<(0|o));r[n+64>>0]=92^r[t>>0],a=1;do{r[(o=n+64+a|0)>>0]=r[o>>0]^r[t+a>>0],a=a+1|0}while(32!=(0|a));O(e+208|0,n+64|0,128,0),Et(n+64|0,128),Et(n,64),y=n}function Ce(e,t,n){var r,a,o,s,c,u,l,A,f;e|=0,n|=0,f=(0|i[4+(t|=0)>>2])-(0|i[n+4>>2])|0,A=(0|i[t+8>>2])-(0|i[n+8>>2])|0,l=(0|i[t+12>>2])-(0|i[n+12>>2])|0,u=(0|i[t+16>>2])-(0|i[n+16>>2])|0,c=(0|i[t+20>>2])-(0|i[n+20>>2])|0,s=(0|i[t+24>>2])-(0|i[n+24>>2])|0,o=(0|i[t+28>>2])-(0|i[n+28>>2])|0,a=(0|i[t+32>>2])-(0|i[n+32>>2])|0,r=(0|i[t+36>>2])-(0|i[n+36>>2])|0,i[e>>2]=(0|i[t>>2])-(0|i[n>>2]),i[e+4>>2]=f,i[e+8>>2]=A,i[e+12>>2]=l,i[e+16>>2]=u,i[e+20>>2]=c,i[e+24>>2]=s,i[e+28>>2]=o,i[e+32>>2]=a,i[e+36>>2]=r}function Be(e,t,n){var r,a,o,s,c,u,l,A,f;e|=0,t|=0,f=(0|i[4+(n|=0)>>2])+(0|i[t+4>>2])|0,A=(0|i[n+8>>2])+(0|i[t+8>>2])|0,l=(0|i[n+12>>2])+(0|i[t+12>>2])|0,u=(0|i[n+16>>2])+(0|i[t+16>>2])|0,c=(0|i[n+20>>2])+(0|i[t+20>>2])|0,s=(0|i[n+24>>2])+(0|i[t+24>>2])|0,o=(0|i[n+28>>2])+(0|i[t+28>>2])|0,a=(0|i[n+32>>2])+(0|i[t+32>>2])|0,r=(0|i[n+36>>2])+(0|i[t+36>>2])|0,i[e>>2]=(0|i[n>>2])+(0|i[t>>2]),i[e+4>>2]=f,i[e+8>>2]=A,i[e+12>>2]=l,i[e+16>>2]=u,i[e+20>>2]=c,i[e+24>>2]=s,i[e+28>>2]=o,i[e+32>>2]=a,i[e+36>>2]=r}function Ee(e){e|=0;var t,n,i=0,o=0,s=0,c=0;t=y,n=y=y+63&-64,y=y+16|0,r[n>>0]=0,r[n+1>>0]=0,r[n+2>>0]=0,r[n+3>>0]=0,r[n+4>>0]=0,r[n+5>>0]=0,r[n+6>>0]=0,s=0;do{i=0|r[e+s>>0],o=0;do{r[(c=n+o|0)>>0]=r[c>>0]|r[32096+(o<<5)+s>>0]^i,o=o+1|0}while(7!=(0|o));s=s+1|0}while(31!=(0|s));i=127&r[e+31>>0],o=0;do{r[(c=n+o|0)>>0]=r[c>>0]|i^r[32096+(o<<5)+31>>0],o=o+1|0}while(7!=(0|o));i=0,o=0;do{o=(0|a[n+i>>0])-1|o,i=i+1|0}while(7!=(0|i));return y=t,o>>>8&1|0}function _e(e,t,n,r,a,o,s,c,u,l,A,f){return e|=0,t|=0,n|=0,r|=0,a|=0,o|=0,s|=0,c|=0,u|=0,l|=0,l=y,y=y+336|0,er(l,A|=0,f|=0),Wn(l+64|0,l),Et(l,64),xn(l+64|0,s,c,u),Ot(l+320|0,c,u),xn(l+64|0,l+320|0,8,0),Kt(e,r,a,o,A,f),xn(l+64|0,e,a,o),Ot(l+320|0,a,o),xn(l+64|0,l+320|0,8,0),qn(l+64|0,t),Et(l+64|0,256),0|n&&(i[n>>2]=16,i[n+4>>2]=0),y=l,0}function ke(e,t,n){t|=0;var a,o=0;if(a=(e|=0)+(n|=0)|0,t&=255,(0|n)>=67){for(;3&e;)r[e>>0]=t,e=e+1|0;for(o=t|t<<8|t<<16|t<<24;(0|e)<=((-4&a)-64|0);)i[e>>2]=o,i[e+4>>2]=o,i[e+8>>2]=o,i[e+12>>2]=o,i[e+16>>2]=o,i[e+20>>2]=o,i[e+24>>2]=o,i[e+28>>2]=o,i[e+32>>2]=o,i[e+36>>2]=o,i[e+40>>2]=o,i[e+44>>2]=o,i[e+48>>2]=o,i[e+52>>2]=o,i[e+56>>2]=o,i[e+60>>2]=o,e=e+64|0;for(;(0|e)<(-4&a|0);)i[e>>2]=o,e=e+4|0}for(;(0|e)<(0|a);)r[e>>0]=t,e=e+1|0;return a-n|0}function Qe(e,t){e|=0;var n=0;n=67108863&(0|Kn(t|=0)),i[e>>2]=n,n=(0|Kn(t+3|0))>>>2&67108611,i[e+4>>2]=n,n=(0|Kn(t+6|0))>>>4&67092735,i[e+8>>2]=n,n=(0|Kn(t+9|0))>>>6&66076671,i[e+12>>2]=n,n=(0|Kn(t+12|0))>>>8&1048575,i[e+16>>2]=n,i[e+20>>2]=0,i[e+20+4>>2]=0,i[e+20+8>>2]=0,i[e+20+12>>2]=0,i[e+20+16>>2]=0,n=0|Kn(t+16|0),i[e+40>>2]=n,n=0|Kn(t+20|0),i[e+44>>2]=n,n=0|Kn(t+24|0),i[e+48>>2]=n,t=0|Kn(t+28|0),i[e+52>>2]=t,i[e+56>>2]=0,i[e+56+4>>2]=0,r[e+80>>0]=0}function Se(e,t,n,r,a,o){e|=0,t|=0,n|=0,r|=0,a|=0,o|=0;var s=0,c=0,l=0;do{if(a>>>0<0|0==(0|a)&r>>>0<64||(s=0|Sn(0|r,0|a,-64,-1),(c=0|u())>>>0>0|0==(0|c)&s>>>0>4294967231))l=10;else{if(0|Bn(n,n+64|0,s,c,o)){if(!e){l=10;break}ke(0|e,0,0|s),l=10;break}0|t&&(i[t>>2]=s,i[t+4>>2]=c),e?(Bt(0|e,n+64|0,0|s),r=0):r=0}}while(0);return 10==(0|l)&&(t?(i[t>>2]=0,i[t+4>>2]=0,r=-1):r=-1),0|r}function xe(e,t){t|=0;var n,a,o=0,s=0;if(n=y,a=y=y+63&-64,y=y+32|0,0|(e|=0)&&0|(o=0|i[e+28>>2])){i[a>>2]=t,s=0;do{if(r[a+8>>0]=s,o){t=0;do{i[a+4>>2]=t,i[a+12>>2]=0,i[a+16>>2]=i[a>>2],i[a+16+4>>2]=i[a+4>>2],i[a+16+8>>2]=i[a+8>>2],i[a+16+12>>2]=i[a+12>>2],L(e,a+16|0),t=t+1|0,o=0|i[e+28>>2]}while(t>>>0<o>>>0)}else o=0;s=s+1|0}while(4!=(0|s))}y=n}function De(e,t,n,a){e|=0,n|=0,a|=0;var o,s,c=0;if(o=y,s=y=y+63&-64,y=y+192|0,((t|=0)-1&255)>63&&kr(),!((a+-1&255)>63|0==(0|n))){r[s+128>>0]=t,r[s+128+1>>0]=a,r[s+128+2>>0]=1,r[s+128+3>>0]=1,$n(s+128+4|0),Ot(s+128+8|0,0,0),c=48+(t=s+128+16|0)|0;do{i[t>>2]=0,t=t+4|0}while((0|t)<(0|c));return Ne(e,s+128|0),ke(s+(255&a)|0,0,128-(255&a)|0),te(0|s,0|n,255&a|0),W(e,s,128,0),Et(s,128),void(y=o)}kr()}function Pe(e,t){e|=0,t|=0;var n,r,a=0;r=y,n=y=y+63&-64,y=y+16|0;do{if(0!=(0|e)&&0!=(0|t)&&1024==(0|(t<<10>>>0)/(t>>>0))&&(a=0|I(12),i[e>>2]=a,0!=(0|a))){if(i[a+4>>2]=0,i[a>>2]=0,a=0|An(n,t<<10),i[8678]=a,a)i[n>>2]=0;else if(0|(a=0|i[n>>2])){i[i[e>>2]>>2]=a,i[4+(0|i[e>>2])>>2]=a,i[8+(0|i[e>>2])>>2]=t<<10,a=0;break}k(0|i[e>>2]),i[e>>2]=0,a=-22}else a=-22}while(0);return y=r,0|a}function Me(e,t,n,r,o,s){var c,u,l;return e|=0,t|=0,n|=0,r|=0,s|=0,u=y,c=y=y+63&-64,y=y+32|0,l=a[4+(o|=0)>>0]|a[o+4+1>>0]<<8|a[o+4+2>>0]<<16|a[o+4+3>>0]<<24,i[c+16>>2]=a[o>>0]|a[o+1>>0]<<8|a[o+2>>0]<<16|a[o+3>>0]<<24,i[c+16+4>>2]=l,i[c+16+8>>2]=0,i[c+16+8+4>>2]=0,Ot(c,n,r),i[c+8>>2]=0,i[c+8+4>>2]=0,(t+-16|0)>>>0>48?(i[8678]=28,n=-1):n=0|function(e,t,n,r,i){return n|=0,((t|=0)-1|0)>>>0>63?n=-1:(function(e,t,n,r,i){var a,o;if(t|=0,n|=0,r|=0,i|=0,a=y,o=y=y+63&-64,y=y+368|0,(e|=0)||kr(),(n+-1&255)>63&&kr(),t)return ce(o,n,t,r,i),W(o,0,0,0),M(o,e,n),void(y=a);kr()}(e|=0,n,255&t,r|=0,i|=0),n=0),0|n}(e,t,s,c,c+16|0),y=u,0|n}function Fe(e,t,n,r,o,s,c,l,A,f,h){var p;return e|=0,t|=0,n|=0,r|=0,o|=0,s|=0,c|=0,l|=0,A|=0,f|=0,h|=0,p=y,y=y+48|0,i[p+32>>2]=0,R(p,f,h),t=a[f+16+4>>0]|a[f+16+4+1>>0]<<8|a[f+16+4+2>>0]<<16|a[f+16+4+3>>0]<<24,i[p+32+4>>2]=a[f+16>>0]|a[f+16+1>>0]<<8|a[f+16+2>>0]<<16|a[f+16+3>>0]<<24,i[p+32+4+4>>2]=t,t=0|function(e,t,n,r,i,a,o,s,c,l){var A;e|=0,t|=0,n|=0,r|=0,i|=0,a|=0,o|=0,s|=0,A=y,y=y+352|0,qt(A+16|0,64,0,c|=0,l|=0),Wn(A+80|0,A+16|0),Et(A+16|0,64),xn(A+80|0,a,o,s),a=0|Qn(0,0,0|o,0|s),u(),xn(A+80|0,34640,15&a,0),xn(A+80|0,t,n,r),a=0|Qn(0,0,0|n,0|r),u(),xn(A+80|0,34640,15&a,0),Ot(A+336|0,o,s),xn(A+80|0,A+336|0,8,0),Ot(A+336|0,n,r),xn(A+80|0,A+336|0,8,0),qn(A+80|0,A),Et(A+80|0,256),o=0|ur(A,i),Et(A,16);do{if(e){if(o){ke(0|e,0,0|n),o=-1;break}Ft(e,t,n,r,c,1,l),o=0;break}}while(0);return y=A,0|o}(e,n,r,o,s,c,l,A,p+32|0,p),Et(p,32),y=p,0|t}function Oe(e,t,n,a,o,s,c){t|=0,n|=0,a|=0,o|=0,s|=0,c|=0;var u,l,A,f=0;A=y,u=y=y+63&-64,y=y+16|0,l=128+(f=e|=0)|0;do{r[f>>0]=0,f=f+1|0}while((0|f)<(0|l));do{if(!((s|a)>>>0>0|0==(s|a|0)&(o|n)>>>0>4294967295|c>>>0>2147483648)){if(s>>>0<0|0==(0|s)&o>>>0<3|c>>>0<8192){i[8678]=28,n=-1;break}Xt(u,16),n=(0!=(0|Cn(o,c>>>10,t,n,u,e)))<<31>>31;break}i[8678]=22,n=-1}while(0);return y=A,0|n}function Re(e,t,n,r,o,s,c,l,A,f,h,p){return e|=0,t|=0,n|=0,r|=0,o|=0,s|=0,c|=0,l|=0,A|=0,f|=0,h|=0,p|=0,f=y,y=y+48|0,i[f+32>>2]=0,R(f,h,p),p=a[h+16+4>>0]|a[h+16+4+1>>0]<<8|a[h+16+4+2>>0]<<16|a[h+16+4+3>>0]<<24,i[f+32+4>>2]=a[h+16>>0]|a[h+16+1>>0]<<8|a[h+16+2>>0]<<16|a[h+16+3>>0]<<24,i[f+32+4+4>>2]=p,function(e,t,n,r,a,o,s,c,l,A,f){var h;e|=0,t|=0,n|=0,r|=0,a|=0,o|=0,s|=0,c|=0,l|=0,h=y,y=y+336|0,qt(h,64,0,A|=0,f|=0),Wn(h+64|0,h),Et(h,64),xn(h+64|0,s,c,l),s=0|Qn(0,0,0|c,0|l),u(),xn(h+64|0,34640,15&s,0),Ft(e,r,a,o,A,1,f),xn(h+64|0,e,a,o),A=0|Qn(0,0,0|a,0|o),u(),xn(h+64|0,34640,15&A,0),Ot(h+320|0,c,l),xn(h+64|0,h+320|0,8,0),Ot(h+320|0,a,o),xn(h+64|0,h+320|0,8,0),qn(h+64|0,t),Et(h+64|0,256),0|n&&(i[n>>2]=16,i[n+4>>2]=0),y=h}(e,t,n,r,o,s,c,l,A,f+32|0,f),Et(f,32),y=f,0}function Te(e,t,n,a,o){e|=0,t|=0,n|=0,a|=0,o|=0;var s=0,c=0;e:do{if(o){for(c=0|i[n>>2];;){if(c>>>0>=t>>>0){s=4;break}if((s=0|r[e+c>>0])<<24>>24!=61){if(!a){s=9;break}if(!(0|Ln(a,s<<24>>24))){s=9;break}}else o=o+-1|0;if(c=c+1|0,i[n>>2]=c,!o){o=0;break e}}if(4==(0|s)){i[8678]=68,o=-1;break}if(9==(0|s)){i[8678]=28,o=-1;break}}else o=0}while(0);return 0|o}function je(e,t,n,a,o,s,c){t|=0,n|=0,a|=0,o|=0,s|=0,c|=0;var u,l,A,f=0;A=y,u=y=y+63&-64,y=y+16|0,l=128+(f=e|=0)|0;do{r[f>>0]=0,f=f+1|0}while((0|f)<(0|l));do{if(!((s|a)>>>0>0|0==(s|a|0)&(o|n)>>>0>4294967295|c>>>0>2147483648)){if(0==(0|o)&0==(0|s)|c>>>0<8192){i[8678]=28,n=-1;break}Xt(u,16),n=(0!=(0|In(o,c>>>10,t,n,u,e)))<<31>>31;break}i[8678]=22,n=-1}while(0);return y=A,0|n}function He(e,t){var n,r,a,o,s,c,u,l,A;e|=0,A=0-(0|i[4+(t|=0)>>2])|0,l=0-(0|i[t+8>>2])|0,u=0-(0|i[t+12>>2])|0,c=0-(0|i[t+16>>2])|0,s=0-(0|i[t+20>>2])|0,o=0-(0|i[t+24>>2])|0,a=0-(0|i[t+28>>2])|0,r=0-(0|i[t+32>>2])|0,n=0-(0|i[t+36>>2])|0,i[e>>2]=0-(0|i[t>>2]),i[e+4>>2]=A,i[e+8>>2]=l,i[e+12>>2]=u,i[e+16>>2]=c,i[e+20>>2]=s,i[e+24>>2]=o,i[e+28>>2]=a,i[e+32>>2]=r,i[e+36>>2]=n}function Ue(e,t){e|=0;var n,r,a=0;if(n=y,r=y=y+63&-64,y=y+1024|0,0|i[28+(t|=0)>>2]){a=0;do{Pn(e+64|0,0),Pn(e+68|0,a),G(r,1024,e,72),Rt((0|i[4+(0|i[t>>2])>>2])+((0|o(0|i[t+24>>2],a))<<10)|0,r),Pn(e+64|0,1),G(r,1024,e,72),Rt((0|i[4+(0|i[t>>2])>>2])+(1+(0|o(0|i[t+24>>2],a))<<10)|0,r),a=a+1|0}while(a>>>0<(0|i[t+28>>2])>>>0)}Et(r,1024),y=n}function Ne(e,t){t|=0;var n=0,i=0,o=0,s=0;!function(e){var t,n=0,i=0;i=32352,t=64+(n=e|=0)|0;do{r[n>>0]=0|r[i>>0],n=n+1|0,i=i+1|0}while((0|n)<(0|t));ke(e+64|0,0,293)}(e|=0),n=0;do{s=0|Nt(t+(n<<3)|0),o=0|u(),s=(a[(i=e+(n<<3)|0)>>0]|a[i+1>>0]<<8|a[i+2>>0]<<16|a[i+3>>0]<<24)^s,o=(a[i+4>>0]|a[i+4+1>>0]<<8|a[i+4+2>>0]<<16|a[i+4+3>>0]<<24)^o,r[i>>0]=s,r[i+1>>0]=s>>8,r[i+2>>0]=s>>16,r[i+3>>0]=s>>24,r[i+4>>0]=o,r[i+4+1>>0]=o>>8,r[i+4+2>>0]=o>>16,r[i+4+3>>0]=o>>24,n=n+1|0}while(8!=(0|n))}function Le(e){var t,n,r,i,o,s,l=0;return o=0|a[7+(e|=0)>>0],s=0|cn(0|a[e+6>>0],0,8),l=0|u(),i=0|cn(0|a[e+5>>0],0,16),l=0|l|u(),r=0|cn(0|a[e+4>>0],0,24),l=0|(l=0|l|u())|a[e+3>>0],n=0|cn(0|a[e+2>>0],0,40),l=0|l|u(),t=0|cn(0|a[e+1>>0],0,48),l=0|l|u(),e=0|cn(0|a[e>>0],0,56),c(0|l|u()|0),s|o|i|r|n|t|e|0}function Ke(e,t,n,r,a,o){t|=0,a|=0,o|=0;var s,c=0;return s=y,c=y=y+63&-64,y=y+16|0,Bt(64+(e|=0)|0,0|(n|=0),0|(r|=0)),bn(e,c,e+64|0,r,a,o),64==(0|i[c>>2])&0==(0|i[c+4>>2])?0|t?(c=0|Sn(0|r,0|a,64,0),r=0|u(),i[t>>2]=c,i[t+4>>2]=r,r=0):r=0:(0|t&&(i[t>>2]=0,i[t+4>>2]=0),ke(0|e,0,r+64|0),r=-1),y=s,0|r}function Ge(e,t){t|=0;var n,a=0,o=0,s=0,c=0;n=0|r[(e|=0)>>0];e:do{if((n+-48&255)<=9){for(o=n,s=0,c=e;;){if(!(s>>>0<429496730&((o=(o<<24>>24)-48|0)>>>0>~(a=10*s|0)>>>0^1))){a=0;break e}if(s=(o>>>0>~a>>>0?0:o)+a|0,((o=0|r[(a=c+1|0)>>0])-48&255)>9)break;c=a}(0|a)!=(0|e)&&(0|c)==(0|e)|n<<24>>24!=48?i[t>>2]=s:a=0}else a=0}while(0);return 0|a}function $e(e){return((0-((0-(95^(e|=0))|0)>>>8&63^63|(0-(45^e)|0)>>>8&62^62|((e+65439|0)>>>8^255)&e+185&((122-e|0)>>>8&255^255)|((e+-65|0)>>>8^255)&e+-65&((90-e|0)>>>8&255^255)|((e+65488|0)>>>8^255)&e+4&((57-e|0)>>>8&255^255))|0)>>>8&255^255)&(0-(65^e)|0)>>>8|(0-(95^e)|0)>>>8&63^63|(0-(45^e)|0)>>>8&62^62|((e+65439|0)>>>8^255)&e+185&((122-e|0)>>>8&255^255)|((e+-65|0)>>>8^255)&e+-65&((90-e|0)>>>8&255^255)|((e+65488|0)>>>8^255)&e+4&((57-e|0)>>>8&255^255)|0}function Ye(e){return((0-((0-(47^(e|=0))|0)>>>8&63^63|(0-(43^e)|0)>>>8&62^62|((e+65439|0)>>>8^255)&e+185&((122-e|0)>>>8&255^255)|((e+-65|0)>>>8^255)&e+-65&((90-e|0)>>>8&255^255)|((e+65488|0)>>>8^255)&e+4&((57-e|0)>>>8&255^255))|0)>>>8&255^255)&(0-(65^e)|0)>>>8|(0-(47^e)|0)>>>8&63^63|(0-(43^e)|0)>>>8&62^62|((e+65439|0)>>>8^255)&e+185&((122-e|0)>>>8&255^255)|((e+-65|0)>>>8^255)&e+-65&((90-e|0)>>>8&255^255)|((e+65488|0)>>>8^255)&e+4&((57-e|0)>>>8&255^255)|0}function Je(e,t){var n,r,a,o,s,c,u,l,A;e|=0,A=0|i[4+(t|=0)>>2],l=0|i[t+8>>2],u=0|i[t+12>>2],c=0|i[t+16>>2],s=0|i[t+20>>2],o=0|i[t+24>>2],a=0|i[t+28>>2],r=0|i[t+32>>2],n=0|i[t+36>>2],i[e>>2]=i[t>>2],i[e+4>>2]=A,i[e+8>>2]=l,i[e+12>>2]=u,i[e+16>>2]=c,i[e+20>>2]=s,i[e+24>>2]=o,i[e+28>>2]=a,i[e+32>>2]=r,i[e+36>>2]=n}function Ve(e){e|=0;var t=0,n=0,a=0;e:do{if(3&e)for(t=e,n=e;;){if(!(0|r[n>>0]))break e;if(!(3&(t=n=n+1|0))){t=n,a=5;break}}else t=e,a=5}while(0);if(5==(0|a)){for(;!((-2139062144&(n=0|i[t>>2])^-2139062144)&n+-16843009);)t=t+4|0;if((255&n)<<24>>24)do{t=t+1|0}while(0!=(0|r[t>>0]))}return t-e|0}function ze(e,t){t|=0;var n=0;i[(e|=0)>>2]=1634760805,i[e+4>>2]=857760878,i[e+8>>2]=2036477234,i[e+12>>2]=1797285236,n=0|Kn(t),i[e+16>>2]=n,n=0|Kn(t+4|0),i[e+20>>2]=n,n=0|Kn(t+8|0),i[e+24>>2]=n,n=0|Kn(t+12|0),i[e+28>>2]=n,n=0|Kn(t+16|0),i[e+32>>2]=n,n=0|Kn(t+20|0),i[e+36>>2]=n,n=0|Kn(t+24|0),i[e+40>>2]=n,t=0|Kn(t+28|0),i[e+44>>2]=t}function qe(e,t,n){t|=0,n|=0;var i=0;r[7+(e|=0)>>0]=t,i=0|fn(0|t,0|n,8),u(),r[e+6>>0]=i,i=0|fn(0|t,0|n,16),u(),r[e+5>>0]=i,i=0|fn(0|t,0|n,24),u(),r[e+4>>0]=i,r[e+3>>0]=n,i=0|fn(0|t,0|n,40),u(),r[e+2>>0]=i,i=0|fn(0|t,0|n,48),u(),r[e+1>>0]=i,n=0|fn(0|t,0|n,56),u(),r[e>>0]=n}function We(e,t,n){var r,i;n|=0,r=y,i=y=y+63&-64,y=y+48|0,Be(e|=0,40+(t|=0)|0,t),Ce(e+40|0,t+40|0,t),C(e+80|0,e,n+40|0),C(e+40|0,e+40|0,n),C(e+120|0,n+120|0,t+120|0),C(e,t+80|0,n+80|0),Be(i,e,e),Ce(e,e+80|0,e+40|0),Be(e+40|0,e+80|0,e+40|0),Ce(e+80|0,i,e+120|0),Be(e+120|0,i,e+120|0),y=r}function Xe(e,t,n){var r,i;n|=0,r=y,i=y=y+63&-64,y=y+48|0,Be(e|=0,40+(t|=0)|0,t),Ce(e+40|0,t+40|0,t),C(e+80|0,e,n),C(e+40|0,e+40|0,n+40|0),C(e+120|0,n+120|0,t+120|0),C(e,t+80|0,n+80|0),Be(i,e,e),Ce(e,e+80|0,e+40|0),Be(e+40|0,e+80|0,e+40|0),Be(e+80|0,i,e+120|0),Ce(e+120|0,i,e+120|0),y=r}function Ze(e,t,n){var r,i;n|=0,r=y,i=y=y+63&-64,y=y+48|0,Be(e|=0,40+(t|=0)|0,t),Ce(e+40|0,t+40|0,t),C(e+80|0,e,n+40|0),C(e+40|0,e+40|0,n),C(e+120|0,n+80|0,t+120|0),Be(i,t+80|0,t+80|0),Ce(e,e+80|0,e+40|0),Be(e+40|0,e+80|0,e+40|0),Ce(e+80|0,i,e+120|0),Be(e+120|0,i,e+120|0),y=r}function et(e,t,n){var r,i;n|=0,r=y,i=y=y+63&-64,y=y+48|0,Be(e|=0,40+(t|=0)|0,t),Ce(e+40|0,t+40|0,t),C(e+80|0,e,n),C(e+40|0,e+40|0,n+40|0),C(e+120|0,n+80|0,t+120|0),Be(i,t+80|0,t+80|0),Ce(e,e+80|0,e+40|0),Be(e+40|0,e+80|0,e+40|0),Be(e+80|0,i,e+120|0),Ce(e+120|0,i,e+120|0),y=r}function tt(e,t,n){var o,s;if(e|=0,t|=0,n|=0,o=y,s=y=y+63&-64,y=y+16|0,i[s+4>>2]=e,i[s>>2]=t,r[s+8>>0]=0,0|n){e=0;do{r[s+8>>0]=r[s+8>>0]|r[(0|i[s>>2])+e>>0]^r[(0|i[s+4>>2])+e>>0],e=e+1|0}while((0|e)!=(0|n))}return y=o,((511+(0|a[s+8>>0])|0)>>>8&1)-1|0}function nt(e,t){e|=0;var n,a,o=0;if(n=y,a=y=y+63&-64,y=y+64|0,!(((t|=0)-1&255)>63)){r[a>>0]=t,r[a+1>>0]=0,r[a+2>>0]=1,r[a+3>>0]=1,$n(a+4|0),Ot(a+8|0,0,0),o=48+(t=a+16|0)|0;do{i[t>>2]=0,t=t+4|0}while((0|t)<(0|o));return Ne(e,a),void(y=n)}kr()}function rt(e,t,n){var a,o;e|=0,t|=0,n|=0,a=y,o=y=y+63&-64,y=y+16|0,i[o+8>>2]=e,i[o+4>>2]=t,i[o>>2]=0,e=0;do{i[o>>2]=i[o>>2]|255&(r[(0|i[o+4>>2])+e>>0]^r[(0|i[o+8>>2])+e>>0]),e=e+1|0}while((0|e)!=(0|n));return y=a,((511+(0|i[o>>2])|0)>>>8&1)-1|0}function it(e,t,n){t|=0,n|=0;var i=0,o=0;i=0|r[(e|=0)>>0];e:do{if(i<<24>>24)for(;;){if(n=n+-1|0,!(i<<24>>24==(o=0|r[t>>0])<<24>>24&0!=(0|n)&o<<24>>24!=0))break e;if(t=t+1|0,!((i=0|r[(e=e+1|0)>>0])<<24>>24)){i=0;break}}else i=0}while(0);return(255&i)-(0|a[t>>0])|0}function at(e,t){e|=0,t|=0;var n,i,a=0,s=0,c=0,u=0;for(n=y,i=y=y+63&-64,y=y+16|0,s=10;u=255&((c=t)+(0|o(t=(t>>>0)/10|0,-10))|48),r[i+(a=s+-1|0)>>0]=u,c>>>0>9&0!=(0|a);)s=a;te(0|e,i+a|0,0|(u=11-s|0)),r[e+u>>0]=0,y=n}function ot(e,t){var n,r;n=y,r=y=y+63&-64,y=y+48|0,_(e|=0,t|=0),_(e+80|0,t+40|0),function(e,t){e|=0;var n,r,a,o,s,c,l,A,f,h,p,d,g,y,v,m,b,I,w,C,B,E,_,k,Q,S,x,D,P,M,F,O,R,T,j,H,U,N,L,K,G,$,Y,J,V,z,q,W,X,Z,ee,te,ne=0,re=0,ie=0,ae=0,oe=0,se=0,ce=0,ue=0,le=0,Ae=0,fe=0,he=0,pe=0,de=0,ge=0,ye=0,ve=0,me=0,be=0,Ie=0,we=0,Ce=0,Be=0,Ee=0,_e=0,ke=0,Qe=0,Se=0,xe=0,De=0,Pe=0,Me=0,Fe=0,Oe=0,Re=0,Te=0,je=0,He=0,Ue=0,Ne=0,Le=0,Ke=0,Ge=0,$e=0,Ye=0,Je=0,Ve=0,ze=0,qe=0,We=0,Xe=0,Ze=0,et=0,tt=0,nt=0,rt=0,it=0;ue=0|i[(t|=0)>>2],ge=0|i[t+4>>2],he=0|i[t+8>>2],Ie=0|i[t+12>>2],re=0|i[t+16>>2],we=0|i[t+20>>2],ye=0|i[t+24>>2],se=0|i[t+28>>2],oe=0|i[t+32>>2],t=0|i[t+36>>2],Z=0|Zt(0|ue,((0|ue)<0)<<31>>31|0,0|ue,((0|ue)<0)<<31>>31|0),it=0|u(),J=0|Zt(ue<<1|0,0|(le=((ue<<1|0)<0)<<31>>31),0|ge,((0|ge)<0)<<31>>31|0),et=0|u(),G=0|Zt(0|he,((0|he)<0)<<31>>31|0,ue<<1|0,0|le),K=0|u(),j=0|Zt(0|Ie,((0|Ie)<0)<<31>>31|0,ue<<1|0,0|le),T=0|u(),x=0|Zt(0|re,((0|re)<0)<<31>>31|0,ue<<1|0,0|le),Ke=0|u(),E=0|Zt(0|we,((0|we)<0)<<31>>31|0,ue<<1|0,0|le),je=0|u(),m=0|Zt(0|ye,((0|ye)<0)<<31>>31|0,ue<<1|0,0|le),Fe=0|u(),p=0|Zt(0|se,((0|se)<0)<<31>>31|0,ue<<1|0,0|le),Se=0|u(),s=0|Zt(0|oe,((0|oe)<0)<<31>>31|0,ue<<1|0,0|le),Ee=0|u(),le=0|Zt(0|t,((0|t)<0)<<31>>31|0,ue<<1|0,0|le),ue=0|u(),L=0|Zt(ge<<1|0,0|(ne=((ge<<1|0)<0)<<31>>31),0|ge,((0|ge)<0)<<31>>31|0),We=0|u(),R=0|Zt(ge<<1|0,0|ne,0|he,((0|he)<0)<<31>>31|0),Je=0|u(),M=0|Zt(Ie<<1|0,0|(ie=((Ie<<1|0)<0)<<31>>31),ge<<1|0,0|ne),P=0|u(),Q=0|Zt(0|re,((0|re)<0)<<31>>31|0,ge<<1|0,0|ne),k=0|u(),b=0|Zt(we<<1|0,((we<<1|0)<0)<<31>>31|0,ge<<1|0,0|ne),Oe=0|u(),d=0|Zt(0|ye,((0|ye)<0)<<31>>31|0,ge<<1|0,0|ne),xe=0|u(),c=0|Zt(se<<1|0,((se<<1|0)<0)<<31>>31|0,ge<<1|0,0|ne),_e=0|u(),Ae=0|Zt(0|oe,((0|oe)<0)<<31>>31|0,ge<<1|0,0|ne),fe=0|u(),ne=0|Zt(38*t|0,0|(de=((38*t|0)<0)<<31>>31),ge<<1|0,0|ne),ge=0|u(),D=0|Zt(0|he,((0|he)<0)<<31>>31|0,0|he,((0|he)<0)<<31>>31|0),Ge=0|u(),_=0|Zt(he<<1|0,((he<<1|0)<0)<<31>>31|0,0|Ie,((0|Ie)<0)<<31>>31|0),He=0|u(),I=0|Zt(0|re,((0|re)<0)<<31>>31|0,he<<1|0,((he<<1|0)<0)<<31>>31|0),Re=0|u(),v=0|Zt(0|we,((0|we)<0)<<31>>31|0,he<<1|0,((he<<1|0)<0)<<31>>31|0),y=0|u(),h=0|Zt(0|ye,((0|ye)<0)<<31>>31|0,he<<1|0,((he<<1|0)<0)<<31>>31|0),f=0|u(),n=0|Zt(0|se,((0|se)<0)<<31>>31|0,he<<1|0,((he<<1|0)<0)<<31>>31|0),Ce=0|u(),q=0|Zt(19*oe|0,0|(Me=((19*oe|0)<0)<<31>>31),he<<1|0,((he<<1|0)<0)<<31>>31|0),tt=0|u(),he=0|Zt(38*t|0,0|de,0|he,((0|he)<0)<<31>>31|0),ve=0|u(),C=0|Zt(Ie<<1|0,0|ie,0|Ie,((0|Ie)<0)<<31>>31|0),w=0|u(),g=0|Zt(Ie<<1|0,0|ie,0|re,((0|re)<0)<<31>>31|0),De=0|u(),l=0|Zt(we<<1|0,((we<<1|0)<0)<<31>>31|0,Ie<<1|0,0|ie),ke=0|u(),o=0|Zt(0|ye,((0|ye)<0)<<31>>31|0,Ie<<1|0,0|ie),a=0|u(),W=0|Zt(38*se|0,0|(Le=((38*se|0)<0)<<31>>31),Ie<<1|0,0|ie),nt=0|u(),$=0|Zt(19*oe|0,0|Me,Ie<<1|0,0|ie),Xe=0|u(),ie=0|Zt(38*t|0,0|de,Ie<<1|0,0|ie),Ie=0|u(),A=0|Zt(0|re,((0|re)<0)<<31>>31|0,0|re,((0|re)<0)<<31>>31|0),Qe=0|u(),r=0|Zt(re<<1|0,((re<<1|0)<0)<<31>>31|0,0|we,((0|we)<0)<<31>>31|0),Be=0|u(),X=0|Zt(19*ye|0,((19*ye|0)<0)<<31>>31|0,re<<1|0,((re<<1|0)<0)<<31>>31|0),rt=0|u(),Y=0|Zt(38*se|0,0|Le,0|re,((0|re)<0)<<31>>31|0),Ze=0|u(),H=0|Zt(19*oe|0,0|Me,re<<1|0,((re<<1|0)<0)<<31>>31|0),Ve=0|u(),re=0|Zt(38*t|0,0|de,0|re,((0|re)<0)<<31>>31|0),me=0|u(),te=0|Zt(38*we|0,((38*we|0)<0)<<31>>31|0,0|we,((0|we)<0)<<31>>31|0),ee=0|u(),z=0|Zt(19*ye|0,((19*ye|0)<0)<<31>>31|0,we<<1|0,((we<<1|0)<0)<<31>>31|0),V=0|u(),U=0|Zt(38*se|0,0|Le,we<<1|0,((we<<1|0)<0)<<31>>31|0),ze=0|u(),F=0|Zt(19*oe|0,0|Me,we<<1|0,((we<<1|0)<0)<<31>>31|0),$e=0|u(),we=0|Zt(38*t|0,0|de,we<<1|0,((we<<1|0)<0)<<31>>31|0),pe=0|u(),N=0|Zt(19*ye|0,((19*ye|0)<0)<<31>>31|0,0|ye,((0|ye)<0)<<31>>31|0),qe=0|u(),O=0|Zt(38*se|0,0|Le,0|ye,((0|ye)<0)<<31>>31|0),Ye=0|u(),S=0|Zt(19*oe|0,0|Me,ye<<1|0,((ye<<1|0)<0)<<31>>31|0),Ue=0|u(),ye=0|Zt(38*t|0,0|de,0|ye,((0|ye)<0)<<31>>31|0),ce=0|u(),Le=0|Zt(38*se|0,0|Le,0|se,((0|se)<0)<<31>>31|0),Ne=0|u(),B=0|Zt(19*oe|0,0|Me,se<<1|0,((se<<1|0)<0)<<31>>31|0),Te=0|u(),se=0|Zt(38*t|0,0|de,se<<1|0,((se<<1|0)<0)<<31>>31|0),be=0|u(),Me=0|Zt(19*oe|0,0|Me,0|oe,((0|oe)<0)<<31>>31|0),Pe=0|u(),oe=0|Zt(38*t|0,0|de,0|oe,((0|oe)<0)<<31>>31|0),ae=0|u(),t=0|Zt(38*t|0,0|de,0|t,((0|t)<0)<<31>>31|0),de=0|u(),ge=0|Sn(0|(tt=0|Sn(0|(nt=0|Sn(0|(rt=0|Sn(0|(it=0|Sn(0|te,0|ee,0|Z,0|it)),0|u(),0|X,0|rt)),0|u(),0|W,0|nt)),0|u(),0|q,0|tt)),0|u(),0|ne,0|ge),ne=0|u(),ve=0|Sn(0|(Xe=0|Sn(0|(Ze=0|Sn(0|(et=0|Sn(0|z,0|V,0|J,0|et)),0|u(),0|Y,0|Ze)),0|u(),0|$,0|Xe)),0|u(),0|he,0|ve),he=0|u(),Ie=0|Sn(0|(Ve=0|Sn(0|(ze=0|Sn(0|(qe=0|Sn(0|(We=0|Sn(0|G,0|K,0|L,0|We)),0|u(),0|N,0|qe)),0|u(),0|U,0|ze)),0|u(),0|H,0|Ve)),0|u(),0|ie,0|Ie),ie=0|u(),me=0|Sn(0|($e=0|Sn(0|(Ye=0|Sn(0|(Je=0|Sn(0|j,0|T,0|R,0|Je)),0|u(),0|O,0|Ye)),0|u(),0|F,0|$e)),0|u(),0|re,0|me),re=0|u(),pe=0|Sn(0|(Ue=0|Sn(0|(Ne=0|Sn(0|(Ke=0|Sn(0|(Ge=0|Sn(0|M,0|P,0|D,0|Ge)),0|u(),0|x,0|Ke)),0|u(),0|Le,0|Ne)),0|u(),0|S,0|Ue)),0|u(),0|we,0|pe),we=0|u(),ce=0|Sn(0|(Te=0|Sn(0|(je=0|Sn(0|(He=0|Sn(0|Q,0|k,0|_,0|He)),0|u(),0|E,0|je)),0|u(),0|B,0|Te)),0|u(),0|ye,0|ce),ye=0|u(),be=0|Sn(0|(Pe=0|Sn(0|(Fe=0|Sn(0|(Oe=0|Sn(0|(Re=0|Sn(0|C,0|w,0|I,0|Re)),0|u(),0|b,0|Oe)),0|u(),0|m,0|Fe)),0|u(),0|Me,0|Pe)),0|u(),0|se,0|be),se=0|u(),ae=0|Sn(0|(Se=0|Sn(0|(xe=0|Sn(0|(De=0|Sn(0|v,0|y,0|g,0|De)),0|u(),0|d,0|xe)),0|u(),0|p,0|Se)),0|u(),0|oe,0|ae),oe=0|u(),de=0|Sn(0|(Ee=0|Sn(0|(_e=0|Sn(0|(ke=0|Sn(0|(Qe=0|Sn(0|h,0|f,0|A,0|Qe)),0|u(),0|l,0|ke)),0|u(),0|c,0|_e)),0|u(),0|s,0|Ee)),0|u(),0|t,0|de),t=0|u(),ue=0|Sn(0|(fe=0|Sn(0|(Ce=0|Sn(0|(Be=0|Sn(0|o,0|a,0|r,0|Be)),0|u(),0|n,0|Ce)),0|u(),0|Ae,0|fe)),0|u(),0|le,0|ue),le=0|u(),ne=0|cn(0|ge,0|ne,1),ge=0|u(),he=0|cn(0|ve,0|he,1),ve=0|u(),ie=0|cn(0|Ie,0|ie,1),Ie=0|u(),re=0|cn(0|me,0|re,1),me=0|u(),we=0|cn(0|pe,0|we,1),pe=0|u(),ye=0|cn(0|ce,0|ye,1),ce=0|u(),se=0|cn(0|be,0|se,1),be=0|u(),oe=0|cn(0|ae,0|oe,1),ae=0|u(),t=0|cn(0|de,0|t,1),de=0|u(),le=0|cn(0|ue,0|le,1),ue=0|u(),ve=0|Sn(0|(Ce=0|tn(0|(fe=0|Sn(0|ne,0|ge,33554432,0)),0|(Ae=0|u()),26)),0|u(),0|he,0|ve),he=0|u(),Ae=0|Qn(0|ne,0|ge,-67108864&fe|0,0|Ae),fe=0|u(),ce=0|Sn(0|(Ce=0|tn(0|(ge=0|Sn(0|we,0|pe,33554432,0)),0|(ne=0|u()),26)),0|u(),0|ye,0|ce),ye=0|u(),ne=0|Qn(0|we,0|pe,-67108864&ge|0,0|ne),ge=0|u(),Ie=0|Sn(0|(we=0|tn(0|(pe=0|Sn(0|ve,0|he,16777216,0)),0|u(),25)),0|u(),0|ie,0|Ie),ie=0|u(),pe=0|Qn(0|ve,0|he,-33554432&pe|0,0),he=0|u(),be=0|Sn(0|(we=0|tn(0|(ve=0|Sn(0|ce,0|ye,16777216,0)),0|u(),25)),0|u(),0|se,0|be),se=0|u(),ve=0|Qn(0|ce,0|ye,-33554432&ve|0,0),ye=0|u(),me=0|Sn(0|(we=0|tn(0|(ce=0|Sn(0|Ie,0|ie,33554432,0)),0|u(),26)),0|u(),0|re,0|me),re=0|u(),ce=0|Qn(0|Ie,0|ie,-67108864&ce|0,0),u(),ae=0|Sn(0|(Ie=0|tn(0|(ie=0|Sn(0|be,0|se,33554432,0)),0|u(),26)),0|u(),0|oe,0|ae),oe=0|u(),ie=0|Qn(0|be,0|se,-67108864&ie|0,0),u(),ge=0|Sn(0|(be=0|tn(0|(se=0|Sn(0|me,0|re,16777216,0)),0|u(),25)),0|u(),0|ne,0|ge),ne=0|u(),se=0|Qn(0|me,0|re,-33554432&se|0,0),u(),de=0|Sn(0|(me=0|tn(0|(re=0|Sn(0|ae,0|oe,16777216,0)),0|u(),25)),0|u(),0|t,0|de),t=0|u(),re=0|Qn(0|ae,0|oe,-33554432&re|0,0),u(),ae=0|Sn(0|ve,0|ye,0|(ae=0|fn(0|(oe=0|Sn(0|ge,0|ne,33554432,0)),0|u(),26)),0|u()),u(),oe=0|Qn(0|ge,0|ne,-67108864&oe|0,0),u(),ue=0|Sn(0|(ge=0|tn(0|(ne=0|Sn(0|de,0|t,33554432,0)),0|u(),26)),0|u(),0|le,0|ue),le=0|u(),ne=0|Qn(0|de,0|t,-67108864&ne|0,0),u(),fe=0|Sn(0|(de=0|Zt(0|(de=0|tn(0|(t=0|Sn(0|ue,0|le,16777216,0)),0|u(),25)),0|u(),19,0)),0|u(),0|Ae,0|fe),Ae=0|u(),t=0|Qn(0|ue,0|le,-33554432&t|0,0),u(),ue=0|Sn(0|pe,0|he,0|(ue=0|fn(0|(le=0|Sn(0|fe,0|Ae,33554432,0)),0|u(),26)),0|u()),u(),le=0|Qn(0|fe,0|Ae,-67108864&le|0,0),u(),i[e>>2]=le,i[e+4>>2]=ue,i[e+8>>2]=ce,i[e+12>>2]=se,i[e+16>>2]=oe,i[e+20>>2]=ae,i[e+24>>2]=ie,i[e+28>>2]=re,i[e+32>>2]=ne,i[e+36>>2]=t}(e+120|0,t+80|0),Be(e+40|0,t,t+40|0),_(r,e+40|0),Be(e+40|0,e+80|0,e),Ce(e+80|0,e+80|0,e),Ce(e,r,e+40|0),Ce(e+120|0,e+120|0,e+80|0),y=n}function st(e,t,n){var i,o;if(e|=0,t|=0,n|=0,o=y,i=y=y+63&-64,y=y+16|0,r[i>>0]=0,0|function(e,t,n){e|=0,t|=0;var i,o,s=0;if(o=y,i=y=y+63&-64,y=y+336|0,0|function(e){e|=0;var t,n,i=0,o=0,s=0,c=0;t=y,n=y=y+63&-64,y=y+16|0,r[n>>0]=0,r[n+1>>0]=0,r[n+2>>0]=0,r[n+3>>0]=0,r[n+4>>0]=0,r[n+5>>0]=0,r[n+6>>0]=0,s=0;do{i=0|r[e+s>>0],o=0;do{r[(c=n+o|0)>>0]=r[c>>0]|r[33184+(o<<5)+s>>0]^i,o=o+1|0}while(7!=(0|o));s=s+1|0}while(31!=(0|s));i=127&r[e+31>>0],o=0;do{r[(c=n+o|0)>>0]=r[c>>0]|i^r[33184+(o<<5)+31>>0],o=o+1|0}while(7!=(0|o));i=0,o=0;do{o=(0|a[n+i>>0])-1|o,i=i+1|0}while(7!=(0|i));return y=t,o>>>8&1|0}(n|=0))s=-1;else{s=0;do{r[e+s>>0]=0|r[t+s>>0],s=s+1|0}while(32!=(0|s));for(r[e>>0]=-8&r[e>>0],r[e+31>>0]=63&r[e+31>>0]|64,D(i+288|0,n),kn(i+240|0),jn(i+192|0),Je(i+144|0,i+288|0),kn(i+96|0),s=254,t=0;n=t,X(i+240|0,i+144|0,n^=t=(0|a[e+(s>>>3)>>0])>>>(7&s)&1),X(i+192|0,i+96|0,n),Ce(i+48|0,i+144|0,i+96|0),Ce(i,i+240|0,i+192|0),Be(i+240|0,i+240|0,i+192|0),Be(i+192|0,i+144|0,i+96|0),C(i+96|0,i+48|0,i+240|0),C(i+192|0,i+192|0,i),_(i+48|0,i),_(i,i+240|0),Be(i+144|0,i+96|0,i+192|0),Ce(i+192|0,i+96|0,i+192|0),C(i+240|0,i,i+48|0),Ce(i,i,i+48|0),_(i+192|0,i+192|0),P(i+96|0,i),_(i+144|0,i+144|0),Be(i+48|0,i+48|0,i+96|0),C(i+96|0,i+288|0,i+192|0),C(i+192|0,i,i+48|0),s;)s=s+-1|0;X(i+240|0,i+144|0,t),X(i+192|0,i+96|0,t),V(i+192|0,i+192|0),C(i+240|0,i+240|0,i+192|0),ne(e,i+240|0),s=0}return y=o,0|s}(e,t,n))t=-1;else{t=0;do{r[i>>0]=r[i>>0]|r[e+t>>0],t=t+1|0}while(32!=(0|t));t=0-((511+(0|a[i>>0])|0)>>>8&1)|0}return y=o,0|t}function ct(e,t,n,r,i,a,o){e|=0,t|=0,i|=0,a|=0,o|=0;var s,c=0;c=0|Qn(0,1,0|(c=0|fn(0|(c=0|Sn(0|(n|=0),0|(r|=0),63,0)),0|u(),6)),0|u()),(s=0|u())>>>0<0|0==(0|s)&c>>>0<a>>>0?kr():Ft(e,t,n,r,i,a,o)}function ut(e,t,n,r,i,a,o){var s,c;e|=0,t|=0,i|=0,o|=0,s=y,c=y=y+63&-64,y=y+80|0,0==(0|(n|=0))&0==(0|(r|=0))||(Pn(c+64|0,a|=0),ze(c,o),kt(c,i,c+64|0),S(c,t,e,n,r),Et(c,64)),y=s}function lt(e,t,n){var i,a;e|=0,i=y,a=y=y+63&-64,y=y+160|0,Pt(t|=0,n|=0,32,0),r[t>>0]=-8&r[t>>0],r[t+31>>0]=63&r[t+31>>0]|64,ae(a,t),ft(e,a),Bt(0|t,0|n,32),Bt(t+32|0,0|e,32),y=i}function At(e,t,n,r){e|=0,t|=0,n|=0,r|=0;e:do{if(r>>>0>0|0==(0|r)&n>>>0>4294967295)i[8678]=22,n=-1;else{switch(0|ir(e,t,n)){case 0:n=0;break e;case-35:i[8678]=28}n=-1}}while(0);return 0|n}function ft(e,t){var n,i;e|=0,n=y,i=y=y+63&-64,y=y+144|0,V(i+96|0,80+(t|=0)|0),C(i+48|0,t,i+96|0),C(i,t+40|0,i+96|0),ne(e,i),t=(0|hn(i+48|0))<<7,r[e+31>>0]=t^(0|a[e+31>>0]),y=n}function ht(e,t,n,r){e|=0,t|=0,n|=0,r|=0;e:do{if(r>>>0>0|0==(0|r)&n>>>0>4294967295)i[8678]=22,n=-1;else{switch(0|ar(e,t,n)){case 0:n=0;break e;case-35:i[8678]=28}n=-1}}while(0);return 0|n}function pt(e,t,n,r,i,a,o,s){var c;return e|=0,t|=0,n|=0,r|=0,i|=0,a|=0,c=y,y=y+32|0,0|Un(c,o|=0,s|=0)?r=-1:(r=0|sn(e,t,n,r,i,a,c),Et(c,32)),y=c,0|r}function dt(e,t,n,r,i,a,o,s){var c;return e|=0,t|=0,n|=0,r|=0,i|=0,a|=0,c=y,y=y+32|0,0|Un(c,o|=0,s|=0)?r=-1:(un(e,t,n,r,i,a,c),Et(c,32),r=0),y=c,0|r}function gt(e){e|=0;var t=0,n=0,i=0,a=0,o=0;for(a=0,o=32,t=1;a=(255&(n=0|r[e+(o=o+-1|0)>>0]))-(255&(i=0|r[32320+o>>0]))>>8&(t&=255)|255&a,o;)t&=(65535+(255&(i^n))|0)>>>8;return 0!=(0|a)|0}function yt(e,t,n,r){return r=0|Sn(0|Sn(0|(n|=0),0|(r|=0),0|(e|=0),0|(t|=0)),0|u(),0|(r=0|Zt(-2&(r=0|cn(0|e,0|t,1))|0,1&(0|u())|0,0|n,0)),0|u()),c(0|u()),0|r}function vt(e,t,n,r){e|=0,t|=0,n|=0,r|=0;do{if(!(n>>>0>64|(r+-1|0)>>>0>63)){if(0==(0|t)|0==(0|n)){nt(e,255&r),t=0;break}De(e,255&r,t,255&n),t=0;break}t=-1}while(0);return 0|t}function mt(e){var t,n,r,i=0;return n=0|a[(e|=0)>>0],r=0|cn(0|a[e+1>>0],0,8),i=0|u(),t=0|cn(0|a[e+2>>0],0,16),i=0|i|u(),e=0|cn(0|a[e+3>>0],0,24),c(0|i|u()|0),r|n|t|e|0}function bt(e,t){e|=0,t|=0;var n,i,o=0;n=y,i=y=y+63&-64,y=y+16|0,r[i>>0]=0,o=0;do{r[i>>0]=r[i>>0]|r[e+o>>0],o=o+1|0}while((0|o)!=(0|t));return y=n,(511+(0|a[i>>0])|0)>>>8&1|0}function It(e,t,n){e|=0,t|=0;var r=0;(n|=0)?(r=0|Kn(n),i[e+48>>2]=r,n=0|Kn(n+4|0)):(i[e+48>>2]=0,n=0),i[e+52>>2]=n,r=0|Kn(t),i[e+56>>2]=r,r=0|Kn(t+4|0),i[e+60>>2]=r}function wt(e,t,n){var r,i;e|=0,t|=0,n|=0,r=y,i=y=y+63&-64,y=y+384|0,Rn(i,0,0,24),Mn(i,t,32,0),Mn(i,n,32,0),Gn(i,e,24),y=r}function Ct(e,t,n,r,i,a,o){return t|=0,i|=0,a|=0,o|=0,0|((r|=0)>>>0<0|0==(0|r)&(n|=0)>>>0<16?-1:0|pt(e|=0,t+16|0,t,n=0|Sn(0|n,0|r,-16,-1),0|u(),i,a,o))}function Bt(e,t,n){var i=0;if((0|(t|=0))<(0|(e|=0))&(0|e)<(t+(n|=0)|0)){for(i=e,t=t+n|0,e=e+n|0;(0|n)>0;)t=t-1|0,n=n-1|0,r[(e=e-1|0)>>0]=0|r[t>>0];e=i}else te(e,t,n);return 0|e}function Et(e,t){var n,a;if(e|=0,t|=0,n=y,a=y=y+63&-64,y=y+16|0,i[a>>2]=e,0|t){e=0;do{r[(0|i[a>>2])+e>>0]=0,e=e+1|0}while((0|e)!=(0|t))}y=n}function _t(e,t){e|=0,t|=0;var n=0,r=0,a=0,o=0;n=0;do{o=t+(n<<3)|0,a=i[4+(r=e+(n<<3)|0)>>2]^i[o+4>>2],i[r>>2]=i[r>>2]^i[o>>2],i[r+4>>2]=a,n=n+1|0}while(128!=(0|n))}function kt(e,t,n){e|=0,t|=0,n=(n|=0)?0|Kn(n):0,i[e+48>>2]=n,n=0|Kn(t),i[e+52>>2]=n,n=0|Kn(t+4|0),i[e+56>>2]=n,t=0|Kn(t+8|0),i[e+60>>2]=t}function Qt(e,t){var n,i;t|=0,i=y,y=y+64|0,function(e,t){var n;t|=0,n=y,y=y+64|0,Lt(e|=0,n),O(e+208|0,n,64,0),Lt(e+208|0,t),Et(n,64),y=n}(e|=0,i),e=i,n=t+32|0;do{r[t>>0]=0|r[e>>0],t=t+1|0,e=e+1|0}while((0|t)<(0|n));y=i}function St(e){var t;return e|=0,((t=0|i[8808])+e|0)>>>0>(0|h())>>>0&&0==(0|d(t+e|0))?(i[8678]=48,0|(e=-1)):(i[8808]=t+e,0|(e=t))}function xt(e,t,n,r,i){var a;e|=0,t|=0,n|=0,r|=0,a=y,y=y+416|0,function(e,t){we(e|=0,t|=0)}(a,i|=0),function(e,t,n,r){Tn(e|=0,t|=0,n|=0,r|=0)}(a,t,n,r),Qt(a,e),y=a}function Dt(e){var t,n=0;i[64+(e|=0)>>2]=0,i[e+64+4>>2]=0,i[e+64+8>>2]=0,i[e+64+12>>2]=0,n=32352,t=e+64|0;do{i[e>>2]=i[n>>2],e=e+4|0,n=n+4|0}while((0|e)<(0|t))}function Pt(e,t,n,r){var i,a;e|=0,t|=0,n|=0,r|=0,i=y,a=y=y+63&-64,y=y+208|0,Dt(a),O(a,t,n,r),Lt(a,e),y=i}function Mt(e,t,n){e|=0,t|=0;var r=0,a=0;if((n|=0)>>>3|0){r=0;do{qe(e+(r<<3)|0,0|i[(a=t+(r<<3)|0)>>2],0|i[a+4>>2]),r=r+1|0}while((0|r)!=(n>>>3|0))}}function Ft(e,t,n,r,i,a,o){e|=0,t|=0,i|=0,a|=0,o|=0,(r|=0)>>>0>0|0==(0|r)&(n|=0)>>>0>4294967295?kr():ut(e,t,n,r,i,a,o)}function Ot(e,t,n){t|=0,n|=0,r[(e|=0)>>0]=t,r[e+1>>0]=t>>8,r[e+2>>0]=t>>16,r[e+3>>0]=t>>24,r[e+4>>0]=n,r[e+4+1>>0]=n>>8,r[e+4+2>>0]=n>>16,r[e+4+3>>0]=n>>24}function Rt(e,t){e|=0,t|=0;var n=0,r=0,a=0,o=0;n=0;do{o=0|Nt(t+(n<<3)|0),a=0|u(),i[(r=e+(n<<3)|0)>>2]=o,i[r+4>>2]=a,n=n+1|0}while(128!=(0|n))}function Tt(e,t,n,r,i,a,o){return e|=0,t|=0,i|=0,a|=0,o|=0,(r|=0)>>>0>0|0==(0|r)&(n|=0)>>>0>4294967279?(kr(),0):0|dt(e+16|0,e,t,n,r,i,a,o)}function jt(e){return(0-(62^(e|=0))|0)>>>8&45^45|(e+65510|0)>>>8&255&e+65|(0-(63^e)|0)>>>8&95^95|(e+65484|0)>>>8&e+71&((e+65510|0)>>>8&255^255)|(e+65474|0)>>>8&e+252&((e+65484|0)>>>8&255^255)|0}function Ht(e){return(0-(62^(e|=0))|0)>>>8&43^43|(e+65510|0)>>>8&255&e+65|(0-(63^e)|0)>>>8&47^47|(e+65484|0)>>>8&e+71&((e+65510|0)>>>8&255^255)|(e+65474|0)>>>8&e+252&((e+65484|0)>>>8&255^255)|0}function Ut(e,t,n,r,i,a,o){return r|=0,((t|=0)-1|0)>>>0>63|(o|=0)>>>0>64?r=-1:(function(e,t,n,r,i,a,o){var s,c;e|=0,n|=0,r|=0,o|=0,s=y,c=y=y+63&-64,y=y+368|0,0==(0|(t|=0))&(0!=(0|(i|=0))|0!=(0|(a|=0)))&&kr(),e||kr(),(r+-1&255)>63&&kr(),0!=(0|n)|o<<24>>24==0||kr(),(255&o)>64&&kr(),o<<24>>24?De(c,r,n,o):nt(c,r),W(c,t,i,a),M(c,e,r),y=s}(e|=0,n|=0,a|=0,255&t,r,i|=0,255&o),r=0),0|r}function Nt(e){var t;return t=a[(e|=0)>>0]|a[e+1>>0]<<8|a[e+2>>0]<<16|a[e+3>>0]<<24,c(a[e+4>>0]|a[e+4+1>>0]<<8|a[e+4+2>>0]<<16|a[e+4+3>>0]<<24|0),0|t}function Lt(e,t){var n,r;t|=0,n=y,r=y=y+63&-64,y=y+704|0,function(e,t){t|=0;var n=0,r=0;if(n=0|fn(0|i[72+(e|=0)>>2],0|i[e+72+4>>2],3),u(),(127&n)>>>0<112)112-(127&n)|0&&te(e+80+(127&n)|0,33056,112-(127&n)|0);else{128-(127&n)|0&&te(e+80+(127&n)|0,33056,128-(127&n)|0),b(e,e+80|0,t,t+640|0),r=112+(n=e+80|0)|0;do{i[n>>2]=0,n=n+4|0}while((0|n)<(0|r))}Mt(e+192|0,e+64|0,16),b(e,e+80|0,t,t+640|0)}(e|=0,r),Mt(t,e,64),Et(r,704),Et(e,208),y=n}function Kt(e,t,n,r,i,a){e|=0,t|=0,i|=0,a|=0,(r|=0)>>>0>0|0==(0|r)&(n|=0)>>>0>4294967295?kr():function(e,t,n,r,i,a,o,s){var c,u;e|=0,t|=0,i|=0,s|=0,c=y,u=y=y+63&-64,y=y+80|0,0==(0|(n|=0))&0==(0|(r|=0))||(Pn(u+64|0,1),Pn(u+64+4|0,0),ze(u,s),It(u,i,u+64|0),S(u,t,e,n,r),Et(u,64)),y=c}(e,t,n,r,i,0,0,a)}function Gt(e){var t=0,n=0;t=127&r[31+(e|=0)>>0]^127,n=30;do{t|=~r[e+n>>0],n=n+-1|0}while(0!=(0|n));return(236-(0|a[e>>0])&511+(255&t))>>>8&1^1|0}function $t(e,t,n,r,i){e|=0,r|=0,i|=0,(n|=0)>>>0>0|0==(0|n)&(t|=0)>>>0>4294967295?kr():qt(e,t,n,r,i)}function Yt(e,t,n){var r,i;return r=0|fn(0|(e|=0),0|(t|=0),0|(n|=0)),i=0|u(),n=0|cn(0|e,0|t,64-n|0),c(0|u()|i|0),n|r|0}function Jt(e,t,n){var r,i;return r=0|cn(0|(e|=0),0|(t|=0),0|(n|=0)),i=0|u(),n=0|fn(0|e,0|t,64-n|0),c(0|u()|i|0),n|r|0}function Vt(e,t,n,r){var a;return a=y,y=y+16|0,function(e,t,n,r,a){e|=0,n|=0,r|=0,a|=0;var o=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,y=0,v=0;if(!(t|=0))return r?a?(i[a>>2]=0|e,i[a+4>>2]=0&t,a=0,0|(c(0|(r=0)),a)):(a=0,0|(c(0|(r=0)),a)):(0|a&&(i[a>>2]=(e>>>0)%(n>>>0),i[a+4>>2]=0),a=(e>>>0)/(n>>>0)>>>0,0|(c(0|(r=0)),a));do{if(n){if(0|r){if((l=(0|s(0|r))-(0|s(0|t))|0)>>>0<=31){g=l+1|0,A=e>>>((l+1|0)>>>0)&l-31>>31|t<<31-l,d=t>>>((l+1|0)>>>0)&l-31>>31,o=0,l=e<<31-l;break}return a?(i[a>>2]=0|e,i[a+4>>2]=t|0&t,a=0,0|(c(0|(r=0)),a)):(a=0,0|(c(0|(r=0)),a))}if(n-1&n|0){g=l=33+(0|s(0|n))-(0|s(0|t))|0,A=32-l-1>>31&t>>>((l-32|0)>>>0)|(t<<32-l|e>>>(l>>>0))&l-32>>31,d=l-32>>31&t>>>(l>>>0),o=e<<64-l&32-l>>31,l=(t<<64-l|e>>>((l-32|0)>>>0))&32-l>>31|e<<32-l&l-33>>31;break}return 0|a&&(i[a>>2]=n-1&e,i[a+4>>2]=0),1==(0|n)?(a=0|e,0|(c(0|(r=t|0&t)),a)):(r=t>>>((a=0|sr(0|n))>>>0)|0,a=t<<32-a|e>>>(a>>>0)|0,0|(c(0|r),a))}if(!r)return 0|a&&(i[a>>2]=(t>>>0)%(n>>>0),i[a+4>>2]=0),a=(t>>>0)/(n>>>0)>>>0,0|(c(0|(r=0)),a);if(!e)return 0|a&&(i[a>>2]=0,i[a+4>>2]=(t>>>0)%(r>>>0)),a=(t>>>0)/(r>>>0)>>>0,0|(c(0|(n=0)),a);if(!(r-1&r))return 0|a&&(i[a>>2]=0|e,i[a+4>>2]=r-1&t|0&t),n=0,a=t>>>((0|sr(0|r))>>>0),0|(c(0|n),a);if((l=(0|s(0|r))-(0|s(0|t))|0)>>>0<=30){g=l+1|0,A=t<<31-l|e>>>((l+1|0)>>>0),d=t>>>((l+1|0)>>>0),o=0,l=e<<31-l;break}return a?(i[a>>2]=0|e,i[a+4>>2]=t|0&t,a=0,0|(c(0|(r=0)),a)):(a=0,0|(c(0|(r=0)),a))}while(0);if(g){h=0|Sn(0|n,r|0&r|0,-1,-1),p=0|u(),f=l,t=d,e=g,l=0;do{v=f,f=o>>>31|f<<1,o=l|o<<1,Qn(0|h,0|p,0|(v=A<<1|v>>>31|0),0|(y=A>>>31|t<<1|0)),l=1&(d=(g=0|u())>>31|((0|g)<0?-1:0)<<1),A=0|Qn(0|v,0|y,d&(0|n)|0,(((0|g)<0?-1:0)>>31|((0|g)<0?-1:0)<<1)&(r|0&r)|0),t=0|u(),e=e-1|0}while(0!=(0|e));e=0}else f=l,t=d,e=0,l=0;0|a&&(i[a>>2]=A,i[a+4>>2]=t),v=-2&(o<<1|0)|l,c(0|(y=(0|o)>>>31|f<<1|0&(0|o>>>31)|e))}(e|=0,t|=0,n|=0,r|=0,0|a),y=a,0|(c(0|i[a+4>>2]),0|i[a>>2])}function zt(e){e|=0;var t=0,n=0,i=0;for(t=1,n=0;t=t+(0|a[(i=e+n|0)>>0])|0,r[i>>0]=t,4!=(0|(n=n+1|0));)t>>>=8}function qt(e,t,n,r,i){e|=0,r|=0,i|=0,(n|=0)>>>0>0|0==(0|n)&(t|=0)>>>0>4294967295?kr():function(e,t,n,r,i){var a,o;e|=0,r|=0,a=y,o=y=y+63&-64,y=y+64|0,0==(0|(t|=0))&0==(0|(n|=0))||(ze(o,i|=0),kt(o,r,0),ke(0|e,0,0|t),S(o,e,e,t,n),Et(o,64)),y=a}(e,t,n,r,i)}function Wt(e,t,n){var r;return e|=0,n|=0,t=0|cn(255&(t|=0)|0,0,8),r=0|u(),n=0|cn(255&n|0,0,16),c(0|r|u()|0),t|255&e|n|0}function Xt(e,t){e|=0;var n=0,i=0;if(0|(t|=0)){n=0;do{i=255&(0|dr()),r[e+n>>0]=i,n=n+1|0}while((0|n)!=(0|t))}}function Zt(e,t,n,r){var i,a;return t|=0,r|=0,i=0|function(e,t){var n,r,i;return i=((n=0|o(65535&(t|=0),65535&(e|=0)))>>>16)+(0|o(65535&t,e>>>16))|0,r=0|o(t>>>16,65535&e),0|(c((i>>>16)+(0|o(t>>>16,e>>>16))+(((65535&i)+r|0)>>>16)|0),i+r<<16|65535&n|0)}(e|=0,n|=0),a=0|u(),0|(c((0|o(t,n))+(0|o(r,e))+a|0&a|0),0|i)}function en(e,t){C(e|=0,t|=0,t+120|0),C(e+40|0,t+40|0,t+80|0),C(e+80|0,t+80|0,t+120|0),C(e+120|0,t,t+40|0)}function tn(e,t,n){return e|=0,t|=0,(0|(n|=0))<32?(c(t>>n|0),e>>>n|(t&(1<<n)-1)<<32-n):(c(0|((0|t)<0?-1:0)),t>>n-32|0)}function nn(e,t){Be(e|=0,40+(t|=0)|0,t),Ce(e+40|0,t+40|0,t),Je(e+80|0,t+80|0),C(e+120|0,t+120|0,112)}function rn(e,t){var n,r;e|=0,n=y,r=y=y+63&-64,y=y+128|0,function(e,t){Je(e|=0,t|=0),Je(e+40|0,t+40|0),Je(e+80|0,t+80|0)}(r,t|=0),ot(e,r),y=n}function an(e){var t,n;return t=y,n=y=y+63&-64,y=y+32|0,ne(n,e|=0),e=0|bt(n,32),y=t,0|e}function on(e,t){e|=0,t|=0;var n=0,i=0;n=0;do{r[(i=e+n|0)>>0]=r[i>>0]^r[t+n>>0],n=n+1|0}while(8!=(0|n))}function sn(e,t,n,r,i,a,o){return 0|ee(e|=0,t|=0,n|=0,r|=0,i|=0,a|=0,o|=0)}function cn(e,t,n){return e|=0,(0|(n|=0))<32?(c((t|=0)<<n|(e&(1<<n)-1<<32-n)>>>32-n|0),e<<n):(c(e<<n-32|0),0)}function un(e,t,n,r,i,a,o){return q(e|=0,t|=0,n|=0,r|=0,i|=0,a|=0,o|=0),0}function ln(e,t,n){return(n|=0)>>>0<256?0|M(e|=0,t|=0,255&n):(l(33547,33567,107,33620),0)}function An(e,t){e|=0;var n=0;return(t|=0)>>>0<=4294967168&&0!=(0|(n=0|function(e){var t,n=0,r=0,a=0,o=0;if((e|=0)>>>0>=4294967168)return i[8678]=48,0;if(!(r=0|I(76+(t=e>>>0<11?16:e+11&-8)|0)))return 0;do{if(63&r){if(n=(a=((r+63&-64)-8-(r+-8)|0)>>>0>15?(r+63&-64)-8|0:56+(r+63&-64)|0)-(r+-8)|0,3&(e=0|i[r+-4>>2])){i[a+4>>2]=(-8&e)-n|1&i[a+4>>2]|2,i[a+((-8&e)-n)+4>>2]=1|i[a+((-8&e)-n)+4>>2],i[r+-4>>2]=n|1&i[r+-4>>2]|2,i[a+4>>2]=1|i[a+4>>2],Q(r+-8|0,n),o=a,e=a;break}i[a>>2]=(0|i[r+-8>>2])+n,i[a+4>>2]=(-8&e)-n,o=a,e=a;break}o=r+-8|0,e=r+-8|0}while(0);return 3&(e=0|i[(n=e+4|0)>>2])|0&&(-8&e)>>>0>(t+16|0)>>>0&&(a=o+t|0,i[n>>2]=t|1&e|2,i[a+4>>2]=(-8&e)-t|3,i[(r=o+(-8&e)+4|0)>>2]=1|i[r>>2],Q(a,(-8&e)-t|0)),0|o+8}(t)))?(i[e>>2]=n,t=0):t=48,0|t}function fn(e,t,n){return e|=0,t|=0,(0|(n|=0))<32?(c(t>>>n|0),e>>>n|(t&(1<<n)-1)<<32-n):(c(0),t>>>n-32|0)}function hn(e){var t,n;return n=y,t=y=y+63&-64,y=y+32|0,ne(t,e|=0),y=n,1&r[t>>0]|0}function pn(e,t,n){fe(e|=0,t|=0,255&(n|=0)),fe(e+40|0,t+40|0,255&n),fe(e+80|0,t+80|0,255&n)}function dn(e,t,n,r,i,a,o){return 0|Ut(e|=0,t|=0,n|=0,r|=0,i|=0,a|=0,o|=0)}function gn(e,t,n,r,i,a,o){return 0|le(e|=0,t|=0,1,n|=0,r|=0,i|=0,16,a|=0,o|=0,0,0,2)}function yn(e,t,n,r,i,a,o){return 0|le(e|=0,t|=0,1,n|=0,r|=0,i|=0,16,a|=0,o|=0,0,0,1)}function vn(e,t){(function(e,t){e|=0,0|(t|=0)&&(0|(t=0|i[e>>2])&&Et(0|i[t+4>>2],i[e+16>>2]<<10),0|(t=0|i[e+4>>2])&&Et(t,i[e+20>>2]<<3))})(e|=0,4&(t|=0)),k(0|i[e+4>>2]),i[e+4>>2]=0,function(e){var t=0;0|(e|=0)&&0|(t=0|i[e>>2])&&k(t),k(e)}(0|i[e>>2]),i[e>>2]=0}function mn(e,t){C(e|=0,t|=0,t+120|0),C(e+40|0,t+40|0,t+80|0),C(e+80|0,t+80|0,t+120|0)}function bn(e,t,n,r,i,a){ye(e|=0,t|=0,n|=0,r|=0,i|=0,a|=0,0)}function In(e,t,n,r,i,a){return 0|le(e|=0,t|=0,1,n|=0,r|=0,i|=0,16,0,32,a|=0,128,2)}function wn(e,t,n,r,i,a){Y(e|=0,t|=0,n|=0,r|=0,i|=0,1,0,a|=0)}function Cn(e,t,n,r,i,a){return 0|le(e|=0,t|=0,1,n|=0,r|=0,i|=0,16,0,32,a|=0,128,1)}function Bn(e,t,n,r,i){return 0|Ie(e|=0,t|=0,n|=0,r|=0,i|=0,0)}function En(e,t,n,r,i,a){Y(e|=0,t|=0,n|=0,r|=0,i|=0,0,0,a|=0)}function _n(e){r[32+(e|=0)>>0]=1,r[e+32+1>>0]=0,r[e+32+2>>0]=0,r[e+32+3>>0]=0}function kn(e){var t;i[(e|=0)>>2]=1,t=36+(e=e+4|0)|0;do{i[e>>2]=0,e=e+4|0}while((0|e)<(0|t))}function Qn(e,t,n,r){return 0|(c(0|(r=(t|=0)-(r|=0)-((n|=0)>>>0>(e|=0)>>>0|0)>>>0)),e-n>>>0|0)}function Sn(e,t,n,r){return 0|(c((t|=0)+(r|=0)+((e|=0)+(n|=0)>>>0>>>0<e>>>0|0)>>>0|0),e+n>>>0|0)}function xn(e,t,n,r){!function(e,t,n,r){N(e|=0,t|=0,n|=0,r|=0)}(e|=0,t|=0,n|=0,r|=0)}function Dn(e,t){t|=0,Dt(e|=0),0|t&&O(e,33408,34,0)}function Pn(e,t){t|=0,r[(e|=0)>>0]=t,r[e+1>>0]=t>>8,r[e+2>>0]=t>>16,r[e+3>>0]=t>>24}function Mn(e,t,n,r){return Hn(e|=0,t|=0,n|=0,r|=0),0}function Fn(e,t,n,r){return 0|me(e|=0,t|=0,n|=0,r|=0,2)}function On(e,t,n,r){return 0|me(e|=0,t|=0,n|=0,r|=0,1)}function Rn(e,t,n,r){return 0|vt(e|=0,t|=0,n|=0,r|=0)}function Tn(e,t,n,r){O(e|=0,t|=0,n|=0,r|=0)}function jn(e){var t;t=40+(e|=0)|0;do{i[e>>2]=0,e=e+4|0}while((0|e)<(0|t))}function Hn(e,t,n,r){W(e|=0,t|=0,n|=0,r|=0)}function Un(e,t,n){return 0|function(e,t,n){var r,i;return e|=0,i=y,r=y=y+63&-64,y=y+32|0,0|st(r,n|=0,t|=0)?e=-1:(U(e,34656,r),e=0),y=i,0|e}(e|=0,t|=0,n|=0)}function Nn(e){r[(e|=0)>>0]=-8&r[e>>0],r[e+31>>0]=63&r[e+31>>0]|64}function Ln(e,t){return e=0|function(e,t){e|=0,t|=0;var n=0,a=0;e:do{if(255&t){if(3&e)do{if((a=0|r[e>>0])<<24>>24==0||a<<24>>24==(255&t)<<24>>24)break e;e=e+1|0}while(0!=(3&e|0));a=0|o(255&t,16843009),n=0|i[e>>2];t:do{if(!((-2139062144&n^-2139062144)&n+-16843009))do{if((-2139062144&(n^=a)^-2139062144)&n+-16843009|0)break t;n=0|i[(e=e+4|0)>>2]}while(!((-2139062144&n^-2139062144)&n+-16843009|0))}while(0);for(;(a=0|r[e>>0])<<24>>24!=0&&a<<24>>24!=(255&t)<<24>>24;)e=e+1|0}else e=e+(0|Ve(e))|0}while(0);return 0|e}(e|=0,t|=0),0|((0|r[e>>0])==(255&t)<<24>>24?e:0)}function Kn(e){return a[(e|=0)>>0]|a[e+1>>0]<<8|a[e+2>>0]<<16|a[e+3>>0]<<24|0}function Gn(e,t,n){return 0|ln(e|=0,t|=0,n|=0)}function $n(e){r[(e|=0)>>0]=0,r[e+1>>0]=0,r[e+2>>0]=0,r[e+3>>0]=0}function Yn(e){jn(e|=0),kn(e+40|0),kn(e+80|0),jn(e+120|0)}function Jn(e){i[(e|=0)>>2]=0,i[e+4>>2]=0,i[e+8>>2]=0,i[e+12>>2]=0}function Vn(e,t,n){!function(e,t,n){var r,i,a;e|=0,t|=0,r=y,a=y=y+63&-64,y=y+128|0,n=((n|=0)<<24>>24)-((0-(255&(i=0|function(e){return(255&(e|=0))>>>7|0}(n)))&n<<24>>24)<<1)&255,function(e){kn(e|=0),kn(e+40|0),jn(e+80|0)}(e),pn(e,t,0|or(n,1)),pn(e,t+120|0,0|or(n,2)),pn(e,t+240|0,0|or(n,3)),pn(e,t+360|0,0|or(n,4)),pn(e,t+480|0,0|or(n,5)),pn(e,t+600|0,0|or(n,6)),pn(e,t+720|0,0|or(n,7)),pn(e,t+840|0,0|or(n,8)),Je(a,e+40|0),Je(a+40|0,e),He(a+80|0,e+80|0),pn(e,a,i),y=r}(e|=0,1120+(960*(t|=0)|0)|0,n|=0)}function zn(e,t){return 0|function(e,t){e|=0,t|=0;var n,i,a=0;n=y,i=y=y+63&-64,y=y+208|0,a=0;do{r[e+a>>0]=0|r[t+a>>0],a=a+1|0}while(32!=(0|a));return r[e>>0]=-8&r[e>>0],r[e+31>>0]=63&r[e+31>>0]|64,ae(i+40|0,e),function(e,t,n){var r,i;e|=0,r=y,i=y=y+63&-64,y=y+96|0,Be(i+48|0,n|=0,t|=0),Ce(i,n,t),V(i,i),C(e,i+48|0,i),y=r}(i,i+40+40|0,i+40+80|0),ne(e,i),y=n,0}(e|=0,t|=0)}function qn(e,t){!function(e,t){J(e|=0,t|=0)}(e|=0,t|=0)}function Wn(e,t){!function(e,t){Qe(e|=0,t|=0)}(e|=0,t|=0)}function Xn(e,t,n){return 0|st(e|=0,t|=0,n|=0)}function Zn(e,t){return 0|function(e,t){return e|=0,Xt(t|=0,32),0|zn(e,t)}(e|=0,t|=0)}function er(e,t,n){!function(e,t,n,r,i){var a,o;e|=0,r|=0,a=y,o=y=y+63&-64,y=y+64|0,0==(0|(t|=0))&0==(0|(n|=0))||(ze(o,i|=0),It(o,r,0),ke(0|e,0,64),S(o,e,e,64,0),Et(o,64)),y=a}(e|=0,64,0,t|=0,n|=0)}function tr(e){1!=(-7&(e|=0)|0)&&kr()}function nr(e,t,n){!function(e,t,n){e|=0,t|=0;var r,i,a,o,s,c,u,l,A,f,h,p=0,d=0,g=0,y=0,v=0,m=0,b=0,I=0,w=0,C=0,B=0,E=0,_=0,k=0,Q=0,S=0,x=0,D=0,P=0,M=0,F=0,O=0,R=0,T=0,j=0,H=0,U=0,N=0,L=0,K=0,G=0,$=0;h=0|Kn(n|=0),s=0|Kn(n+4|0),c=0|Kn(n+8|0),u=0|Kn(n+12|0),l=0|Kn(n+16|0),A=0|Kn(n+20|0),f=0|Kn(n+24|0),r=0|Kn(n+28|0),i=0|Kn(t),a=0|Kn(t+4|0),o=0|Kn(t+8|0),n=0|Kn(t+12|0),t=0,p=1634760805,d=h,g=2036477234,y=l,v=A,m=f,b=r,I=1797285236,w=s,C=c,B=u,E=857760878,_=i,k=a,Q=o,S=n;do{L=(0|Ar((M=(0|Ar((R=(0|Ar((H=(0|Ar(p+v|0,7))^B)+p|0,9))^Q)+H|0,13))^v)+R|0,18))^p,j=(0|Ar(($=(0|Ar((P=(0|Ar((O=(0|Ar(d+E|0,7))^S)+E|0,9))^m)+O|0,13))^d)+P|0,18))^E,F=(0|Ar((N=(0|Ar((G=(0|Ar((D=(0|Ar(_+g|0,7))^b)+g|0,9))^w)+D|0,13))^_)+G|0,18))^g,x=(0|Ar((T=(0|Ar((U=(0|Ar((K=(0|Ar(y+I|0,7))^C)+I|0,9))^k)+K|0,13))^y)+U|0,18))^I,p=(0|Ar((C=(0|Ar((w=(0|Ar((d=(0|Ar(K+L|0,7))^$)+L|0,9))^G)+d|0,13))^K)+w|0,18))^L,E=(0|Ar((B=(0|Ar((k=(0|Ar((_=(0|Ar(j+H|0,7))^N)+j|0,9))^U)+_|0,13))^H)+k|0,18))^j,g=(0|Ar((S=(0|Ar((Q=(0|Ar((y=(0|Ar(F+O|0,7))^T)+F|0,9))^R)+y|0,13))^O)+Q|0,18))^F,I=(0|Ar((b=(0|Ar((m=(0|Ar((v=(0|Ar(x+D|0,7))^M)+x|0,9))^P)+v|0,13))^D)+m|0,18))^x,t=t+2|0}while(t>>>0<20);Pn(e,p+1634760805|0),Pn(e+4|0,d+h|0),Pn(e+8|0,w+s|0),Pn(e+12|0,C+c|0),Pn(e+16|0,B+u|0),Pn(e+20|0,E+857760878|0),Pn(e+24|0,_+i|0),Pn(e+28|0,k+a|0),Pn(e+32|0,Q+o|0),Pn(e+36|0,S+n|0),Pn(e+40|0,g+2036477234|0),Pn(e+44|0,y+l|0),Pn(e+48|0,v+A|0),Pn(e+52|0,m+f|0),Pn(e+56|0,b+r|0),Pn(e+60|0,I+1797285236|0)}(e|=0,t|=0,n|=0)}function rr(e,t){return 0|zn(e|=0,t|=0)}function ir(e,t,n){return 0|ie(e|=0,t|=0,n|=0,2)}function ar(e,t,n){return 0|ie(e|=0,t|=0,n|=0,1)}function or(e,t){return((255&((t|=0)^(e|=0)))-1|0)>>>31&255|0}function sr(e){return 0|((e|=0)?31-(0|s(e^e-1))|0:32)}function cr(e,t){return 0|rt(e|=0,t|=0,32)}function ur(e,t){return 0|rt(e|=0,t|=0,16)}function lr(e,t){te(0|(e|=0),0|(t|=0),1024)}function Ar(e,t){return(e|=0)>>>(32-(t|=0)|0)|e<<t|0}function fr(e){ke(0|(e|=0),0,1024)}function hr(e){Xt(e|=0,32)}function pr(){f(1)}function dr(){return 0|f(0)}function gr(){return-17}function yr(){return 3}function vr(){return 2}function mr(){return-1}function br(){return 1}function Ir(){return 8}function wr(){return 24}function Cr(){return 16}function Br(){return 64}function Er(){return 32}function _r(){return 0}function kr(){A()}return{___errno_location:function(){return 34712},___muldi3:Zt,___uremdi3:Vt,_bitshift64Ashr:tn,_bitshift64Lshr:fn,_bitshift64Shl:cn,_crypto_aead_chacha20poly1305_abytes:Cr,_crypto_aead_chacha20poly1305_decrypt:function(e,t,n,r,a,o,s,c,l,A,f){t|=0,n|=0,r|=0,s|=0,c|=0,l|=0,A|=0,f|=0;var h=0,p=0;return(o|=0)>>>0>0|0==(0|o)&(a|=0)>>>0>15?(o=0|ge(e|=0,0,r,n=0|Sn(0|a,0|o,-16,-1),h=0|u(),r+a+-16|0,s,c,l,A,f),t&&(a=0==(0|o)?n:0,n=0==(0|o)?h:0,p=4)):t?(a=0,n=0,o=-1,p=4):o=-1,4==(0|p)&&(i[t>>2]=a,i[t+4>>2]=n),0|o},_crypto_aead_chacha20poly1305_decrypt_detached:ge,_crypto_aead_chacha20poly1305_encrypt:function(e,t,n,r,a,o,s,c,l,A,f){return e|=0,t|=0,n|=0,o|=0,s|=0,c|=0,l|=0,A|=0,f|=0,(a|=0)>>>0>0|0==(0|a)&(r|=0)>>>0>4294967279&&kr(),_e(e,e+r|0,0,n,r,a,o,s,c,0,A,f),0|t&&(A=0|Sn(0|r,0|a,16,0),l=0|u(),i[t>>2]=A,i[t+4>>2]=l),0},_crypto_aead_chacha20poly1305_encrypt_detached:_e,_crypto_aead_chacha20poly1305_ietf_abytes:Cr,_crypto_aead_chacha20poly1305_ietf_decrypt:function(e,t,n,r,a,o,s,c,l,A,f){t|=0,n|=0,r|=0,s|=0,c|=0,l|=0,A|=0,f|=0;var h=0,p=0;return(o|=0)>>>0>0|0==(0|o)&(a|=0)>>>0>15?(o=0|oe(e|=0,0,r,n=0|Sn(0|a,0|o,-16,-1),h=0|u(),r+a+-16|0,s,c,l,A,f),t&&(a=0==(0|o)?n:0,n=0==(0|o)?h:0,p=4)):t?(a=0,n=0,o=-1,p=4):o=-1,4==(0|p)&&(i[t>>2]=a,i[t+4>>2]=n),0|o},_crypto_aead_chacha20poly1305_ietf_decrypt_detached:oe,_crypto_aead_chacha20poly1305_ietf_encrypt:function(e,t,n,r,a,o,s,c,l,A,f){return e|=0,t|=0,n|=0,o|=0,s|=0,c|=0,l|=0,A|=0,f|=0,(a|=0)>>>0>0|0==(0|a)&(r|=0)>>>0>4294967279&&kr(),he(e,e+r|0,0,n,r,a,o,s,c,0,A,f),0|t&&(A=0|Sn(0|r,0|a,16,0),l=0|u(),i[t>>2]=A,i[t+4>>2]=l),0},_crypto_aead_chacha20poly1305_ietf_encrypt_detached:he,_crypto_aead_chacha20poly1305_ietf_keybytes:Er,_crypto_aead_chacha20poly1305_ietf_keygen:hr,_crypto_aead_chacha20poly1305_ietf_messagebytes_max:gr,_crypto_aead_chacha20poly1305_ietf_npubbytes:function(){return 12},_crypto_aead_chacha20poly1305_ietf_nsecbytes:_r,_crypto_aead_chacha20poly1305_keybytes:Er,_crypto_aead_chacha20poly1305_keygen:hr,_crypto_aead_chacha20poly1305_messagebytes_max:gr,_crypto_aead_chacha20poly1305_npubbytes:Ir,_crypto_aead_chacha20poly1305_nsecbytes:_r,_crypto_aead_xchacha20poly1305_ietf_abytes:Cr,_crypto_aead_xchacha20poly1305_ietf_decrypt:function(e,t,n,r,a,o,s,c,l,A,f){t|=0,n|=0,r|=0,s|=0,c|=0,l|=0,A|=0,f|=0;var h=0,p=0;return(o|=0)>>>0>0|0==(0|o)&(a|=0)>>>0>15?(o=0|Fe(e|=0,0,r,n=0|Sn(0|a,0|o,-16,-1),h=0|u(),r+a+-16|0,s,c,l,A,f),t&&(a=0==(0|o)?n:0,n=0==(0|o)?h:0,p=4)):t?(a=0,n=0,o=-1,p=4):o=-1,4==(0|p)&&(i[t>>2]=a,i[t+4>>2]=n),0|o},_crypto_aead_xchacha20poly1305_ietf_decrypt_detached:Fe,_crypto_aead_xchacha20poly1305_ietf_encrypt:function(e,t,n,r,a,o,s,c,l,A,f){return e|=0,t|=0,n|=0,o|=0,s|=0,c|=0,l|=0,A|=0,f|=0,(a|=0)>>>0>0|0==(0|a)&(r|=0)>>>0>4294967279&&kr(),Re(e,e+r|0,0,n,r,a,o,s,c,0,A,f),0|t&&(A=0|Sn(0|r,0|a,16,0),l=0|u(),i[t>>2]=A,i[t+4>>2]=l),0},_crypto_aead_xchacha20poly1305_ietf_encrypt_detached:Re,_crypto_aead_xchacha20poly1305_ietf_keybytes:Er,_crypto_aead_xchacha20poly1305_ietf_keygen:hr,_crypto_aead_xchacha20poly1305_ietf_messagebytes_max:gr,_crypto_aead_xchacha20poly1305_ietf_npubbytes:wr,_crypto_aead_xchacha20poly1305_ietf_nsecbytes:_r,_crypto_auth:function(e,t,n,r,i){return xt(e|=0,t|=0,n|=0,r|=0,i|=0),0},_crypto_auth_bytes:Er,_crypto_auth_keybytes:Er,_crypto_auth_keygen:hr,_crypto_auth_verify:function(e,t,n,r,i){return 0|function(e,t,n,r,i){var a;return e|=0,a=y,y=y+32|0,xt(a,t|=0,n|=0,r|=0,i|=0),i=0|cr(e,a),i=0|((0|a)==(0|e)?-1:i)|tt(a,e,32),y=a,0|i}(e|=0,t|=0,n|=0,r|=0,i|=0)},_crypto_box_beforenm:Un,_crypto_box_beforenmbytes:Er,_crypto_box_detached:dt,_crypto_box_detached_afternm:un,_crypto_box_easy:Tt,_crypto_box_easy_afternm:function(e,t,n,r,i,a){return e|=0,t|=0,i|=0,a|=0,(r|=0)>>>0>0|0==(0|r)&(n|=0)>>>0>4294967279?(kr(),0):(un(e+16|0,e,t,n,r,i,a),0)},_crypto_box_keypair:Zn,_crypto_box_macbytes:Cr,_crypto_box_messagebytes_max:gr,_crypto_box_noncebytes:wr,_crypto_box_open_detached:pt,_crypto_box_open_detached_afternm:sn,_crypto_box_open_easy:Ct,_crypto_box_open_easy_afternm:function(e,t,n,r,i,a){return t|=0,i|=0,a|=0,0|((r|=0)>>>0<0|0==(0|r)&(n|=0)>>>0<16?-1:0|sn(e|=0,t+16|0,t,n=0|Sn(0|n,0|r,-16,-1),0|u(),i,a))},_crypto_box_publickeybytes:Er,_crypto_box_seal:function(e,t,n,i,a){e|=0,t|=0,n|=0,i|=0,a|=0;var o,s=0,c=0,u=0;if(o=y,y=y+96|0,0|Zn(o+32|0,o))n=-1;else{c=o+32|0,u=(s=e)+32|0;do{r[s>>0]=0|r[c>>0],s=s+1|0,c=c+1|0}while((0|s)<(0|u));wt(o+64|0,o+32|0,a),n=0|Tt(e+32|0,t,n,i,o+64|0,a,o),Et(o,32),Et(o+32|0,32),Et(o+64|0,24)}return y=o,0|n},_crypto_box_seal_open:function(e,t,n,r,i,a){var o,s;return e|=0,t|=0,i|=0,a|=0,s=y,o=y=y+63&-64,y=y+32|0,(r|=0)>>>0<0|0==(0|r)&(n|=0)>>>0<48?n=-1:(r=0|Sn(0|n,0|r,-32,-1),n=0|u(),wt(o,t,i),n=0|Ct(e,t+32|0,r,n,o,t,a)),y=s,0|n},_crypto_box_sealbytes:function(){return 48},_crypto_box_secretkeybytes:Er,_crypto_box_seed_keypair:function(e,t,n){return 0|function(e,t,n){e|=0,t|=0;var i,a,o=0,s=0;a=y,s=y=y+63&-64,y=y+64|0,Pt(s,n|=0,32,0),o=s,i=(n=t)+32|0;do{r[n>>0]=0|r[o>>0],n=n+1|0,o=o+1|0}while((0|n)<(0|i));return Et(s,64),s=0|zn(e,t),y=a,0|s}(e|=0,t|=0,n|=0)},_crypto_box_seedbytes:Er,_crypto_generichash:dn,_crypto_generichash_bytes:Er,_crypto_generichash_bytes_max:Br,_crypto_generichash_bytes_min:Cr,_crypto_generichash_final:Gn,_crypto_generichash_init:Rn,_crypto_generichash_keybytes:Er,_crypto_generichash_keybytes_max:Br,_crypto_generichash_keybytes_min:Cr,_crypto_generichash_keygen:hr,_crypto_generichash_statebytes:function(){return 384},_crypto_generichash_update:Mn,_crypto_hash:function(e,t,n,r){return Pt(e|=0,t|=0,n|=0,r|=0),0},_crypto_hash_bytes:Br,_crypto_kdf_bytes_max:Br,_crypto_kdf_bytes_min:Cr,_crypto_kdf_contextbytes:Ir,_crypto_kdf_derive_from_key:function(e,t,n,r,i,a){return 0|Me(e|=0,t|=0,n|=0,r|=0,i|=0,a|=0)},_crypto_kdf_keybytes:Er,_crypto_kdf_keygen:hr,_crypto_kx_client_session_keys:function(e,t,n,i,a){var o,s,c;if(t|=0,n|=0,i|=0,a|=0,c=y,s=y=y+63&-64,y=y+480|0,o=0==(0|(e|=0))?t:e,t=0==(0|t)?o:t,o||kr(),0|Xn(s+448|0,i,a))e=-1;else{Rn(s,0,0,64),Mn(s,s+448|0,32,0),Et(s+448|0,32),Mn(s,n,32,0),Mn(s,a,32,0),Gn(s,s+384|0,64),Et(s,384),e=0;do{r[o+e>>0]=0|r[s+384+e>>0],r[t+e>>0]=0|r[s+384+(e+32)>>0],e=e+1|0}while(32!=(0|e));Et(s+384|0,64),e=0}return y=c,0|e},_crypto_kx_keypair:function(e,t){return e|=0,Xt(t|=0,32),0|rr(e,t)},_crypto_kx_publickeybytes:Er,_crypto_kx_secretkeybytes:Er,_crypto_kx_seed_keypair:function(e,t,n){return e|=0,dn(t|=0,32,n|=0,32,0,0,0),0|rr(e,t)},_crypto_kx_seedbytes:Er,_crypto_kx_server_session_keys:function(e,t,n,i,a){var o,s,c;if(t|=0,n|=0,i|=0,a|=0,c=y,s=y=y+63&-64,y=y+480|0,o=0==(0|(e|=0))?t:e,t=0==(0|t)?o:t,o||kr(),0|Xn(s+448|0,i,a))e=-1;else{Rn(s,0,0,64),Mn(s,s+448|0,32,0),Et(s+448|0,32),Mn(s,a,32,0),Mn(s,n,32,0),Gn(s,s+384|0,64),Et(s,384),e=0;do{r[t+e>>0]=0|r[s+384+e>>0],r[o+e>>0]=0|r[s+384+(e+32)>>0],e=e+1|0}while(32!=(0|e));Et(s+384|0,64),e=0}return y=c,0|e},_crypto_kx_sessionkeybytes:Er,_crypto_pwhash:function(e,t,n,r,a,o,s,c,u,l,A){switch(e|=0,t|=0,n|=0,r|=0,a|=0,o|=0,s|=0,c|=0,u|=0,l|=0,0|(A|=0)){case 1:t=0|function(e,t,n,r,a,o,s,c,u,l){n|=0,r|=0,a|=0,o|=0,s|=0,c|=0,u|=0,l|=0,ke(0|(e|=0),0,0|(t|=0));do{if(!(n>>>0>0|0==(0|n)&t>>>0>4294967295)){if(n>>>0<0|0==(0|n)&t>>>0<16){i[8678]=28,t=-1;break}if((u|o)>>>0>0|0==(u|o|0)&(c|a)>>>0>4294967295|l>>>0>2147483648){i[8678]=22,t=-1;break}if(u>>>0<0|0==(0|u)&c>>>0<3|l>>>0<8192){i[8678]=28,t=-1;break}t=(0!=(0|yn(c,l>>>10,r,a,s,e,t)))<<31>>31;break}i[8678]=22,t=-1}while(0);return 0|t}(e,t,n,r,a,o,s,c,u,l);break;case 2:t=0|function(e,t,n,r,a,o,s,c,u,l){n|=0,r|=0,a|=0,o|=0,s|=0,c|=0,u|=0,l|=0,ke(0|(e|=0),0,0|(t|=0));do{if(!(n>>>0>0|0==(0|n)&t>>>0>4294967295)){if(n>>>0<0|0==(0|n)&t>>>0<16){i[8678]=28,t=-1;break}if((u|o)>>>0>0|0==(u|o|0)&(c|a)>>>0>4294967295|l>>>0>2147483648){i[8678]=22,t=-1;break}if(0==(0|c)&0==(0|u)|l>>>0<8192){i[8678]=28,t=-1;break}t=(0!=(0|gn(c,l>>>10,r,a,s,e,t)))<<31>>31;break}i[8678]=22,t=-1}while(0);return 0|t}(e,t,n,r,a,o,s,c,u,l);break;default:i[8678]=28,t=-1}return 0|t},_crypto_pwhash_alg_argon2i13:br,_crypto_pwhash_alg_argon2id13:vr,_crypto_pwhash_alg_default:vr,_crypto_pwhash_bytes_max:mr,_crypto_pwhash_bytes_min:Cr,_crypto_pwhash_memlimit_interactive:function(){return 67108864},_crypto_pwhash_memlimit_max:function(){return-2147483648},_crypto_pwhash_memlimit_min:function(){return 8192},_crypto_pwhash_memlimit_moderate:function(){return 268435456},_crypto_pwhash_memlimit_sensitive:function(){return 1073741824},_crypto_pwhash_opslimit_interactive:vr,_crypto_pwhash_opslimit_max:mr,_crypto_pwhash_opslimit_min:br,_crypto_pwhash_opslimit_moderate:yr,_crypto_pwhash_opslimit_sensitive:function(){return 4},_crypto_pwhash_passwd_max:mr,_crypto_pwhash_passwd_min:_r,_crypto_pwhash_saltbytes:Cr,_crypto_pwhash_str:function(e,t,n,r,i,a,o){return 0|je(e|=0,t|=0,n|=0,r|=0,i|=0,a|=0,o|=0)},_crypto_pwhash_str_alg:function(e,t,n,r,i,a,o,s){e|=0,t|=0,n|=0,r|=0,i|=0,a|=0,o|=0;var c=0;switch(0|(s|=0)){case 1:c=0|Oe(e,t,n,r,i,a,o);break;case 2:c=0|je(e,t,n,r,i,a,o);break;default:kr()}return 0|c},_crypto_pwhash_str_needs_rehash:function(e,t,n,r){e|=0,t|=0,n|=0,r|=0;do{if(0|it(e,33713,10)){if(0|it(e,33724,9)){i[8678]=28,t=-1;break}t=0|On(e,t,n,r);break}t=0|Fn(e,t,n,r)}while(0);return 0|t},_crypto_pwhash_str_verify:function(e,t,n,r){e|=0,t|=0,n|=0,r|=0;do{if(0|it(e,33713,10)){if(0|it(e,33724,9)){i[8678]=28,n=-1;break}n=0|ht(e,t,n,r);break}n=0|At(e,t,n,r)}while(0);return 0|n},_crypto_pwhash_strbytes:function(){return 128},_crypto_pwhash_strprefix:function(){return 33713},_crypto_scalarmult:Xn,_crypto_scalarmult_base:rr,_crypto_scalarmult_bytes:Er,_crypto_scalarmult_scalarbytes:Er,_crypto_secretbox_detached:q,_crypto_secretbox_easy:function(e,t,n,r,i,a){return e|=0,t|=0,i|=0,a|=0,(r|=0)>>>0>0|0==(0|r)&(n|=0)>>>0>4294967279?(kr(),0):(q(e+16|0,e,t,n,r,i,a),0)},_crypto_secretbox_keybytes:Er,_crypto_secretbox_keygen:hr,_crypto_secretbox_macbytes:Cr,_crypto_secretbox_messagebytes_max:gr,_crypto_secretbox_noncebytes:wr,_crypto_secretbox_open_detached:ee,_crypto_secretbox_open_easy:function(e,t,n,r,i,a){return t|=0,i|=0,a|=0,0|((r|=0)>>>0<0|0==(0|r)&(n|=0)>>>0<16?-1:0|ee(e|=0,t+16|0,t,n=0|Sn(0|n,0|r,-16,-1),0|u(),i,a))},_crypto_secretstream_xchacha20poly1305_abytes:function(){return 17},_crypto_secretstream_xchacha20poly1305_headerbytes:wr,_crypto_secretstream_xchacha20poly1305_init_pull:function(e,t,n){var i;return R(e|=0,t|=0,n|=0),_n(e),i=a[t+16>>0]|a[t+16+1>>0]<<8|a[t+16+2>>0]<<16|a[t+16+3>>0]<<24,n=a[t+16+4>>0]|a[t+16+4+1>>0]<<8|a[t+16+4+2>>0]<<16|a[t+16+4+3>>0]<<24,r[e+36>>0]=i,r[e+36+1>>0]=i>>8,r[e+36+2>>0]=i>>16,r[e+36+3>>0]=i>>24,r[e+36+4>>0]=n,r[e+36+4+1>>0]=n>>8,r[e+36+4+2>>0]=n>>16,r[e+36+4+3>>0]=n>>24,r[e+44>>0]=0,r[e+44+1>>0]=0,r[e+44+2>>0]=0,r[e+44+3>>0]=0,r[e+44+4>>0]=0,r[e+44+4+1>>0]=0,r[e+44+4+2>>0]=0,r[e+44+4+3>>0]=0,0},_crypto_secretstream_xchacha20poly1305_init_push:function(e,t,n){return e|=0,n|=0,Xt(t|=0,24),R(e,t,n),_n(e),n=a[t+16>>0]|a[t+16+1>>0]<<8|a[t+16+2>>0]<<16|a[t+16+3>>0]<<24,t=a[t+16+4>>0]|a[t+16+4+1>>0]<<8|a[t+16+4+2>>0]<<16|a[t+16+4+3>>0]<<24,r[e+36>>0]=n,r[e+36+1>>0]=n>>8,r[e+36+2>>0]=n>>16,r[e+36+3>>0]=n>>24,r[e+36+4>>0]=t,r[e+36+4+1>>0]=t>>8,r[e+36+4+2>>0]=t>>16,r[e+36+4+3>>0]=t>>24,r[e+44>>0]=0,r[e+44+1>>0]=0,r[e+44+2>>0]=0,r[e+44+3>>0]=0,r[e+44+4>>0]=0,r[e+44+4+1>>0]=0,r[e+44+4+2>>0]=0,r[e+44+4+3>>0]=0,0},_crypto_secretstream_xchacha20poly1305_keybytes:Er,_crypto_secretstream_xchacha20poly1305_keygen:hr,_crypto_secretstream_xchacha20poly1305_messagebytes_max:function(){return-18},_crypto_secretstream_xchacha20poly1305_pull:function(e,t,n,a,o,s,c,l,A,f){e|=0,t|=0,a|=0,o|=0,s|=0,c|=0,l|=0,A|=0,f|=0;var h,p,d=0,g=0,v=0;p=y,h=y=y+63&-64,y=y+352|0,0|(n|=0)&&(i[n>>2]=0,i[n+4>>2]=0),0|a&&(r[a>>0]=-1);do{if(c>>>0<0|0==(0|c)&s>>>0<17)l=-1;else{g=0|Sn(0|s,0|c,-17,-1),(v=0|u())>>>0>0|0==(0|v)&g>>>0>4294967278&&kr(),$t(h+16|0,64,0,e+32|0,e),Wn(h+80|0,h+16|0),Et(h+16|0,64),xn(h+80|0,l,A,f),l=0|Qn(0,0,0|A,0|f),u(),xn(h+80|0,34672,15&l,0),d=64+(l=h+16|0)|0;do{i[l>>2]=0,l=l+4|0}while((0|l)<(0|d));if(r[h+16>>0]=0|r[o>>0],ct(h+16|0,h+16|0,64,0,e+32|0,1,e),l=0|r[h+16>>0],r[h+16>>0]=0|r[o>>0],xn(h+80|0,h+16|0,64,0),xn(h+80|0,o+1|0,g,v),d=0|Sn(0|s,0|c,15,0),u(),xn(h+80|0,34672,15&d,0),Ot(h+336|0,A,f),xn(h+80|0,h+336|0,8,0),Ot(h+336|0,f=0|Sn(0|s,0|c,47,0),0|u()),xn(h+80|0,h+336|0,8,0),qn(h+80|0,h),Et(h+80|0,256),0|tt(h,o+1+g|0,16)){Et(h,16),l=-1;break}ct(t,o+1|0,g,v,e+32|0,2,e),on(e+36|0,h),zt(e+32|0),(0!=(2&l)||0|bt(e+32|0,4))&&pe(e),0|n&&(i[n>>2]=g,i[n+4>>2]=v),0|a?(r[a>>0]=l,l=0):l=0}}while(0);return y=p,0|l},_crypto_secretstream_xchacha20poly1305_push:function(e,t,n,a,o,s,c,l,A,f){e|=0,t|=0,a|=0,o|=0,s|=0,c|=0,l|=0,A|=0,f|=0;var h,p,d=0;p=y,d=y=y+63&-64,y=y+336|0,0|(n|=0)&&(i[n>>2]=0,i[n+4>>2]=0),s>>>0>0|0==(0|s)&o>>>0>4294967278&&kr(),$t(d,64,0,e+32|0,e),Wn(d+64|0,d),Et(d,64),xn(d+64|0,c,l,A),c=0|Qn(0,0,0|l,0|A),u(),xn(d+64|0,34672,15&c,0),h=(c=d)+64|0;do{i[c>>2]=0,c=c+4|0}while((0|c)<(0|h));return r[d>>0]=f,ct(d,d,64,0,e+32|0,1,e),xn(d+64|0,d,64,0),r[t>>0]=0|r[d>>0],ct(t+1|0,a,o,s,e+32|0,2,e),xn(d+64|0,t+1|0,o,s),xn(d+64|0,34672,15&o,0),Ot(d+320|0,l,A),xn(d+64|0,d+320|0,8,0),Ot(d+320|0,a=0|Sn(0|o,0|s,64,0),0|u()),xn(d+64|0,d+320|0,8,0),qn(d+64|0,t+1+o|0),Et(d+64|0,256),on(e+36|0,t+1+o|0),zt(e+32|0),(0!=(2&f)||0|bt(e+32|0,4))&&pe(e),0|n&&(f=0|Sn(0|o,0|s,17,0),d=0|u(),i[n>>2]=f,i[n+4>>2]=d),y=p,0},_crypto_secretstream_xchacha20poly1305_rekey:pe,_crypto_secretstream_xchacha20poly1305_statebytes:function(){return 52},_crypto_secretstream_xchacha20poly1305_tag_final:yr,_crypto_secretstream_xchacha20poly1305_tag_message:_r,_crypto_secretstream_xchacha20poly1305_tag_push:br,_crypto_secretstream_xchacha20poly1305_tag_rekey:vr,_crypto_shorthash:function(e,t,n,r,i){return function(e,t,n,r,i){e|=0,t|=0,n|=0,r|=0;var o=0,s=0,c=0,l=0,A=0,f=0,h=0,p=0,d=0,g=0,y=0,v=0,m=0,b=0,I=0,w=0,C=0;if(f=0|Nt(i|=0),p=0|u(),o=0|Nt(i+8|0),s=0|u(),r=0|cn(0|n,0|r,56),i=0|u(),(t+n+(0-(7&n))|0)==(0|t))y=2037671283^o,c=1952801890^s,g=1886610805^f,h=1936682341^p,A=1852075885^o,l=1685025377^s,I=1852142177^f,o=1819895653^p,s=t;else for(b=2037671283^o,c=1952801890^s,y=1886610805^f,h=1936682341^p,A=1852075885^o,l=1685025377^s,s=1852142177^f,o=1819895653^p,g=t;;){if(C=(v=0|Nt(g))^b,c^=m=0|u(),I=0|Sn(0|y,0|h,0|A,0|l),b=0|u(),f=0|Jt(A,l,13),A=(0|u())^b,l=0|Jt(I,b,32),b=0|u(),p=0|Sn(0|C,0|c,0|s,0|o),d=0|u(),b=0|Sn((c=0|Jt(C,c,16))^p|0,0|(s=(0|u())^d),0|l,0|b),l=0|u(),s=0|Jt(c^p,s,21),c=l^(0|u()),d=0|Sn(0|p,0|d,f^I|0,0|A),p=0|u(),A=0|Jt(f^I,A,17),o=(0|u())^p,p=0|Jt(d,p,32),I=0|u(),l=0|Sn(A^d|0,0|o,0|b,0|l),f=0|u(),o=0|Jt(A^d,o,13),d=(0|u())^f,f=0|Jt(l,f,32),A=0|u(),I=0|Sn(0|p,0|I,b^s|0,0|c),p=0|u(),A=0|Sn((c=0|Jt(b^s,c,16))^I|0,0|(s=(0|u())^p),0|f,0|A),f=0|u(),s=0|Jt(c^I,s,21),c=f^(0|u()),p=0|Sn(o^l|0,0|d,0|I,0|p),I=0|u(),d=0|Jt(o^l,d,17),l=(0|u())^I,I=0|Jt(p,I,32),o=0|u(),(0|(g=g+8|0))==(t+n+(0-(7&n))|0)){y=A^s,g=A^v,h=f^m,A=d^p,s=t+n+(0-(7&n))|0;break}b=A^s,y=A^v,h=f^m,A=d^p,s=I}switch(7&n){case 7:w=0|cn(0|a[s+6>>0],0,48),i=0|u()|i,r|=w,w=6;break;case 6:w=6;break;case 5:w=7;break;case 4:w=8;break;case 3:w=9;break;case 2:w=10;break;case 1:w=11}6==(0|w)&&(C=0|cn(0|a[s+5>>0],0,40),i=0|u()|i,r|=C,w=7),7==(0|w)&&(i=0|a[s+4>>0]|i,w=8),8==(0|w)&&(r|=C=0|cn(0|a[s+3>>0],0,24),i=0|u()|i,w=9),9==(0|w)&&(r|=C=0|cn(0|a[s+2>>0],0,16),i=0|u()|i,w=10),10==(0|w)&&(r|=C=0|cn(0|a[s+1>>0],0,8),i=0|u()|i,w=11),11==(0|w)&&(r=0|r|a[s>>0]),n=r^y,m=i^c,g=0|Sn(0|g,0|h,0|A,0|l),y=0|u(),v=0|Jt(A,l,13),t=(0|u())^y,y=0|Jt(g,y,32),w=0|u(),I=0|Sn(0|n,0|m,0|I,0|o),C=0|u(),w=0|Sn((m=0|Jt(n,m,16))^I|0,0|(n=(0|u())^C),0|y,0|w),y=0|u(),n=0|Jt(m^I,n,21),m=y^(0|u()),C=0|Sn(0|I,0|C,v^g|0,0|t),I=0|u(),t=0|Jt(v^g,t,17),g=(0|u())^I,I=0|Jt(C,I,32),v=0|u(),y=0|Sn(t^C|0,0|g,0|w,0|y),b=0|u(),g=0|Jt(t^C,g,13),C=(0|u())^b,b=0|Jt(y,b,32),t=0|u(),v=0|Sn(0|I,0|v,w^n|0,0|m),I=0|u(),t=0|Sn((m=0|Jt(w^n,m,16))^v|0,0|(n=(0|u())^I),0|b,0|t),b=0|u(),n=0|Jt(m^v,n,21),m=b^(0|u()),I=0|Sn(g^y|0,0|C,0|v,0|I),v=0|u(),C=0|Jt(g^y,C,17),y=(0|u())^v,v=0|Jt(I,v,32),g=0|u(),b=0|Sn(t^r|0,b^i|0,C^I|0,0|y),w=0|u(),y=0|Jt(C^I,y,13),I=(0|u())^w,w=0|Jt(b,w,32),C=0|u(),g=0|Sn(255^v|0,0|g,t^n|0,0|m),v=0|u(),C=0|Sn((m=0|Jt(t^n,m,16))^g|0,0|(n=(0|u())^v),0|w,0|C),w=0|u(),n=0|Jt(m^g,n,21),m=w^(0|u()),v=0|Sn(0|g,0|v,y^b|0,0|I),g=0|u(),I=0|Jt(y^b,I,17),b=(0|u())^g,g=0|Jt(v,g,32),y=0|u(),w=0|Sn(I^v|0,0|b,0|C,0|w),t=0|u(),b=0|Jt(I^v,b,13),v=(0|u())^t,t=0|Jt(w,t,32),I=0|u(),y=0|Sn(0|g,0|y,C^n|0,0|m),g=0|u(),I=0|Sn((m=0|Jt(C^n,m,16))^y|0,0|(n=(0|u())^g),0|t,0|I),t=0|u(),n=0|Jt(m^y,n,21),m=t^(0|u()),g=0|Sn(b^w|0,0|v,0|y,0|g),y=0|u(),v=0|Jt(b^w,v,17),w=(0|u())^y,y=0|Jt(g,y,32),b=0|u(),t=0|Sn(v^g|0,0|w,0|I,0|t),C=0|u(),w=0|Jt(v^g,w,13),g=(0|u())^C,C=0|Jt(t,C,32),v=0|u(),b=0|Sn(0|y,0|b,I^n|0,0|m),y=0|u(),v=0|Sn((m=0|Jt(I^n,m,16))^b|0,0|(n=(0|u())^y),0|C,0|v),C=0|u(),n=0|Jt(m^b,n,21),m=C^(0|u()),y=0|Sn(w^t|0,0|g,0|b,0|y),b=0|u(),g=0|Jt(w^t,g,17),t=(0|u())^b,b=0|Jt(y,b,32),w=0|u(),C=0|Sn(g^y|0,0|t,0|v,0|C),I=0|u(),t=0|Jt(g^y,t,13),I=(0|u())^I,w=0|Sn(0|b,0|w,v^n|0,0|m),b=0|u(),m=0|Jt((m=0|Jt(v^n,m,16))^w,(0|u())^b,21),n=0|u(),b=0|Sn(t^C|0,0|I,0|w,0|b),w=0|u(),I=0|Jt(t^C,I,17),C=0|u(),Ot(e,m^b^I^(t=0|Jt(b,w,32)),n^w^C^(0|u()))}(e|=0,t|=0,n|=0,r|=0,i|=0),0},_crypto_shorthash_bytes:Ir,_crypto_shorthash_keybytes:Cr,_crypto_shorthash_keygen:function(e){Xt(e|=0,16)},_crypto_sign:function(e,t,n,r,i,a){return 0|Ke(e|=0,t|=0,n|=0,r|=0,i|=0,a|=0)},_crypto_sign_bytes:Br,_crypto_sign_detached:function(e,t,n,r,i,a){return bn(e|=0,t|=0,n|=0,r|=0,i|=0,a|=0),0},_crypto_sign_ed25519_pk_to_curve25519:function(e,t){var n,r;return e|=0,r=y,n=y=y+63&-64,y=y+256|0,0==(0|Ee(t|=0))&&0==(0|Ae(n+88|0,t))&&0!=(0|function(e){var t,n;return t=y,n=y=y+63&-64,y=y+160|0,z(n,e|=0),e=0|an(n),y=t,0|e}(n+88|0))?(kn(n),Ce(n,n,n+88+40|0),kn(n+48|0),Be(n+48|0,n+48|0,n+88+40|0),V(n,n),C(n+48|0,n+48|0,n),ne(e,n+48|0),e=0):e=-1,y=r,0|e},_crypto_sign_ed25519_sk_to_curve25519:function(e,t){var n,i,a;e|=0,i=y,a=y=y+63&-64,y=y+64|0,Pt(a,t|=0,32,0),r[a>>0]=-8&r[a>>0],r[a+31>>0]=63&r[a+31>>0]|64,t=a,n=e+32|0;do{r[e>>0]=0|r[t>>0],e=e+1|0,t=t+1|0}while((0|e)<(0|n));return Et(a,64),y=i,0},_crypto_sign_final_create:function(e,t,n,r){return function(e,t,n,r){var i,a;t|=0,n|=0,r|=0,i=y,a=y=y+63&-64,y=y+64|0,Lt(e|=0,a),ye(t,n,a,64,0,r,1),y=i}(e|=0,t|=0,n|=0,r|=0),0},_crypto_sign_final_verify:function(e,t,n){return 0|function(e,t,n){var r,i;return t|=0,n|=0,r=y,i=y=y+63&-64,y=y+64|0,Lt(e|=0,i),e=0|Ie(t,i,64,0,n,1),y=r,0|e}(e|=0,t|=0,n|=0)},_crypto_sign_init:function(e){return function(e){Dt(e|=0)}(e|=0),0},_crypto_sign_keypair:function(e,t){return function(e,t){var n,r;e|=0,t|=0,n=y,r=y=y+63&-64,y=y+32|0,Xt(r,32),lt(e,t,r),Et(r,32),y=n}(e|=0,t|=0),0},_crypto_sign_messagebytes_max:function(){return-65},_crypto_sign_open:function(e,t,n,r,i,a){return 0|Se(e|=0,t|=0,n|=0,r|=0,i|=0,a|=0)},_crypto_sign_publickeybytes:Er,_crypto_sign_secretkeybytes:Br,_crypto_sign_seed_keypair:function(e,t,n){return lt(e|=0,t|=0,n|=0),0},_crypto_sign_seedbytes:Er,_crypto_sign_statebytes:function(){return 208},_crypto_sign_update:function(e,t,n,r){return Tn(e|=0,t|=0,n|=0,r|=0),0},_crypto_sign_verify_detached:function(e,t,n,r,i){return 0|Bn(e|=0,t|=0,n|=0,r|=0,i|=0)},_emscripten_get_sbrk_ptr:function(){return 35232},_emscripten_replace_memory:function(e){return r=new Int8Array(e),a=new Uint8Array(e),i=new Int32Array(e),n=e,!0},_free:k,_i64Add:Sn,_i64Subtract:Qn,_malloc:I,_memcpy:te,_memmove:Bt,_memset:ke,_randombytes:function(e,t,n){(n|=0)>>>0<1|1==(0|n)&(t|=0)>>>0<0?Xt(e|=0,t):l(34506,34526,197,34552)},_randombytes_buf:Xt,_randombytes_buf_deterministic:function(e,t,n){$t(e|=0,t|=0,0,34494,n|=0)},_randombytes_close:_r,_randombytes_random:dr,_randombytes_seedbytes:Er,_randombytes_stir:pr,_randombytes_uniform:function(e){var t=0;if((e|=0)>>>0<2)t=0;else{do{t=0|dr()}while(t>>>0<(((0-e|0)>>>0)%(e>>>0)|0)>>>0);t=(t>>>0)%(e>>>0)|0}return 0|t},_sodium_base642bin:j,_sodium_base64_encoded_len:function(e,t){var n;return e|=0,tr(t|=0),(((e>>>0)/3|0)<<2|1)+(4-(3-(n=(0|o((e>>>0)/3|0,-3))+e|0)&0-(t>>>1&1))&0-(1&(n>>>1|n)))|0},_sodium_bin2base64:$,_sodium_bin2hex:function(e,t,n,i){e|=0,n|=0;var o=0,s=0;if((i|=0)>>>0<2147483647&i<<1>>>0<(t|=0)>>>0||kr(),i){t=0;do{s=0|a[n+t>>0],r[e+(o=t<<1)>>0]=87+(s>>>4)+((65526+(s>>>4)|0)>>>8&217),r[e+(1|o)>>0]=(22272+((15&s)<<8)+(65526+(15&s)&55552)|0)>>>8,t=t+1|0}while((0|t)!=(0|i));t=i<<1}else t=0;return r[e+t>>0]=0,0|e},_sodium_hex2bin:function(e,t,n,o,s,c,u){e|=0,t|=0,n|=0,o|=0,s|=0,c|=0,u|=0;var l=0,A=0,f=0,h=0,p=0,d=0,g=0;e:do{if(o){h=0,d=0,l=0,A=0;t:for(;;){for(;!(255&((p=(65526+(201+(223&(f=0|a[n+l>>0]))&255)^65520+(201+(223&f)&255))>>>8)|(65526+(48^f)|0)>>>8)|0);){if(!(0!=(0|s)&A<<24>>24==0)){f=0;break t}if(!(0|Ln(s,f))){A=h,g=17;break e}if(!((l=l+1|0)>>>0<o>>>0)){A=h,g=17;break e}A=0}if(f=p&201+(223&f)|(65526+(48^f)|0)>>>8&(48^f),h>>>0>=t>>>0){g=9;break}if(A<<24>>24?(r[e+h>>0]=f|255&d,h=h+1|0,f=d):f=f<<4&255,A=~A,!((l=l+1|0)>>>0<o>>>0)){f=0;break}d=f}if(9==(0|g)&&(i[8678]=68,f=-1),A<<24>>24){i[8678]=28,f=0,A=l+-1|0,l=-1;break}if(f){f=0,A=l,l=-1;break}A=h,g=17;break}A=0,l=0,g=17}while(0);return 17==(0|g)&&(f=A,A=l,l=0),u?i[u>>2]=n+A:(0|A)!=(0|o)&&(i[8678]=28,l=-1),0|c&&(i[c>>2]=f),0|l},_sodium_init:function(){var e=0;return 0|i[8676]?e=1:(function(){return e=y,t=y=y+63&-64,y=y+16|0,Jn(t),0|i[t>>2]&&Jn(t),void(y=e);var e,t}(),pr(),function(){var e=0;(0|(e=0|g(30)))>0?i[8677]=e:e=0|i[8677],e>>>0<16?kr():Xt(34688,16)}(),i[8676]=1,e=0),0|e},_sodium_library_minimal:br,_sodium_library_version_major:function(){return 10},_sodium_library_version_minor:yr,_sodium_pad:function(e,t,n,o,s){e|=0,t|=0,n|=0,s|=0;var c,u,l=0,A=0;if(u=y,c=y=y+63&-64,y=y+16|0,o|=0)if((A=o+-1-(l=o+-1&o?(n>>>0)%(o>>>0)|0:o+-1&n)|0)>>>0>=~n>>>0&&kr(),(A+n|0)>>>0<s>>>0){0|e&&(i[e>>2]=A+n+1),r[c>>0]=0,l=0;do{e=((l^A)-1|0)>>>24,r[(s=t+(A+n)+(0-l)|0)>>0]=128&e|r[c>>0]&r[s>>0]&255,r[c>>0]=0|e|a[c>>0],l=l+1|0}while((0|l)!=(0|o));l=0}else l=-1;else l=-1;return y=u,0|l},_sodium_unpad:function(e,t,n,r){e|=0,t|=0,n|=0,r|=0;var o,s,c=0,u=0,l=0,A=0,f=0;if(s=y,o=y=y+63&-64,y=y+16|0,i[o>>2]=0,(r+-1|0)>>>0<n>>>0){for(c=0,l=0,A=0;c&=255,u=0|a[t+(n+-1)+(0-l)>>0],f=(511+(0|i[o>>2])&c+511&511+(128^u))>>>8&1,i[o>>2]=l&0-f|i[o>>2],A=f|255&A,(0|(l=l+1|0))!=(0|r);)c|=u;i[e>>2]=n+-1-(0|i[o>>2]),c=A+-1|0}else c=-1;return y=s,0|c},_sodium_version_string:function(){return 34617},establishStackSpace:function(e,t){y=e|=0},stackAlloc:function(e){var t;return t=y,y=15+(y=y+(e|=0)|0)&-16,0|t},stackRestore:function(e){y=e|=0},stackSave:function(){return 0|y}}}({Math:Math,Int8Array:Int8Array,Int32Array:Int32Array,Uint8Array:Uint8Array},{a:W,b:function(e){B=e},c:function(){return B},d:function(e,t,n,r){W("Assertion failed: "+O(e)+", at: "+[t?O(t):"unknown filename",n,r?O(r):"unknown function"])},e:ue,f:function(){W()},g:function(e){return re[e]()},h:se,i:function(e,t,n){S.set(S.subarray(t,t+n),e)},j:function(e){var t=se();if(e>2130706432)return!1;for(var n=Math.max(t,16777216);n<e;)n=n<=536870912?R(2*n,16777216):Math.min(R((3*n+2147483648)/4,16777216),2130706432);return!!ce(n)},k:function(e){switch(e){case 30:return 16384;case 85:return 130048;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==("undefined"==typeof navigator?"undefined":u(navigator))&&navigator.hardwareConcurrency||1}return ue(28),-1},l:function(e){W("OOM")},m:ie,n:ae,o:ce,p:oe,q:function(){var e=oe();return r.extraStackTrace&&(e+="\n"+r.extraStackTrace()),ae(e)},r:35408},k),ye=(r.___errno_location=ge.___errno_location,r.___muldi3=ge.___muldi3,r.___uremdi3=ge.___uremdi3,r._bitshift64Ashr=ge._bitshift64Ashr,r._bitshift64Lshr=ge._bitshift64Lshr,r._bitshift64Shl=ge._bitshift64Shl,r._crypto_aead_chacha20poly1305_abytes=ge._crypto_aead_chacha20poly1305_abytes,r._crypto_aead_chacha20poly1305_decrypt=ge._crypto_aead_chacha20poly1305_decrypt,r._crypto_aead_chacha20poly1305_decrypt_detached=ge._crypto_aead_chacha20poly1305_decrypt_detached,r._crypto_aead_chacha20poly1305_encrypt=ge._crypto_aead_chacha20poly1305_encrypt,r._crypto_aead_chacha20poly1305_encrypt_detached=ge._crypto_aead_chacha20poly1305_encrypt_detached,r._crypto_aead_chacha20poly1305_ietf_abytes=ge._crypto_aead_chacha20poly1305_ietf_abytes,r._crypto_aead_chacha20poly1305_ietf_decrypt=ge._crypto_aead_chacha20poly1305_ietf_decrypt,r._crypto_aead_chacha20poly1305_ietf_decrypt_detached=ge._crypto_aead_chacha20poly1305_ietf_decrypt_detached,r._crypto_aead_chacha20poly1305_ietf_encrypt=ge._crypto_aead_chacha20poly1305_ietf_encrypt,r._crypto_aead_chacha20poly1305_ietf_encrypt_detached=ge._crypto_aead_chacha20poly1305_ietf_encrypt_detached,r._crypto_aead_chacha20poly1305_ietf_keybytes=ge._crypto_aead_chacha20poly1305_ietf_keybytes,r._crypto_aead_chacha20poly1305_ietf_keygen=ge._crypto_aead_chacha20poly1305_ietf_keygen,r._crypto_aead_chacha20poly1305_ietf_messagebytes_max=ge._crypto_aead_chacha20poly1305_ietf_messagebytes_max,r._crypto_aead_chacha20poly1305_ietf_npubbytes=ge._crypto_aead_chacha20poly1305_ietf_npubbytes,r._crypto_aead_chacha20poly1305_ietf_nsecbytes=ge._crypto_aead_chacha20poly1305_ietf_nsecbytes,r._crypto_aead_chacha20poly1305_keybytes=ge._crypto_aead_chacha20poly1305_keybytes,r._crypto_aead_chacha20poly1305_keygen=ge._crypto_aead_chacha20poly1305_keygen,r._crypto_aead_chacha20poly1305_messagebytes_max=ge._crypto_aead_chacha20poly1305_messagebytes_max,r._crypto_aead_chacha20poly1305_npubbytes=ge._crypto_aead_chacha20poly1305_npubbytes,r._crypto_aead_chacha20poly1305_nsecbytes=ge._crypto_aead_chacha20poly1305_nsecbytes,r._crypto_aead_xchacha20poly1305_ietf_abytes=ge._crypto_aead_xchacha20poly1305_ietf_abytes,r._crypto_aead_xchacha20poly1305_ietf_decrypt=ge._crypto_aead_xchacha20poly1305_ietf_decrypt,r._crypto_aead_xchacha20poly1305_ietf_decrypt_detached=ge._crypto_aead_xchacha20poly1305_ietf_decrypt_detached,r._crypto_aead_xchacha20poly1305_ietf_encrypt=ge._crypto_aead_xchacha20poly1305_ietf_encrypt,r._crypto_aead_xchacha20poly1305_ietf_encrypt_detached=ge._crypto_aead_xchacha20poly1305_ietf_encrypt_detached,r._crypto_aead_xchacha20poly1305_ietf_keybytes=ge._crypto_aead_xchacha20poly1305_ietf_keybytes,r._crypto_aead_xchacha20poly1305_ietf_keygen=ge._crypto_aead_xchacha20poly1305_ietf_keygen,r._crypto_aead_xchacha20poly1305_ietf_messagebytes_max=ge._crypto_aead_xchacha20poly1305_ietf_messagebytes_max,r._crypto_aead_xchacha20poly1305_ietf_npubbytes=ge._crypto_aead_xchacha20poly1305_ietf_npubbytes,r._crypto_aead_xchacha20poly1305_ietf_nsecbytes=ge._crypto_aead_xchacha20poly1305_ietf_nsecbytes,r._crypto_auth=ge._crypto_auth,r._crypto_auth_bytes=ge._crypto_auth_bytes,r._crypto_auth_keybytes=ge._crypto_auth_keybytes,r._crypto_auth_keygen=ge._crypto_auth_keygen,r._crypto_auth_verify=ge._crypto_auth_verify,r._crypto_box_beforenm=ge._crypto_box_beforenm,r._crypto_box_beforenmbytes=ge._crypto_box_beforenmbytes,r._crypto_box_detached=ge._crypto_box_detached,r._crypto_box_detached_afternm=ge._crypto_box_detached_afternm,r._crypto_box_easy=ge._crypto_box_easy,r._crypto_box_easy_afternm=ge._crypto_box_easy_afternm,r._crypto_box_keypair=ge._crypto_box_keypair,r._crypto_box_macbytes=ge._crypto_box_macbytes,r._crypto_box_messagebytes_max=ge._crypto_box_messagebytes_max,r._crypto_box_noncebytes=ge._crypto_box_noncebytes,r._crypto_box_open_detached=ge._crypto_box_open_detached,r._crypto_box_open_detached_afternm=ge._crypto_box_open_detached_afternm,r._crypto_box_open_easy=ge._crypto_box_open_easy,r._crypto_box_open_easy_afternm=ge._crypto_box_open_easy_afternm,r._crypto_box_publickeybytes=ge._crypto_box_publickeybytes,r._crypto_box_seal=ge._crypto_box_seal,r._crypto_box_seal_open=ge._crypto_box_seal_open,r._crypto_box_sealbytes=ge._crypto_box_sealbytes,r._crypto_box_secretkeybytes=ge._crypto_box_secretkeybytes,r._crypto_box_seed_keypair=ge._crypto_box_seed_keypair,r._crypto_box_seedbytes=ge._crypto_box_seedbytes,r._crypto_generichash=ge._crypto_generichash,r._crypto_generichash_bytes=ge._crypto_generichash_bytes,r._crypto_generichash_bytes_max=ge._crypto_generichash_bytes_max,r._crypto_generichash_bytes_min=ge._crypto_generichash_bytes_min,r._crypto_generichash_final=ge._crypto_generichash_final,r._crypto_generichash_init=ge._crypto_generichash_init,r._crypto_generichash_keybytes=ge._crypto_generichash_keybytes,r._crypto_generichash_keybytes_max=ge._crypto_generichash_keybytes_max,r._crypto_generichash_keybytes_min=ge._crypto_generichash_keybytes_min,r._crypto_generichash_keygen=ge._crypto_generichash_keygen,r._crypto_generichash_statebytes=ge._crypto_generichash_statebytes,r._crypto_generichash_update=ge._crypto_generichash_update,r._crypto_hash=ge._crypto_hash,r._crypto_hash_bytes=ge._crypto_hash_bytes,r._crypto_kdf_bytes_max=ge._crypto_kdf_bytes_max,r._crypto_kdf_bytes_min=ge._crypto_kdf_bytes_min,r._crypto_kdf_contextbytes=ge._crypto_kdf_contextbytes,r._crypto_kdf_derive_from_key=ge._crypto_kdf_derive_from_key,r._crypto_kdf_keybytes=ge._crypto_kdf_keybytes,r._crypto_kdf_keygen=ge._crypto_kdf_keygen,r._crypto_kx_client_session_keys=ge._crypto_kx_client_session_keys,r._crypto_kx_keypair=ge._crypto_kx_keypair,r._crypto_kx_publickeybytes=ge._crypto_kx_publickeybytes,r._crypto_kx_secretkeybytes=ge._crypto_kx_secretkeybytes,r._crypto_kx_seed_keypair=ge._crypto_kx_seed_keypair,r._crypto_kx_seedbytes=ge._crypto_kx_seedbytes,r._crypto_kx_server_session_keys=ge._crypto_kx_server_session_keys,r._crypto_kx_sessionkeybytes=ge._crypto_kx_sessionkeybytes,r._crypto_pwhash=ge._crypto_pwhash,r._crypto_pwhash_alg_argon2i13=ge._crypto_pwhash_alg_argon2i13,r._crypto_pwhash_alg_argon2id13=ge._crypto_pwhash_alg_argon2id13,r._crypto_pwhash_alg_default=ge._crypto_pwhash_alg_default,r._crypto_pwhash_bytes_max=ge._crypto_pwhash_bytes_max,r._crypto_pwhash_bytes_min=ge._crypto_pwhash_bytes_min,r._crypto_pwhash_memlimit_interactive=ge._crypto_pwhash_memlimit_interactive,r._crypto_pwhash_memlimit_max=ge._crypto_pwhash_memlimit_max,r._crypto_pwhash_memlimit_min=ge._crypto_pwhash_memlimit_min,r._crypto_pwhash_memlimit_moderate=ge._crypto_pwhash_memlimit_moderate,r._crypto_pwhash_memlimit_sensitive=ge._crypto_pwhash_memlimit_sensitive,r._crypto_pwhash_opslimit_interactive=ge._crypto_pwhash_opslimit_interactive,r._crypto_pwhash_opslimit_max=ge._crypto_pwhash_opslimit_max,r._crypto_pwhash_opslimit_min=ge._crypto_pwhash_opslimit_min,r._crypto_pwhash_opslimit_moderate=ge._crypto_pwhash_opslimit_moderate,r._crypto_pwhash_opslimit_sensitive=ge._crypto_pwhash_opslimit_sensitive,r._crypto_pwhash_passwd_max=ge._crypto_pwhash_passwd_max,r._crypto_pwhash_passwd_min=ge._crypto_pwhash_passwd_min,r._crypto_pwhash_saltbytes=ge._crypto_pwhash_saltbytes,r._crypto_pwhash_str=ge._crypto_pwhash_str,r._crypto_pwhash_str_alg=ge._crypto_pwhash_str_alg,r._crypto_pwhash_str_needs_rehash=ge._crypto_pwhash_str_needs_rehash,r._crypto_pwhash_str_verify=ge._crypto_pwhash_str_verify,r._crypto_pwhash_strbytes=ge._crypto_pwhash_strbytes,r._crypto_pwhash_strprefix=ge._crypto_pwhash_strprefix,r._crypto_scalarmult=ge._crypto_scalarmult,r._crypto_scalarmult_base=ge._crypto_scalarmult_base,r._crypto_scalarmult_bytes=ge._crypto_scalarmult_bytes,r._crypto_scalarmult_scalarbytes=ge._crypto_scalarmult_scalarbytes,r._crypto_secretbox_detached=ge._crypto_secretbox_detached,r._crypto_secretbox_easy=ge._crypto_secretbox_easy,r._crypto_secretbox_keybytes=ge._crypto_secretbox_keybytes,r._crypto_secretbox_keygen=ge._crypto_secretbox_keygen,r._crypto_secretbox_macbytes=ge._crypto_secretbox_macbytes,r._crypto_secretbox_messagebytes_max=ge._crypto_secretbox_messagebytes_max,r._crypto_secretbox_noncebytes=ge._crypto_secretbox_noncebytes,r._crypto_secretbox_open_detached=ge._crypto_secretbox_open_detached,r._crypto_secretbox_open_easy=ge._crypto_secretbox_open_easy,r._crypto_secretstream_xchacha20poly1305_abytes=ge._crypto_secretstream_xchacha20poly1305_abytes,r._crypto_secretstream_xchacha20poly1305_headerbytes=ge._crypto_secretstream_xchacha20poly1305_headerbytes,r._crypto_secretstream_xchacha20poly1305_init_pull=ge._crypto_secretstream_xchacha20poly1305_init_pull,r._crypto_secretstream_xchacha20poly1305_init_push=ge._crypto_secretstream_xchacha20poly1305_init_push,r._crypto_secretstream_xchacha20poly1305_keybytes=ge._crypto_secretstream_xchacha20poly1305_keybytes,r._crypto_secretstream_xchacha20poly1305_keygen=ge._crypto_secretstream_xchacha20poly1305_keygen,r._crypto_secretstream_xchacha20poly1305_messagebytes_max=ge._crypto_secretstream_xchacha20poly1305_messagebytes_max,r._crypto_secretstream_xchacha20poly1305_pull=ge._crypto_secretstream_xchacha20poly1305_pull,r._crypto_secretstream_xchacha20poly1305_push=ge._crypto_secretstream_xchacha20poly1305_push,r._crypto_secretstream_xchacha20poly1305_rekey=ge._crypto_secretstream_xchacha20poly1305_rekey,r._crypto_secretstream_xchacha20poly1305_statebytes=ge._crypto_secretstream_xchacha20poly1305_statebytes,r._crypto_secretstream_xchacha20poly1305_tag_final=ge._crypto_secretstream_xchacha20poly1305_tag_final,r._crypto_secretstream_xchacha20poly1305_tag_message=ge._crypto_secretstream_xchacha20poly1305_tag_message,r._crypto_secretstream_xchacha20poly1305_tag_push=ge._crypto_secretstream_xchacha20poly1305_tag_push,r._crypto_secretstream_xchacha20poly1305_tag_rekey=ge._crypto_secretstream_xchacha20poly1305_tag_rekey,r._crypto_shorthash=ge._crypto_shorthash,r._crypto_shorthash_bytes=ge._crypto_shorthash_bytes,r._crypto_shorthash_keybytes=ge._crypto_shorthash_keybytes,r._crypto_shorthash_keygen=ge._crypto_shorthash_keygen,r._crypto_sign=ge._crypto_sign,r._crypto_sign_bytes=ge._crypto_sign_bytes,r._crypto_sign_detached=ge._crypto_sign_detached,r._crypto_sign_ed25519_pk_to_curve25519=ge._crypto_sign_ed25519_pk_to_curve25519,r._crypto_sign_ed25519_sk_to_curve25519=ge._crypto_sign_ed25519_sk_to_curve25519,r._crypto_sign_final_create=ge._crypto_sign_final_create,r._crypto_sign_final_verify=ge._crypto_sign_final_verify,r._crypto_sign_init=ge._crypto_sign_init,r._crypto_sign_keypair=ge._crypto_sign_keypair,r._crypto_sign_messagebytes_max=ge._crypto_sign_messagebytes_max,r._crypto_sign_open=ge._crypto_sign_open,r._crypto_sign_publickeybytes=ge._crypto_sign_publickeybytes,r._crypto_sign_secretkeybytes=ge._crypto_sign_secretkeybytes,r._crypto_sign_seed_keypair=ge._crypto_sign_seed_keypair,r._crypto_sign_seedbytes=ge._crypto_sign_seedbytes,r._crypto_sign_statebytes=ge._crypto_sign_statebytes,r._crypto_sign_update=ge._crypto_sign_update,r._crypto_sign_verify_detached=ge._crypto_sign_verify_detached,r._emscripten_get_sbrk_ptr=ge._emscripten_get_sbrk_ptr,r._emscripten_replace_memory=ge._emscripten_replace_memory);if(r._free=ge._free,r._i64Add=ge._i64Add,r._i64Subtract=ge._i64Subtract,r._malloc=ge._malloc,r._memcpy=ge._memcpy,r._memmove=ge._memmove,r._memset=ge._memset,r._randombytes=ge._randombytes,r._randombytes_buf=ge._randombytes_buf,r._randombytes_buf_deterministic=ge._randombytes_buf_deterministic,r._randombytes_close=ge._randombytes_close,r._randombytes_random=ge._randombytes_random,r._randombytes_seedbytes=ge._randombytes_seedbytes,r._randombytes_stir=ge._randombytes_stir,r._randombytes_uniform=ge._randombytes_uniform,r._sodium_base642bin=ge._sodium_base642bin,r._sodium_base64_encoded_len=ge._sodium_base64_encoded_len,r._sodium_bin2base64=ge._sodium_bin2base64,r._sodium_bin2hex=ge._sodium_bin2hex,r._sodium_hex2bin=ge._sodium_hex2bin,r._sodium_init=ge._sodium_init,r._sodium_library_minimal=ge._sodium_library_minimal,r._sodium_library_version_major=ge._sodium_library_version_major,r._sodium_library_version_minor=ge._sodium_library_version_minor,r._sodium_pad=ge._sodium_pad,r._sodium_unpad=ge._sodium_unpad,r._sodium_version_string=ge._sodium_version_string,r.establishStackSpace=ge.establishStackSpace,r.stackAlloc=ge.stackAlloc,r.stackRestore=ge.stackRestore,r.stackSave=ge.stackSave,r.asm=ge,r.setValue=function(e,t,n,r){switch("*"===(n=n||"i8").charAt(n.length-1)&&(n="i32"),n){case"i1":case"i8":Q[e>>0]=t;break;case"i16":x[e>>1]=t;break;case"i32":D[e>>2]=t;break;case"i64":Z=[t>>>0,(X=t,+G(X)>=1?X>0?(0|J(+Y(X/4294967296),4294967295))>>>0:~~+$((X-+(~~X>>>0))/4294967296)>>>0:0)],D[e>>2]=Z[0],D[e+4>>2]=Z[1];break;case"float":P[e>>2]=t;break;case"double":M[e>>3]=t;break;default:W("invalid type for setValue: "+n)}},r.getValue=function(e,t,n){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return Q[e>>0];case"i16":return x[e>>1];case"i32":case"i64":return D[e>>2];case"float":return P[e>>2];case"double":return M[e>>3];default:W("invalid type for getValue: "+t)}return null},r.UTF8ToString=O,ee)if(ne(ee)||(pe=ee,ee=r.locateFile?r.locateFile(pe,I):I+pe),d||h){var ve=v(ee);S.set(ve,8)}else{V++,r.monitorRunDependencies&&r.monitorRunDependencies(V);var me=function(e){e.byteLength&&(e=new Uint8Array(e)),S.set(e,8),r.memoryInitializerRequest&&delete r.memoryInitializerRequest.response,function(e){if(V--,r.monitorRunDependencies&&r.monitorRunDependencies(V),0==V&&(null!==z&&(clearInterval(z),z=null),q)){var t=q;q=null,t()}}()},be=function(){y(ee,me,(function(){throw"could not load memory initializer "+ee}))},Ie=he(ee);if(Ie)me(Ie.buffer);else if(r.memoryInitializerRequest){var we=function(){var e=r.memoryInitializerRequest,t=e.response;if(200!==e.status&&0!==e.status){var n=he(r.memoryInitializerRequestURL);if(!n)return void be();t=n.buffer}me(t)};r.memoryInitializerRequest.response?setTimeout(we,0):r.memoryInitializerRequest.addEventListener("load",we)}else be()}function Ce(e){function t(){de||(de=!0,E||(H(N),H(L),r.onRuntimeInitialized&&r.onRuntimeInitialized(),function(){if(r.postRun)for("function"==typeof r.postRun&&(r.postRun=[r.postRun]);r.postRun.length;)e=r.postRun.shift(),K.unshift(e);var e;H(K)}()))}e=e||p,V>0||(function(){if(r.preRun)for("function"==typeof r.preRun&&(r.preRun=[r.preRun]);r.preRun.length;)e=r.preRun.shift(),U.unshift(e);var e;H(U)}(),V>0||(r.setStatus?(r.setStatus("Running..."),setTimeout((function(){setTimeout((function(){r.setStatus("")}),1),t()}),1)):t()))}if(q=function e(){de||Ce(),de||(q=e)},r.run=Ce,r.preInit)for("function"==typeof r.preInit&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();Ce(),Object.keys(l).forEach((function(e){"getRandomValue"!==e&&delete l[e]})),Object.keys(r).forEach((function(e){l[e]=r[e]}))};var s,c=void 0!==c?c:{},A={};for(s in c)c.hasOwnProperty(s)&&(A[s]=c[s]);var f,h,p=[],d=!1,g=!1,y=!1;d="object"==("undefined"==typeof window?"undefined":u(window)),g="function"==typeof importScripts,f="object"==(void 0===i?"undefined":u(i))&&"object"==u(i.versions)&&"string"==typeof i.versions.node,y=f&&!d&&!g,h=!d&&!y&&!g;var v,m,b,I,w="";y?(w=a+"/",v=function(e,t){var r;return(r=pe(e))||(b||(b=n(44)),I||(I=n(45)),e=I.normalize(e),r=b.readFileSync(e)),t?r:r.toString()},m=function(e){var t=v(e,!0);return t.buffer||(t=new Uint8Array(t)),x(t.buffer),t},i.argv.length>1&&i.argv[1].replace(/\\/g,"/"),p=i.argv.slice(2),e.exports=c,i.on("unhandledRejection",te),c.inspect=function(){return"[Emscripten Module object]"}):h?("undefined"!=typeof read&&(v=function(e){var t=pe(e);return t?fe(t):read(e)}),m=function(e){var t;return(t=pe(e))?t:"function"==typeof readbuffer?new Uint8Array(readbuffer(e)):(x("object"==u(t=read(e,"binary"))),t)},"undefined"!=typeof scriptArgs?p=scriptArgs:void 0!==arguments&&(p=arguments),"undefined"!=typeof print&&("undefined"==typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!=typeof printErr?printErr:print)):(d||g)&&(g?w=self.location.href:document.currentScript&&(w=document.currentScript.src),w=0!==w.indexOf("blob:")?w.substr(0,w.lastIndexOf("/")+1):"",v=function(e){try{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText}catch(t){var n=pe(e);if(n)return fe(n);throw t}},g&&(m=function(e){try{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}catch(t){var n=pe(e);if(n)return n;throw t}}));var C=c.print||void 0,B=c.printErr||void 0;for(s in A)A.hasOwnProperty(s)&&(c[s]=A[s]);A=null,c.arguments&&(p=c.arguments),c.thisProgram&&c.thisProgram,c.quit&&c.quit;var E,_,k={"f64-rem":function(e,t){return e%t},debugger:function(){}};new Array(8),c.wasmBinary&&(E=c.wasmBinary),c.noExitRuntime&&c.noExitRuntime,"object"!=("undefined"==typeof WebAssembly?"undefined":u(WebAssembly))&&B("no native wasm support detected");var Q=new WebAssembly.Table({initial:0,maximum:0,element:"anyfunc"}),S=!1;function x(e,t){e||te("Assertion failed: "+t)}var D,P,M,F,O,R,T,j="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function H(e,t){return e?function(e,t,n){for(var r=t+n,i=t;e[i]&&!(i>=r);)++i;if(i-t>16&&e.subarray&&j)return j.decode(e.subarray(t,i));for(var a="";t<i;){var o=e[t++];if(128&o){var s=63&e[t++];if(192!=(224&o)){var c=63&e[t++];if((o=224==(240&o)?(15&o)<<12|s<<6|c:(7&o)<<18|s<<12|c<<6|63&e[t++])<65536)a+=String.fromCharCode(o);else{var u=o-65536;a+=String.fromCharCode(55296|u>>10,56320|1023&u)}}else a+=String.fromCharCode((31&o)<<6|s)}else a+=String.fromCharCode(o)}return a}(M,e,t):""}function U(e,t){return e%t>0&&(e+=t-e%t),e}function N(e){D=e,c.HEAP8=P=new Int8Array(e),c.HEAP16=F=new Int16Array(e),c.HEAP32=O=new Int32Array(e),c.HEAPU8=M=new Uint8Array(e),c.HEAPU16=new Uint16Array(e),c.HEAPU32=new Uint32Array(e),c.HEAPF32=R=new Float32Array(e),c.HEAPF64=T=new Float64Array(e)}"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le");var L=c.TOTAL_MEMORY||16777216;function K(e){for(;e.length>0;){var t=e.shift();if("function"!=typeof t){var n=t.func;"number"==typeof n?void 0===t.arg?c.dynCall_v(n):c.dynCall_vi(n,t.arg):n(void 0===t.arg?null:t.arg)}else t()}}(_=c.wasmMemory?c.wasmMemory:new WebAssembly.Memory({initial:L/65536}))&&(D=_.buffer),L=D.byteLength,N(D),O[9312]=5280320;var G=[],$=[],Y=[],J=[],V=Math.abs,z=Math.ceil,q=Math.floor,W=Math.min,X=0,Z=null,ee=null;function te(e){throw c.onAbort&&c.onAbort(e),C(e+=""),B(e),S=!0,"abort("+e+"). Build with -s ASSERTIONS=1 for more info."}c.preloadedImages={},c.preloadedAudios={};var ne="data:application/octet-stream;base64,";function re(e){return String.prototype.startsWith?e.startsWith(ne):0===e.indexOf(ne)}var ie,ae,oe,se="data:application/octet-stream;base64,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XQJxYwCIAgJyYwBeAnNjAIoCAnRjAIkCAnVjAIMCAnZjAEgCd2MA/AECeGMAbAJ5YwD/AQJ6YwD+AQJBYwD9AQq20ATgAhMAIABBwAAgAWuthiAAIAGtiIQLEAAgACABdCAAQSAgAWt2cgseACAAIAF8IAFC/////w+DIABCAYZC/v///x+DfnwLUAEDfwJ/IwAhBCMAQT9qQUBxJAAjACECIwBBEGokACACIAA2AgAgAQRAQQAhAANAIAAgAigCAGpBADoAACAAQQFqIgAgAUcNAAsLIAQLJAALCQAgACABNgAAC8UJAg1/KX4gAigCBCIDrCEQIAIoAggiBKwhGCACKAIMIgWsIRsgAigCECIGrCEdIAIoAhQiB6whHyACKAIYIgisISYgAigCHCIJrCEtIAIoAiAiCqwhMCABKAIEIgusISAgASgCDCIMrCEhIAEoAhQiDawhIiABKAIcIg6sISMgASgCJCIPrCEkIA9BAXSsIicgA0ETbKx+IAEoAgCsIhEgAigCAKwiEn58IAEoAiCsIhMgBEETbKwiLn58IA5BAXSsIiggBUETbKwiKX58IAEoAhisIhQgBkETbKwiJX58IA1BAXSsIiogB0ETbKwiHn58IAEoAhCsIhUgCEETbKwiHH58IAxBAXSsIisgCUETbKwiGX58IApBE2ysIhcgASgCCKwiFn58IAtBAXSsIiwgAigCJCIBQRNsrCIafnwhMSAQIBR+IBIgI358IBggIn58IBUgG358IB0gIX58IBYgH358ICAgJn58IBEgLX58IBcgJH58IBMgGn58IBAgKn4gEiAUfnwgFSAYfnwgGyArfnwgFiAdfnwgHyAsfnwgESAmfnwgGSAnfnwgEyAXfnwgGiAofnwgECAVfiASICJ+fCAYICF+fCAWIBt+fCAdICB+fCARIB9+fCAcICR+fCATIBl+fCAXICN+fCAUIBp+fCAQICt+IBIgFX58IBYgGH58IBsgLH58IBEgHX58IB4gJ358IBMgHH58IBkgKH58IBQgF358IBogKn58Ii9CgICAEHwiM0Iah3wiNEKAgIAIfCI1QhmHfCI2QoCAgBB8IjdCGod8ITIgLyAzQoCAgGCDfSASICF+IBAgFn58IBggIH58IBEgG358ICQgJX58IBMgHn58IBwgI358IBQgGX58IBcgIn58IBUgGn58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KAIAIgEEQCAEQQF0IQQgASgCBEF4cSADRg0CIAEhAAwBCwsgBiACNgIAIAIgADYCGCACIAI2AgwgAiACNgIIDAILCyABKAIIIgAgAjYCDCABIAI2AgggAiAANgIIIAIgATYCDCACQQA2AhgLBUGQlwIgBCAGcjYCACAAIAI2AgAgAiAANgIYIAIgAjYCDCACIAI2AggLQayXAkGslwIoAgBBf2oiADYCACAABEAPC0HUmgIhAANAIAAoAgAiAUEIaiEAIAENAAtBrJcCQX82AgALBABBIAvGAwEDfyACQYDAAE4EQCAAIAEgAhAFGiAADwsgACEEIAAgAmohAyAAQQNxIAFBA3FGBEADQCAAQQNxBEAgAkUEQCAEDwsgACABLAAAOgAAIABBAWohACABQQFqIQEgAkEBayECDAELCyADQXxxIgJBQGohBQNAIAAgBUwEQCAAIAEoAgA2AgAgACABKAIENgIEIAAgASgCCDYCCCAAIAEoAgw2AgwgACABKAIQNgIQIAAgASgCFDYCFCAAIAEoAhg2AhggACABKAIcNgIcIAAgASgCIDYCICAAIAEoAiQ2AiQgACABKAIoNgIoIAAgASgCLDYCLCAAIAEoAjA2AjAgACABKAI0NgI0IAAgASgCODYCOCAAIAEoAjw2AjwgAEFAayEAIAFBQGshAQwBCwsDQCAAIAJIBEAgACABKAIANgIAIABBBGohACABQQRqIQEMAQsLBSADQQRrIQIDQCAAIAJIBEAgACABLAAAOgAAIAAgASwAAToAASAAIAEsAAI6AAIgACABLAADOgADIABBBGohACABQQRqIQEMAQsLCwNAIAAgA0gEQCAAIAEsAAA6AAAgAEEBaiEAIAFBAWohAQwBCwsgBAsKACAAIAEgAhA7C5gCAQR/IAAgAmohBCABQf8BcSEDIAJBwwBOBEADQCAAQQNxBEAgACADOgAAIABBAWohAAwBCwsgA0EIdCADciADQRB0ciADQRh0ciEBIARBfHEiBUFAaiEGA0AgACAGTARAIAAgATYCACAAIAE2AgQgACABNgIIIAAgATYCDCAAIAE2AhAgACABNgIUIAAgATYCGCAAIAE2AhwgACABNgIgIAAgATYCJCAAIAE2AiggACABNgIsIAAgATYCMCAAIAE2AjQgACABNgI4IAAgATYCPCAAQUBrIQAM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ACIgQQEQByElIAZBEGpBA3QgAmogHCAhfCAifCAgQQgQByAlICBCB4iFhXwiIjcDACAdQRMQByEhIB1BPRAHICEgHUIGiIWFIRwgGSkDACEhIBQpAwAiHUEBEAchJSATQRBqQQN0IAJqICAgHCAhfHwgHUEIEAcgJSAdQgeIhYV8IiA3AwAgIkETEAchHCAiQT0QByAcICJCBoiFhSEcIAdBCWpBA3QgAmopAwAhJSAHQQFqQQN0IAJqKQMAIiJBARAHISYgB0EQakEDdCACaiAdICV8IBx8ICJBCBAHICYgIkIHiIWFfCIdNwMAICBBExAHIRwgIyAgQT0QByAcICBCBoiFhXwhHCAWKQMAIiBBARAHISUgFUEQakEDdCACaiAcICJ8ICBBCBAHICUgIEIHiIWFfCIiNwMAIB1BExAHIRwgHUE9EAcgHCAdQgaIhYUhHCAIQQlqQQN0IAJqKQMAISUgCEEBakEDdCACaikDACIdQQEQByEmIAhBEGpBA3QgAmogICAlfCAcfCAdQQgQByAmIB1CB4iFhXwiIDcDACAiQRMQByEcICJBPRAHIBwgIkIGiIWFISIgDUEJakEDdCACaikDACAifCEiIB5BARAHIRwgDUEQakEDdCACaiAdICJ8IB5BCBAHIBwgHkIHiIWFfCIdNwMAICBBExAHISIgIEE9EAcgIiAgQgaIhYUhIiAJQQlqQQN0IAJqKQMAIRwgCUEBakEDdCACaikDACIgQQEQByElIAlBEGpBA3QgAmogHCAefCAifCAgQQgQByAlICBCB4iFhXwiHjcDACAdQRMQByEiIB1BPRAHICIgHUIGiIWFIR0gDkEJakEDdCACaikDACAdfCEdIB9BARAHISIgDkEQakEDdCACaiAdICB8IB9BCBAHICIgH0IHiIWFfCIdNwMAIB5BExAHISAgHkE9EAcgICAeQgaIhYUhICAKQQlqQQN0IAJqKQMAISIgCkEBakEDdCACaikDACIeQQEQByEcIApBEGpBA3QgAmogHyAifCAgfCAeQQgQByAcIB5CB4iFhXwiHzcDACAdQRMQByEgIB1BPRAHICAgHUIGiIWFIR0gD0EJakEDdCACaikDACAdfCEdICFBARAHISAgD0EQakEDdCACaiAdIB58ICFBCBAHICAgIUIHiIWFfCIeNwMAIB9BExAHIR0gH0E9EAcgHSAfQgaIhYUhHSALQQlqQQN0IAJqKQMAISAgC0EBakEDdCACaikDACIfQQEQByEiIAtBEGpBA3QgAmogICAhfCAdfCAfQQgQByAiIB9CB4iFhXwiHzcDACAeQRMQByEhIB5BPRAHICEgHkIGiIWFIR4gEEEJakEDdCACaikDACEhICNBARAHIR0gEEEQakEDdCACaiAhICR8IB58ICNBCBAHIB0gI0IHiIWFfDcDACAfQRMQByEeIB9BPRAHIB4gH0IGiIWFIR8gDEEJakEDdCACaikDACEhIAxBAWpBA3QgAmopAwAiHkEBEAchJCAMQRBqQQN0IAJqICEgI3wgH3wgHkEIEAcgJCAeQgeIhYV8NwMAIARB0ABJBEAgBCEBDAILCwtBACEBA0AgAUEDdCAAaiICIAFBA3QgA2opAwAgAikDAHw3AwAgAUEBaiIBQQhHDQALCywAIAJBgAJJBEAgACABIAJB/wFxEHMPBUH7jQJBj44CQesAQcSOAhACC0EAC0IAIANBf2pBP0sgAkHAAEtyBH9BfwUgA0H/AXEhAyACRSABRXIEQCAAIAMQrgEFIAAgAyABIAJB/wFxEK0BC0EACwsKACAAIAEgAhBNCwwAIAAgASACIAMQTgvoBAEUfyACKAAAIQ8CfyACKAAIIRYgAigADCEDQRQhFEHl8MGLBiEEQbLaiMsHIQwgAigAECEQIAIoABQhCSACKAAYIQ0gAigAHCEKQfTKgdkGIQUgAigABCECIBYLIQsgAyEIQe7IgZkDIQYgASgAACEOIAEoAAQhAyABKAAIIQcgASgADCEBA0AgBCAEIAlqQQcQCCAIcyIRakEJEAggB3MiByAHIBFqQQ0QCCAJcyIJakESEAggBHMhBCAGIAYgD2pBBxAIIAFzIhJqQQkQCCANcyIVIBIgFWpBDRAIIA9zIg1qQRIQCCAGcyEGIAwgDCAOakEHEAggCnMiE2pBCRAIIAJzIgIgAiATakENEAggDnMiCGpBEhAIIAxzIQogBSAFIBBqQQcQCCALcyILakEJEAggA3MiAyADIAtqQQ0QCCAQcyIBakESEAggBXMhBSAEIAQgC2pBBxAIIA1zIg9qQQkQCCACcyICIAIgD2pBDRAIIAtzIgtqQRIQCCAEcyEEIAYgBiARakEHEAggCHMiDmpBCRAIIANzIgMgAyAOakENEAggEXMiCGpBEhAIIAZzIQYgCiASakEHEAggAXMiECAKakEJEAggB3MiByAHIBBqQQ0QCCAScyIBakESEAggCnMhDCAFIBNqQQcQCCAJcyIJIAVqQQkQCCAVcyINIAkgDWpBDRAIIBNzIgpqQRIQCCAFcyEFIBRBfmoiFA0ACyAAIAQQCyAAQQRqIAYQCyAAQQhqIAwQCyAAQQxqIAUQCyAAQRBqIA4QCyAAQRRqIAMQCyAAQRhqIAcQCyAAQRxqIAEQCwveEwIIfx9+IAAsAAAgACwAASAAQQJqIgIsAAAQEEL///8AgyETAn4gAhARQgWIQv///wCDIScgACwABSAALAAGIABBB2oiAywAABAQQgKIQv///wCDIR8gAxARQgeIQv///wCDISAgAEEKaiIHEBFCBIhC////AIMhGSAALAANIAAsAA4gAEEPaiIELAAAEBBCAYhC////AIMhISAEEBFCBohC////AIMhFCAALAASIAAsABMgACwAFBAQQgOIQv///wCDIRogACwAFSAALAAWIABBF2oiBSwAABAQQv///wCDIRUgBRARQgWIQv///wCDIRsgACwAGiAALAAbIABBHGoiBiwAABAQQgKIQv///wCDIRYgBhARQgeIQv///wCDIRwgAEEfaiIIEBFCBIhC////AIMhECAALAAiIAAsACMgAEEkaiIBLAAAEBBCAYhC////AIMhESABEBFCBohC////AIMhEgJ+IAAsACcgACwAKCAALAApEBBCA4hC////AIMhJiAALAAqIAAsACsgAEEsaiIBLAAAEBBC////AIMhDCABEBFCBYhC////AIMhHSAALAAvIAAsADAgAEExaiIBLAAAEBBCAohC////AIMhCSABEBFCB4hC////AIMhCiAAQTRqEBFCBIhC////AIMhCyAALAA3IAAsADggAEE5aiIBLAAAEBBCAYhC////AIMhDSABEBFCBohC////AIMhDiAAQTxqEBFCA4giD0KDoVZ+IAx8IQwgC0KDoVZ+IBF8IA1C0asIfnwgD0Ln9id+fCAOQtOMQ358IApCg6FWfiAQfCALQtGrCH58IA1C04xDfnwgD0KY2hx+fCAOQuf2J358Ih5CgIBAfSIiQhWHfCERICYLIA9C0asIfnwgDkKDoVZ+fCANQoOhVn4gEnwgD0LTjEN+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fCANIBB+IA4gEX58IA8gEn58IBMgFX58IBQgGH58IBpCGohC/////w+DfCIdQhqIQv////8Pg3wiF6dB////H3EhBSANIBl+IBEgFn58IBAgEn58IA4gE358IA8gFH58IBdCGohC/////w+DfCIXp0H///8fcSEGIA0gHH4gESAZfnwgEiAWfnwgECATfnwgDiAUfnwgF0IaiEL/////D4N8Ig2nQf///x9xIQcgDUIaiKdBBWwgGqdB////H3FqIgNB////H3EhBCAdp0H///8fcSADQRp2aiEDIAFBEGohASACQnB8IgJCD1YNAAsLIAAgBDYCFCAAIAM2AhggACAFNgIcIAAgBjYCICAAIAc2AiQLMAAgAUF/akE/SyAFQcAAS3IEf0F/BSAAIAIgBCABQf8BcSADIAVB/wFxEOECQQALC4QDAQd/IwAhByMAQT9qQUBxJAAjACEDIwBBQGskACACQf8BcQRAIAJB/wFxIQggAkH/AXFBwABMBEACfyAAKQBQQgBSBH9BfwUgACgA4AIiAkGAAUsEQCAAQoABEHQgACAAQeAAaiICEHcgACAAKADgAkGAf2oiBTYA4AIgBUGBAUkEQCACIABB4AFqIAUQGBogACgA4AIhBiACIQQFQaCNAkHAjQJBsgJB7Y0CEAILBSACIQYgAEHgAGohBAsgACAGrRB0IAAiAiwA5AIEQCACQn83AFgLIAJCfzcAUCAAKADgAiICIABB4ABqakEAQYACIAJrEBoaIAAgBBB3IAMgACkAABASIANBCGogACkACBASIANBEGogACkAEBASIANBGGogACkAGBASIANBIGogACkAIBASIANBKGogACkAKBASIANBMGogACkAMBASIANBOGogACkAOBASIAEgAyAIEBgaIABBwAAQCiAEQYACEApBAAshCSAHJAAgCQsPCwsQAEEACy0CAX8BfiABIABBQGsiAikAAHwhAyACIAM3AAAgACAAKQBIIAMgAVStfDcASAsJACAAQQA2AAALNgECfyAAEOMCA0AgAkEDdCAAaiIDIAEgAkEDdGopAAAgAykAAIU3AAAgAkEBaiICQQhHDQALC4s2AgV/In4CfyMAIQYjAEE/akFAcSQAIwAhAiMAQYACaiQAIAJBgAFqIQMDQCAEQQN0IANqIAEgBEEDdGopAAA3AwAgBEEBaiIE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EyABLAAUEBBCA4hC////AIMhDSABLAAVIAEsABYgAUEXaiIELAAAEBBC////AIMhCCAEEBFCBYhC////AIMhECABLAAaIAEsABsgAUEcaiIBLAAAEBBCAohC////AIMhDCABEBFCB4ghCSACLAAAIAIsAAEgAkECaiIBLAAAEBBC////AIMhGCABEBFCBYhC////AIMhGSACLAAFIAIsAAYgAkEHaiIBLAAAEBBCAohC////AIMhGyABEBFCB4hC////AIMhHCACQQpqEBFCBIhC////AIMhGiACLAANIAIsAA4gAkEPaiIBLAAAEBBCAYhC////AIMhFSABEBFCBohC////AIMhFiACLAASIAIsABMgAiwAFBAQQgOIQv///wCDIREgAiwAFSACLAAWIAJBF2oiASwAABAQQv///wCDIRMgARARQgWIQv///wCDIRQgAiwAGiACLAAbIAJBHGoiASwAABAQQgKIQv///wCDIRIgARARQgeIIRcgAywAACADLAABIANBAmoiASwAABAQQv///wCDIR0gARARQgWIQv///wCDIR4gAywABSADLAAGIANBB2oiASwAABAQQgKIQv///wCDITEgARARQgeIQv///wCDITIgA0EKahARQgSIQv///wCDITMgAywADSADLAAOIANBD2oiASwAABAQQgGIQv///wCDITQgARARQgaIQv///wCDISogAywAEiADLAATIAMsABQQEEIDiEL///8AgyE1IAMsABUgAywAFiADQRdqIgEsAAAQEEL///8AgyErIAEQEUIFiEL///8AgyEsIBAgGX4gDCAYfnwgCCAbfnwgDSAcfnwgCyAafnwgByAVfnwgCiAWfnwgDiATfnwgDyARfnwgBiAUfnwgBSASfnwgAywAGiADLAAbIANBHGoiASwAABAQQgKIQv///wCDfCItQoCAQH0hJSAMIBR+IAkgE358IBAgEn58IAggF358IAwgE34gCSARfnwgECAUfnwgCCASfnwgDSAXfnwiH0KAgEB9IiZCFYd8ISEgDCAXfiAJIBJ+fCAMIBJ+IAkgFH58IBAgF358IiJCgIBAfSIkQhWHfCEgIAkgF34iJ0KAgEB9IihCFYchIyAFIBl+IAYgGH58IB58IB0gBSAYfnwiNkKAgEB9IjdCFYh8IjhCgIBAfSEwIB8gJkKAgIB/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IAVB////H3E2AgggACAGQf///w9xNgIMIAAgB0H///8fcTYCECAAIAhB////D3E2AhQgACAJQf///x9xNgIYIAAgAUH///8PcTYCHCAAIANB////H3E2AiAgACAKIANBGnVqQf///w9xNgIkC0MBA38CfyMAIQUjAEE/akFAcSQAIwAhAyMAQSBqJAAgAyACIAEQoQEEf0F/BSAAQdCWAiADEFFBAAshACAFCyQAIAALZQEDfwJ/IwAhBSMAQT9qQUBxJAAjACEDIwBBQGskACADIAJCIBA5IAEgAykAADcAACABIAMpAAg3AAggASADKQAQNwAQIAEgAykAGDcAGCADQcAAEAogACABEGghACAFCyQAIAALBABBMAtRAQN/An8jACEHIwBBP2pBQHEkACMAIQUjAEEgaiQAIAJCMFQEf0F/BSAFIAEgAxCDASAAIAFBIGogAkJgfCAFIAEgBBCEAQshACAHCyQAIAALigEBBH8jACEFIwBB4ABqJAAgBUFAayEGIAVBIGoiBCAFIgcQiAEEQEF/IQAFIAAgBCkAADcAACAAIAQpAAg3AAggACAEKQAQNwAQIAAgBCkAGDcAGCAGIAQgAxCDASAAQSBqIAEgAiAGIAMgBxCGASEAIAdBIBAKIARBIBAKIAZBGBAKCyAFJAAgAAshACACQhBUBH9BfwUgACABQRBqIAEgAkJwfCADIAQQWQsLKAAgAkLv////D1YEQBAABSAAQRBqIAAgASACIAMgBBBaGkEADwtBAAszAQF+IAGtIAKtQiCGhCIDQoCAgIAQVARAIAAgA6cQHwVBupUCQc6VAkHFAUHolQIQAgsLFQAgACABIAKtIAOtQiCGhCAEEJsBCxQAIAAgASACrSADrUIghoQQHUEACxcAIAAgASACIAOtIAStQiCGhCAFEJQCCxkAIAAgASACIAOtIAStQiCGhCAFEJkBQQALFwAgACABIAIgA60gBK1CIIaEIAUQkwILFwAgACABIAKtIAOtQiCGhCAEEKICQQALJQAgACABIAIgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCRCpAgslACAAIAEgAiADIAQgBa0gBq1CIIaEIAcgCK0gCa1CIIaEEKcCCxcAIAAgASACrSADrUIghoQgBCAFEKwCCxgAIAAgASACIAOtIAStQiCGhCAFIAYQZgsXACAAIAEgAq0gA61CIIaEIAQgBRCtAgsYACAAIAEgAiADrSAErUIghoQgBSAGEGcLEwAgACABIAKtIAOtQiCGhBC0AgsTACAAIAGtIAKtQiCGhCADELMCCyEAIAAgASACrSADrUIghoQgBK0gBa1CIIaEIAYgBxC1AgsfACAAIAEgAq0gA61CIIaEIAStIAWtQiCGhCAGEKIBCy0AIAAgAa0gAq1CIIaEIAMgBK0gBa1CIIaEIAYgB60gCK1CIIaEIAkgChC2AgsXACAAIAEgAq0gA61CIIaEIAQgBRDZAgsUACAAIAEgAq0gA61CIIaEEDlBAAsSACAAIAEgAq0gA61CIIaEECcLGQAgACABIAIgA60gBK1CIIaEIAUgBhCvAQsXACAAIAEgAq0gA61CIIaEIAQgBRDCAQsVACAAIAEgAq0gA61CIIaEIAQQwwELFwAgACABIAKtIAOtQiCGhCAEIAUQxAELGQAgACABIAKtIAOtQiCGhCAEIAUgBhCEAQsYACAAIAEgAiADrSAErUIghoQgBSAGEFkLGwAgACABIAIgA60gBK1CIIaEIAUgBiAHEIUBCwsAIAAgASACEMABCxcAIAAgASACrSADrUIghoQgBCAFEMUBCxkAIAAgASACrSADrUIghoQgBCAFIAYQhgELGAAgACABIAIgA60gBK1CIIaEIAUgBhBaCxsAIAAgASACIAOtIAStQiCGhCAFIAYgBxCHAQsVACAAIAEgAq0gA61CIIaEIAQQ7QELFwAgACABIAKtIAOtQiCGhCAEEIkBQQALJwAgACABIAIgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCiALEKABCyUAIAAgASACIAOtIAStQiCGhCAFIAatIAetQiCGhCAJIAoQnwILJQAgACACIAOtIAStQiCGhCAFIAYgB60gCK1CIIaEIAkgChCdAQslACAAIAEgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCSAKEI4CCz4BAn8jACEEIwBBIGokACAEIAEgAiADEIkBQX8gACAEEJEBIAAgBEYbIQEgBCAAQSAQQSABciEFIAQkACAFCyYAIAAgASACIAMgBK0gBa1CIIaEIAYgB60gCK1CIIaEIAogCxB7CyUAIAAgASACIAOtIAStQiCGhCAFIAatIAetQiCGhCAJIAoQtQELJQAgACACIAOtIAStQiCGhCAFIAYgB60gCK1CIIaEIAkgChCsAQslACAAIAEgAyAErSAFrUIghoQgBiAHrSAIrUIghoQgCSAKEN0CCycAIAAgASACIAMgBK0gBa1CIIaEIAYgB60gCK1CIIaEIAogCxCCAQslACAAIAEgAiADrSAErUIghoQgBSAGrSAHrUIghoQgCSAKELwBCyUAIAAgAiADrSAErUIghoQgBSAGIAetIAitQiCGhCAJIAoQsAELJQAgACABIAMgBK0gBa1CIIaEIAYgB60gCK1CIIaEIAkgChDkAgvQAgEGfyAAQYB/TwRAQYiXAkEwNgIAQQAPC0EQIABBC2pBeHEgAEELSRsiBEHMAGoQISIARQRAQQAPCyAAQXhqIQEgAEE/cQR/IABBfGoiBSgCACIGQXhxIABBP2pBQHEiAEF4aiICIABBOGogAiABa0EPSxsiACABayICayEDIAZBA3EEQCAAIAAoAgRBAXEgA3JBAnI2AgQgACADaiIDIAMoAgRBAXI2AgQgBSAFKAIAQQFxIAJyQQJyNgIAIAAgACgCBEEBcjYCBCABIAIQigEFIAAgASgCACACajYCACAAIAM2AgQLIAAFIAEiAAshAiAAKAIEIgFBA3EEQCABQXhxIgMgBEEQaksEQCAAIAFBAXEgBHJBAnI2AgQgAiAEaiIAIAMgBGsiAUEDcjYCBCACIANqIgQgBCgCBEEBcjYCBCAAIAEQigELCyACQQhqCy4BAX8gABAhIgFFBEAgAQ8LIAFBfGooAgBBA3FFBEAgAQ8LIAFBACAAEBoaIAEL+gEBA38gAUH/AXEiAgRAAkAgAEEDcQRAIAFB/wFxIQMDQCAALAAAIgQgA0EYdEEYdUYgBEVyDQIgAEEBaiIAQQNxDQALCyACQYGChAhsIQMgACgCACICQYCBgoR4cUGAgYKEeHMgAkH//ft3anFFBEADQCACIANzIgJBgIGChHhxQYCBgoR4cyACQf/9+3dqcUUEQCAAQQRqIgAoAgAiAkGAgYKEeHFBgIGChHhzIAJB//37d2pxRQ0BCwsLIAFB/wFxIQIDQCAAQQFqIQEgACwAACIDIAJBGHRBGHVGIANFckUEQCABIQAMAQsLCwUgABAjIABqIQALIAALQgEBfyMAIQIjAEFAayQAIAAgAhCBAiABIAIpAAA3AAAgASACKQAINwAIIAEgAikAEDcAECABIAIpABg3ABggAiQACwYAQYiXAguhAQEDfwJ/IwAhBSMAQT9qQUBxJAAjACEDIwBB8ABqJAAgAyACKQAANwAAIAMgAikACDcACCADIAIpABA3ABAgAyACKQAYNwAYIANB4ABqIgIgASkAADcDACACQgA3AwggA0EgaiIBIAIgAxB4QQAhAgNAIAAgAmogASACaiwAADoAACACQQFqIgJBIEcNAAsgAUHAABAKIANBIBAKIAULJAALBABBCgsGAEGplgILyAEBCH8CfyMAIQsjAEE/akFAcSQAIwAhBCMAQRBqJAAgBEEANgIAIANBf2ogAkkEfyABIAJBf2oiCGohCUEAIQJBACEBA0AgCSABay0AACIKQYABc0H/A2ogAkH/AXEiAkH/A2ogBCgCAEH/A2pxcUEIdkEBcSEGIAIgCnIhAiAEIAQoAgBBACAGayABcXI2AgAgBiAFQf8BcXIhBSABQQFqIgEgA0cNAAsgACAIIAQoAgBrNgIAIAVBf2oFQX8LIQAgCwskACAAC9YBAQV/An8jACEJIwBBP2pBQHEkACMAIQYjAEEQaiQAIAMEfyADIANBf2oiBXEEfyACIANwBSACIAVxCyEIIAUgCGsiBSACQX9zTwRAEAALIAIgBWoiAiAESQR/IAAEQCAAIAJBAWo2AgALIAEgAmohASAGQQA6AABBACEAA38gASAAayICIAIsAAAgBiwAAHFB/wFxIAAgBXNBf2pBGHYiAkGAAXFyOgAAIAYgBi0AACACcjoAACAAQQFqIgAgA0cNAEEACwVBfwsFQX8LIQAgCQskACAACzYBAX9BHhADIgBBAEoEQEGElwIgADYCAAVBhJcCKAIAIQALIABBEEkEQBAABUHwlgJBEBAfCws1AQF/IwAhAiMAQUBrJAAgACACECogAEHQAWoiACACQsAAEB0gACABECogAkHAABAKIAIkAAs2AQN/An8jACECIwBBP2pBQHEkACMAIQAjAEEQaiQAIAAQjQEgACgCAARAIAAQjQELIAILJAALIwBBgJcCKAIABH9BAQUQggIQkAEQgAJBgJcCQQE2AgBBAAsLgQEBBH8gBAR/An8gA0UhBiACKAIAIQUCQANAIAUgAUkEQCAAIAVqLAAAIgchCCAHQT1GBEAgBEF/aiEEBSAGDQMgAyAIEEBF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BMUAKNUyAdRghP9YirT+5JJ8/7j29wBBdVb//WbS/v55JACJcwP/PBjYAIYSHQA74mEAsI5HAAfRoQC9VDP+m/pIANVU6/8t3uAA7pSP/6oqNf9Op3UAugAo/32xZ/9F4UIA4wdYAUusBgCpLeMBECRG/zICCf+LwRYAj7fn/tpFMgDsOKEB1YMqAIqRLP6I5Sj/MT8j/z2R9f9lwAL+6KdxAJhoJgF5udoAeYvT/nfwIwBBvdn+u7Oi/6C75gA++A7/PE5hAP/3o//hO1v/a0c6//EvIQEydewA27E//vRaswAjwtf/vUMy/xeHgQBovSX/uTnCACM+5//c+GwADOeyAI9QWwGDXWX/kCcCAf/6sgAFEez+iyAuAMy8Jv71czT/v3FJ/r9sRf8WRfUBF8uyAKpjqgBB+G8AJWyZ/0AlRQAAWD7+WZSQ/79E4AHxJzUAKcvt/5F+wv/dKv3/GWOXAGH93wFKczH/Bq9I/zuwywB8t/kB5ORjAIEMz/6owMP/zLAQ/pjqqwBNJVX/IXiH/47C4wEf1joA1bt9/+guPP++dCr+l7IT/zM+7f7M7MEAwug8AKwinf+9ELj+ZwNf/43pJP4pGQv/FcOmAHb1LQBD1ZX/nwwS/7uk4wGgGQUADE7DASvF4QAwjin+xJs8/9/HEgGRiJwA/HWp/pHi7gDvF2sAbbW8/+ZwMf5Jqu3/57fj/1DcFADCa38Bf81lAC40xQHSqyT/WANa/ziXjQBgu///Kk7IAP5GRgH0fagAzESKAXzXRgBmQsj+ETTkAHXcj/7L+HsAOBKu/7qXpP8z6NABoOQr//kdGQFEvj8ADQAAAAD/AAAAAPUAAAAAAAD7AAAAAAAA/QAAAADzAAAAAAcAAAAAAAMAAAAA8wAAAAAFAEGLgQILQAsAAAAAAAsAAAAA8wAAAAAAAP0AAAAAAP8AAAAAAwAAAAD1AAAAAAAAAA8AAAAAAP8AAAAA/wAAAAAHAAAAAAUAQcyCAgsBAQBB8IICCwEBAEGQgwILsAEm6JWPwrInsEXD9Iny75jw1d+sBdPGMzmxOAKIbVP8BccXanA9TdhPujwLdg0QZw8qIFP6LDnMxk7H/XeSrAN67P///////////////////////////////////////3/t////////////////////////////////////////f+7///////////////////////////////////////9/7dP1XBpjEljWnPei3vneFABBz4QCC8IFEAjJvPNn5glqO6fKhIWuZ7sr+JT+cvNuPPE2HV869U+l0YLmrX9SDlEfbD4rjGgFm2u9Qfur2YMfeSF+ExnN4FsirijXmC+KQs1l7yORRDdxLztN7M/7wLW824mBpdu16Ti1SPNbwlY5GdAFtvER8VmbTxmvpII/khiBbdrVXhyrQgIDo5iqB9i+b3BFAVuDEoyy5E6+hTEk4rT/1cN9DFVviXvydF2+crGWFjv+sd6ANRLHJacG3JuUJmnPdPGbwdJK8Z7BaZvk4yVPOIZHvu+11YyLxp3BD2WcrHfMoQwkdQIrWW8s6S2D5KZuqoR0StT7Qb3cqbBctVMRg9qI+Xar32buUlE+mBAytC1txjGoPyH7mMgnA7DkDu++x39Zv8KPqD3zC+DGJacKk0eRp9VvggPgUWPKBnBuDgpnKSkU/C/SRoUKtycmySZcOCEbLu0qxFr8bSxN37OVnRMNOFPeY6+LVHMKZaiydzy7Cmp25q7tRy7JwoE7NYIUhSxykmQD8Uyh6L+iATBCvEtmGqiRl/jQcItLwjC+VAajUWzHGFLv1hnoktEQqWVVJAaZ1iogcVeFNQ70uNG7MnCgahDI0NK4FsGkGVOrQVEIbDcemeuO30x3SCeoSJvhtbywNGNaycWzDBw5y4pB40qq2E5z42N3T8qcW6O4stbzby5o/LLvXe6Cj3RgLxdDb2OleHKr8KEUeMiE7DlkGggCx4woHmMj+v++kOm9gt7rbFCkFXnGsvej+b4rU3Lj8nhxxpxhJurOPifKB8LAIce4htEe6+DN1n3a6njRbu5/T331um8Xcqpn8AammMiixX1jCq4N+b4EmD8RG0ccEzULcRuEfQQj9XfbKJMkx0B7q8oyvL7JFQq+njxMDRCcxGcdQ7ZCPsu+1MVMKn5l/Jwpf1ns+tY6q2/LXxdYR0qMGURsgABBsIsCCwEBAEHQiwILwQHg63p8O0G4rhZW4/rxn8Rq2gmN65wysf2GYgUWX0m4AF+clbyjUIwksdCxVZyD71sERFzEWByOhtgiTt3QnxFX7P///////////////////////////////////////3/t////////////////////////////////////////f+7///////////////////////////////////////9/U2lnRWQyNTUxOSBubyBFZDI1NTE5IGNvbGxpc2lvbnMBAEGgjQILjwlTLT5idWZsZW4gPD0gQkxBS0UyQl9CTE9DS0JZVEVTAGNyeXB0b19nZW5lcmljaGFzaC9ibGFrZTJiL3JlZi9ibGFrZTJiLXJlZi5jAGJsYWtlMmJfZmluYWwAb3V0bGVuIDw9IFVJTlQ4X01BWABjcnlwdG9fZ2VuZXJpY2hhc2gvYmxha2UyYi9yZWYvZ2VuZXJpY2hhc2hfYmxha2UyYi5jAGNyeXB0b19nZW5lcmljaGFzaF9ibGFrZTJiX2ZpbmFsACRhcmdvbjJpZAAkYXJnb24yaQAkdj0AJG09ACx0PQAscD0AJGFyZ29uMmlkJHY9ACRhcmdvbjJpJHY9ACRhcmdvbjJpZCQAJGFyZ29uMmkkACJ7IHJldHVybiBNb2R1bGUuZ2V0UmFuZG9tVmFsdWUoKTsgfSIAeyBpZiAoTW9kdWxlLmdldFJhbmRvbVZhbHVlID09PSB1bmRlZmluZWQpIHsgdHJ5IHsgdmFyIHdpbmRvd18gPSAnb2JqZWN0JyA9PT0gdHlwZW9mIHdpbmRvdyA/IHdpbmRvdyA6IHNlbGY7IHZhciBjcnlwdG9fID0gdHlwZW9mIHdpbmRvd18uY3J5cHRvICE9PSAndW5kZWZpbmVkJyA/IHdpbmRvd18uY3J5cHRvIDogd2luZG93Xy5tc0NyeXB0bzsgdmFyIHJhbmRvbVZhbHVlc1N0YW5kYXJkID0gZnVuY3Rpb24oKSB7IHZhciBidWYgPSBuZXcgVWludDMyQXJyYXkoMSk7IGNyeXB0b18uZ2V0UmFuZG9tVmFsdWVzKGJ1Zik7IHJldHVybiBidWZbMF0gPj4+IDA7IH07IHJhbmRvbVZhbHVlc1N0YW5kYXJkKCk7IE1vZHVsZS5nZXRSYW5kb21WYWx1ZSA9IHJhbmRvbVZhbHVlc1N0YW5kYXJkOyB9IGNhdGNoIChlKSB7IHRyeSB7IHZhciBjcnlwdG8gPSByZXF1aXJlKCdjcnlwdG8nKTsgdmFyIHJhbmRvbVZhbHVlTm9kZUpTID0gZnVuY3Rpb24oKSB7IHZhciBidWYgPSBjcnlwdG9bJ3JhbmRvbUJ5dGVzJ10oNCk7IHJldHVybiAoYnVmWzBdIDw8IDI0IHwgYnVmWzFdIDw8IDE2IHwgYnVmWzJdIDw8IDggfCBidWZbM10pID4+PiAwOyB9OyByYW5kb21WYWx1ZU5vZGVKUygpOyBNb2R1bGUuZ2V0UmFuZG9tVmFsdWUgPSByYW5kb21WYWx1ZU5vZGVKUzsgfSBjYXRjaCAoZSkgeyB0aHJvdyAnTm8gc2VjdXJlIHJhbmRvbSBudW1iZXIgZ2VuZXJhdG9yIGZvdW5kJzsgfSB9IH0gfQBMaWJzb2RpdW1EUkdidWZfbGVuIDw9IFNJWkVfTUFYAHJhbmRvbWJ5dGVzL3JhbmRvbWJ5dGVzLmMAcmFuZG9tYnl0ZXMAYjY0X3BvcyA8PSBiNjRfbGVuAHNvZGl1bS9jb2RlY3MuYwBzb2RpdW1fYmluMmJhc2U2NAAxLjAuMTg=";function ce(){try{if(E)return new Uint8Array(E);var e=pe(se);if(e)return e;if(m)return m(se);throw"both async and sync fetching of the wasm failed"}catch(e){te(e)}}re(se)||(ie=se,se=c.locateFile?c.locateFile(ie,w):w+ie),c.asm=function(){var e={env:ge,wasi_unstable:ge,global:{NaN:NaN,Infinity:1/0},"global.Math":Math,asm2wasm:k};function t(e,t){var n=e.exports;c.asm=n,function(e){if(X--,c.monitorRunDependencies&&c.monitorRunDependencies(X),0==X&&(null!==Z&&(clearInterval(Z),Z=null),ee)){var t=ee;ee=null,t()}}()}function n(e){t(e.instance)}function r(t){return(E||!d&&!g||"function"!=typeof fetch?new Promise((function(e,t){e(ce())})):fetch(se,{credentials:"same-origin"}).then((function(e){if(!e.ok)throw"failed to load wasm binary file at '"+se+"'";return e.arrayBuffer()})).catch((function(){return ce()}))).then((function(t){return WebAssembly.instantiate(t,e)})).then(t,(function(e){B("failed to asynchronously prepare wasm: "+e),te(e)}))}if(X++,c.monitorRunDependencies&&c.monitorRunDependencies(X),c.instantiateWasm)try{return c.instantiateWasm(e,t)}catch(e){return B("Module.instantiateWasm callback failed with error: "+e),!1}return function(){if(E||"function"!=typeof WebAssembly.instantiateStreaming||re(se)||"function"!=typeof fetch)return r(n);fetch(se,{credentials:"same-origin"}).then((function(t){return WebAssembly.instantiateStreaming(t,e).then(n,(function(e){B("wasm streaming compile failed: "+e),B("falling back to ArrayBuffer instantiation"),r(n)}))}))}(),{}};var ue=[function(){return c.getRandomValue()},function(){if(void 0===c.getRandomValue)try{var e="object"==("undefined"==typeof window?"undefined":u(window))?window:self,t=void 0!==e.crypto?e.crypto:e.msCrypto,r=function(){var e=new Uint32Array(1);return t.getRandomValues(e),e[0]>>>0};r(),c.getRandomValue=r}catch(e){try{var i=n(46),a=function(){var e=i.randomBytes(4);return(e[0]<<24|e[1]<<16|e[2]<<8|e[3])>>>0};a(),c.getRandomValue=a}catch(e){throw"No secure random number generator found"}}}];function le(){return P.length}var Ae=!1;function fe(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];r>255&&(Ae&&x(!1,"Character code "+r+" ("+String.fromCharCode(r)+") at offset "+n+" not in 0x00-0xFF."),r&=255),t.push(String.fromCharCode(r))}return t.join("")}var he="function"==typeof atob?atob:function(e){var t,n,r,i,a,o,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",c="",u=0;e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{t=s.indexOf(e.charAt(u++))<<2|(i=s.indexOf(e.charAt(u++)))>>4,n=(15&i)<<4|(a=s.indexOf(e.charAt(u++)))>>2,r=(3&a)<<6|(o=s.indexOf(e.charAt(u++))),c+=String.fromCharCode(t),64!==a&&(c+=String.fromCharCode(n)),64!==o&&(c+=String.fromCharCode(r))}while(u<e.length);return c};function pe(e){if(re(e))return function(e){if("boolean"==typeof y&&y){var t;try{t=o.from(e,"base64")}catch(n){t=new o(e,"base64")}return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}try{for(var n=he(e),r=new Uint8Array(n.length),i=0;i<n.length;++i)r[i]=n.charCodeAt(i);return r}catch(e){throw new Error("Converting base64 string to bytes failed.")}}(e.slice(ne.length))}var de,ge={c:function(e,t,n,r){te("Assertion failed: "+H(e)+", at: "+[t?H(t):"unknown filename",n,r?H(r):"unknown function"])},__memory_base:1024,__table_base:0,a:function(){te()},b:function(e){return ue[e]()},g:le,f:function(e,t,n){M.set(M.subarray(t,t+n),e)},e:function(e){var t=le();if(e>2147418112)return!1;for(var n=Math.max(t,16777216);n<e;)n=n<=536870912?U(2*n,65536):Math.min(U((3*n+2147483648)/4,65536),2147418112);return!!function(e){try{return _.grow(e-D.byteLength+65535>>16),N(_.buffer),1}catch(e){}}(n)},d:function(e){switch(e){case 30:return 16384;case 85:return 131068;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==("undefined"==typeof navigator?"undefined":u(navigator))&&navigator.hardwareConcurrency||1}return c.___errno_location&&(O[c.___errno_location()>>2]=28),-1},memory:_,table:Q},ye=c.asm({},ge,D);function ve(e){function t(){de||(de=!0,S||(K($),K(Y),c.onRuntimeInitialized&&c.onRuntimeInitialized(),function(){if(c.postRun)for("function"==typeof c.postRun&&(c.postRun=[c.postRun]);c.postRun.length;)e=c.postRun.shift(),J.unshift(e);var e;K(J)}()))}e=e||p,X>0||(function(){if(c.preRun)for("function"==typeof c.preRun&&(c.preRun=[c.preRun]);c.preRun.length;)e=c.preRun.shift(),G.unshift(e);var e;K(G)}(),X>0||(c.setStatus?(c.setStatus("Running..."),setTimeout((function(){setTimeout((function(){c.setStatus("")}),1),t()}),1)):t()))}if(c.asm=ye,c.___errno_location=function(){return c.asm.h.apply(null,arguments)},c._crypto_aead_chacha20poly1305_abytes=function(){return c.asm.i.apply(null,arguments)},c._crypto_aead_chacha20poly1305_decrypt=function(){return c.asm.j.apply(null,arguments)},c._crypto_aead_chacha20poly1305_decrypt_detached=function(){return c.asm.k.apply(null,arguments)},c._crypto_aead_chacha20poly1305_encrypt=function(){return c.asm.l.apply(null,arguments)},c._crypto_aead_chacha20poly1305_encrypt_detached=function(){return c.asm.m.apply(null,arguments)},c._crypto_aead_chacha20poly1305_ietf_abytes=function(){return c.asm.n.apply(null,arguments)},c._crypto_aead_chacha20poly1305_ietf_decrypt=function(){return c.asm.o.apply(null,arguments)},c._crypto_aead_chacha20poly1305_ietf_decrypt_detached=function(){return c.asm.p.apply(null,arguments)},c._crypto_aead_chacha20poly1305_ietf_encrypt=function(){return c.asm.q.apply(null,arguments)},c._crypto_aead_chacha20poly1305_ietf_encrypt_detached=function(){return c.asm.r.apply(null,arguments)},c._crypto_aead_chacha20poly1305_ietf_keybytes=function(){return c.asm.s.apply(null,arguments)},c._crypto_aead_chacha20poly1305_ietf_keygen=function(){return c.asm.t.apply(null,arguments)},c._crypto_aead_chacha20poly1305_ietf_messagebytes_max=function(){return c.asm.u.apply(null,arguments)},c._crypto_aead_chacha20poly1305_ietf_npubbytes=function(){return c.asm.v.apply(null,arguments)},c._crypto_aead_chacha20poly1305_ietf_nsecbytes=function(){return c.asm.w.apply(null,arguments)},c._crypto_aead_chacha20poly1305_keybytes=function(){return c.asm.x.apply(null,arguments)},c._crypto_aead_chacha20poly1305_keygen=function(){return c.asm.y.apply(null,arguments)},c._crypto_aead_chacha20poly1305_messagebytes_max=function(){return c.asm.z.apply(null,arguments)},c._crypto_aead_chacha20poly1305_npubbytes=function(){return c.asm.A.apply(null,arguments)},c._crypto_aead_chacha20poly1305_nsecbytes=function(){return c.asm.B.apply(null,arguments)},c._crypto_aead_xchacha20poly1305_ietf_abytes=function(){return c.asm.C.apply(null,arguments)},c._crypto_aead_xchacha20poly1305_ietf_decrypt=function(){return c.asm.D.apply(null,arguments)},c._crypto_aead_xchacha20poly1305_ietf_decrypt_detached=function(){return c.asm.E.apply(null,arguments)},c._crypto_aead_xchacha20poly1305_ietf_encrypt=function(){return c.asm.F.apply(null,arguments)},c._crypto_aead_xchacha20poly1305_ietf_encrypt_detached=function(){return c.asm.G.apply(null,arguments)},c._crypto_aead_xchacha20poly1305_ietf_keybytes=function(){return c.asm.H.apply(null,arguments)},c._crypto_aead_xchacha20poly1305_ietf_keygen=function(){return c.asm.I.apply(null,arguments)},c._crypto_aead_xchacha20poly1305_ietf_messagebytes_max=function(){return c.asm.J.apply(null,arguments)},c._crypto_aead_xchacha20poly1305_ietf_npubbytes=function(){return c.asm.K.apply(null,arguments)},c._crypto_aead_xchacha20poly1305_ietf_nsecbytes=function(){return c.asm.L.apply(null,arguments)},c._crypto_auth=function(){return c.asm.M.apply(null,arguments)},c._crypto_auth_bytes=function(){return c.asm.N.apply(null,arguments)},c._crypto_auth_keybytes=function(){return c.asm.O.apply(null,arguments)},c._crypto_auth_keygen=function(){return c.asm.P.apply(null,arguments)},c._crypto_auth_verify=function(){return c.asm.Q.apply(null,arguments)},c._crypto_box_beforenm=function(){return c.asm.R.apply(null,arguments)},c._crypto_box_beforenmbytes=function(){return c.asm.S.apply(null,arguments)},c._crypto_box_detached=function(){return c.asm.T.apply(null,arguments)},c._crypto_box_detached_afternm=function(){return c.asm.U.apply(null,arguments)},c._crypto_box_easy=function(){return c.asm.V.apply(null,arguments)},c._crypto_box_easy_afternm=function(){return c.asm.W.apply(null,arguments)},c._crypto_box_keypair=function(){return c.asm.X.apply(null,arguments)},c._crypto_box_macbytes=function(){return c.asm.Y.apply(null,arguments)},c._crypto_box_messagebytes_max=function(){return c.asm.Z.apply(null,arguments)},c._crypto_box_noncebytes=function(){return c.asm._.apply(null,arguments)},c._crypto_box_open_detached=function(){return c.asm.$.apply(null,arguments)},c._crypto_box_open_detached_afternm=function(){return c.asm.aa.apply(null,arguments)},c._crypto_box_open_easy=function(){return c.asm.ba.apply(null,arguments)},c._crypto_box_open_easy_afternm=function(){return c.asm.ca.apply(null,arguments)},c._crypto_box_publickeybytes=function(){return c.asm.da.apply(null,arguments)},c._crypto_box_seal=function(){return c.asm.ea.apply(null,arguments)},c._crypto_box_seal_open=function(){return c.asm.fa.apply(null,arguments)},c._crypto_box_sealbytes=function(){return c.asm.ga.apply(null,arguments)},c._crypto_box_secretkeybytes=function(){return c.asm.ha.apply(null,arguments)},c._crypto_box_seed_keypair=function(){return c.asm.ia.apply(null,arguments)},c._crypto_box_seedbytes=function(){return c.asm.ja.apply(null,arguments)},c._crypto_generichash=function(){return c.asm.ka.apply(null,arguments)},c._crypto_generichash_bytes=function(){return c.asm.la.apply(null,arguments)},c._crypto_generichash_bytes_max=function(){return c.asm.ma.apply(null,arguments)},c._crypto_generichash_bytes_min=function(){return c.asm.na.apply(null,arguments)},c._crypto_generichash_final=function(){return c.asm.oa.apply(null,arguments)},c._crypto_generichash_init=function(){return c.asm.pa.apply(null,arguments)},c._crypto_generichash_keybytes=function(){return c.asm.qa.apply(null,arguments)},c._crypto_generichash_keybytes_max=function(){return c.asm.ra.apply(null,arguments)},c._crypto_generichash_keybytes_min=function(){return c.asm.sa.apply(null,arguments)},c._crypto_generichash_keygen=function(){return c.asm.ta.apply(null,arguments)},c._crypto_generichash_statebytes=function(){return c.asm.ua.apply(null,arguments)},c._crypto_generichash_update=function(){return c.asm.va.apply(null,arguments)},c._crypto_hash=function(){return c.asm.wa.apply(null,arguments)},c._crypto_hash_bytes=function(){return c.asm.xa.apply(null,arguments)},c._crypto_kdf_bytes_max=function(){return c.asm.ya.apply(null,arguments)},c._crypto_kdf_bytes_min=function(){return c.asm.za.apply(null,arguments)},c._crypto_kdf_contextbytes=function(){return c.asm.Aa.apply(null,arguments)},c._crypto_kdf_derive_from_key=function(){return c.asm.Ba.apply(null,arguments)},c._crypto_kdf_keybytes=function(){return c.asm.Ca.apply(null,arguments)},c._crypto_kdf_keygen=function(){return c.asm.Da.apply(null,arguments)},c._crypto_kx_client_session_keys=function(){return c.asm.Ea.apply(null,arguments)},c._crypto_kx_keypair=function(){return c.asm.Fa.apply(null,arguments)},c._crypto_kx_publickeybytes=function(){return c.asm.Ga.apply(null,arguments)},c._crypto_kx_secretkeybytes=function(){return c.asm.Ha.apply(null,arguments)},c._crypto_kx_seed_keypair=function(){return c.asm.Ia.apply(null,arguments)},c._crypto_kx_seedbytes=function(){return c.asm.Ja.apply(null,arguments)},c._crypto_kx_server_session_keys=function(){return c.asm.Ka.apply(null,arguments)},c._crypto_kx_sessionkeybytes=function(){return c.asm.La.apply(null,arguments)},c._crypto_pwhash=function(){return c.asm.Ma.apply(null,arguments)},c._crypto_pwhash_alg_argon2i13=function(){return c.asm.Na.apply(null,arguments)},c._crypto_pwhash_alg_argon2id13=function(){return c.asm.Oa.apply(null,arguments)},c._crypto_pwhash_alg_default=function(){return c.asm.Pa.apply(null,arguments)},c._crypto_pwhash_bytes_max=function(){return c.asm.Qa.apply(null,arguments)},c._crypto_pwhash_bytes_min=function(){return c.asm.Ra.apply(null,arguments)},c._crypto_pwhash_memlimit_interactive=function(){return c.asm.Sa.apply(null,arguments)},c._crypto_pwhash_memlimit_max=function(){return c.asm.Ta.apply(null,arguments)},c._crypto_pwhash_memlimit_min=function(){return c.asm.Ua.apply(null,arguments)},c._crypto_pwhash_memlimit_moderate=function(){return c.asm.Va.apply(null,arguments)},c._crypto_pwhash_memlimit_sensitive=function(){return c.asm.Wa.apply(null,arguments)},c._crypto_pwhash_opslimit_interactive=function(){return c.asm.Xa.apply(null,arguments)},c._crypto_pwhash_opslimit_max=function(){return c.asm.Ya.apply(null,arguments)},c._crypto_pwhash_opslimit_min=function(){return c.asm.Za.apply(null,arguments)},c._crypto_pwhash_opslimit_moderate=function(){return c.asm._a.apply(null,arguments)},c._crypto_pwhash_opslimit_sensitive=function(){return c.asm.$a.apply(null,arguments)},c._crypto_pwhash_passwd_max=function(){return c.asm.ab.apply(null,arguments)},c._crypto_pwhash_passwd_min=function(){return c.asm.bb.apply(null,arguments)},c._crypto_pwhash_saltbytes=function(){return c.asm.cb.apply(null,arguments)},c._crypto_pwhash_str=function(){return c.asm.db.apply(null,arguments)},c._crypto_pwhash_str_alg=function(){return c.asm.eb.apply(null,arguments)},c._crypto_pwhash_str_needs_rehash=function(){return c.asm.fb.apply(null,arguments)},c._crypto_pwhash_str_verify=function(){return c.asm.gb.apply(null,arguments)},c._crypto_pwhash_strbytes=function(){return c.asm.hb.apply(null,arguments)},c._crypto_pwhash_strprefix=function(){return c.asm.ib.apply(null,arguments)},c._crypto_scalarmult=function(){return c.asm.jb.apply(null,arguments)},c._crypto_scalarmult_base=function(){return c.asm.kb.apply(null,arguments)},c._crypto_scalarmult_bytes=function(){return c.asm.lb.apply(null,arguments)},c._crypto_scalarmult_scalarbytes=function(){return c.asm.mb.apply(null,arguments)},c._crypto_secretbox_detached=function(){return c.asm.nb.apply(null,arguments)},c._crypto_secretbox_easy=function(){return c.asm.ob.apply(null,arguments)},c._crypto_secretbox_keybytes=function(){return c.asm.pb.apply(null,arguments)},c._crypto_secretbox_keygen=function(){return c.asm.qb.apply(null,arguments)},c._crypto_secretbox_macbytes=function(){return c.asm.rb.apply(null,arguments)},c._crypto_secretbox_messagebytes_max=function(){return c.asm.sb.apply(null,arguments)},c._crypto_secretbox_noncebytes=function(){return c.asm.tb.apply(null,arguments)},c._crypto_secretbox_open_detached=function(){return c.asm.ub.apply(null,arguments)},c._crypto_secretbox_open_easy=function(){return c.asm.vb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_abytes=function(){return c.asm.wb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_headerbytes=function(){return c.asm.xb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_init_pull=function(){return c.asm.yb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_init_push=function(){return c.asm.zb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_keybytes=function(){return c.asm.Ab.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_keygen=function(){return c.asm.Bb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_messagebytes_max=function(){return c.asm.Cb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_pull=function(){return c.asm.Db.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_push=function(){return c.asm.Eb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_rekey=function(){return c.asm.Fb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_statebytes=function(){return c.asm.Gb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_tag_final=function(){return c.asm.Hb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_tag_message=function(){return c.asm.Ib.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_tag_push=function(){return c.asm.Jb.apply(null,arguments)},c._crypto_secretstream_xchacha20poly1305_tag_rekey=function(){return c.asm.Kb.apply(null,arguments)},c._crypto_shorthash=function(){return c.asm.Lb.apply(null,arguments)},c._crypto_shorthash_bytes=function(){return c.asm.Mb.apply(null,arguments)},c._crypto_shorthash_keybytes=function(){return c.asm.Nb.apply(null,arguments)},c._crypto_shorthash_keygen=function(){return c.asm.Ob.apply(null,arguments)},c._crypto_sign=function(){return c.asm.Pb.apply(null,arguments)},c._crypto_sign_bytes=function(){return c.asm.Qb.apply(null,arguments)},c._crypto_sign_detached=function(){return c.asm.Rb.apply(null,arguments)},c._crypto_sign_ed25519_pk_to_curve25519=function(){return c.asm.Sb.apply(null,arguments)},c._crypto_sign_ed25519_sk_to_curve25519=function(){return c.asm.Tb.apply(null,arguments)},c._crypto_sign_final_create=function(){return c.asm.Ub.apply(null,arguments)},c._crypto_sign_final_verify=function(){return c.asm.Vb.apply(null,arguments)},c._crypto_sign_init=function(){return c.asm.Wb.apply(null,arguments)},c._crypto_sign_keypair=function(){return c.asm.Xb.apply(null,arguments)},c._crypto_sign_messagebytes_max=function(){return c.asm.Yb.apply(null,arguments)},c._crypto_sign_open=function(){return c.asm.Zb.apply(null,arguments)},c._crypto_sign_publickeybytes=function(){return c.asm._b.apply(null,arguments)},c._crypto_sign_secretkeybytes=function(){return c.asm.$b.apply(null,arguments)},c._crypto_sign_seed_keypair=function(){return c.asm.ac.apply(null,arguments)},c._crypto_sign_seedbytes=function(){return c.asm.bc.apply(null,arguments)},c._crypto_sign_statebytes=function(){return c.asm.cc.apply(null,arguments)},c._crypto_sign_update=function(){return c.asm.dc.apply(null,arguments)},c._crypto_sign_verify_detached=function(){return c.asm.ec.apply(null,arguments)},c._free=function(){return c.asm.fc.apply(null,arguments)},c._malloc=function(){return c.asm.gc.apply(null,arguments)},c._randombytes=function(){return c.asm.hc.apply(null,arguments)},c._randombytes_buf=function(){return c.asm.ic.apply(null,arguments)},c._randombytes_buf_deterministic=function(){return c.asm.jc.apply(null,arguments)},c._randombytes_close=function(){return c.asm.kc.apply(null,arguments)},c._randombytes_random=function(){return c.asm.lc.apply(null,arguments)},c._randombytes_seedbytes=function(){return c.asm.mc.apply(null,arguments)},c._randombytes_stir=function(){return c.asm.nc.apply(null,arguments)},c._randombytes_uniform=function(){return c.asm.oc.apply(null,arguments)},c._sodium_base642bin=function(){return c.asm.pc.apply(null,arguments)},c._sodium_base64_encoded_len=function(){return c.asm.qc.apply(null,arguments)},c._sodium_bin2base64=function(){return c.asm.rc.apply(null,arguments)},c._sodium_bin2hex=function(){return c.asm.sc.apply(null,arguments)},c._sodium_hex2bin=function(){return c.asm.tc.apply(null,arguments)},c._sodium_init=function(){return c.asm.uc.apply(null,arguments)},c._sodium_library_minimal=function(){return c.asm.vc.apply(null,arguments)},c._sodium_library_version_major=function(){return c.asm.wc.apply(null,arguments)},c._sodium_library_version_minor=function(){return c.asm.xc.apply(null,arguments)},c._sodium_pad=function(){return c.asm.yc.apply(null,arguments)},c._sodium_unpad=function(){return c.asm.zc.apply(null,arguments)},c._sodium_version_string=function(){return c.asm.Ac.apply(null,arguments)},c.asm=ye,c.setValue=function(e,t,n,r){switch("*"===(n=n||"i8").charAt(n.length-1)&&(n="i32"),n){case"i1":case"i8":P[e>>0]=t;break;case"i16":F[e>>1]=t;break;case"i32":O[e>>2]=t;break;case"i64":oe=[t>>>0,(ae=t,+V(ae)>=1?ae>0?(0|W(+q(ae/4294967296),4294967295))>>>0:~~+z((ae-+(~~ae>>>0))/4294967296)>>>0:0)],O[e>>2]=oe[0],O[e+4>>2]=oe[1];break;case"float":R[e>>2]=t;break;case"double":T[e>>3]=t;break;default:te("invalid type for setValue: "+n)}},c.getValue=function(e,t,n){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return P[e>>0];case"i16":return F[e>>1];case"i32":case"i64":return O[e>>2];case"float":return R[e>>2];case"double":return T[e>>3];default:te("invalid type for getValue: "+t)}return null},c.UTF8ToString=H,ee=function e(){de||ve(),de||(ee=e)},c.run=ve,c.preInit)for("function"==typeof c.preInit&&(c.preInit=[c.preInit]);c.preInit.length>0;)c.preInit.pop()();ve()})).catch((function(){l.useBackupModule()})),"object"==(void 0===i?"undefined":u(i))&&"function"==typeof i.removeAllListeners&&(i.removeAllListeners("uncaughtException"),i.removeAllListeners("unhandledRejection")),s})?s.apply(t,[t]):s)||(e.exports=c)}).call(this,n(8),n(9),"/",n(3).Buffer)},function(e,t,n){"use strict";t.byteLength=function(e){var t=u(e),n=t[0],r=t[1];return 3*(n+r)/4-r},t.toByteArray=function(e){var t,n,r=u(e),o=r[0],s=r[1],c=new a(function(e,t,n){return 3*(t+n)/4-n}(0,o,s)),l=0,A=s>0?o-4:o;for(n=0;n<A;n+=4)t=i[e.charCodeAt(n)]<<18|i[e.charCodeAt(n+1)]<<12|i[e.charCodeAt(n+2)]<<6|i[e.charCodeAt(n+3)],c[l++]=t>>16&255,c[l++]=t>>8&255,c[l++]=255&t;return 2===s&&(t=i[e.charCodeAt(n)]<<2|i[e.charCodeAt(n+1)]>>4,c[l++]=255&t),1===s&&(t=i[e.charCodeAt(n)]<<10|i[e.charCodeAt(n+1)]<<4|i[e.charCodeAt(n+2)]>>2,c[l++]=t>>8&255,c[l++]=255&t),c},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a=[],o=0,s=n-i;o<s;o+=16383)a.push(l(e,o,o+16383>s?s:o+16383));return 1===i?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),a.join("")};for(var r=[],i=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,c=o.length;s<c;++s)r[s]=o[s],i[o.charCodeAt(s)]=s;function u(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var i,a,o=[],s=t;s<n;s+=3)i=(e[s]<<16&16711680)+(e[s+1]<<8&65280)+(255&e[s+2]),o.push(r[(a=i)>>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,r,i){var a,o,s=8*i-r-1,c=(1<<s)-1,u=c>>1,l=-7,A=n?i-1:0,f=n?-1:1,h=e[t+A];for(A+=f,a=h&(1<<-l)-1,h>>=-l,l+=s;l>0;a=256*a+e[t+A],A+=f,l-=8);for(o=a&(1<<-l)-1,a>>=-l,l+=r;l>0;o=256*o+e[t+A],A+=f,l-=8);if(0===a)a=1-u;else{if(a===c)return o?NaN:1/0*(h?-1:1);o+=Math.pow(2,r),a-=u}return(h?-1:1)*o*Math.pow(2,a-r)},t.write=function(e,t,n,r,i,a){var o,s,c,u=8*a-i-1,l=(1<<u)-1,A=l>>1,f=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=r?0:a-1,p=r?1:-1,d=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=l):(o=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-o))<1&&(o--,c*=2),(t+=o+A>=1?f/c:f*Math.pow(2,1-A))*c>=2&&(o++,c/=2),o+A>=l?(s=0,o=l):o+A>=1?(s=(t*c-1)*Math.pow(2,i),o+=A):(s=t*Math.pow(2,A-1)*Math.pow(2,i),o=0));i>=8;e[n+h]=255&s,h+=p,s/=256,i-=8);for(o=o<<i|s,u+=i;u>0;e[n+h]=255&o,h+=p,o/=256,u-=8);e[n+h-p]|=128*d}},function(e,t){},function(e,t,n){"use strict";var r=n(2).Buffer,i=n(91);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},e.prototype.concat=function(e){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var t,n,i=r.allocUnsafe(e>>>0),a=this.head,o=0;a;)t=i,n=o,a.data.copy(t,n),o+=a.data.length,a=a.next;return i},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},function(e,t){},function(e,t,n){(function(e){var r=void 0!==e&&e||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function a(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new a(i.call(setTimeout,r,arguments),clearTimeout)},t.setInterval=function(){return new a(i.call(setInterval,r,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},a.prototype.unref=a.prototype.ref=function(){},a.prototype.close=function(){this._clearFn.call(r,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(93),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(8))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var r,i,a,o,s,c=1,u={},l=!1,A=e.document,f=Object.getPrototypeOf&&Object.getPrototypeOf(e);f=f&&f.setTimeout?f:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){p(e)}))}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?(o="setImmediate$"+Math.random()+"$",s=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(o)&&p(+t.data.slice(o.length))},e.addEventListener?e.addEventListener("message",s,!1):e.attachEvent("onmessage",s),r=function(t){e.postMessage(o+t,"*")}):e.MessageChannel?((a=new MessageChannel).port1.onmessage=function(e){p(e.data)},r=function(e){a.port2.postMessage(e)}):A&&"onreadystatechange"in A.createElement("script")?(i=A.documentElement,r=function(e){var t=A.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):r=function(e){setTimeout(p,0,e)},f.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var i={callback:e,args:t};return u[c]=i,r(c),c++},f.clearImmediate=h}function h(e){delete u[e]}function p(e){if(l)setTimeout(p,0,e);else{var t=u[e];if(t){l=!0;try{!function(e){var t=e.callback,n=e.args;switch(n.length){case 0:t();break;case 1:t(n[0]);break;case 2:t(n[0],n[1]);break;case 3:t(n[0],n[1],n[2]);break;default:t.apply(void 0,n)}}(t)}finally{h(e),l=!1}}}}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,n(8),n(9))},function(e,t,n){(function(t){function n(e){try{if(!t.localStorage)return!1}catch(e){return!1}var n=t.localStorage[e];return null!=n&&"true"===String(n).toLowerCase()}e.exports=function(e,t){if(n("noDeprecation"))return e;var r=!1;return function(){if(!r){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}}).call(this,n(8))},function(e,t,n){"use strict";e.exports=a;var r=n(51),i=Object.create(n(16));function a(e){if(!(this instanceof a))return new a(e);r.call(this,e)}i.inherits=n(1),i.inherits(a,r),a.prototype._transform=function(e,t,n){n(null,e)}},function(e,t,n){e.exports=n(30)},function(e,t,n){e.exports=n(12)},function(e,t,n){e.exports=n(29).Transform},function(e,t,n){e.exports=n(29).PassThrough},function(e,t,n){var r=n(1),i=n(14),a=n(2).Buffer,o=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function c(){this.init(),this._w=s,i.call(this,64,56)}function u(e){return e<<30|e>>>2}function l(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,a=0|this._c,s=0|this._d,c=0|this._e,A=0;A<16;++A)n[A]=e.readInt32BE(4*A);for(;A<80;++A)n[A]=n[A-3]^n[A-8]^n[A-14]^n[A-16];for(var f=0;f<80;++f){var h=~~(f/20),p=0|((t=r)<<5|t>>>27)+l(h,i,a,s)+c+n[f]+o[h];c=s,s=a,a=u(i),i=r,r=p}this._a=r+this._a|0,this._b=i+this._b|0,this._c=a+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},function(e,t,n){var r=n(1),i=n(14),a=n(2).Buffer,o=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function c(){this.init(),this._w=s,i.call(this,64,56)}function u(e){return e<<5|e>>>27}function l(e){return e<<30|e>>>2}function A(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,a=0|this._c,s=0|this._d,c=0|this._e,f=0;f<16;++f)n[f]=e.readInt32BE(4*f);for(;f<80;++f)n[f]=(t=n[f-3]^n[f-8]^n[f-14]^n[f-16])<<1|t>>>31;for(var h=0;h<80;++h){var p=~~(h/20),d=u(r)+A(p,i,a,s)+c+n[h]+o[p]|0;c=s,s=a,a=l(i),i=r,r=d}this._a=r+this._a|0,this._b=i+this._b|0,this._c=a+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=a.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},function(e,t,n){var r=n(1),i=n(52),a=n(14),o=n(2).Buffer,s=new Array(64);function c(){this.init(),this._w=s,a.call(this,64,56)}r(c,i),c.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},c.prototype._hash=function(){var e=o.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=c},function(e,t,n){var r=n(1),i=n(53),a=n(14),o=n(2).Buffer,s=new Array(160);function c(){this.init(),this._w=s,a.call(this,128,112)}r(c,i),c.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},c.prototype._hash=function(){var e=o.allocUnsafe(48);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e},e.exports=c},function(e,t,n){"use strict";var r=n(1),i=n(2).Buffer,a=n(11),o=i.alloc(128);function s(e,t){a.call(this,"digest"),"string"==typeof t&&(t=i.from(t)),this._alg=e,this._key=t,t.length>64?t=e(t):t.length<64&&(t=i.concat([t,o],64));for(var n=this._ipad=i.allocUnsafe(64),r=this._opad=i.allocUnsafe(64),s=0;s<64;s++)n[s]=54^t[s],r[s]=92^t[s];this._hash=[n]}r(s,a),s.prototype._update=function(e){this._hash.push(e)},s.prototype._final=function(){var e=this._alg(i.concat(this._hash));return this._alg(i.concat([this._opad,e]))},e.exports=s},function(e,t,n){e.exports=n(56)},function(e,t,n){(function(t,r){var i,a=n(58),o=n(59),s=n(60),c=n(2).Buffer,u=t.crypto&&t.crypto.subtle,l={sha:"SHA-1","sha-1":"SHA-1",sha1:"SHA-1",sha256:"SHA-256","sha-256":"SHA-256",sha384:"SHA-384","sha-384":"SHA-384","sha-512":"SHA-512",sha512:"SHA-512"},A=[];function f(e,t,n,r,i){return u.importKey("raw",e,{name:"PBKDF2"},!1,["deriveBits"]).then((function(e){return u.deriveBits({name:"PBKDF2",salt:t,iterations:n,hash:{name:i}},e,r<<3)})).then((function(e){return c.from(e)}))}e.exports=function(e,n,h,p,d,g){"function"==typeof d&&(g=d,d=void 0);var y=l[(d=d||"sha1").toLowerCase()];if(!y||"function"!=typeof t.Promise)return r.nextTick((function(){var t;try{t=s(e,n,h,p,d)}catch(e){return g(e)}g(null,t)}));if(a(e,n,h,p),"function"!=typeof g)throw new Error("No callback provided to pbkdf2");c.isBuffer(e)||(e=c.from(e,o)),c.isBuffer(n)||(n=c.from(n,o)),function(e,t){e.then((function(e){r.nextTick((function(){t(null,e)}))}),(function(e){r.nextTick((function(){t(e)}))}))}(function(e){if(t.process&&!t.process.browser)return Promise.resolve(!1);if(!u||!u.importKey||!u.deriveBits)return Promise.resolve(!1);if(void 0!==A[e])return A[e];var n=f(i=i||c.alloc(8),i,10,128,e).then((function(){return!0})).catch((function(){return!1}));return A[e]=n,n}(y).then((function(t){return t?f(e,n,h,p,y):s(e,n,h,p,d)})),g)}}).call(this,n(8),n(9))},function(e,t,n){var r=n(108),i=n(35),a=n(36),o=n(121),s=n(23);function c(e,t,n){if(e=e.toLowerCase(),a[e])return i.createCipheriv(e,t,n);if(o[e])return new r({key:t,iv:n,mode:e});throw new TypeError("invalid suite type")}function u(e,t,n){if(e=e.toLowerCase(),a[e])return i.createDecipheriv(e,t,n);if(o[e])return new r({key:t,iv:n,mode:e,decrypt:!0});throw new TypeError("invalid suite type")}t.createCipher=t.Cipher=function(e,t){var n,r;if(e=e.toLowerCase(),a[e])n=a[e].key,r=a[e].iv;else{if(!o[e])throw new TypeError("invalid suite type");n=8*o[e].key,r=o[e].iv}var i=s(t,!1,n,r);return c(e,i.key,i.iv)},t.createCipheriv=t.Cipheriv=c,t.createDecipher=t.Decipher=function(e,t){var n,r;if(e=e.toLowerCase(),a[e])n=a[e].key,r=a[e].iv;else{if(!o[e])throw new TypeError("invalid suite type");n=8*o[e].key,r=o[e].iv}var i=s(t,!1,n,r);return u(e,i.key,i.iv)},t.createDecipheriv=t.Decipheriv=u,t.listCiphers=t.getCiphers=function(){return Object.keys(o).concat(i.getCiphers())}},function(e,t,n){var r=n(11),i=n(109),a=n(1),o=n(2).Buffer,s={"des-ede3-cbc":i.CBC.instantiate(i.EDE),"des-ede3":i.EDE,"des-ede-cbc":i.CBC.instantiate(i.EDE),"des-ede":i.EDE,"des-cbc":i.CBC.instantiate(i.DES),"des-ecb":i.DES};function c(e){r.call(this);var t,n=e.mode.toLowerCase(),i=s[n];t=e.decrypt?"decrypt":"encrypt";var a=e.key;o.isBuffer(a)||(a=o.from(a)),"des-ede"!==n&&"des-ede-cbc"!==n||(a=o.concat([a,a.slice(0,8)]));var c=e.iv;o.isBuffer(c)||(c=o.from(c)),this._des=i.create({key:a,iv:c,type:t})}s.des=s["des-cbc"],s.des3=s["des-ede3-cbc"],e.exports=c,a(c,r),c.prototype._update=function(e){return o.from(this._des.update(e))},c.prototype._final=function(){return o.from(this._des.final())}},function(e,t,n){"use strict";t.utils=n(61),t.Cipher=n(34),t.DES=n(62),t.CBC=n(110),t.EDE=n(111)},function(e,t,n){"use strict";var r=n(6),i=n(1),a={};function o(e){r.equal(e.length,8,"Invalid IV length"),this.iv=new Array(8);for(var t=0;t<this.iv.length;t++)this.iv[t]=e[t]}t.instantiate=function(e){function t(t){e.call(this,t),this._cbcInit()}i(t,e);for(var n=Object.keys(a),r=0;r<n.length;r++){var o=n[r];t.prototype[o]=a[o]}return t.create=function(e){return new t(e)},t},a._cbcInit=function(){var e=new o(this.options.iv);this._cbcState=e},a._update=function(e,t,n,r){var i=this._cbcState,a=this.constructor.super_.prototype,o=i.iv;if("encrypt"===this.type){for(var s=0;s<this.blockSize;s++)o[s]^=e[t+s];for(a._update.call(this,o,0,n,r),s=0;s<this.blockSize;s++)o[s]=n[r+s]}else{for(a._update.call(this,e,t,n,r),s=0;s<this.blockSize;s++)n[r+s]^=o[s];for(s=0;s<this.blockSize;s++)o[s]=e[t+s]}}},function(e,t,n){"use strict";var r=n(6),i=n(1),a=n(34),o=n(62);function s(e,t){r.equal(t.length,24,"Invalid key length");var n=t.slice(0,8),i=t.slice(8,16),a=t.slice(16,24);this.ciphers="encrypt"===e?[o.create({type:"encrypt",key:n}),o.create({type:"decrypt",key:i}),o.create({type:"encrypt",key:a})]:[o.create({type:"decrypt",key:a}),o.create({type:"encrypt",key:i}),o.create({type:"decrypt",key:n})]}function c(e){a.call(this,e);var t=new s(this.type,this.options.key);this._edeState=t}i(c,a),e.exports=c,c.create=function(e){return new c(e)},c.prototype._update=function(e,t,n,r){var i=this._edeState;i.ciphers[0]._update(e,t,n,r),i.ciphers[1]._update(n,r,n,r),i.ciphers[2]._update(n,r,n,r)},c.prototype._pad=o.prototype._pad,c.prototype._unpad=o.prototype._unpad},function(e,t,n){var r=n(36),i=n(66),a=n(2).Buffer,o=n(67),s=n(11),c=n(22),u=n(23);function l(e,t,n){s.call(this),this._cache=new f,this._cipher=new c.AES(t),this._prev=a.from(n),this._mode=e,this._autopadding=!0}n(1)(l,s),l.prototype._update=function(e){var t,n;this._cache.add(e);for(var r=[];t=this._cache.get();)n=this._mode.encrypt(this,t),r.push(n);return a.concat(r)};var A=a.alloc(16,16);function f(){this.cache=a.allocUnsafe(0)}function h(e,t,n){var s=r[e.toLowerCase()];if(!s)throw new TypeError("invalid suite type");if("string"==typeof t&&(t=a.from(t)),t.length!==s.key/8)throw new TypeError("invalid key length "+t.length);if("string"==typeof n&&(n=a.from(n)),"GCM"!==s.mode&&n.length!==s.iv)throw new TypeError("invalid iv length "+n.length);return"stream"===s.type?new o(s.module,t,n):"auth"===s.type?new i(s.module,t,n):new l(s.module,t,n)}l.prototype._final=function(){var e=this._cache.flush();if(this._autopadding)return e=this._mode.encrypt(this,e),this._cipher.scrub(),e;if(!e.equals(A))throw this._cipher.scrub(),new Error("data not multiple of block length")},l.prototype.setAutoPadding=function(e){return this._autopadding=!!e,this},f.prototype.add=function(e){this.cache=a.concat([this.cache,e])},f.prototype.get=function(){if(this.cache.length>15){var e=this.cache.slice(0,16);return this.cache=this.cache.slice(16),e}return null},f.prototype.flush=function(){for(var e=16-this.cache.length,t=a.allocUnsafe(e),n=-1;++n<e;)t.writeUInt8(e,n);return a.concat([this.cache,t])},t.createCipheriv=h,t.createCipher=function(e,t){var n=r[e.toLowerCase()];if(!n)throw new TypeError("invalid suite type");var i=u(t,!1,n.key,n.iv);return h(e,i.key,i.iv)}},function(e,t){t.encrypt=function(e,t){return e._cipher.encryptBlock(t)},t.decrypt=function(e,t){return e._cipher.decryptBlock(t)}},function(e,t,n){var r=n(17);t.encrypt=function(e,t){var n=r(t,e._prev);return e._prev=e._cipher.encryptBlock(n),e._prev},t.decrypt=function(e,t){var n=e._prev;e._prev=t;var i=e._cipher.decryptBlock(t);return r(i,n)}},function(e,t,n){var r=n(2).Buffer,i=n(17);function a(e,t,n){var a=t.length,o=i(t,e._cache);return e._cache=e._cache.slice(a),e._prev=r.concat([e._prev,n?t:o]),o}t.encrypt=function(e,t,n){for(var i,o=r.allocUnsafe(0);t.length;){if(0===e._cache.length&&(e._cache=e._cipher.encryptBlock(e._prev),e._prev=r.allocUnsafe(0)),!(e._cache.length<=t.length)){o=r.concat([o,a(e,t,n)]);break}i=e._cache.length,o=r.concat([o,a(e,t.slice(0,i),n)]),t=t.slice(i)}return o}},function(e,t,n){var r=n(2).Buffer;function i(e,t,n){var i=e._cipher.encryptBlock(e._prev)[0]^t;return e._prev=r.concat([e._prev.slice(1),r.from([n?t:i])]),i}t.encrypt=function(e,t,n){for(var a=t.length,o=r.allocUnsafe(a),s=-1;++s<a;)o[s]=i(e,t[s],n);return o}},function(e,t,n){var r=n(2).Buffer;function i(e,t,n){for(var r,i,o=-1,s=0;++o<8;)r=t&1<<7-o?128:0,s+=(128&(i=e._cipher.encryptBlock(e._prev)[0]^r))>>o%8,e._prev=a(e._prev,n?r:i);return s}function a(e,t){var n=e.length,i=-1,a=r.allocUnsafe(e.length);for(e=r.concat([e,r.from([t])]);++i<n;)a[i]=e[i]<<1|e[i+1]>>7;return a}t.encrypt=function(e,t,n){for(var a=t.length,o=r.allocUnsafe(a),s=-1;++s<a;)o[s]=i(e,t[s],n);return o}},function(e,t,n){(function(e){var r=n(17);function i(e){return e._prev=e._cipher.encryptBlock(e._prev),e._prev}t.encrypt=function(t,n){for(;t._cache.length<n.length;)t._cache=e.concat([t._cache,i(t)]);var a=t._cache.slice(0,n.length);return t._cache=t._cache.slice(n.length),r(n,a)}}).call(this,n(3).Buffer)},function(e,t,n){var r=n(2).Buffer,i=r.alloc(16,0);function a(e){var t=r.allocUnsafe(16);return t.writeUInt32BE(e[0]>>>0,0),t.writeUInt32BE(e[1]>>>0,4),t.writeUInt32BE(e[2]>>>0,8),t.writeUInt32BE(e[3]>>>0,12),t}function o(e){this.h=e,this.state=r.alloc(16,0),this.cache=r.allocUnsafe(0)}o.prototype.ghash=function(e){for(var t=-1;++t<e.length;)this.state[t]^=e[t];this._multiply()},o.prototype._multiply=function(){for(var e,t,n,r=[(e=this.h).readUInt32BE(0),e.readUInt32BE(4),e.readUInt32BE(8),e.readUInt32BE(12)],i=[0,0,0,0],o=-1;++o<128;){for(0!=(this.state[~~(o/8)]&1<<7-o%8)&&(i[0]^=r[0],i[1]^=r[1],i[2]^=r[2],i[3]^=r[3]),n=0!=(1&r[3]),t=3;t>0;t--)r[t]=r[t]>>>1|(1&r[t-1])<<31;r[0]=r[0]>>>1,n&&(r[0]=r[0]^225<<24)}this.state=a(i)},o.prototype.update=function(e){var t;for(this.cache=r.concat([this.cache,e]);this.cache.length>=16;)t=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(t)},o.prototype.final=function(e,t){return this.cache.length&&this.ghash(r.concat([this.cache,i],16)),this.ghash(a([0,e,0,t])),this.state},e.exports=o},function(e,t,n){var r=n(66),i=n(2).Buffer,a=n(36),o=n(67),s=n(11),c=n(22),u=n(23);function l(e,t,n){s.call(this),this._cache=new A,this._last=void 0,this._cipher=new c.AES(t),this._prev=i.from(n),this._mode=e,this._autopadding=!0}function A(){this.cache=i.allocUnsafe(0)}function f(e,t,n){var s=a[e.toLowerCase()];if(!s)throw new TypeError("invalid suite type");if("string"==typeof n&&(n=i.from(n)),"GCM"!==s.mode&&n.length!==s.iv)throw new TypeError("invalid iv length "+n.length);if("string"==typeof t&&(t=i.from(t)),t.length!==s.key/8)throw new TypeError("invalid key length "+t.length);return"stream"===s.type?new o(s.module,t,n,!0):"auth"===s.type?new r(s.module,t,n,!0):new l(s.module,t,n)}n(1)(l,s),l.prototype._update=function(e){var t,n;this._cache.add(e);for(var r=[];t=this._cache.get(this._autopadding);)n=this._mode.decrypt(this,t),r.push(n);return i.concat(r)},l.prototype._final=function(){var e=this._cache.flush();if(this._autopadding)return function(e){var t=e[15];if(t<1||t>16)throw new Error("unable to decrypt data");for(var n=-1;++n<t;)if(e[n+(16-t)]!==t)throw new Error("unable to decrypt data");if(16!==t)return e.slice(0,16-t)}(this._mode.decrypt(this,e));if(e)throw new Error("data not multiple of block length")},l.prototype.setAutoPadding=function(e){return this._autopadding=!!e,this},A.prototype.add=function(e){this.cache=i.concat([this.cache,e])},A.prototype.get=function(e){var t;if(e){if(this.cache.length>16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t}else if(this.cache.length>=16)return t=this.cache.slice(0,16),this.cache=this.cache.slice(16),t;return null},A.prototype.flush=function(){if(this.cache.length)return this.cache},t.createDecipher=function(e,t){var n=a[e.toLowerCase()];if(!n)throw new TypeError("invalid suite type");var r=u(t,!1,n.key,n.iv);return f(e,r.key,r.iv)},t.createDecipheriv=f},function(e,t){t["des-ecb"]={key:8,iv:0},t["des-cbc"]=t.des={key:8,iv:8},t["des-ede3-cbc"]=t.des3={key:24,iv:8},t["des-ede3"]={key:24,iv:0},t["des-ede-cbc"]={key:16,iv:8},t["des-ede"]={key:16,iv:0}},function(e,t,n){(function(e){var r=n(68),i=n(125),a=n(126),o={binary:!0,hex:!0,base64:!0};t.DiffieHellmanGroup=t.createDiffieHellmanGroup=t.getDiffieHellman=function(t){var n=new e(i[t].prime,"hex"),r=new e(i[t].gen,"hex");return new a(n,r)},t.createDiffieHellman=t.DiffieHellman=function t(n,i,s,c){return e.isBuffer(i)||void 0===o[i]?t(n,"binary",i,s):(i=i||"binary",c=c||"binary",s=s||new e([2]),e.isBuffer(s)||(s=new e(s,c)),"number"==typeof n?new a(r(n,s),s,!0):(e.isBuffer(n)||(n=new e(n,i)),new a(n,s,!0)))}}).call(this,n(3).Buffer)},function(e,t){},function(e,t){},function(e){e.exports=JSON.parse('{"modp1":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},"modp2":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"},"modp5":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},"modp14":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"},"modp15":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"},"modp16":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"},"modp17":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"},"modp18":{"gen":"02","prime":"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}')},function(e,t,n){(function(t){var r=n(4),i=new(n(69)),a=new r(24),o=new r(11),s=new r(10),c=new r(3),u=new r(7),l=n(68),A=n(13);function f(e,n){return n=n||"utf8",t.isBuffer(e)||(e=new t(e,n)),this._pub=new r(e),this}function h(e,n){return n=n||"utf8",t.isBuffer(e)||(e=new t(e,n)),this._priv=new r(e),this}e.exports=d;var p={};function d(e,t,n){this.setGenerator(t),this.__prime=new r(e),this._prime=r.mont(this.__prime),this._primeLen=e.length,this._pub=void 0,this._priv=void 0,this._primeCode=void 0,n?(this.setPublicKey=f,this.setPrivateKey=h):this._primeCode=8}function g(e,n){var r=new t(e.toArray());return n?r.toString(n):r}Object.defineProperty(d.prototype,"verifyError",{enumerable:!0,get:function(){return"number"!=typeof this._primeCode&&(this._primeCode=function(e,t){var n=t.toString("hex"),r=[n,e.toString(16)].join("_");if(r in p)return p[r];var A,f=0;if(e.isEven()||!l.simpleSieve||!l.fermatTest(e)||!i.test(e))return f+=1,f+="02"===n||"05"===n?8:4,p[r]=f,f;switch(i.test(e.shrn(1))||(f+=2),n){case"02":e.mod(a).cmp(o)&&(f+=8);break;case"05":(A=e.mod(s)).cmp(c)&&A.cmp(u)&&(f+=8);break;default:f+=4}return p[r]=f,f}(this.__prime,this.__gen)),this._primeCode}}),d.prototype.generateKeys=function(){return this._priv||(this._priv=new r(A(this._primeLen))),this._pub=this._gen.toRed(this._prime).redPow(this._priv).fromRed(),this.getPublicKey()},d.prototype.computeSecret=function(e){var n=(e=(e=new r(e)).toRed(this._prime)).redPow(this._priv).fromRed(),i=new t(n.toArray()),a=this.getPrime();if(i.length<a.length){var o=new t(a.length-i.length);o.fill(0),i=t.concat([o,i])}return i},d.prototype.getPublicKey=function(e){return g(this._pub,e)},d.prototype.getPrivateKey=function(e){return g(this._priv,e)},d.prototype.getPrime=function(e){return g(this.__prime,e)},d.prototype.getGenerator=function(e){return g(this._gen,e)},d.prototype.setGenerator=function(e,n){return n=n||"utf8",t.isBuffer(e)||(e=new t(e,n)),this.__gen=e,this._gen=new r(e),this}}).call(this,n(3).Buffer)},function(e,t,n){(function(t){var r=n(15),i=n(27),a=n(1),o=n(128),s=n(160),c=n(56);function u(e){i.Writable.call(this);var t=c[e];if(!t)throw new Error("Unknown message digest");this._hashType=t.hash,this._hash=r(t.hash),this._tag=t.id,this._signType=t.sign}function l(e){i.Writable.call(this);var t=c[e];if(!t)throw new Error("Unknown message digest");this._hash=r(t.hash),this._tag=t.id,this._signType=t.sign}function A(e){return new u(e)}function f(e){return new l(e)}Object.keys(c).forEach((function(e){c[e].id=new t(c[e].id,"hex"),c[e.toLowerCase()]=c[e]})),a(u,i.Writable),u.prototype._write=function(e,t,n){this._hash.update(e),n()},u.prototype.update=function(e,n){return"string"==typeof e&&(e=new t(e,n)),this._hash.update(e),this},u.prototype.sign=function(e,t){this.end();var n=this._hash.digest(),r=o(n,e,this._hashType,this._signType,this._tag);return t?r.toString(t):r},a(l,i.Writable),l.prototype._write=function(e,t,n){this._hash.update(e),n()},l.prototype.update=function(e,n){return"string"==typeof e&&(e=new t(e,n)),this._hash.update(e),this},l.prototype.verify=function(e,n,r){"string"==typeof n&&(n=new t(n,r)),this.end();var i=this._hash.digest();return s(n,i,e,this._signType,this._tag)},e.exports={Sign:A,Verify:f,createSign:A,createVerify:f}}).call(this,n(3).Buffer)},function(e,t,n){(function(t){var r=n(54),i=n(38),a=n(39).ec,o=n(4),s=n(25),c=n(79);function u(e,n,i,a){if((e=new t(e.toArray())).length<n.byteLength()){var o=new t(n.byteLength()-e.length);o.fill(0),e=t.concat([o,e])}var s=i.length,c=function(e,n){e=(e=l(e,n)).mod(n);var r=new t(e.toArray());if(r.length<n.byteLength()){var i=new t(n.byteLength()-r.length);i.fill(0),r=t.concat([i,r])}return r}(i,n),u=new t(s);u.fill(1);var A=new t(s);return A.fill(0),A=r(a,A).update(u).update(new t([0])).update(e).update(c).digest(),u=r(a,A).update(u).digest(),{k:A=r(a,A).update(u).update(new t([1])).update(e).update(c).digest(),v:u=r(a,A).update(u).digest()}}function l(e,t){var n=new o(e),r=(e.length<<3)-t.bitLength();return r>0&&n.ishrn(r),n}function A(e,n,i){var a,o;do{for(a=new t(0);8*a.length<e.bitLength();)n.v=r(i,n.k).update(n.v).digest(),a=t.concat([a,n.v]);o=l(a,e),n.k=r(i,n.k).update(n.v).update(new t([0])).digest(),n.v=r(i,n.k).update(n.v).digest()}while(-1!==o.cmp(e));return o}function f(e,t,n,r){return e.toRed(o.mont(n)).redPow(t).fromRed().mod(r)}e.exports=function(e,n,r,h,p){var d=s(n);if(d.curve){if("ecdsa"!==h&&"ecdsa/rsa"!==h)throw new Error("wrong private key type");return function(e,n){var r=c[n.curve.join(".")];if(!r)throw new Error("unknown curve "+n.curve.join("."));var i=new a(r).keyFromPrivate(n.privateKey).sign(e);return new t(i.toDER())}(e,d)}if("dsa"===d.type){if("dsa"!==h)throw new Error("wrong private key type");return function(e,n,r){for(var i,a=n.params.priv_key,s=n.params.p,c=n.params.q,h=n.params.g,p=new o(0),d=l(e,c).mod(c),g=!1,y=u(a,c,e,r);!1===g;)p=f(h,i=A(c,y,r),s,c),0===(g=i.invm(c).imul(d.add(a.mul(p))).mod(c)).cmpn(0)&&(g=!1,p=new o(0));return function(e,n){e=e.toArray(),n=n.toArray(),128&e[0]&&(e=[0].concat(e)),128&n[0]&&(n=[0].concat(n));var r=[48,e.length+n.length+4,2,e.length];return r=r.concat(e,[2,n.length],n),new t(r)}(p,g)}(e,d,r)}if("rsa"!==h&&"ecdsa/rsa"!==h)throw new Error("wrong private key type");e=t.concat([p,e]);for(var g=d.modulus.byteLength(),y=[0,1];e.length+y.length+1<g;)y.push(255);y.push(0);for(var v=-1;++v<e.length;)y.push(e[v]);return i(y,d)},e.exports.getKey=u,e.exports.makeKey=A}).call(this,n(3).Buffer)},function(e){e.exports=JSON.parse('{"_args":[["elliptic@6.5.2","/Users/mo/Desktop/sn/dev/sncrypto"]],"_development":true,"_from":"elliptic@6.5.2","_id":"elliptic@6.5.2","_inBundle":false,"_integrity":"sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==","_location":"/elliptic","_phantomChildren":{},"_requested":{"type":"version","registry":true,"raw":"elliptic@6.5.2","name":"elliptic","escapedName":"elliptic","rawSpec":"6.5.2","saveSpec":null,"fetchSpec":"6.5.2"},"_requiredBy":["/browserify-sign","/create-ecdh"],"_resolved":"https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz","_spec":"6.5.2","_where":"/Users/mo/Desktop/sn/dev/sncrypto","author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"bugs":{"url":"https://github.com/indutny/elliptic/issues"},"dependencies":{"bn.js":"^4.4.0","brorand":"^1.0.1","hash.js":"^1.0.0","hmac-drbg":"^1.0.0","inherits":"^2.0.1","minimalistic-assert":"^1.0.0","minimalistic-crypto-utils":"^1.0.0"},"description":"EC cryptography","devDependencies":{"brfs":"^1.4.3","coveralls":"^3.0.8","grunt":"^1.0.4","grunt-browserify":"^5.0.0","grunt-cli":"^1.2.0","grunt-contrib-connect":"^1.0.0","grunt-contrib-copy":"^1.0.0","grunt-contrib-uglify":"^1.0.1","grunt-mocha-istanbul":"^3.0.1","grunt-saucelabs":"^9.0.1","istanbul":"^0.4.2","jscs":"^3.0.7","jshint":"^2.10.3","mocha":"^6.2.2"},"files":["lib"],"homepage":"https://github.com/indutny/elliptic","keywords":["EC","Elliptic","curve","Cryptography"],"license":"MIT","main":"lib/elliptic.js","name":"elliptic","repository":{"type":"git","url":"git+ssh://git@github.com/indutny/elliptic.git"},"scripts":{"jscs":"jscs benchmarks/*.js lib/*.js lib/**/*.js lib/**/**/*.js test/index.js","jshint":"jscs benchmarks/*.js lib/*.js lib/**/*.js lib/**/**/*.js test/index.js","lint":"npm run jscs && npm run jshint","test":"npm run lint && npm run unit","unit":"istanbul test _mocha --reporter=spec test/index.js","version":"grunt dist && git add dist/"},"version":"6.5.2"}')},function(e,t,n){"use strict";var r=n(7),i=n(4),a=n(1),o=n(24),s=r.assert;function c(e){o.call(this,"short",e),this.a=new i(e.a,16).toRed(this.red),this.b=new i(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function u(e,t,n,r){o.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new i(t,16),this.y=new i(n,16),r&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function l(e,t,n,r){o.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===r?(this.x=this.curve.one,this.y=this.curve.one,this.z=new i(0)):(this.x=new i(t,16),this.y=new i(n,16),this.z=new i(r,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}a(c,o),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new i(e.beta,16).toRed(this.red);else{var r=this._getEndoRoots(this.p);t=(t=r[0].cmp(r[1])<0?r[0]:r[1]).toRed(this.red)}if(e.lambda)n=new i(e.lambda,16);else{var a=this._getEndoRoots(this.n);0===this.g.mul(a[0]).x.cmp(this.g.x.redMul(t))?n=a[0]:(n=a[1],s(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new i(e.a,16),b:new i(e.b,16)}})):this._getEndoBasis(n)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:i.mont(e),n=new i(2).toRed(t).redInvm(),r=n.redNeg(),a=new i(3).toRed(t).redNeg().redSqrt().redMul(n);return[r.redAdd(a).fromRed(),r.redSub(a).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,n,r,a,o,s,c,u,l,A=this.n.ushrn(Math.floor(this.n.bitLength()/2)),f=e,h=this.n.clone(),p=new i(1),d=new i(0),g=new i(0),y=new i(1),v=0;0!==f.cmpn(0);){var m=h.div(f);u=h.sub(m.mul(f)),l=g.sub(m.mul(p));var b=y.sub(m.mul(d));if(!r&&u.cmp(A)<0)t=c.neg(),n=p,r=u.neg(),a=l;else if(r&&2==++v)break;c=u,h=f,f=u,g=p,p=l,y=d,d=b}o=u.neg(),s=l;var I=r.sqr().add(a.sqr());return o.sqr().add(s.sqr()).cmp(I)>=0&&(o=t,s=n),r.negative&&(r=r.neg(),a=a.neg()),o.negative&&(o=o.neg(),s=s.neg()),[{a:r,b:a},{a:o,b:s}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],r=t[1],i=r.b.mul(e).divRound(this.n),a=n.b.neg().mul(e).divRound(this.n),o=i.mul(n.a),s=a.mul(r.a),c=i.mul(n.b),u=a.mul(r.b);return{k1:e.sub(o).sub(s),k2:c.add(u).neg()}},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var a=r.fromRed().isOdd();return(t&&!a||!t&&a)&&(r=r.redNeg()),this.point(e,r)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,r=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(i).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,n){for(var r=this._endoWnafT1,i=this._endoWnafT2,a=0;a<e.length;a++){var o=this._endoSplit(t[a]),s=e[a],c=s._getBeta();o.k1.negative&&(o.k1.ineg(),s=s.neg(!0)),o.k2.negative&&(o.k2.ineg(),c=c.neg(!0)),r[2*a]=s,r[2*a+1]=c,i[2*a]=o.k1,i[2*a+1]=o.k2}for(var u=this._wnafMulAdd(1,r,i,2*a,n),l=0;l<2*a;l++)r[l]=null,i[l]=null;return u},a(u,o.BasePoint),c.prototype.point=function(e,t,n){return new u(this,e,t,n)},c.prototype.pointFromJSON=function(e,t){return u.fromJSON(this,e,t)},u.prototype._getBeta=function(){if(this.curve.endo){var e=this.precomputed;if(e&&e.beta)return e.beta;var t=this.curve.point(this.x.redMul(this.curve.endo.beta),this.y);if(e){var n=this.curve,r=function(e){return n.point(e.x.redMul(n.endo.beta),e.y)};e.beta=t,t.precomputed={beta:null,naf:e.naf&&{wnd:e.naf.wnd,points:e.naf.points.map(r)},doubles:e.doubles&&{step:e.doubles.step,points:e.doubles.points.map(r)}}}return t}},u.prototype.toJSON=function(){return this.precomputed?[this.x,this.y,this.precomputed&&{doubles:this.precomputed.doubles&&{step:this.precomputed.doubles.step,points:this.precomputed.doubles.points.slice(1)},naf:this.precomputed.naf&&{wnd:this.precomputed.naf.wnd,points:this.precomputed.naf.points.slice(1)}}]:[this.x,this.y]},u.fromJSON=function(e,t,n){"string"==typeof t&&(t=JSON.parse(t));var r=e.point(t[0],t[1],n);if(!t[2])return r;function i(t){return e.point(t[0],t[1],n)}var a=t[2];return r.precomputed={beta:null,doubles:a.doubles&&{step:a.doubles.step,points:[r].concat(a.doubles.points.map(i))},naf:a.naf&&{wnd:a.naf.wnd,points:[r].concat(a.naf.points.map(i))}},r},u.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+">"},u.prototype.isInfinity=function(){return this.inf},u.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var n=t.redSqr().redISub(this.x).redISub(e.x),r=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},u.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,n=this.x.redSqr(),r=e.redInvm(),i=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(r),a=i.redSqr().redISub(this.x.redAdd(this.x)),o=i.redMul(this.x.redSub(a)).redISub(this.y);return this.curve.point(a,o)},u.prototype.getX=function(){return this.x.fromRed()},u.prototype.getY=function(){return this.y.fromRed()},u.prototype.mul=function(e){return e=new i(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},u.prototype.mulAdd=function(e,t,n){var r=[this,t],i=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,i):this.curve._wnafMulAdd(1,r,i,2)},u.prototype.jmulAdd=function(e,t,n){var r=[this,t],i=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,i,!0):this.curve._wnafMulAdd(1,r,i,2,!0)},u.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},u.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,r=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return t},u.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},a(l,o.BasePoint),c.prototype.jpoint=function(e,t,n){return new l(this,e,t,n)},l.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),r=this.y.redMul(t).redMul(e);return this.curve.point(n,r)},l.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},l.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(t),i=e.x.redMul(n),a=this.y.redMul(t.redMul(e.z)),o=e.y.redMul(n.redMul(this.z)),s=r.redSub(i),c=a.redSub(o);if(0===s.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=s.redSqr(),l=u.redMul(s),A=r.redMul(u),f=c.redSqr().redIAdd(l).redISub(A).redISub(A),h=c.redMul(A.redISub(f)).redISub(a.redMul(l)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(f,h,p)},l.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,r=e.x.redMul(t),i=this.y,a=e.y.redMul(t).redMul(this.z),o=n.redSub(r),s=i.redSub(a);if(0===o.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=o.redSqr(),u=c.redMul(o),l=n.redMul(c),A=s.redSqr().redIAdd(u).redISub(l).redISub(l),f=s.redMul(l.redISub(A)).redISub(i.redMul(u)),h=this.z.redMul(o);return this.curve.jpoint(A,f,h)},l.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();if(this.curve.zeroA||this.curve.threeA){for(var t=this,n=0;n<e;n++)t=t.dbl();return t}var r=this.curve.a,i=this.curve.tinv,a=this.x,o=this.y,s=this.z,c=s.redSqr().redSqr(),u=o.redAdd(o);for(n=0;n<e;n++){var l=a.redSqr(),A=u.redSqr(),f=A.redSqr(),h=l.redAdd(l).redIAdd(l).redIAdd(r.redMul(c)),p=a.redMul(A),d=h.redSqr().redISub(p.redAdd(p)),g=p.redISub(d),y=h.redMul(g);y=y.redIAdd(y).redISub(f);var v=u.redMul(s);n+1<e&&(c=c.redMul(f)),a=d,s=v,u=y}return this.curve.jpoint(a,u.redMul(i),s)},l.prototype.dbl=function(){return this.isInfinity()?this:this.curve.zeroA?this._zeroDbl():this.curve.threeA?this._threeDbl():this._dbl()},l.prototype._zeroDbl=function(){var e,t,n;if(this.zOne){var r=this.x.redSqr(),i=this.y.redSqr(),a=i.redSqr(),o=this.x.redAdd(i).redSqr().redISub(r).redISub(a);o=o.redIAdd(o);var s=r.redAdd(r).redIAdd(r),c=s.redSqr().redISub(o).redISub(o),u=a.redIAdd(a);u=(u=u.redIAdd(u)).redIAdd(u),e=c,t=s.redMul(o.redISub(c)).redISub(u),n=this.y.redAdd(this.y)}else{var l=this.x.redSqr(),A=this.y.redSqr(),f=A.redSqr(),h=this.x.redAdd(A).redSqr().redISub(l).redISub(f);h=h.redIAdd(h);var p=l.redAdd(l).redIAdd(l),d=p.redSqr(),g=f.redIAdd(f);g=(g=g.redIAdd(g)).redIAdd(g),e=d.redISub(h).redISub(h),t=p.redMul(h.redISub(e)).redISub(g),n=(n=this.y.redMul(this.z)).redIAdd(n)}return this.curve.jpoint(e,t,n)},l.prototype._threeDbl=function(){var e,t,n;if(this.zOne){var r=this.x.redSqr(),i=this.y.redSqr(),a=i.redSqr(),o=this.x.redAdd(i).redSqr().redISub(r).redISub(a);o=o.redIAdd(o);var s=r.redAdd(r).redIAdd(r).redIAdd(this.curve.a),c=s.redSqr().redISub(o).redISub(o);e=c;var u=a.redIAdd(a);u=(u=u.redIAdd(u)).redIAdd(u),t=s.redMul(o.redISub(c)).redISub(u),n=this.y.redAdd(this.y)}else{var l=this.z.redSqr(),A=this.y.redSqr(),f=this.x.redMul(A),h=this.x.redSub(l).redMul(this.x.redAdd(l));h=h.redAdd(h).redIAdd(h);var p=f.redIAdd(f),d=(p=p.redIAdd(p)).redAdd(p);e=h.redSqr().redISub(d),n=this.y.redAdd(this.z).redSqr().redISub(A).redISub(l);var g=A.redSqr();g=(g=(g=g.redIAdd(g)).redIAdd(g)).redIAdd(g),t=h.redMul(p.redISub(e)).redISub(g)}return this.curve.jpoint(e,t,n)},l.prototype._dbl=function(){var e=this.curve.a,t=this.x,n=this.y,r=this.z,i=r.redSqr().redSqr(),a=t.redSqr(),o=n.redSqr(),s=a.redAdd(a).redIAdd(a).redIAdd(e.redMul(i)),c=t.redAdd(t),u=(c=c.redIAdd(c)).redMul(o),l=s.redSqr().redISub(u.redAdd(u)),A=u.redISub(l),f=o.redSqr();f=(f=(f=f.redIAdd(f)).redIAdd(f)).redIAdd(f);var h=s.redMul(A).redISub(f),p=n.redAdd(n).redMul(r);return this.curve.jpoint(l,h,p)},l.prototype.trpl=function(){if(!this.curve.zeroA)return this.dbl().add(this);var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr(),r=t.redSqr(),i=e.redAdd(e).redIAdd(e),a=i.redSqr(),o=this.x.redAdd(t).redSqr().redISub(e).redISub(r),s=(o=(o=(o=o.redIAdd(o)).redAdd(o).redIAdd(o)).redISub(a)).redSqr(),c=r.redIAdd(r);c=(c=(c=c.redIAdd(c)).redIAdd(c)).redIAdd(c);var u=i.redIAdd(o).redSqr().redISub(a).redISub(s).redISub(c),l=t.redMul(u);l=(l=l.redIAdd(l)).redIAdd(l);var A=this.x.redMul(s).redISub(l);A=(A=A.redIAdd(A)).redIAdd(A);var f=this.y.redMul(u.redMul(c.redISub(u)).redISub(o.redMul(s)));f=(f=(f=f.redIAdd(f)).redIAdd(f)).redIAdd(f);var h=this.z.redAdd(o).redSqr().redISub(n).redISub(s);return this.curve.jpoint(A,f,h)},l.prototype.mul=function(e,t){return e=new i(e,t),this.curve._wnafMul(this,e)},l.prototype.eq=function(e){if("affine"===e.type)return this.eq(e.toJ());if(this===e)return!0;var t=this.z.redSqr(),n=e.z.redSqr();if(0!==this.x.redMul(n).redISub(e.x.redMul(t)).cmpn(0))return!1;var r=t.redMul(this.z),i=n.redMul(e.z);return 0===this.y.redMul(i).redISub(e.y.redMul(r)).cmpn(0)},l.prototype.eqXToP=function(e){var t=this.z.redSqr(),n=e.toRed(this.curve.red).redMul(t);if(0===this.x.cmp(n))return!0;for(var r=e.clone(),i=this.curve.redN.redMul(t);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(n.redIAdd(i),0===this.x.cmp(n))return!0}},l.prototype.inspect=function(){return this.isInfinity()?"<EC JPoint Infinity>":"<EC JPoint x: "+this.x.toString(16,2)+" y: "+this.y.toString(16,2)+" z: "+this.z.toString(16,2)+">"},l.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},function(e,t,n){"use strict";var r=n(4),i=n(1),a=n(24),o=n(7);function s(e){a.call(this,"mont",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.i4=new r(4).toRed(this.red).redInvm(),this.two=new r(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,n){a.BasePoint.call(this,e,"projective"),null===t&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new r(t,16),this.z=new r(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}i(s,a),e.exports=s,s.prototype.validate=function(e){var t=e.normalize().x,n=t.redSqr(),r=n.redMul(t).redAdd(n.redMul(this.a)).redAdd(t);return 0===r.redSqrt().redSqr().cmp(r)},i(c,a.BasePoint),s.prototype.decodePoint=function(e,t){return this.point(o.toArray(e,t),1)},s.prototype.point=function(e,t){return new c(this,e,t)},s.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),n=e.redSub(t),r=e.redMul(t),i=n.redMul(t.redAdd(this.curve.a24.redMul(n)));return this.curve.point(r,i)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var n=this.x.redAdd(this.z),r=this.x.redSub(this.z),i=e.x.redAdd(e.z),a=e.x.redSub(e.z).redMul(n),o=i.redMul(r),s=t.z.redMul(a.redAdd(o).redSqr()),c=t.x.redMul(a.redISub(o).redSqr());return this.curve.point(s,c)},c.prototype.mul=function(e){for(var t=e.clone(),n=this,r=this.curve.point(null,null),i=[];0!==t.cmpn(0);t.iushrn(1))i.push(t.andln(1));for(var a=i.length-1;a>=0;a--)0===i[a]?(n=n.diffAdd(r,this),r=r.dbl()):(r=n.diffAdd(r,this),n=n.dbl());return r},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},function(e,t,n){"use strict";var r=n(7),i=n(4),a=n(1),o=n(24),s=r.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,o.call(this,"edwards",e),this.a=new i(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new i(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new i(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),s(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function u(e,t,n,r,a){o.BasePoint.call(this,e,"projective"),null===t&&null===n&&null===r?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new i(t,16),this.y=new i(n,16),this.z=r?new i(r,16):this.curve.one,this.t=a&&new i(a,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}a(c,o),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,n,r){return this.point(e,t,n,r)},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=this.c2.redSub(this.a.redMul(n)),a=this.one.redSub(this.c2.redMul(this.d).redMul(n)),o=r.redMul(a.redInvm()),s=o.redSqrt();if(0!==s.redSqr().redSub(o).cmp(this.zero))throw new Error("invalid point");var c=s.fromRed().isOdd();return(t&&!c||!t&&c)&&(s=s.redNeg()),this.point(e,s)},c.prototype.pointFromY=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=n.redSub(this.c2),a=n.redMul(this.d).redMul(this.c2).redSub(this.a),o=r.redMul(a.redInvm());if(0===o.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=o.redSqrt();if(0!==s.redSqr().redSub(o).cmp(this.zero))throw new Error("invalid point");return s.fromRed().isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),n=e.y.redSqr(),r=t.redMul(this.a).redAdd(n),i=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(n)));return 0===r.cmp(i)},a(u,o.BasePoint),c.prototype.pointFromJSON=function(e){return u.fromJSON(this,e)},c.prototype.point=function(e,t,n,r){return new u(this,e,t,n,r)},u.fromJSON=function(e,t){return new u(e,t[0],t[1],t[2])},u.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},u.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},u.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var r=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),a=r.redAdd(t),o=a.redSub(n),s=r.redSub(t),c=i.redMul(o),u=a.redMul(s),l=i.redMul(s),A=o.redMul(a);return this.curve.point(c,u,A,l)},u.prototype._projDbl=function(){var e,t,n,r=this.x.redAdd(this.y).redSqr(),i=this.x.redSqr(),a=this.y.redSqr();if(this.curve.twisted){var o=(u=this.curve._mulA(i)).redAdd(a);if(this.zOne)e=r.redSub(i).redSub(a).redMul(o.redSub(this.curve.two)),t=o.redMul(u.redSub(a)),n=o.redSqr().redSub(o).redSub(o);else{var s=this.z.redSqr(),c=o.redSub(s).redISub(s);e=r.redSub(i).redISub(a).redMul(c),t=o.redMul(u.redSub(a)),n=o.redMul(c)}}else{var u=i.redAdd(a);s=this.curve._mulC(this.z).redSqr(),c=u.redSub(s).redSub(s),e=this.curve._mulC(r.redISub(u)).redMul(c),t=this.curve._mulC(u).redMul(i.redISub(a)),n=u.redMul(c)}return this.curve.point(e,t,n)},u.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},u.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),r=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),a=n.redSub(t),o=i.redSub(r),s=i.redAdd(r),c=n.redAdd(t),u=a.redMul(o),l=s.redMul(c),A=a.redMul(c),f=o.redMul(s);return this.curve.point(u,l,f,A)},u.prototype._projAdd=function(e){var t,n,r=this.z.redMul(e.z),i=r.redSqr(),a=this.x.redMul(e.x),o=this.y.redMul(e.y),s=this.curve.d.redMul(a).redMul(o),c=i.redSub(s),u=i.redAdd(s),l=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(a).redISub(o),A=r.redMul(c).redMul(l);return this.curve.twisted?(t=r.redMul(u).redMul(o.redSub(this.curve._mulA(a))),n=c.redMul(u)):(t=r.redMul(u).redMul(o.redSub(a)),n=this.curve._mulC(c).redMul(u)),this.curve.point(A,t,n)},u.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},u.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},u.prototype.mulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!1)},u.prototype.jmulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!0)},u.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},u.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},u.prototype.getX=function(){return this.normalize(),this.x.fromRed()},u.prototype.getY=function(){return this.normalize(),this.y.fromRed()},u.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},u.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var n=e.clone(),r=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(r),0===this.x.cmp(t))return!0}},u.prototype.toP=u.prototype.normalize,u.prototype.mixedAdd=u.prototype.add},function(e,t,n){"use strict";t.sha1=n(134),t.sha224=n(135),t.sha256=n(73),t.sha384=n(136),t.sha512=n(74)},function(e,t,n){"use strict";var r=n(10),i=n(18),a=n(72),o=r.rotl32,s=r.sum32,c=r.sum32_5,u=a.ft_1,l=i.BlockHash,A=[1518500249,1859775393,2400959708,3395469782];function f(){if(!(this instanceof f))return new f;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}r.inherits(f,l),e.exports=f,f.blockSize=512,f.outSize=160,f.hmacStrength=80,f.padLength=64,f.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r<n.length;r++)n[r]=o(n[r-3]^n[r-8]^n[r-14]^n[r-16],1);var i=this.h[0],a=this.h[1],l=this.h[2],f=this.h[3],h=this.h[4];for(r=0;r<n.length;r++){var p=~~(r/20),d=c(o(i,5),u(p,a,l,f),h,n[r],A[p]);h=f,f=l,l=o(a,30),a=i,i=d}this.h[0]=s(this.h[0],i),this.h[1]=s(this.h[1],a),this.h[2]=s(this.h[2],l),this.h[3]=s(this.h[3],f),this.h[4]=s(this.h[4],h)},f.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h,"big"):r.split32(this.h,"big")}},function(e,t,n){"use strict";var r=n(10),i=n(73);function a(){if(!(this instanceof a))return new a;i.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}r.inherits(a,i),e.exports=a,a.blockSize=512,a.outSize=224,a.hmacStrength=192,a.padLength=64,a.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h.slice(0,7),"big"):r.split32(this.h.slice(0,7),"big")}},function(e,t,n){"use strict";var r=n(10),i=n(74);function a(){if(!(this instanceof a))return new a;i.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}r.inherits(a,i),e.exports=a,a.blockSize=1024,a.outSize=384,a.hmacStrength=192,a.padLength=128,a.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h.slice(0,12),"big"):r.split32(this.h.slice(0,12),"big")}},function(e,t,n){"use strict";var r=n(10),i=n(18),a=r.rotl32,o=r.sum32,s=r.sum32_3,c=r.sum32_4,u=i.BlockHash;function l(){if(!(this instanceof l))return new l;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function A(e,t,n,r){return e<=15?t^n^r:e<=31?t&n|~t&r:e<=47?(t|~n)^r:e<=63?t&r|n&~r:t^(n|~r)}function f(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function h(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}r.inherits(l,u),t.ripemd160=l,l.blockSize=512,l.outSize=160,l.hmacStrength=192,l.padLength=64,l.prototype._update=function(e,t){for(var n=this.h[0],r=this.h[1],i=this.h[2],u=this.h[3],l=this.h[4],v=n,m=r,b=i,I=u,w=l,C=0;C<80;C++){var B=o(a(c(n,A(C,r,i,u),e[p[C]+t],f(C)),g[C]),l);n=l,l=u,u=a(i,10),i=r,r=B,B=o(a(c(v,A(79-C,m,b,I),e[d[C]+t],h(C)),y[C]),w),v=w,w=I,I=a(b,10),b=m,m=B}B=s(this.h[1],i,I),this.h[1]=s(this.h[2],u,w),this.h[2]=s(this.h[3],l,v),this.h[3]=s(this.h[4],n,m),this.h[4]=s(this.h[0],r,b),this.h[0]=B},l.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h,"little"):r.split32(this.h,"little")};var p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],d=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],g=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],y=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},function(e,t,n){"use strict";var r=n(10),i=n(6);function a(e,t,n){if(!(this instanceof a))return new a(e,t,n);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(r.toArray(t,n))}e.exports=a,a.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),i(e.length<=this.blockSize);for(var t=e.length;t<this.blockSize;t++)e.push(0);for(t=0;t<e.length;t++)e[t]^=54;for(this.inner=(new this.Hash).update(e),t=0;t<e.length;t++)e[t]^=106;this.outer=(new this.Hash).update(e)},a.prototype.update=function(e,t){return this.inner.update(e,t),this},a.prototype.digest=function(e){return this.outer.update(this.inner.digest()),this.outer.digest(e)}},function(e,t){e.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(4),a=n(141),o=n(7),s=n(40),c=n(37),u=o.assert,l=n(142),A=n(143);function f(e){if(!(this instanceof f))return new f(e);"string"==typeof e&&(u(s.hasOwnProperty(e),"Unknown curve "+e),e=s[e]),e instanceof s.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}e.exports=f,f.prototype.keyPair=function(e){return new l(this,e)},f.prototype.keyFromPrivate=function(e,t){return l.fromPrivate(this,e,t)},f.prototype.keyFromPublic=function(e,t){return l.fromPublic(this,e,t)},f.prototype.genKeyPair=function(e){e||(e={});for(var t=new a({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||c(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),n=this.n.byteLength(),r=this.n.sub(new i(2));;){var o=new i(t.generate(n));if(!(o.cmp(r)>0))return o.iaddn(1),this.keyFromPrivate(o)}},f.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},f.prototype.sign=function(e,t,n,o){"object"===r(n)&&(o=n,n=null),o||(o={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new i(e,16));for(var s=this.n.byteLength(),c=t.getPrivate().toArray("be",s),u=e.toArray("be",s),l=new a({hash:this.hash,entropy:c,nonce:u,pers:o.pers,persEnc:o.persEnc||"utf8"}),f=this.n.sub(new i(1)),h=0;;h++){var p=o.k?o.k(h):new i(l.generate(this.n.byteLength()));if(!((p=this._truncateToN(p,!0)).cmpn(1)<=0||p.cmp(f)>=0)){var d=this.g.mul(p);if(!d.isInfinity()){var g=d.getX(),y=g.umod(this.n);if(0!==y.cmpn(0)){var v=p.invm(this.n).mul(y.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var m=(d.getY().isOdd()?1:0)|(0!==g.cmp(y)?2:0);return o.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),m^=1),new A({r:y,s:v,recoveryParam:m})}}}}}},f.prototype.verify=function(e,t,n,r){e=this._truncateToN(new i(e,16)),n=this.keyFromPublic(n,r);var a=(t=new A(t,"hex")).r,o=t.s;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;var s,c=o.invm(this.n),u=c.mul(e).umod(this.n),l=c.mul(a).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(u,n.getPublic(),l)).isInfinity()&&s.eqXToP(a):!(s=this.g.mulAdd(u,n.getPublic(),l)).isInfinity()&&0===s.getX().umod(this.n).cmp(a)},f.prototype.recoverPubKey=function(e,t,n,r){u((3&n)===n,"The recovery param is more than two bits"),t=new A(t,r);var a=this.n,o=new i(e),s=t.r,c=t.s,l=1&n,f=n>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&f)throw new Error("Unable to find sencond key candinate");s=f?this.curve.pointFromX(s.add(this.curve.n),l):this.curve.pointFromX(s,l);var h=t.r.invm(a),p=a.sub(o).mul(h).umod(a),d=c.mul(h).umod(a);return this.g.mulAdd(p,s,d)},f.prototype.getKeyRecoveryParam=function(e,t,n,r){if(null!==(t=new A(t,r)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var a;try{a=this.recoverPubKey(e,t,i)}catch(e){continue}if(a.eq(n))return i}throw new Error("Unable to find valid recovery factor")}},function(e,t,n){"use strict";var r=n(41),i=n(70),a=n(6);function o(e){if(!(this instanceof o))return new o(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=i.toArray(e.entropy,e.entropyEnc||"hex"),n=i.toArray(e.nonce,e.nonceEnc||"hex"),r=i.toArray(e.pers,e.persEnc||"hex");a(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,r)}e.exports=o,o.prototype._init=function(e,t,n){var r=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i<this.V.length;i++)this.K[i]=0,this.V[i]=1;this._update(r),this._reseed=1,this.reseedInterval=281474976710656},o.prototype._hmac=function(){return new r.hmac(this.hash,this.K)},o.prototype._update=function(e){var t=this._hmac().update(this.V).update([0]);e&&(t=t.update(e)),this.K=t.digest(),this.V=this._hmac().update(this.V).digest(),e&&(this.K=this._hmac().update(this.V).update([1]).update(e).digest(),this.V=this._hmac().update(this.V).digest())},o.prototype.reseed=function(e,t,n,r){"string"!=typeof t&&(r=n,n=t,t=null),e=i.toArray(e,t),n=i.toArray(n,r),a(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},o.prototype.generate=function(e,t,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(r=n,n=t,t=null),n&&(n=i.toArray(n,r||"hex"),this._update(n));for(var a=[];a.length<e;)this.V=this._hmac().update(this.V).digest(),a=a.concat(this.V);var o=a.slice(0,e);return this._update(n),this._reseed++,i.encode(o,t)}},function(e,t,n){"use strict";var r=n(4),i=n(7).assert;function a(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}e.exports=a,a.fromPublic=function(e,t,n){return t instanceof a?t:new a(e,{pub:t,pubEnc:n})},a.fromPrivate=function(e,t,n){return t instanceof a?t:new a(e,{priv:t,privEnc:n})},a.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},a.prototype.getPublic=function(e,t){return"string"==typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},a.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},a.prototype._importPrivate=function(e,t){this.priv=new r(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},a.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?i(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||i(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},a.prototype.derive=function(e){return e.mul(this.priv).getX()},a.prototype.sign=function(e,t,n){return this.ec.sign(e,this,t,n)},a.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},a.prototype.inspect=function(){return"<Key priv: "+(this.priv&&this.priv.toString(16,2))+" pub: "+(this.pub&&this.pub.inspect())+" >"}},function(e,t,n){"use strict";var r=n(4),i=n(7),a=i.assert;function o(e,t){if(e instanceof o)return e;this._importDER(e,t)||(a(e.r&&e.s,"Signature without r or s"),this.r=new r(e.r,16),this.s=new r(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function s(){this.place=0}function c(e,t){var n=e[t.place++];if(!(128&n))return n;for(var r=15&n,i=0,a=0,o=t.place;a<r;a++,o++)i<<=8,i|=e[o];return t.place=o,i}function u(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t<n;)t++;return 0===t?e:e.slice(t)}function l(e,t){if(t<128)e.push(t);else{var n=1+(Math.log(t)/Math.LN2>>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}e.exports=o,o.prototype._importDER=function(e,t){e=i.toArray(e,t);var n=new s;if(48!==e[n.place++])return!1;if(c(e,n)+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var a=c(e,n),o=e.slice(n.place,a+n.place);if(n.place+=a,2!==e[n.place++])return!1;var u=c(e,n);if(e.length!==u+n.place)return!1;var l=e.slice(n.place,u+n.place);return 0===o[0]&&128&o[1]&&(o=o.slice(1)),0===l[0]&&128&l[1]&&(l=l.slice(1)),this.r=new r(o),this.s=new r(l),this.recoveryParam=null,!0},o.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=u(t),n=u(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];l(r,t.length),(r=r.concat(t)).push(2),l(r,n.length);var a=r.concat(n),o=[48];return l(o,a.length),o=o.concat(a),i.encode(o,e)}},function(e,t,n){"use strict";var r=n(41),i=n(40),a=n(7),o=a.assert,s=a.parseBytes,c=n(145),u=n(146);function l(e){if(o("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof l))return new l(e);e=i[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=r.sha512}e.exports=l,l.prototype.sign=function(e,t){e=s(e);var n=this.keyFromSecret(t),r=this.hashInt(n.messagePrefix(),e),i=this.g.mul(r),a=this.encodePoint(i),o=this.hashInt(a,n.pubBytes(),e).mul(n.priv()),c=r.add(o).umod(this.curve.n);return this.makeSignature({R:i,S:c,Rencoded:a})},l.prototype.verify=function(e,t,n){e=s(e),t=this.makeSignature(t);var r=this.keyFromPublic(n),i=this.hashInt(t.Rencoded(),r.pubBytes(),e),a=this.g.mul(t.S());return t.R().add(r.pub().mul(i)).eq(a)},l.prototype.hashInt=function(){for(var e=this.hash(),t=0;t<arguments.length;t++)e.update(arguments[t]);return a.intFromLE(e.digest()).umod(this.curve.n)},l.prototype.keyFromPublic=function(e){return c.fromPublic(this,e)},l.prototype.keyFromSecret=function(e){return c.fromSecret(this,e)},l.prototype.makeSignature=function(e){return e instanceof u?e:new u(this,e)},l.prototype.encodePoint=function(e){var t=e.getY().toArray("le",this.encodingLength);return t[this.encodingLength-1]|=e.getX().isOdd()?128:0,t},l.prototype.decodePoint=function(e){var t=(e=a.parseBytes(e)).length-1,n=e.slice(0,t).concat(-129&e[t]),r=0!=(128&e[t]),i=a.intFromLE(n);return this.curve.pointFromY(i,r)},l.prototype.encodeInt=function(e){return e.toArray("le",this.encodingLength)},l.prototype.decodeInt=function(e){return a.intFromLE(e)},l.prototype.isPoint=function(e){return e instanceof this.pointClass}},function(e,t,n){"use strict";var r=n(7),i=r.assert,a=r.parseBytes,o=r.cachedProperty;function s(e,t){this.eddsa=e,this._secret=a(t.secret),e.isPoint(t.pub)?this._pub=t.pub:this._pubBytes=a(t.pub)}s.fromPublic=function(e,t){return t instanceof s?t:new s(e,{pub:t})},s.fromSecret=function(e,t){return t instanceof s?t:new s(e,{secret:t})},s.prototype.secret=function(){return this._secret},o(s,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),o(s,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),o(s,"privBytes",(function(){var e=this.eddsa,t=this.hash(),n=e.encodingLength-1,r=t.slice(0,e.encodingLength);return r[0]&=248,r[n]&=127,r[n]|=64,r})),o(s,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),o(s,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),o(s,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),s.prototype.sign=function(e){return i(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},s.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},s.prototype.getSecret=function(e){return i(this._secret,"KeyPair is public only"),r.encode(this.secret(),e)},s.prototype.getPublic=function(e){return r.encode(this.pubBytes(),e)},e.exports=s},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(4),a=n(7),o=a.assert,s=a.cachedProperty,c=a.parseBytes;function u(e,t){this.eddsa=e,"object"!==r(t)&&(t=c(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),o(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof i&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}s(u,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),s(u,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),s(u,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),s(u,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),u.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},u.prototype.toHex=function(){return a.encode(this.toBytes(),"hex").toUpperCase()},e.exports=u},function(e,t,n){"use strict";var r=n(19);t.certificate=n(157);var i=r.define("RSAPrivateKey",(function(){this.seq().obj(this.key("version").int(),this.key("modulus").int(),this.key("publicExponent").int(),this.key("privateExponent").int(),this.key("prime1").int(),this.key("prime2").int(),this.key("exponent1").int(),this.key("exponent2").int(),this.key("coefficient").int())}));t.RSAPrivateKey=i;var a=r.define("RSAPublicKey",(function(){this.seq().obj(this.key("modulus").int(),this.key("publicExponent").int())}));t.RSAPublicKey=a;var o=r.define("SubjectPublicKeyInfo",(function(){this.seq().obj(this.key("algorithm").use(s),this.key("subjectPublicKey").bitstr())}));t.PublicKey=o;var s=r.define("AlgorithmIdentifier",(function(){this.seq().obj(this.key("algorithm").objid(),this.key("none").null_().optional(),this.key("curve").objid().optional(),this.key("params").seq().obj(this.key("p").int(),this.key("q").int(),this.key("g").int()).optional())})),c=r.define("PrivateKeyInfo",(function(){this.seq().obj(this.key("version").int(),this.key("algorithm").use(s),this.key("subjectPrivateKey").octstr())}));t.PrivateKey=c;var u=r.define("EncryptedPrivateKeyInfo",(function(){this.seq().obj(this.key("algorithm").seq().obj(this.key("id").objid(),this.key("decrypt").seq().obj(this.key("kde").seq().obj(this.key("id").objid(),this.key("kdeparams").seq().obj(this.key("salt").octstr(),this.key("iters").int())),this.key("cipher").seq().obj(this.key("algo").objid(),this.key("iv").octstr()))),this.key("subjectPrivateKey").octstr())}));t.EncryptedPrivateKey=u;var l=r.define("DSAPrivateKey",(function(){this.seq().obj(this.key("version").int(),this.key("p").int(),this.key("q").int(),this.key("g").int(),this.key("pub_key").int(),this.key("priv_key").int())}));t.DSAPrivateKey=l,t.DSAparam=r.define("DSAparam",(function(){this.int()}));var A=r.define("ECPrivateKey",(function(){this.seq().obj(this.key("version").int(),this.key("privateKey").octstr(),this.key("parameters").optional().explicit(0).use(f),this.key("publicKey").optional().explicit(1).bitstr())}));t.ECPrivateKey=A;var f=r.define("ECParameters",(function(){this.choice({namedCurve:this.objid()})}));t.signature=r.define("signature",(function(){this.seq().obj(this.key("r").int(),this.key("s").int())}))},function(e,t,n){var r=n(19),i=n(1);function a(e,t){this.name=e,this.body=t,this.decoders={},this.encoders={}}t.define=function(e,t){return new a(e,t)},a.prototype._createNamed=function(e){var t;try{t=n(149).runInThisContext("(function "+this.name+"(entity) {\n this._initNamed(entity);\n})")}catch(e){t=function(e){this._initNamed(e)}}return i(t,e),t.prototype._initNamed=function(t){e.call(this,t)},new t(this)},a.prototype._getDecoder=function(e){return e=e||"der",this.decoders.hasOwnProperty(e)||(this.decoders[e]=this._createNamed(r.decoders[e])),this.decoders[e]},a.prototype.decode=function(e,t,n){return this._getDecoder(t).decode(e,n)},a.prototype._getEncoder=function(e){return e=e||"der",this.encoders.hasOwnProperty(e)||(this.encoders[e]=this._createNamed(r.encoders[e])),this.encoders[e]},a.prototype.encode=function(e,t,n){return this._getEncoder(t).encode(e,n)}},function(module,exports){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})(e)}var indexOf=function(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0;n<e.length;n++)if(e[n]===t)return n;return-1},Object_keys=function(e){if(Object.keys)return Object.keys(e);var t=[];for(var n in e)t.push(n);return t},forEach=function(e,t){if(e.forEach)return e.forEach(t);for(var n=0;n<e.length;n++)t(e[n],n,e)},defineProp=function(){try{return Object.defineProperty({},"_",{}),function(e,t,n){Object.defineProperty(e,t,{writable:!0,enumerable:!1,configurable:!0,value:n})}}catch(e){return function(e,t,n){e[t]=n}}}(),globals=["Array","Boolean","Date","Error","EvalError","Function","Infinity","JSON","Math","NaN","Number","Object","RangeError","ReferenceError","RegExp","String","SyntaxError","TypeError","URIError","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","eval","isFinite","isNaN","parseFloat","parseInt","undefined","unescape"];function Context(){}Context.prototype={};var Script=exports.Script=function(e){if(!(this instanceof Script))return new Script(e);this.code=e};Script.prototype.runInContext=function(e){if(!(e instanceof Context))throw new TypeError("needs a 'context' argument.");var t=document.createElement("iframe");t.style||(t.style={}),t.style.display="none",document.body.appendChild(t);var n=t.contentWindow,r=n.eval,i=n.execScript;!r&&i&&(i.call(n,"null"),r=n.eval),forEach(Object_keys(e),(function(t){n[t]=e[t]})),forEach(globals,(function(t){e[t]&&(n[t]=e[t])}));var a=Object_keys(n),o=r.call(n,this.code);return forEach(Object_keys(n),(function(t){(t in e||-1===indexOf(a,t))&&(e[t]=n[t])})),forEach(globals,(function(t){t in e||defineProp(e,t,n[t])})),document.body.removeChild(t),o},Script.prototype.runInThisContext=function(){return eval(this.code)},Script.prototype.runInNewContext=function(e){var t=Script.createContext(e),n=this.runInContext(t);return e&&forEach(Object_keys(t),(function(n){e[n]=t[n]})),n},forEach(Object_keys(Script.prototype),(function(e){exports[e]=Script[e]=function(t){var n=Script(t);return n[e].apply(n,[].slice.call(arguments,1))}})),exports.isContext=function(e){return e instanceof Context},exports.createScript=function(e){return exports.Script(e)},exports.createContext=Script.createContext=function(e){var t=new Context;return"object"===_typeof(e)&&forEach(Object_keys(e),(function(n){t[n]=e[n]})),t}},function(e,t,n){var r=n(1);function i(e){this._reporterState={obj:null,path:[],options:e||{},errors:[]}}function a(e,t){this.path=e,this.rethrow(t)}t.Reporter=i,i.prototype.isError=function(e){return e instanceof a},i.prototype.save=function(){var e=this._reporterState;return{obj:e.obj,pathLen:e.path.length}},i.prototype.restore=function(e){var t=this._reporterState;t.obj=e.obj,t.path=t.path.slice(0,e.pathLen)},i.prototype.enterKey=function(e){return this._reporterState.path.push(e)},i.prototype.exitKey=function(e){var t=this._reporterState;t.path=t.path.slice(0,e-1)},i.prototype.leaveKey=function(e,t,n){var r=this._reporterState;this.exitKey(e),null!==r.obj&&(r.obj[t]=n)},i.prototype.path=function(){return this._reporterState.path.join("/")},i.prototype.enterObject=function(){var e=this._reporterState,t=e.obj;return e.obj={},t},i.prototype.leaveObject=function(e){var t=this._reporterState,n=t.obj;return t.obj=e,n},i.prototype.error=function(e){var t,n=this._reporterState,r=e instanceof a;if(t=r?e:new a(n.path.map((function(e){return"["+JSON.stringify(e)+"]"})).join(""),e.message||e,e.stack),!n.options.partial)throw t;return r||n.errors.push(t),t},i.prototype.wrapResult=function(e){var t=this._reporterState;return t.options.partial?{result:this.isError(e)?null:e,errors:t.errors}:e},r(a,Error),a.prototype.rethrow=function(e){if(this.message=e+" at: "+(this.path||"(shallow)"),Error.captureStackTrace&&Error.captureStackTrace(this,a),!this.stack)try{throw new Error(this.message)}catch(e){this.stack=e.stack}return this}},function(e,t,n){function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i=n(20).Reporter,a=n(20).EncoderBuffer,o=n(20).DecoderBuffer,s=n(6),c=["seq","seqof","set","setof","objid","bool","gentime","utctime","null_","enum","int","objDesc","bitstr","bmpstr","charstr","genstr","graphstr","ia5str","iso646str","numstr","octstr","printstr","t61str","unistr","utf8str","videostr"],u=["key","obj","use","optional","explicit","implicit","def","choice","any","contains"].concat(c);function l(e,t){var n={};this._baseState=n,n.enc=e,n.parent=t||null,n.children=null,n.tag=null,n.args=null,n.reverseArgs=null,n.choice=null,n.optional=!1,n.any=!1,n.obj=!1,n.use=null,n.useDecoder=null,n.key=null,n.default=null,n.explicit=null,n.implicit=null,n.contains=null,n.parent||(n.children=[],this._wrap())}e.exports=l;var A=["enc","parent","children","tag","args","reverseArgs","choice","optional","any","obj","use","alteredUse","key","default","explicit","implicit","contains"];l.prototype.clone=function(){var e=this._baseState,t={};A.forEach((function(n){t[n]=e[n]}));var n=new this.constructor(t.parent);return n._baseState=t,n},l.prototype._wrap=function(){var e=this._baseState;u.forEach((function(t){this[t]=function(){var n=new this.constructor(this);return e.children.push(n),n[t].apply(n,arguments)}}),this)},l.prototype._init=function(e){var t=this._baseState;s(null===t.parent),e.call(this),t.children=t.children.filter((function(e){return e._baseState.parent===this}),this),s.equal(t.children.length,1,"Root node can have only one child")},l.prototype._useArgs=function(e){var t=this._baseState,n=e.filter((function(e){return e instanceof this.constructor}),this);e=e.filter((function(e){return!(e instanceof this.constructor)}),this),0!==n.length&&(s(null===t.children),t.children=n,n.forEach((function(e){e._baseState.parent=this}),this)),0!==e.length&&(s(null===t.args),t.args=e,t.reverseArgs=e.map((function(e){if("object"!==r(e)||e.constructor!==Object)return e;var t={};return Object.keys(e).forEach((function(n){n==(0|n)&&(n|=0);var r=e[n];t[r]=n})),t})))},["_peekTag","_decodeTag","_use","_decodeStr","_decodeObjid","_decodeTime","_decodeNull","_decodeInt","_decodeBool","_decodeList","_encodeComposite","_encodeStr","_encodeObjid","_encodeTime","_encodeNull","_encodeInt","_encodeBool"].forEach((function(e){l.prototype[e]=function(){var t=this._baseState;throw new Error(e+" not implemented for encoding: "+t.enc)}})),c.forEach((function(e){l.prototype[e]=function(){var t=this._baseState,n=Array.prototype.slice.call(arguments);return s(null===t.tag),t.tag=e,this._useArgs(n),this}})),l.prototype.use=function(e){s(e);var t=this._baseState;return s(null===t.use),t.use=e,this},l.prototype.optional=function(){return this._baseState.optional=!0,this},l.prototype.def=function(e){var t=this._baseState;return s(null===t.default),t.default=e,t.optional=!0,this},l.prototype.explicit=function(e){var t=this._baseState;return s(null===t.explicit&&null===t.implicit),t.explicit=e,this},l.prototype.implicit=function(e){var t=this._baseState;return s(null===t.explicit&&null===t.implicit),t.implicit=e,this},l.prototype.obj=function(){var e=this._baseState,t=Array.prototype.slice.call(arguments);return e.obj=!0,0!==t.length&&this._useArgs(t),this},l.prototype.key=function(e){var t=this._baseState;return s(null===t.key),t.key=e,this},l.prototype.any=function(){return this._baseState.any=!0,this},l.prototype.choice=function(e){var t=this._baseState;return s(null===t.choice),t.choice=e,this._useArgs(Object.keys(e).map((function(t){return e[t]}))),this},l.prototype.contains=function(e){var t=this._baseState;return s(null===t.use),t.contains=e,this},l.prototype._decode=function(e,t){var n=this._baseState;if(null===n.parent)return e.wrapResult(n.children[0]._decode(e,t));var r,i=n.default,a=!0,s=null;if(null!==n.key&&(s=e.enterKey(n.key)),n.optional){var c=null;if(null!==n.explicit?c=n.explicit:null!==n.implicit?c=n.implicit:null!==n.tag&&(c=n.tag),null!==c||n.any){if(a=this._peekTag(e,c,n.any),e.isError(a))return a}else{var u=e.save();try{null===n.choice?this._decodeGeneric(n.tag,e,t):this._decodeChoice(e,t),a=!0}catch(e){a=!1}e.restore(u)}}if(n.obj&&a&&(r=e.enterObject()),a){if(null!==n.explicit){var l=this._decodeTag(e,n.explicit);if(e.isError(l))return l;e=l}var A=e.offset;if(null===n.use&&null===n.choice){n.any&&(u=e.save());var f=this._decodeTag(e,null!==n.implicit?n.implicit:n.tag,n.any);if(e.isError(f))return f;n.any?i=e.raw(u):e=f}if(t&&t.track&&null!==n.tag&&t.track(e.path(),A,e.length,"tagged"),t&&t.track&&null!==n.tag&&t.track(e.path(),e.offset,e.length,"content"),i=n.any?i:null===n.choice?this._decodeGeneric(n.tag,e,t):this._decodeChoice(e,t),e.isError(i))return i;if(n.any||null!==n.choice||null===n.children||n.children.forEach((function(n){n._decode(e,t)})),n.contains&&("octstr"===n.tag||"bitstr"===n.tag)){var h=new o(i);i=this._getUse(n.contains,e._reporterState.obj)._decode(h,t)}}return n.obj&&a&&(i=e.leaveObject(r)),null===n.key||null===i&&!0!==a?null!==s&&e.exitKey(s):e.leaveKey(s,n.key,i),i},l.prototype._decodeGeneric=function(e,t,n){var r=this._baseState;return"seq"===e||"set"===e?null:"seqof"===e||"setof"===e?this._decodeList(t,e,r.args[0],n):/str$/.test(e)?this._decodeStr(t,e,n):"objid"===e&&r.args?this._decodeObjid(t,r.args[0],r.args[1],n):"objid"===e?this._decodeObjid(t,null,null,n):"gentime"===e||"utctime"===e?this._decodeTime(t,e,n):"null_"===e?this._decodeNull(t,n):"bool"===e?this._decodeBool(t,n):"objDesc"===e?this._decodeStr(t,e,n):"int"===e||"enum"===e?this._decodeInt(t,r.args&&r.args[0],n):null!==r.use?this._getUse(r.use,t._reporterState.obj)._decode(t,n):t.error("unknown tag: "+e)},l.prototype._getUse=function(e,t){var n=this._baseState;return n.useDecoder=this._use(e,t),s(null===n.useDecoder._baseState.parent),n.useDecoder=n.useDecoder._baseState.children[0],n.implicit!==n.useDecoder._baseState.implicit&&(n.useDecoder=n.useDecoder.clone(),n.useDecoder._baseState.implicit=n.implicit),n.useDecoder},l.prototype._decodeChoice=function(e,t){var n=this._baseState,r=null,i=!1;return Object.keys(n.choice).some((function(a){var o=e.save(),s=n.choice[a];try{var c=s._decode(e,t);if(e.isError(c))return!1;r={type:a,value:c},i=!0}catch(t){return e.restore(o),!1}return!0}),this),i?r:e.error("Choice not matched")},l.prototype._createEncoderBuffer=function(e){return new a(e,this.reporter)},l.prototype._encode=function(e,t,n){var r=this._baseState;if(null===r.default||r.default!==e){var i=this._encodeValue(e,t,n);if(void 0!==i&&!this._skipDefault(i,t,n))return i}},l.prototype._encodeValue=function(e,t,n){var a=this._baseState;if(null===a.parent)return a.children[0]._encode(e,t||new i);var o=null;if(this.reporter=t,a.optional&&void 0===e){if(null===a.default)return;e=a.default}var s=null,c=!1;if(a.any)o=this._createEncoderBuffer(e);else if(a.choice)o=this._encodeChoice(e,t);else if(a.contains)s=this._getUse(a.contains,n)._encode(e,t),c=!0;else if(a.children)s=a.children.map((function(n){if("null_"===n._baseState.tag)return n._encode(null,t,e);if(null===n._baseState.key)return t.error("Child should have a key");var i=t.enterKey(n._baseState.key);if("object"!==r(e))return t.error("Child expected, but input is not object");var a=n._encode(e[n._baseState.key],t,e);return t.leaveKey(i),a}),this).filter((function(e){return e})),s=this._createEncoderBuffer(s);else if("seqof"===a.tag||"setof"===a.tag){if(!a.args||1!==a.args.length)return t.error("Too many args for : "+a.tag);if(!Array.isArray(e))return t.error("seqof/setof, but data is not Array");var u=this.clone();u._baseState.implicit=null,s=this._createEncoderBuffer(e.map((function(n){var r=this._baseState;return this._getUse(r.args[0],e)._encode(n,t)}),u))}else null!==a.use?o=this._getUse(a.use,n)._encode(e,t):(s=this._encodePrimitive(a.tag,e),c=!0);if(!a.any&&null===a.choice){var l=null!==a.implicit?a.implicit:a.tag,A=null===a.implicit?"universal":"context";null===l?null===a.use&&t.error("Tag could be omitted only for .use()"):null===a.use&&(o=this._encodeComposite(l,c,A,s))}return null!==a.explicit&&(o=this._encodeComposite(a.explicit,!1,"context",o)),o},l.prototype._encodeChoice=function(e,t){var n=this._baseState,r=n.choice[e.type];return r||s(!1,e.type+" not found in "+JSON.stringify(Object.keys(n.choice))),r._encode(e.value,t)},l.prototype._encodePrimitive=function(e,t){var n=this._baseState;if(/str$/.test(e))return this._encodeStr(t,e);if("objid"===e&&n.args)return this._encodeObjid(t,n.reverseArgs[0],n.args[1]);if("objid"===e)return this._encodeObjid(t,null,null);if("gentime"===e||"utctime"===e)return this._encodeTime(t,e);if("null_"===e)return this._encodeNull();if("int"===e||"enum"===e)return this._encodeInt(t,n.args&&n.reverseArgs[0]);if("bool"===e)return this._encodeBool(t);if("objDesc"===e)return this._encodeStr(t,e);throw new Error("Unsupported tag: "+e)},l.prototype._isNumstr=function(e){return/^[0-9 ]*$/.test(e)},l.prototype._isPrintstr=function(e){return/^[A-Za-z0-9 '\(\)\+,\-\.\/:=\?]*$/.test(e)}},function(e,t,n){var r=n(76);t.tagClass={0:"universal",1:"application",2:"context",3:"private"},t.tagClassByName=r._reverse(t.tagClass),t.tag={0:"end",1:"bool",2:"int",3:"bitstr",4:"octstr",5:"null_",6:"objid",7:"objDesc",8:"external",9:"real",10:"enum",11:"embed",12:"utf8str",13:"relativeOid",16:"seq",17:"set",18:"numstr",19:"printstr",20:"t61str",21:"videostr",22:"ia5str",23:"utctime",24:"gentime",25:"graphstr",26:"iso646str",27:"genstr",28:"unistr",29:"charstr",30:"bmpstr"},t.tagByName=r._reverse(t.tag)},function(e,t,n){var r=t;r.der=n(77),r.pem=n(154)},function(e,t,n){var r=n(1),i=n(3).Buffer,a=n(77);function o(e){a.call(this,e),this.enc="pem"}r(o,a),e.exports=o,o.prototype.decode=function(e,t){for(var n=e.toString().split(/[\r\n]+/g),r=t.label.toUpperCase(),o=/^-----(BEGIN|END) ([^-]+)-----$/,s=-1,c=-1,u=0;u<n.length;u++){var l=n[u].match(o);if(null!==l&&l[2]===r){if(-1!==s){if("END"!==l[1])break;c=u;break}if("BEGIN"!==l[1])break;s=u}}if(-1===s||-1===c)throw new Error("PEM section not found for: "+r);var A=n.slice(s+1,c).join("");A.replace(/[^a-z0-9\+\/=]+/gi,"");var f=new i(A,"base64");return a.prototype.decode.call(this,f,t)}},function(e,t,n){var r=t;r.der=n(78),r.pem=n(156)},function(e,t,n){var r=n(1),i=n(78);function a(e){i.call(this,e),this.enc="pem"}r(a,i),e.exports=a,a.prototype.encode=function(e,t){for(var n=i.prototype.encode.call(this,e).toString("base64"),r=["-----BEGIN "+t.label+"-----"],a=0;a<n.length;a+=64)r.push(n.slice(a,a+64));return r.push("-----END "+t.label+"-----"),r.join("\n")}},function(e,t,n){"use strict";var r=n(19),i=r.define("Time",(function(){this.choice({utcTime:this.utctime(),generalTime:this.gentime()})})),a=r.define("AttributeTypeValue",(function(){this.seq().obj(this.key("type").objid(),this.key("value").any())})),o=r.define("AlgorithmIdentifier",(function(){this.seq().obj(this.key("algorithm").objid(),this.key("parameters").optional(),this.key("curve").objid().optional())})),s=r.define("SubjectPublicKeyInfo",(function(){this.seq().obj(this.key("algorithm").use(o),this.key("subjectPublicKey").bitstr())})),c=r.define("RelativeDistinguishedName",(function(){this.setof(a)})),u=r.define("RDNSequence",(function(){this.seqof(c)})),l=r.define("Name",(function(){this.choice({rdnSequence:this.use(u)})})),A=r.define("Validity",(function(){this.seq().obj(this.key("notBefore").use(i),this.key("notAfter").use(i))})),f=r.define("Extension",(function(){this.seq().obj(this.key("extnID").objid(),this.key("critical").bool().def(!1),this.key("extnValue").octstr())})),h=r.define("TBSCertificate",(function(){this.seq().obj(this.key("version").explicit(0).int().optional(),this.key("serialNumber").int(),this.key("signature").use(o),this.key("issuer").use(l),this.key("validity").use(A),this.key("subject").use(l),this.key("subjectPublicKeyInfo").use(s),this.key("issuerUniqueID").implicit(1).bitstr().optional(),this.key("subjectUniqueID").implicit(2).bitstr().optional(),this.key("extensions").explicit(3).seqof(f).optional())})),p=r.define("X509Certificate",(function(){this.seq().obj(this.key("tbsCertificate").use(h),this.key("signatureAlgorithm").use(o),this.key("signatureValue").bitstr())}));e.exports=p},function(e){e.exports=JSON.parse('{"2.16.840.1.101.3.4.1.1":"aes-128-ecb","2.16.840.1.101.3.4.1.2":"aes-128-cbc","2.16.840.1.101.3.4.1.3":"aes-128-ofb","2.16.840.1.101.3.4.1.4":"aes-128-cfb","2.16.840.1.101.3.4.1.21":"aes-192-ecb","2.16.840.1.101.3.4.1.22":"aes-192-cbc","2.16.840.1.101.3.4.1.23":"aes-192-ofb","2.16.840.1.101.3.4.1.24":"aes-192-cfb","2.16.840.1.101.3.4.1.41":"aes-256-ecb","2.16.840.1.101.3.4.1.42":"aes-256-cbc","2.16.840.1.101.3.4.1.43":"aes-256-ofb","2.16.840.1.101.3.4.1.44":"aes-256-cfb"}')},function(e,t,n){var r=/Proc-Type: 4,ENCRYPTED[\n\r]+DEK-Info: AES-((?:128)|(?:192)|(?:256))-CBC,([0-9A-H]+)[\n\r]+([0-9A-z\n\r\+\/\=]+)[\n\r]+/m,i=/^-----BEGIN ((?:.*? KEY)|CERTIFICATE)-----/m,a=/^-----BEGIN ((?:.*? KEY)|CERTIFICATE)-----([0-9A-z\n\r\+\/\=]+)-----END \1-----$/m,o=n(23),s=n(35),c=n(2).Buffer;e.exports=function(e,t){var n,u=e.toString(),l=u.match(r);if(l){var A="aes"+l[1],f=c.from(l[2],"hex"),h=c.from(l[3].replace(/[\r\n]/g,""),"base64"),p=o(t,f.slice(0,8),parseInt(l[1],10)).key,d=[],g=s.createDecipheriv(A,p,f);d.push(g.update(h)),d.push(g.final()),n=c.concat(d)}else{var y=u.match(a);n=new c(y[2].replace(/[\r\n]/g,""),"base64")}return{tag:u.match(i)[1],data:n}}},function(e,t,n){(function(t){var r=n(4),i=n(39).ec,a=n(25),o=n(79);function s(e,t){if(e.cmpn(0)<=0)throw new Error("invalid sig");if(e.cmp(t)>=t)throw new Error("invalid sig")}e.exports=function(e,n,c,u,l){var A=a(c);if("ec"===A.type){if("ecdsa"!==u&&"ecdsa/rsa"!==u)throw new Error("wrong public key type");return function(e,t,n){var r=o[n.data.algorithm.curve.join(".")];if(!r)throw new Error("unknown curve "+n.data.algorithm.curve.join("."));var a=new i(r),s=n.data.subjectPrivateKey.data;return a.verify(t,e,s)}(e,n,A)}if("dsa"===A.type){if("dsa"!==u)throw new Error("wrong public key type");return function(e,t,n){var i=n.data.p,o=n.data.q,c=n.data.g,u=n.data.pub_key,l=a.signature.decode(e,"der"),A=l.s,f=l.r;s(A,o),s(f,o);var h=r.mont(i),p=A.invm(o);return 0===c.toRed(h).redPow(new r(t).mul(p).mod(o)).fromRed().mul(u.toRed(h).redPow(f.mul(p).mod(o)).fromRed()).mod(i).mod(o).cmp(f)}(e,n,A)}if("rsa"!==u&&"ecdsa/rsa"!==u)throw new Error("wrong public key type");n=t.concat([l,n]);for(var f=A.modulus.byteLength(),h=[1],p=0;n.length+h.length+2<f;)h.push(255),p++;h.push(0);for(var d=-1;++d<n.length;)h.push(n[d]);h=new t(h);var g=r.mont(A.modulus);e=(e=new r(e).toRed(g)).redPow(new r(A.publicExponent)),e=new t(e.fromRed().toArray());var y=p<8?1:0;for(f=Math.min(e.length,h.length),e.length!==h.length&&(y=1),d=-1;++d<f;)y|=e[d]^h[d];return 0===y}}).call(this,n(3).Buffer)},function(e,t,n){(function(t){var r=n(39),i=n(4);e.exports=function(e){return new o(e)};var a={secp256k1:{name:"secp256k1",byteLength:32},secp224r1:{name:"p224",byteLength:28},prime256v1:{name:"p256",byteLength:32},prime192v1:{name:"p192",byteLength:24},ed25519:{name:"ed25519",byteLength:32},secp384r1:{name:"p384",byteLength:48},secp521r1:{name:"p521",byteLength:66}};function o(e){this.curveType=a[e],this.curveType||(this.curveType={name:e}),this.curve=new r.ec(this.curveType.name),this.keys=void 0}function s(e,n,r){Array.isArray(e)||(e=e.toArray());var i=new t(e);if(r&&i.length<r){var a=new t(r-i.length);a.fill(0),i=t.concat([a,i])}return n?i.toString(n):i}a.p224=a.secp224r1,a.p256=a.secp256r1=a.prime256v1,a.p192=a.secp192r1=a.prime192v1,a.p384=a.secp384r1,a.p521=a.secp521r1,o.prototype.generateKeys=function(e,t){return this.keys=this.curve.genKeyPair(),this.getPublicKey(e,t)},o.prototype.computeSecret=function(e,n,r){return n=n||"utf8",t.isBuffer(e)||(e=new t(e,n)),s(this.curve.keyFromPublic(e).getPublic().mul(this.keys.getPrivate()).getX(),r,this.curveType.byteLength)},o.prototype.getPublicKey=function(e,t){var n=this.keys.getPublic("compressed"===t,!0);return"hybrid"===t&&(n[n.length-1]%2?n[0]=7:n[0]=6),s(n,e)},o.prototype.getPrivateKey=function(e){return s(this.keys.getPrivate(),e)},o.prototype.setPublicKey=function(e,n){return n=n||"utf8",t.isBuffer(e)||(e=new t(e,n)),this.keys._importPublic(e),this},o.prototype.setPrivateKey=function(e,n){n=n||"utf8",t.isBuffer(e)||(e=new t(e,n));var r=new i(e);return r=r.toString(16),this.keys=this.curve.genKeyPair(),this.keys._importPrivate(r),this}}).call(this,n(3).Buffer)},function(e,t,n){t.publicEncrypt=n(163),t.privateDecrypt=n(164),t.privateEncrypt=function(e,n){return t.publicEncrypt(e,n,!0)},t.publicDecrypt=function(e,n){return t.privateDecrypt(e,n,!0)}},function(e,t,n){var r=n(25),i=n(13),a=n(15),o=n(80),s=n(81),c=n(4),u=n(82),l=n(38),A=n(2).Buffer;e.exports=function(e,t,n){var f;f=e.padding?e.padding:n?1:4;var h,p=r(e);if(4===f)h=function(e,t){var n=e.modulus.byteLength(),r=t.length,u=a("sha1").update(A.alloc(0)).digest(),l=u.length,f=2*l;if(r>n-f-2)throw new Error("message too long");var h=A.alloc(n-r-f-2),p=n-l-1,d=i(l),g=s(A.concat([u,h,A.alloc(1,1),t],p),o(d,p)),y=s(d,o(g,l));return new c(A.concat([A.alloc(1),y,g],n))}(p,t);else if(1===f)h=function(e,t,n){var r,a=t.length,o=e.modulus.byteLength();if(a>o-11)throw new Error("message too long");return r=n?A.alloc(o-a-3,255):function(e){for(var t,n=A.allocUnsafe(e),r=0,a=i(2*e),o=0;r<e;)o===a.length&&(a=i(2*e),o=0),(t=a[o++])&&(n[r++]=t);return n}(o-a-3),new c(A.concat([A.from([0,n?1:2]),r,A.alloc(1),t],o))}(p,t,n);else{if(3!==f)throw new Error("unknown padding");if((h=new c(t)).cmp(p.modulus)>=0)throw new Error("data too long for modulus")}return n?l(h,p):u(h,p)}},function(e,t,n){var r=n(25),i=n(80),a=n(81),o=n(4),s=n(38),c=n(15),u=n(82),l=n(2).Buffer;e.exports=function(e,t,n){var A;A=e.padding?e.padding:n?1:4;var f,h=r(e),p=h.modulus.byteLength();if(t.length>p||new o(t).cmp(h.modulus)>=0)throw new Error("decryption error");f=n?u(new o(t),h):s(t,h);var d=l.alloc(p-f.length);if(f=l.concat([d,f],p),4===A)return function(e,t){var n=e.modulus.byteLength(),r=c("sha1").update(l.alloc(0)).digest(),o=r.length;if(0!==t[0])throw new Error("decryption error");var s=t.slice(1,o+1),u=t.slice(o+1),A=a(s,i(u,o)),f=a(u,i(A,n-o-1));if(function(e,t){e=l.from(e),t=l.from(t);var n=0,r=e.length;e.length!==t.length&&(n++,r=Math.min(e.length,t.length));for(var i=-1;++i<r;)n+=e[i]^t[i];return n}(r,f.slice(0,o)))throw new Error("decryption error");for(var h=o;0===f[h];)h++;if(1!==f[h++])throw new Error("decryption error");return f.slice(h)}(h,f);if(1===A)return function(e,t,n){for(var r=t.slice(0,2),i=2,a=0;0!==t[i++];)if(i>=t.length){a++;break}var o=t.slice(2,i-1);if(("0002"!==r.toString("hex")&&!n||"0001"!==r.toString("hex")&&n)&&a++,o.length<8&&a++,a)throw new Error("decryption error");return t.slice(i)}(0,f,n);if(3===A)return f;throw new Error("unknown padding")}},function(e,t,n){"use strict";(function(e,r){function i(){throw new Error("secure random number generation not supported by this browser\nuse chrome, FireFox or Internet Explorer 11")}var a=n(2),o=n(13),s=a.Buffer,c=a.kMaxLength,u=e.crypto||e.msCrypto,l=Math.pow(2,32)-1;function A(e,t){if("number"!=typeof e||e!=e)throw new TypeError("offset must be a number");if(e>l||e<0)throw new TypeError("offset must be a uint32");if(e>c||e>t)throw new RangeError("offset out of range")}function f(e,t,n){if("number"!=typeof e||e!=e)throw new TypeError("size must be a number");if(e>l||e<0)throw new TypeError("size must be a uint32");if(e+t>n||e>c)throw new RangeError("buffer too small")}function h(e,t,n,i){if(r.browser){var a=e.buffer,s=new Uint8Array(a,t,n);return u.getRandomValues(s),i?void r.nextTick((function(){i(null,e)})):e}if(!i)return o(n).copy(e,t),e;o(n,(function(n,r){if(n)return i(n);r.copy(e,t),i(null,e)}))}u&&u.getRandomValues||!r.browser?(t.randomFill=function(t,n,r,i){if(!(s.isBuffer(t)||t instanceof e.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');if("function"==typeof n)i=n,n=0,r=t.length;else if("function"==typeof r)i=r,r=t.length-n;else if("function"!=typeof i)throw new TypeError('"cb" argument must be a function');return A(n,t.length),f(r,n,t.length),h(t,n,r,i)},t.randomFillSync=function(t,n,r){if(void 0===n&&(n=0),!(s.isBuffer(t)||t instanceof e.Uint8Array))throw new TypeError('"buf" argument must be a Buffer or Uint8Array');return A(n,t.length),void 0===r&&(r=t.length-n),f(r,n,t.length),h(t,n,r)}):(t.randomFill=i,t.randomFillSync=i)}).call(this,n(8),n(9))},function(e,t){e.exports=i,i.strict=a,i.loose=o;var n=Object.prototype.toString,r={"[object Int8Array]":!0,"[object Int16Array]":!0,"[object Int32Array]":!0,"[object Uint8Array]":!0,"[object Uint8ClampedArray]":!0,"[object Uint16Array]":!0,"[object Uint32Array]":!0,"[object Float32Array]":!0,"[object Float64Array]":!0};function i(e){return a(e)||o(e)}function a(e){return e instanceof Int8Array||e instanceof Int16Array||e instanceof Int32Array||e instanceof Uint8Array||e instanceof Uint8ClampedArray||e instanceof Uint16Array||e instanceof Uint32Array||e instanceof Float32Array||e instanceof Float64Array}function o(e){return r[n.call(e)]}},function(e,t,n){"use strict";n.r(t),n.d(t,"SNWebCrypto",(function(){return $})),n.d(t,"isWebCryptoAvailable",(function(){return p})),n.d(t,"Buffer",(function(){return l.Buffer})),n.d(t,"stringToArrayBuffer",(function(){return y})),n.d(t,"arrayBufferToString",(function(){return m})),n.d(t,"arrayBufferToHexString",(function(){return I})),n.d(t,"hexStringToArrayBuffer",(function(){return C})),n.d(t,"base64ToArrayBuffer",(function(){return E})),n.d(t,"arrayBufferToBase64",(function(){return k})),n.d(t,"hexToBase64",(function(){return S})),n.d(t,"base64ToHex",(function(){return D})),n.d(t,"base64Encode",(function(){return M})),n.d(t,"base64Decode",(function(){return O})),n.d(t,"toBuffer",(function(){return T}));var r={};n.r(r),n.d(r,"ready",(function(){return s.ready})),n.d(r,"crypto_pwhash",(function(){return s.crypto_pwhash})),n.d(r,"crypto_pwhash_ALG_DEFAULT",(function(){return s.crypto_pwhash_ALG_DEFAULT})),n.d(r,"crypto_aead_xchacha20poly1305_ietf_encrypt",(function(){return s.crypto_aead_xchacha20poly1305_ietf_encrypt})),n.d(r,"crypto_aead_xchacha20poly1305_ietf_decrypt",(function(){return s.crypto_aead_xchacha20poly1305_ietf_decrypt})),n.d(r,"to_base64",(function(){return s.to_base64})),n.d(r,"from_base64",(function(){return s.from_base64})),n.d(r,"base64_variants",(function(){return s.base64_variants})),n.d(r,"from_hex",(function(){return s.from_hex})),n.d(r,"to_hex",(function(){return s.to_hex})),n.d(r,"from_string",(function(){return s.from_string})),n.d(r,"to_string",(function(){return s.to_string}));var i,a=n(0),o=n.n(a),s=n(5),c=n(83),u=n.n(c),l=n(3);function A(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function f(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){A(a,r,i,o,s,"next",e)}function s(e){A(a,r,i,o,s,"throw",e)}o(void 0)}))}}function h(){return window}function p(){return!("undefined"!=typeof document&&document.documentMode||/Edge/.test(navigator.userAgent))&&h().crypto&&!!h().crypto.subtle}function d(){var e=h(),t=e.crypto||e.msCrypto;if(t){var n=new Uint32Array(4);t.getRandomValues(n);var r=-1;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){r++;var t=n[r>>3]>>r%8*4&15;return("x"===e?t:3&t|8).toString(16)}))}var i=(new Date).getTime();return e.performance&&"function"==typeof e.performance.now&&(i+=performance.now()),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=(i+16*Math.random())%16|0;return i=Math.floor(i/16),("x"===e?t:3&t|8).toString(16)}))}function g(e){return"string"==typeof e||e instanceof String}function y(e){return v.apply(this,arguments)}function v(){return(v=f(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(g(t)){e.next=2;break}throw Error("Attempting to convert non-string to arrayBuffer");case 2:return e.next=4,s.ready;case 4:return e.abrupt("return",Object(s.from_string)(t));case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function m(e){return b.apply(this,arguments)}function b(){return(b=f(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.ready;case 2:return e.abrupt("return",Object(s.to_string)(t));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function I(e){return w.apply(this,arguments)}function w(){return(w=f(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.ready;case 2:return e.abrupt("return",Object(s.to_hex)(l.Buffer.from(t)));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function C(e){return B.apply(this,arguments)}function B(){return(B=f(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.ready;case 2:return e.abrupt("return",Object(s.from_hex)(t));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function E(e){return _.apply(this,arguments)}function _(){return(_=f(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.ready;case 2:return e.abrupt("return",Object(s.from_base64)(t,s.base64_variants.ORIGINAL));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function k(e){return Q.apply(this,arguments)}function Q(){return(Q=f(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.ready;case 2:return e.abrupt("return",Object(s.to_base64)(l.Buffer.from(t),s.base64_variants.ORIGINAL));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function S(e){return x.apply(this,arguments)}function x(){return(x=f(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.ready;case 2:return e.abrupt("return",Object(s.to_base64)(Object(s.from_hex)(t),s.base64_variants.ORIGINAL));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function D(e){return P.apply(this,arguments)}function P(){return(P=f(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.ready;case 2:return e.abrupt("return",Object(s.to_hex)(Object(s.from_base64)(t,s.base64_variants.ORIGINAL)));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function M(e){return F.apply(this,arguments)}function F(){return(F=f(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.ready;case 2:return e.abrupt("return",Object(s.to_base64)(t,s.base64_variants.ORIGINAL));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function O(e){return R.apply(this,arguments)}function R(){return(R=f(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.ready;case 2:return e.abrupt("return",Object(s.to_string)(Object(s.from_base64)(t,s.base64_variants.ORIGINAL)));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function T(e){return j.apply(this,arguments)}function j(){return(j=f(o.a.mark((function e(t){var n,r=arguments;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.length>1&&void 0!==r[1]?r[1]:i.Binary,!l.Buffer.isBuffer(t)){e.next=5;break}return e.abrupt("return",t);case 5:if(null!==t){e.next=9;break}return e.abrupt("return",null);case 9:if("string"!=typeof t){e.next=13;break}return e.abrupt("return",l.Buffer.from(t,n));case 13:if(!(t instanceof Uint8Array)){e.next=17;break}return e.abrupt("return",u()(t));case 17:throw new TypeError("Invalid type; string or buffer expected");case 18:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function H(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void n(e)}s.done?t(c):Promise.resolve(c).then(r,i)}function U(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){H(a,r,i,o,s,"next",e)}function s(e){H(a,r,i,o,s,"throw",e)}o(void 0)}))}}function N(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}!function(e){e.Utf8="utf8",e.Base64="base64",e.Hex="hex",e.Binary="binary"}(i||(i={}));var L,K,G=h().crypto?h().crypto.subtle:null;!function(e){e.AesCbc="AES-CBC",e.Sha512="SHA-512",e.Sha256="SHA-256",e.Pbkdf2="PBKDF2",e.Sha1="SHA-1",e.Hmac="HMAC"}(L||(L={})),function(e){e.DeriveBits="deriveBits",e.Encrypt="encrypt",e.Decrypt="decrypt",e.Sign="sign"}(K||(K={}));var $=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.ready=s.ready}var t,n,a,c,u,l,A,f,p,g,v,b,w,B,_,Q,S;return t=e,(n=[{key:"deinit",value:function(){this.ready=null}},{key:"generateUUIDSync",value:function(){return d()}},{key:"generateUUID",value:(S=U(o.a.mark((function e(){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",d());case 1:case"end":return e.stop()}}),e)}))),function(){return S.apply(this,arguments)})},{key:"timingSafeEqual",value:function(e,t){return function(e,t){var n=String(e),r=String(t),i=n.length,a=0;i!==r.length&&(r=n,a=1);for(var o=0;o<i;o++)a|=n.charCodeAt(o)^r.charCodeAt(o);return 0===a}(e,t)}},{key:"base64Encode",value:(Q=U(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",M(t));case 1:case"end":return e.stop()}}),e)}))),function(e){return Q.apply(this,arguments)})},{key:"base64Decode",value:(_=U(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",O(t));case 1:case"end":return e.stop()}}),e)}))),function(e){return _.apply(this,arguments)})},{key:"pbkdf2",value:(B=U(o.a.mark((function e(t,n,r,i){var a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,y(t);case 2:return a=e.sent,e.next=5,this.webCryptoImportKey(a,L.Pbkdf2,[K.DeriveBits]);case 5:if(s=e.sent){e.next=9;break}return console.error("Key is null, unable to continue"),e.abrupt("return",null);case 9:return e.abrupt("return",this.webCryptoDeriveBits(s,n,r,i));case 10:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return B.apply(this,arguments)})},{key:"generateRandomKey",value:(w=U(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t/8,r=h().crypto.getRandomValues(new Uint8Array(n)),e.abrupt("return",I(r));case 3:case"end":return e.stop()}}),e)}))),function(e){return w.apply(this,arguments)})},{key:"aes256CbcEncrypt",value:(b=U(o.a.mark((function e(t,n,r){var i,a,s,c,u,l,A;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,C(r);case 2:return i=e.sent,e.next=5,C(n);case 5:return a=e.sent,s={name:L.AesCbc,iv:a},e.next=9,this.webCryptoImportKey(i,s.name,[K.Encrypt]);case 9:return c=e.sent,e.next=12,y(t);case 12:return u=e.sent,e.next=15,crypto.subtle.encrypt(s,c,u);case 15:return l=e.sent,e.next=18,k(l);case 18:return A=e.sent,e.abrupt("return",A);case 20:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return b.apply(this,arguments)})},{key:"aes256CbcDecrypt",value:(v=U(o.a.mark((function e(t,n,r){var i,a,s,c,u;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,C(r);case 2:return i=e.sent,e.next=5,C(n);case 5:return a=e.sent,s={name:L.AesCbc,iv:a},e.next=9,this.webCryptoImportKey(i,s.name,[K.Decrypt]);case 9:return c=e.sent,e.next=12,E(t);case 12:return u=e.sent,e.abrupt("return",crypto.subtle.decrypt(s,c,u).then(function(){var e=U(o.a.mark((function e(t){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",m(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),(function(e){return null})));case 14:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return v.apply(this,arguments)})},{key:"hmac256",value:(g=U(o.a.mark((function e(t,n){var r,i,a,s;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,C(n);case 2:return r=e.sent,e.next=5,this.webCryptoImportKey(r,L.Hmac,[K.Sign],{name:L.Sha256});case 5:return i=e.sent,e.next=8,y(t);case 8:return a=e.sent,s={name:L.Hmac},e.abrupt("return",crypto.subtle.sign(s,i,a).then((function(e){return I(e)}),(function(e){return console.error("Error computing HMAC:",e),null})));case 11:case"end":return e.stop()}}),e,this)}))),function(e,t){return g.apply(this,arguments)})},{key:"sha256",value:(p=U(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,y(t);case 2:return n=e.sent,e.next=5,crypto.subtle.digest(L.Sha256,n);case 5:return r=e.sent,e.abrupt("return",I(r));case 7:case"end":return e.stop()}}),e)}))),function(e){return p.apply(this,arguments)})},{key:"unsafeSha1",value:(f=U(o.a.mark((function e(t){var n,r;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,y(t);case 2:return n=e.sent,e.next=5,crypto.subtle.digest(L.Sha1,n);case 5:return r=e.sent,e.abrupt("return",I(r));case 7:case"end":return e.stop()}}),e)}))),function(e){return f.apply(this,arguments)})},{key:"webCryptoImportKey",value:(A=U(o.a.mark((function e(t,n,r,i){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",G.importKey("raw",t,{name:n,hash:i},!1,r).then((function(e){return e}),(function(e){return null})));case 1:case"end":return e.stop()}}),e)}))),function(e,t,n,r){return A.apply(this,arguments)})},{key:"webCryptoDeriveBits",value:(l=U(o.a.mark((function e(t,n,r,i){var a;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.t0=L.Pbkdf2,e.next=3,y(n);case 3:return e.t1=e.sent,e.t2=r,e.t3={name:L.Sha512},a={name:e.t0,salt:e.t1,iterations:e.t2,hash:e.t3},e.abrupt("return",G.deriveBits(a,t,i).then((function(e){return I(new Uint8Array(e))})));case 8:case"end":return e.stop()}}),e)}))),function(e,t,n,r){return l.apply(this,arguments)})},{key:"argon2",value:(u=U(o.a.mark((function e(t,n,a,c,u){var l;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.ready;case 2:return e.t0=r,e.t1=u,e.next=6,T(t,i.Binary);case 6:return e.t2=e.sent,e.next=9,T(n,i.Hex);case 9:return e.t3=e.sent,e.t4=a,e.t5=c,e.t6=s.crypto_pwhash_ALG_DEFAULT,l=e.t0.crypto_pwhash.call(e.t0,e.t1,e.t2,e.t3,e.t4,e.t5,e.t6,"hex"),e.abrupt("return",l);case 15:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r,i){return u.apply(this,arguments)})},{key:"xchacha20Encrypt",value:(c=U(o.a.mark((function e(t,n,a,s){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.ready;case 2:if(48===n.length){e.next=4;break}throw"Nonce must be 24 bytes";case 4:return e.t0=r,e.next=7,T(t);case 7:return e.t1=e.sent,e.next=10,T(s);case 10:return e.t2=e.sent,e.next=13,T(n,i.Hex);case 13:return e.t3=e.sent,e.next=16,T(a,i.Hex);case 16:return e.t4=e.sent,e.abrupt("return",e.t0.crypto_aead_xchacha20poly1305_ietf_encrypt.call(e.t0,e.t1,e.t2,null,e.t3,e.t4,"base64"));case 18:case"end":return e.stop()}}),e,this)}))),function(e,t,n,r){return c.apply(this,arguments)})},{key:"xchacha20Decrypt",value:(a=U(o.a.mark((function e(t,n,a,s){return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.ready;case 2:if(48===n.length){e.next=4;break}throw"Nonce must be 24 bytes";case 4:return e.prev=4,e.t0=r,e.next=8,T(t,i.Base64);case 8:return e.t1=e.sent,e.next=11,T(s);case 11:return e.t2=e.sent,e.next=14,T(n,i.Hex);case 14:return e.t3=e.sent,e.next=17,T(a,i.Hex);case 17:return e.t4=e.sent,e.abrupt("return",e.t0.crypto_aead_xchacha20poly1305_ietf_decrypt.call(e.t0,null,e.t1,e.t2,e.t3,e.t4,"text"));case 21:return e.prev=21,e.t5=e.catch(4),e.abrupt("return",null);case 24:case"end":return e.stop()}}),e,this,[[4,21]])}))),function(e,t,n,r){return a.apply(this,arguments)})}])&&N(t.prototype,n),e}()}])},module.exports=e()},function(e,t,n){var r=n(91)(n(105));e.exports=r},function(e,t,n){var r=n(112);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(114);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(115);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(116)(n(187));e.exports=r},function(e,t,n){var r=n(191);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(192);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(193);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(194);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(195);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(196);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(197);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(198);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(199);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(200);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(201);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(202);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(203);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(204);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(205);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(206);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(207);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(208);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(209);e.exports=(r.default||r).apply(r,[])},function(e,t,n){var r=n(210);e.exports=(r.default||r).apply(r,[])},function(e,t,n){"use strict";n.d(t,"a",(function(){return s}));var r=n(0);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class a{constructor(e,t,n){i(this,"note",void 0),i(this,"application",void 0),i(this,"_onNoteChange",void 0),i(this,"_onNoteValueChange",void 0),i(this,"removeStreamObserver",void 0),i(this,"isTemplateNote",!1),this.application=e,t?this.note=e.findItem(t):this.reset(n),this.removeStreamObserver=this.application.streamItems(r.ContentType.Note,async(e,t)=>{await this.handleNoteStream(e,t)})}deinit(){this.removeStreamObserver(),this.removeStreamObserver=void 0,this._onNoteChange=void 0,this.application=void 0,this._onNoteChange=void 0,this._onNoteValueChange=void 0}async handleNoteStream(e,t){const n=e.find(e=>e.uuid===this.note.uuid);n&&(this.isTemplateNote=!1,this.note=n,this._onNoteValueChange&&this._onNoteValueChange(n,t))}async insertTemplatedNote(){return this.application.insertItem(this.note)}async reset(e){const t=await this.application.createTemplateItem(r.ContentType.Note,{text:"",title:e||"",references:[]});this.isTemplateNote=!0,this.setNote(t)}onNoteChange(e){this._onNoteChange=e,this.note&&e()}clearNoteChangeListener(){this._onNoteChange=void 0}onNoteValueChange(e){this._onNoteValueChange=e}setNote(e){this.note=e,this._onNoteChange&&this._onNoteChange()}}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class s{constructor(e){o(this,"editors",[]),o(this,"application",void 0),o(this,"changeObservers",[]),this.application=e}deinit(){this.application=void 0;for(const e of this.editors)this.deleteEditor(e)}createEditor(e,t){const n=new a(this.application,e,t);this.editors.push(n),this.notifyObservers()}deleteEditor(e){e.deinit(),Object(r.removeFromArray)(this.editors,e)}closeEditor(e){this.deleteEditor(e),this.notifyObservers()}closeActiveEditor(){const e=this.activeEditor;e&&this.deleteEditor(e)}closeAllEditors(){for(const e of this.editors)this.deleteEditor(e)}get activeEditor(){return this.editors[0]}addChangeObserver(e){return this.changeObservers.push(e),this.activeEditor&&e(),()=>{Object(r.removeFromArray)(this.changeObservers,e)}}notifyObservers(){for(const e of this.changeObservers)e()}}},function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n(0);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class a{constructor(){i(this,"locked",!0),i(this,"alertService",void 0),i(this,"db",void 0)}deinit(){this.alertService=void 0,this.db=void 0}setAlertService(e){this.alertService=e}unlock(){this.locked=!1}async openDatabase(e){if(this.locked)throw Error("Attempting to open locked database");if(this.db)return this.db;const t=window.indexedDB.open("standardnotes",1);return new Promise((n,r)=>{t.onerror=e=>{const t=e.target;t.errorCode?this.showAlert("Offline database issue: "+t.errorCode):this.displayOfflineAlert(),r(new Error("Unable to open db"))},t.onblocked=e=>{r(Error("IndexedDB open request blocked"))},t.onsuccess=e=>{const t=e.target.result;t.onversionchange=()=>{t.close()},t.onerror=e=>{const t=null==e?void 0:e.target;throw Error("Database error: "+t.errorCode)},this.db=t,n(t)},t.onupgradeneeded=t=>{const n=t.target.result;n.onversionchange=()=>{n.close()};const r=n.createObjectStore("items",{keyPath:"uuid"});r.createIndex("uuid","uuid",{unique:!0}),r.transaction.oncomplete=()=>{1===n.version&&e&&e&&e()}}})}async getAllPayloads(){const e=await this.openDatabase();return new Promise(t=>{const n=e.transaction("items").objectStore("items"),r=[];n.openCursor().onsuccess=e=>{const n=e.target.result;n?(r.push(n.value),n.continue()):t(r)}})}async savePayload(e){return this.savePayloads([e])}async savePayloads(e){if(0===e.length)return;const t=(await this.openDatabase()).transaction("items","readwrite");return new Promise((n,r)=>{t.oncomplete=()=>{},t.onerror=e=>{const t=e.target;this.showGenericError(t.error)},t.onabort=e=>{const t=e.target.error;"QuotaExceededError"===t.name?this.showAlert("Unable to save changes locally because your device is out of space. Please free up some disk space and try again, otherwise, your data may end up in an inconsistent state."):this.showGenericError(t),r(t)};const i=t.objectStore("items");this.putItems(i,e).then(n)})}async putItems(e,t){await Promise.all(t.map(t=>new Promise(n=>{const r=e.put(t);r.onerror=n,r.onsuccess=n})))}async deletePayload(e){const t=await this.openDatabase();return new Promise((n,r)=>{const i=t.transaction("items","readwrite").objectStore("items").delete(e);i.onsuccess=()=>{n()},i.onerror=r})}async clearAllPayloads(){const e=window.indexedDB.deleteDatabase("standardnotes");return new Promise((t,n)=>{e.onerror=()=>{n(Error("Error deleting database."))},e.onsuccess=()=>{this.db=void 0,t()},e.onblocked=e=>{this.showAlert("Your browser is blocking Standard Notes from deleting the local database. Make sure there are no other open windows of this app and try again. If the issue persists, please manually delete app data to sign out."),n(Error("Delete request blocked"))}})}showAlert(e){this.alertService.alert(e)}showGenericError(e){const t="Unable to save changes locally due to an unknown system issue. "+`Issue Code: ${e.code} Issue Name: ${e.name}.`;this.showAlert(t)}displayOfflineAlert(){this.alertService.alert("There was an issue loading your offline database. This could happen for two reasons:\n\n1. You're in a private window in your browser. We can't save your data without access to the local database. Please use a non-private window.\n\n2. You have two windows of the app open at the same time. Please close any other app instances and reload the page.")}}class o extends r.DeviceInterface{constructor(e,t){var n,i,o;super(e,t||setTimeout.bind(Object(r.getGlobalScope)()),setInterval.bind(Object(r.getGlobalScope)())),o=void 0,(i="database")in(n=this)?Object.defineProperty(n,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[i]=o,this.database=new a}setApplication(e){this.database.setAlertService(e.alertService)}deinit(){super.deinit(),this.database.deinit()}async getRawStorageValue(e){return localStorage.getItem(e)}async getAllRawStorageKeyValues(){const e=[];for(const t of Object.keys(localStorage))e.push({key:t,value:localStorage[t]});return e}async setRawStorageValue(e,t){localStorage.setItem(e,t)}async removeRawStorageValue(e){localStorage.removeItem(e)}async removeAllRawStorageValues(){localStorage.clear()}async openDatabase(){return this.database.unlock(),new Promise((e,t)=>{this.database.openDatabase(()=>{e({isNewDatabase:!0})}).then(()=>{e({isNewDatabase:!1})}).catch(e=>{t(e)})})}getDatabaseKeyPrefix(){return this.namespace?`${this.namespace}-item-`:"item-"}keyForPayloadId(e){return`${this.getDatabaseKeyPrefix()}${e}`}async getAllRawDatabasePayloads(){return this.database.getAllPayloads()}async saveRawDatabasePayload(e){return this.database.savePayload(e)}async saveRawDatabasePayloads(e){return this.database.savePayloads(e)}async removeRawDatabasePayloadWithId(e){return this.database.deletePayload(e)}async removeAllRawDatabasePayloads(){return this.database.clearAllPayloads()}async getKeychainValue(){const e=localStorage.getItem("keychain");if(e)return JSON.parse(e)}async setKeychainValue(e){localStorage.setItem("keychain",JSON.stringify(e))}async clearKeychainValue(){localStorage.removeItem("keychain")}openUrl(e){const t=window.open(e,"_blank");t&&t.focus()}}},function(e,t,n){},function(e,t,n){},function(e,t){
/**
* @license AngularJS v1.7.9
* (c) 2010-2018 Google, Inc. http://angularjs.org
* License: MIT
*/
!function(e){"use strict";var t={objectMaxDepth:5,urlErrorParamsEnabled:!0};function n(e){if(!H(e))return t;j(e.objectMaxDepth)&&(t.objectMaxDepth=r(e.objectMaxDepth)?e.objectMaxDepth:NaN),j(e.urlErrorParamsEnabled)&&q(e.urlErrorParamsEnabled)&&(t.urlErrorParamsEnabled=e.urlErrorParamsEnabled)}function r(e){return L(e)&&e>0}function i(e,n){n=n||Error;var r="https://errors.angularjs.org/1.7.9/",i=r.replace(".","\\.")+"[\\s\\S]*",a=new RegExp(i,"g");return function(){var i,o,s=arguments[0],c=arguments[1],u="["+(e?e+":":"")+s+"] ",l=Ae(arguments,2).map((function(e){return Le(e,t.objectMaxDepth)}));if(u+=c.replace(/\{\d+\}/g,(function(e){var t=+e.slice(1,-1);return t<l.length?l[t].replace(a,""):e})),u+="\n"+r+(e?e+"/":"")+s,t.urlErrorParamsEnabled)for(o=0,i="?";o<l.length;o++,i="&")u+=i+"p"+o+"="+encodeURIComponent(l[o]);return new n(u)}}var a,o,s,c,u=/^\/(.+)\/([a-z]*)$/,l=Object.prototype.hasOwnProperty,A=function(e){return N(e)?e.toLowerCase():e},f=function(e){return N(e)?e.toUpperCase():e},h=[].slice,p=[].splice,d=[].push,g=Object.prototype.toString,y=Object.getPrototypeOf,v=i("ng"),m=e.angular||(e.angular={}),b=0;function I(e){if(null==e||V(e))return!1;if(G(e)||N(e)||o&&e instanceof o)return!0;var t="length"in Object(e)&&e.length;return L(t)&&(t>=0&&t-1 in e||"function"==typeof e.item)}function w(e,t,n){var r,i;if(e)if(Y(e))for(r in e)"prototype"!==r&&"length"!==r&&"name"!==r&&e.hasOwnProperty(r)&&t.call(n,e[r],r,e);else if(G(e)||I(e)){var a="object"!=typeof e;for(r=0,i=e.length;r<i;r++)(a||r in e)&&t.call(n,e[r],r,e)}else if(e.forEach&&e.forEach!==w)e.forEach(t,n,e);else if(U(e))for(r in e)t.call(n,e[r],r,e);else if("function"==typeof e.hasOwnProperty)for(r in e)e.hasOwnProperty(r)&&t.call(n,e[r],r,e);else for(r in e)l.call(e,r)&&t.call(n,e[r],r,e);return e}function C(e,t,n){for(var r=Object.keys(e).sort(),i=0;i<r.length;i++)t.call(n,e[r[i]],r[i]);return r}function B(e){return function(t,n){e(n,t)}}function E(){return++b}function _(e,t){t?e.$$hashKey=t:delete e.$$hashKey}function k(e,t,n){for(var r=e.$$hashKey,i=0,a=t.length;i<a;++i){var o=t[i];if(H(o)||Y(o))for(var s=Object.keys(o),c=0,u=s.length;c<u;c++){var l=s[c],A=o[l];n&&H(A)?K(A)?e[l]=new Date(A.valueOf()):J(A)?e[l]=new RegExp(A):A.nodeName?e[l]=A.cloneNode(!0):te(A)?e[l]=A.clone():"__proto__"!==l&&(H(e[l])||(e[l]=G(A)?[]:{}),k(e[l],[A],!0)):e[l]=A}}return _(e,r),e}function Q(e){return k(e,h.call(arguments,1),!1)}function S(e){return k(e,h.call(arguments,1),!0)}function x(e){return parseInt(e,10)}a=e.document.documentMode;var D=Number.isNaN||function(e){return e!=e};function P(e,t){return Q(Object.create(e),t)}function M(){}function F(e){return e}function O(e){return function(){return e}}function R(e){return Y(e.toString)&&e.toString!==g}function T(e){return void 0===e}function j(e){return void 0!==e}function H(e){return null!==e&&"object"==typeof e}function U(e){return null!==e&&"object"==typeof e&&!y(e)}function N(e){return"string"==typeof e}function L(e){return"number"==typeof e}function K(e){return"[object Date]"===g.call(e)}function G(e){return Array.isArray(e)||e instanceof Array}function $(e){switch(g.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return e instanceof Error}}function Y(e){return"function"==typeof e}function J(e){return"[object RegExp]"===g.call(e)}function V(e){return e&&e.window===e}function z(e){return e&&e.$evalAsync&&e.$watch}function q(e){return"boolean"==typeof e}function W(e){return e&&Y(e.then)}M.$inject=[],F.$inject=[];var X=/^\[object (?:Uint8|Uint8Clamped|Uint16|Uint32|Int8|Int16|Int32|Float32|Float64)Array]$/;var Z=function(e){return N(e)?e.trim():e},ee=function(e){return e.replace(/([-()[\]{}+?*.$^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")};function te(e){return!(!e||!(e.nodeName||e.prop&&e.attr&&e.find))}function ne(e){return A(e.nodeName||e[0]&&e[0].nodeName)}function re(e,t){return-1!==Array.prototype.indexOf.call(e,t)}function ie(e,t){var n=e.indexOf(t);return n>=0&&e.splice(n,1),n}function ae(e,t,n){var i,a,o=[],s=[];if(n=r(n)?n:NaN,t){if((a=t)&&L(a.length)&&X.test(g.call(a))||(i=t,"[object ArrayBuffer]"===g.call(i)))throw v("cpta","Can't copy! TypedArray destination cannot be mutated.");if(e===t)throw v("cpi","Can't copy! Source and destination are identical.");return G(t)?t.length=0:w(t,(function(e,n){"$$hashKey"!==n&&delete t[n]})),o.push(e),s.push(t),c(e,t,n)}return u(e,n);function c(e,t,n){if(--n<0)return"...";var r,i=t.$$hashKey;if(G(e))for(var a=0,o=e.length;a<o;a++)t.push(u(e[a],n));else if(U(e))for(r in e)t[r]=u(e[r],n);else if(e&&"function"==typeof e.hasOwnProperty)for(r in e)e.hasOwnProperty(r)&&(t[r]=u(e[r],n));else for(r in e)l.call(e,r)&&(t[r]=u(e[r],n));return _(t,i),t}function u(e,t){if(!H(e))return e;var n=o.indexOf(e);if(-1!==n)return s[n];if(V(e)||z(e))throw v("cpws","Can't copy! Making copies of Window or Scope instances is not supported.");var r=!1,i=function(e){switch(g.call(e)){case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Float32Array]":case"[object Float64Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return new e.constructor(u(e.buffer),e.byteOffset,e.length);case"[object ArrayBuffer]":if(!e.slice){var t=new ArrayBuffer(e.byteLength);return new Uint8Array(t).set(new Uint8Array(e)),t}return e.slice(0);case"[object Boolean]":case"[object Number]":case"[object String]":case"[object Date]":return new e.constructor(e.valueOf());case"[object RegExp]":var n=new RegExp(e.source,e.toString().match(/[^/]*$/)[0]);return n.lastIndex=e.lastIndex,n;case"[object Blob]":return new e.constructor([e],{type:e.type})}if(Y(e.cloneNode))return e.cloneNode(!0)}(e);return void 0===i&&(i=G(e)?[]:Object.create(y(e)),r=!0),o.push(e),s.push(i),r?c(e,i,t):i}}function oe(e,t){return e===t||e!=e&&t!=t}function se(e,t){if(e===t)return!0;if(null===e||null===t)return!1;if(e!=e&&t!=t)return!0;var n,r,i,a=typeof e;if(a===typeof t&&"object"===a){if(!G(e)){if(K(e))return!!K(t)&&oe(e.getTime(),t.getTime());if(J(e))return!!J(t)&&e.toString()===t.toString();if(z(e)||z(t)||V(e)||V(t)||G(t)||K(t)||J(t))return!1;for(r in i=je(),e)if("$"!==r.charAt(0)&&!Y(e[r])){if(!se(e[r],t[r]))return!1;i[r]=!0}for(r in t)if(!(r in i)&&"$"!==r.charAt(0)&&j(t[r])&&!Y(t[r]))return!1;return!0}if(!G(t))return!1;if((n=e.length)===t.length){for(r=0;r<n;r++)if(!se(e[r],t[r]))return!1;return!0}}return!1}var ce=function(){if(!j(ce.rules)){var t=e.document.querySelector("[ng-csp]")||e.document.querySelector("[data-ng-csp]");if(t){var n=t.getAttribute("ng-csp")||t.getAttribute("data-ng-csp");ce.rules={noUnsafeEval:!n||-1!==n.indexOf("no-unsafe-eval"),noInlineStyle:!n||-1!==n.indexOf("no-inline-style")}}else ce.rules={noUnsafeEval:function(){try{return new Function(""),!1}catch(e){return!0}}(),noInlineStyle:!1}}return ce.rules},ue=function(){if(j(ue.name_))return ue.name_;var t,n,r,i,a=Ee.length;for(n=0;n<a;++n)if(r=Ee[n],t=e.document.querySelector("["+r.replace(":","\\:")+"jq]")){i=t.getAttribute(r+"jq");break}return ue.name_=i};function le(e,t,n){return e.concat(h.call(t,n))}function Ae(e,t){return h.call(e,t||0)}function fe(e,t){var n=arguments.length>2?Ae(arguments,2):[];return!Y(t)||t instanceof RegExp?t:n.length?function(){return arguments.length?t.apply(e,le(n,arguments,0)):t.apply(e,n)}:function(){return arguments.length?t.apply(e,arguments):t.call(e)}}function he(t,n){var r=n;return"string"==typeof t&&"$"===t.charAt(0)&&"$"===t.charAt(1)?r=void 0:V(n)?r="$WINDOW":n&&e.document===n?r="$DOCUMENT":z(n)&&(r="$SCOPE"),r}function pe(e,t){if(!T(e))return L(t)||(t=t?2:null),JSON.stringify(e,he,t)}function de(e){return N(e)?JSON.parse(e):e}var ge=/:/g;function ye(e,t){e=e.replace(ge,"");var n=Date.parse("Jan 01, 1970 00:00:00 "+e)/6e4;return D(n)?t:n}function ve(e,t){return(e=new Date(e.getTime())).setMinutes(e.getMinutes()+t),e}function me(e,t,n){n=n?-1:1;var r=e.getTimezoneOffset();return ve(e,n*(ye(t,r)-r))}function be(e){e=o(e).clone().empty();var t=o("<div></div>").append(e).html();try{return e[0].nodeType===Ue?A(t):t.match(/^(<[^>]+>)/)[1].replace(/^<([\w-]+)/,(function(e,t){return"<"+A(t)}))}catch(e){return A(t)}}function Ie(e){try{return decodeURIComponent(e)}catch(e){}}function we(e){var t={};return w((e||"").split("&"),(function(e){var n,r,i;e&&(r=e=e.replace(/\+/g,"%20"),-1!==(n=e.indexOf("="))&&(r=e.substring(0,n),i=e.substring(n+1)),j(r=Ie(r))&&(i=!j(i)||Ie(i),l.call(t,r)?G(t[r])?t[r].push(i):t[r]=[t[r],i]:t[r]=i))})),t}function Ce(e){return Be(e,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function Be(e,t){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,t?"%20":"+")}var Ee=["ng-","data-ng-","ng:","x-ng-"];var _e=function(t){var n=t.currentScript;if(!n)return!0;if(!(n instanceof e.HTMLScriptElement||n instanceof e.SVGScriptElement))return!1;var r=n.attributes;return[r.getNamedItem("src"),r.getNamedItem("href"),r.getNamedItem("xlink:href")].every((function(e){if(!e)return!0;if(!e.value)return!1;var n=t.createElement("a");if(n.href=e.value,t.location.origin===n.origin)return!0;switch(n.protocol){case"http:":case"https:":case"ftp:":case"blob:":case"file:":case"data:":return!0;default:return!1}}))}(e.document);function ke(t,n){var r,i,a={};if(w(Ee,(function(e){var n=e+"app";!r&&t.hasAttribute&&t.hasAttribute(n)&&(r=t,i=t.getAttribute(n))})),w(Ee,(function(e){var n,a=e+"app";!r&&(n=t.querySelector("["+a.replace(":","\\:")+"]"))&&(r=n,i=n.getAttribute(a))})),r){if(!_e)return void e.console.error("AngularJS: disabling automatic bootstrap. <script> protocol indicates an extension, document.location.href does not match.");a.strictDi=null!==function(e,t){var n,r,i=Ee.length;for(r=0;r<i;++r)if(n=Ee[r]+t,N(n=e.getAttribute(n)))return n;return null}(r,"strict-di"),n(r,i?[i]:[],a)}}function Qe(t,n,r){H(r)||(r={});r=Q({strictDi:!1},r);var i=function(){if((t=o(t)).injector()){var i=t[0]===e.document?"document":be(t);throw v("btstrpd","App already bootstrapped with this element '{0}'",i.replace(/</,"&lt;").replace(/>/,"&gt;"))}(n=n||[]).unshift(["$provide",function(e){e.value("$rootElement",t)}]),r.debugInfoEnabled&&n.push(["$compileProvider",function(e){e.debugInfoEnabled(!0)}]),n.unshift("ng");var a=Yt(n,r.strictDi);return a.invoke(["$rootScope","$rootElement","$compile","$injector",function(e,t,n,r){e.$apply((function(){t.data("$injector",r),n(t)(e)}))}]),a},a=/^NG_ENABLE_DEBUG_INFO!/,s=/^NG_DEFER_BOOTSTRAP!/;if(e&&a.test(e.name)&&(r.debugInfoEnabled=!0,e.name=e.name.replace(a,"")),e&&!s.test(e.name))return i();e.name=e.name.replace(s,""),m.resumeBootstrap=function(e){return w(e,(function(e){n.push(e)})),i()},Y(m.resumeDeferredBootstrap)&&m.resumeDeferredBootstrap()}function Se(){e.name="NG_ENABLE_DEBUG_INFO!"+e.name,e.location.reload()}function xe(e){var t=m.element(e).injector();if(!t)throw v("test","no injector found for element argument to getTestability");return t.get("$$testability")}var De=/[A-Z]/g;function Pe(e,t){return t=t||"_",e.replace(De,(function(e,n){return(n?t:"")+e.toLowerCase()}))}var Me=!1;function Fe(e,t,n){if(!e)throw v("areq","Argument '{0}' is {1}",t||"?",n||"required");return e}function Oe(e,t,n){return n&&G(e)&&(e=e[e.length-1]),Fe(Y(e),t,"not a function, got "+(e&&"object"==typeof e?e.constructor.name||"Object":typeof e)),e}function Re(e,t){if("hasOwnProperty"===e)throw v("badname","hasOwnProperty is not a valid {0} name",t)}function Te(e){for(var t,n=e[0],r=e[e.length-1],i=1;n!==r&&(n=n.nextSibling);i++)(t||e[i]!==n)&&(t||(t=o(h.call(e,0,i))),t.push(n));return t||e}function je(){return Object.create(null)}function He(e){if(null==e)return"";switch(typeof e){case"string":break;case"number":e=""+e;break;default:e=!R(e)||G(e)||K(e)?pe(e):e.toString()}return e}var Ue=3;function Ne(e,t){if(G(e)){t=t||[];for(var n=0,r=e.length;n<r;n++)t[n]=e[n]}else if(H(e))for(var i in t=t||{},e)"$"===i.charAt(0)&&"$"===i.charAt(1)||(t[i]=e[i]);return t||e}function Le(e,t){return"function"==typeof e?e.toString().replace(/ \{[\s\S]*$/,""):T(e)?"undefined":"string"!=typeof e?function(e,t){var n=[];return r(t)&&(e=m.copy(e,null,t)),JSON.stringify(e,(function(e,t){if(H(t=he(e,t))){if(n.indexOf(t)>=0)return"...";n.push(t)}return t}))}(e,t):e}var Ke={full:"1.7.9",major:1,minor:7,dot:9,codeName:"pollution-eradication"};st.expando="ng339";var Ge=st.cache={},$e=1;st._data=function(e){return this.cache[e[this.expando]]||{}};var Ye=/-([a-z])/g,Je=/^-ms-/,Ve={mouseleave:"mouseout",mouseenter:"mouseover"},ze=i("jqLite");function qe(e,t){return t.toUpperCase()}function We(e){return e.replace(Ye,qe)}var Xe=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,Ze=/<|&#?\w+;/,et=/<([\w:-]+)/,tt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,nt={option:[1,'<select multiple="multiple">',"</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function rt(e){return!Ze.test(e)}function it(e){var t=e.nodeType;return 1===t||!t||9===t}function at(e,t){var n,r,i,a,o=t.createDocumentFragment(),s=[];if(rt(e))s.push(t.createTextNode(e));else{for(n=o.appendChild(t.createElement("div")),r=(et.exec(e)||["",""])[1].toLowerCase(),i=nt[r]||nt._default,n.innerHTML=i[1]+e.replace(tt,"<$1></$2>")+i[2],a=i[0];a--;)n=n.lastChild;s=le(s,n.childNodes),(n=o.firstChild).textContent=""}return o.textContent="",o.innerHTML="",w(s,(function(e){o.appendChild(e)})),o}nt.optgroup=nt.option,nt.tbody=nt.tfoot=nt.colgroup=nt.caption=nt.thead,nt.th=nt.td;var ot=e.Node.prototype.contains||function(e){return!!(16&this.compareDocumentPosition(e))};function st(t){if(t instanceof st)return t;var n,r,i,a;if(N(t)&&(t=Z(t),n=!0),!(this instanceof st)){if(n&&"<"!==t.charAt(0))throw ze("nosel","Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element");return new st(t)}n?mt(this,(r=t,i=i||e.document,(a=Xe.exec(r))?[i.createElement(a[1])]:(a=at(r,i))?a.childNodes:[])):Y(t)?Bt(t):mt(this,t)}function ct(e){return e.cloneNode(!0)}function ut(e,t){!t&&it(e)&&o.cleanData([e]),e.querySelectorAll&&o.cleanData(e.querySelectorAll("*"))}function lt(e){var t;for(t in e)return!1;return!0}function At(e){var t=e.ng339,n=t&&Ge[t],r=n&&n.events,i=n&&n.data;i&&!lt(i)||r&&!lt(r)||(delete Ge[t],e.ng339=void 0)}function ft(e,t,n,r){if(j(r))throw ze("offargs","jqLite#off() does not support the `selector` argument");var i=pt(e),a=i&&i.events,o=i&&i.handle;if(o){if(t){var s=function(t){var r=a[t];j(n)&&ie(r||[],n),j(n)&&r&&r.length>0||(e.removeEventListener(t,o),delete a[t])};w(t.split(" "),(function(e){s(e),Ve[e]&&s(Ve[e])}))}else for(t in a)"$destroy"!==t&&e.removeEventListener(t,o),delete a[t];At(e)}}function ht(e,t){var n=e.ng339,r=n&&Ge[n];r&&(t?delete r.data[t]:r.data={},At(e))}function pt(e,t){var n=e.ng339,r=n&&Ge[n];return t&&!r&&(e.ng339=n=++$e,r=Ge[n]={events:{},data:{},handle:void 0}),r}function dt(e,t,n){if(it(e)){var r,i=j(n),a=!i&&t&&!H(t),o=!t,s=pt(e,!a),c=s&&s.data;if(i)c[We(t)]=n;else{if(o)return c;if(a)return c&&c[We(t)];for(r in t)c[We(r)]=t[r]}}}function gt(e,t){return!!e.getAttribute&&(" "+(e.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+t+" ")>-1}function yt(e,t){if(t&&e.setAttribute){var n=(" "+(e.getAttribute("class")||"")+" ").replace(/[\n\t]/g," "),r=n;w(t.split(" "),(function(e){e=Z(e),r=r.replace(" "+e+" "," ")})),r!==n&&e.setAttribute("class",Z(r))}}function vt(e,t){if(t&&e.setAttribute){var n=(" "+(e.getAttribute("class")||"")+" ").replace(/[\n\t]/g," "),r=n;w(t.split(" "),(function(e){e=Z(e),-1===r.indexOf(" "+e+" ")&&(r+=e+" ")})),r!==n&&e.setAttribute("class",Z(r))}}function mt(e,t){if(t)if(t.nodeType)e[e.length++]=t;else{var n=t.length;if("number"==typeof n&&t.window!==t){if(n)for(var r=0;r<n;r++)e[e.length++]=t[r]}else e[e.length++]=t}}function bt(e,t){return It(e,"$"+(t||"ngController")+"Controller")}function It(e,t,n){9===e.nodeType&&(e=e.documentElement);for(var r=G(t)?t:[t];e;){for(var i=0,a=r.length;i<a;i++)if(j(n=o.data(e,r[i])))return n;e=e.parentNode||11===e.nodeType&&e.host}}function wt(e){for(ut(e,!0);e.firstChild;)e.removeChild(e.firstChild)}function Ct(e,t){t||ut(e);var n=e.parentNode;n&&n.removeChild(e)}function Bt(t){function n(){e.document.removeEventListener("DOMContentLoaded",n),e.removeEventListener("load",n),t()}"complete"===e.document.readyState?e.setTimeout(t):(e.document.addEventListener("DOMContentLoaded",n),e.addEventListener("load",n))}var Et=st.prototype={ready:Bt,toString:function(){var e=[];return w(this,(function(t){e.push(""+t)})),"["+e.join(", ")+"]"},eq:function(e){return o(e>=0?this[e]:this[this.length+e])},length:0,push:d,sort:[].sort,splice:[].splice},_t={};w("multiple,selected,checked,disabled,readOnly,required,open".split(","),(function(e){_t[A(e)]=e}));var kt={};w("input,select,option,textarea,button,form,details".split(","),(function(e){kt[e]=!0}));var Qt={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern",ngStep:"step"};function St(e,t){var n=_t[t.toLowerCase()];return n&&kt[ne(e)]&&n}function xt(e,t,n){n.call(e,t)}function Dt(e,t,n){var r=t.relatedTarget;r&&(r===e||ot.call(e,r))||n.call(e,t)}function Pt(){this.$get=function(){return Q(st,{hasClass:function(e,t){return e.attr&&(e=e[0]),gt(e,t)},addClass:function(e,t){return e.attr&&(e=e[0]),vt(e,t)},removeClass:function(e,t){return e.attr&&(e=e[0]),yt(e,t)}})}}function Mt(e,t){var n=e&&e.$$hashKey;if(n)return"function"==typeof n&&(n=e.$$hashKey()),n;var r=typeof e;return n="function"===r||"object"===r&&null!==e?e.$$hashKey=r+":"+(t||E)():r+":"+e}w({data:dt,removeData:ht,hasData:function(e){for(var t in Ge[e.ng339])return!0;return!1},cleanData:function(e){for(var t=0,n=e.length;t<n;t++)ht(e[t]),ft(e[t])}},(function(e,t){st[t]=e})),w({data:dt,inheritedData:It,scope:function(e){return o.data(e,"$scope")||It(e.parentNode||e,["$isolateScope","$scope"])},isolateScope:function(e){return o.data(e,"$isolateScope")||o.data(e,"$isolateScopeNoTemplate")},controller:bt,injector:function(e){return It(e,"$injector")},removeAttr:function(e,t){e.removeAttribute(t)},hasClass:gt,css:function(e,t,n){if(t=function(e){return We(e.replace(Je,"ms-"))}(t),!j(n))return e.style[t];e.style[t]=n},attr:function(e,t,n){var r,i=e.nodeType;if(i!==Ue&&2!==i&&8!==i&&e.getAttribute){var a=A(t),o=_t[a];if(!j(n))return r=e.getAttribute(t),o&&null!==r&&(r=a),null===r?void 0:r;null===n||!1===n&&o?e.removeAttribute(t):e.setAttribute(t,o?a:n)}},prop:function(e,t,n){if(!j(n))return e[t];e[t]=n},text:function(){return e.$dv="",e;function e(e,t){if(T(t)){var n=e.nodeType;return 1===n||n===Ue?e.textContent:""}e.textContent=t}}(),val:function(e,t){if(T(t)){if(e.multiple&&"select"===ne(e)){var n=[];return w(e.options,(function(e){e.selected&&n.push(e.value||e.text)})),n}return e.value}e.value=t},html:function(e,t){if(T(t))return e.innerHTML;ut(e,!0),e.innerHTML=t},empty:wt},(function(e,t){st.prototype[t]=function(t,n){var r,i,a=this.length;if(e!==wt&&T(2===e.length&&e!==gt&&e!==bt?t:n)){if(H(t)){for(r=0;r<a;r++)if(e===dt)e(this[r],t);else for(i in t)e(this[r],i,t[i]);return this}for(var o=e.$dv,s=T(o)?Math.min(a,1):a,c=0;c<s;c++){var u=e(this[c],t,n);o=o?o+u:u}return o}for(r=0;r<a;r++)e(this[r],t,n);return this}})),w({removeData:ht,on:function(e,t,n,r){if(j(r))throw ze("onargs","jqLite#on() does not support the `selector` or `eventData` parameters");if(it(e)){var i=pt(e,!0),a=i.events,o=i.handle;o||(o=i.handle=function(e,t){var n=function(n,r){n.isDefaultPrevented=function(){return n.defaultPrevented};var i=t[r||n.type],a=i?i.length:0;if(a){if(T(n.immediatePropagationStopped)){var o=n.stopImmediatePropagation;n.stopImmediatePropagation=function(){n.immediatePropagationStopped=!0,n.stopPropagation&&n.stopPropagation(),o&&o.call(n)}}n.isImmediatePropagationStopped=function(){return!0===n.immediatePropagationStopped};var s=i.specialHandlerWrapper||xt;a>1&&(i=Ne(i));for(var c=0;c<a;c++)n.isImmediatePropagationStopped()||s(e,n,i[c])}};return n.elem=e,n}(e,a));for(var s=t.indexOf(" ")>=0?t.split(" "):[t],c=s.length,u=function(t,r,i){var s=a[t];s||((s=a[t]=[]).specialHandlerWrapper=r,"$destroy"===t||i||e.addEventListener(t,o)),s.push(n)};c--;)t=s[c],Ve[t]?(u(Ve[t],Dt),u(t,void 0,!0)):u(t)}},off:ft,one:function(e,t,n){(e=o(e)).on(t,(function r(){e.off(t,n),e.off(t,r)})),e.on(t,n)},replaceWith:function(e,t){var n,r=e.parentNode;ut(e),w(new st(t),(function(t){n?r.insertBefore(t,n.nextSibling):r.replaceChild(t,e),n=t}))},children:function(e){var t=[];return w(e.childNodes,(function(e){1===e.nodeType&&t.push(e)})),t},contents:function(e){return e.contentDocument||e.childNodes||[]},append:function(e,t){var n=e.nodeType;if(1===n||11===n)for(var r=0,i=(t=new st(t)).length;r<i;r++){var a=t[r];e.appendChild(a)}},prepend:function(e,t){if(1===e.nodeType){var n=e.firstChild;w(new st(t),(function(t){e.insertBefore(t,n)}))}},wrap:function(e,t){var n,r,i;n=e,r=o(t).eq(0).clone()[0],(i=n.parentNode)&&i.replaceChild(r,n),r.appendChild(n)},remove:Ct,detach:function(e){Ct(e,!0)},after:function(e,t){var n=e,r=e.parentNode;if(r)for(var i=0,a=(t=new st(t)).length;i<a;i++){var o=t[i];r.insertBefore(o,n.nextSibling),n=o}},addClass:vt,removeClass:yt,toggleClass:function(e,t,n){t&&w(t.split(" "),(function(t){var r=n;T(r)&&(r=!gt(e,t)),(r?vt:yt)(e,t)}))},parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},next:function(e){return e.nextElementSibling},find:function(e,t){return e.getElementsByTagName?e.getElementsByTagName(t):[]},clone:ct,triggerHandler:function(e,t,n){var r,i,a,o=t.type||t,s=pt(e),c=s&&s.events,u=c&&c[o];u&&(r={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return!0===this.defaultPrevented},stopImmediatePropagation:function(){this.immediatePropagationStopped=!0},isImmediatePropagationStopped:function(){return!0===this.immediatePropagationStopped},stopPropagation:M,type:o,target:e},t.type&&(r=Q(r,t)),i=Ne(u),a=n?[r].concat(n):[r],w(i,(function(t){r.isImmediatePropagationStopped()||t.apply(e,a)})))}},(function(e,t){st.prototype[t]=function(t,n,r){for(var i,a=0,s=this.length;a<s;a++)T(i)?j(i=e(this[a],t,n,r))&&(i=o(i)):mt(i,e(this[a],t,n,r));return j(i)?i:this}})),st.prototype.bind=st.prototype.on,st.prototype.unbind=st.prototype.off;var Ft=Object.create(null);function Ot(){this._keys=[],this._values=[],this._lastKey=NaN,this._lastIndex=-1}Ot.prototype={_idx:function(e){return e!==this._lastKey&&(this._lastKey=e,this._lastIndex=this._keys.indexOf(e)),this._lastIndex},_transformKey:function(e){return D(e)?Ft:e},get:function(e){e=this._transformKey(e);var t=this._idx(e);if(-1!==t)return this._values[t]},has:function(e){return e=this._transformKey(e),-1!==this._idx(e)},set:function(e,t){e=this._transformKey(e);var n=this._idx(e);-1===n&&(n=this._lastIndex=this._keys.length),this._keys[n]=e,this._values[n]=t},delete:function(e){e=this._transformKey(e);var t=this._idx(e);return-1!==t&&(this._keys.splice(t,1),this._values.splice(t,1),this._lastKey=NaN,this._lastIndex=-1,!0)}};var Rt=Ot,Tt=[function(){this.$get=[function(){return Rt}]}],jt=/^([^(]+?)=>/,Ht=/^[^(]*\(\s*([^)]*)\)/m,Ut=/,/,Nt=/^\s*(_?)(\S+?)\1\s*$/,Lt=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,Kt=i("$injector");function Gt(e){return Function.prototype.toString.call(e)}function $t(e){var t=Gt(e).replace(Lt,"");return t.match(jt)||t.match(Ht)}function Yt(e,t){t=!0===t;var n={},r=[],i=new Rt,o={$provide:{provider:h(p),factory:h(g),service:h((function(e,t){return g(e,["$injector",function(e){return e.instantiate(t)}])})),value:h((function(e,t){return g(e,O(t),!1)})),constant:h((function(e,t){Re(e,"constant"),o[e]=t,u[e]=t})),decorator:function(e,t){var n=s.get(e+"Provider"),r=n.$get;n.$get=function(){var e=A.invoke(r,n);return A.invoke(t,null,{$delegate:e})}}}},s=o.$injector=v(o,(function(e,t){throw m.isString(t)&&r.push(t),Kt("unpr","Unknown provider: {0}",r.join(" <- "))})),u={},l=v(u,(function(e,t){var n=s.get(e+"Provider",t);return A.invoke(n.$get,n,void 0,e)})),A=l;o.$injectorProvider={$get:O(l)},A.modules=s.modules=je();var f=y(e);return(A=l.get("$injector")).strictDi=t,w(f,(function(e){e&&A.invoke(e)})),A.loadNewModules=function(e){w(y(e),(function(e){e&&A.invoke(e)}))},A;function h(e){return function(t,n){if(!H(t))return e(t,n);w(t,B(e))}}function p(e,t){if(Re(e,"service"),(Y(t)||G(t))&&(t=s.instantiate(t)),!t.$get)throw Kt("pget","Provider '{0}' must define $get factory method.",e);return o[e+"Provider"]=t}function d(e,t){return function(){var n=A.invoke(t,this);if(T(n))throw Kt("undef","Provider '{0}' must return a value from $get factory method.",e);return n}}function g(e,t,n){return p(e,{$get:!1!==n?d(e,t):t})}function y(e){Fe(T(e)||G(e),"modulesToLoad","not an array");var t,n=[];return w(e,(function(e){if(!i.get(e)){i.set(e,!0);try{N(e)?(t=c(e),A.modules[e]=t,n=n.concat(y(t.requires)).concat(t._runBlocks),r(t._invokeQueue),r(t._configBlocks)):Y(e)||G(e)?n.push(s.invoke(e)):Oe(e,"module")}catch(t){throw G(e)&&(e=e[e.length-1]),t.message&&t.stack&&-1===t.stack.indexOf(t.message)&&(t=t.message+"\n"+t.stack),Kt("modulerr","Failed to instantiate module {0} due to:\n{1}",e,t.stack||t.message||t)}}function r(e){var t,n;for(t=0,n=e.length;t<n;t++){var r=e[t],i=s.get(r[0]);i[r[1]].apply(i,r[2])}}})),n}function v(e,i){function s(t,a){if(e.hasOwnProperty(t)){if(e[t]===n)throw Kt("cdep","Circular dependency found: {0}",t+" <- "+r.join(" <- "));return e[t]}try{return r.unshift(t),e[t]=n,e[t]=i(t,a),e[t]}catch(r){throw e[t]===n&&delete e[t],r}finally{r.shift()}}function c(e,n,r){for(var i=[],a=Yt.$$annotate(e,t,r),o=0,c=a.length;o<c;o++){var u=a[o];if("string"!=typeof u)throw Kt("itkn","Incorrect injection token! Expected service name as string, got {0}",u);i.push(n&&n.hasOwnProperty(u)?n[u]:s(u,r))}return i}return{invoke:function(e,t,n,r){"string"==typeof n&&(r=n,n=null);var i=c(e,n,r);return G(e)&&(e=e[e.length-1]),function(e){if(a||"function"!=typeof e)return!1;var t=e.$$ngIsClass;return q(t)||(t=e.$$ngIsClass=/^class\b/.test(Gt(e))),t}(e)?(i.unshift(null),new(Function.prototype.bind.apply(e,i))):e.apply(t,i)},instantiate:function(e,t,n){var r=G(e)?e[e.length-1]:e,i=c(e,t,n);return i.unshift(null),new(Function.prototype.bind.apply(r,i))},get:s,annotate:Yt.$$annotate,has:function(t){return o.hasOwnProperty(t+"Provider")||e.hasOwnProperty(t)}}}}function Jt(){var t=!0;this.disableAutoScrolling=function(){t=!1},this.$get=["$window","$location","$rootScope",function(n,r,i){var a=n.document;function s(e){if(e){e.scrollIntoView();var t=function(){var e=c.yOffset;if(Y(e))e=e();else if(te(e)){var t=e[0];e="fixed"!==n.getComputedStyle(t).position?0:t.getBoundingClientRect().bottom}else L(e)||(e=0);return e}();if(t){var r=e.getBoundingClientRect().top;n.scrollBy(0,r-t)}}else n.scrollTo(0,0)}function c(e){var t,n,i;(e=N(e)?e:L(e)?e.toString():r.hash())?(t=a.getElementById(e))?s(t):(n=a.getElementsByName(e),i=null,Array.prototype.some.call(n,(function(e){if("a"===ne(e))return i=e,!0})),(t=i)?s(t):"top"===e&&s(null)):s(null)}return t&&i.$watch((function(){return r.hash()}),(function(t,n){var r,a;t===n&&""===t||(r=function(){i.$evalAsync(c)},"complete"===(a=a||e).document.readyState?a.setTimeout(r):o(a).on("load",r))})),c}]}Yt.$$annotate=function(e,t,n){var r,i;if("function"==typeof e){if(!(r=e.$inject)){if(r=[],e.length){if(t)throw N(n)&&n||(n=e.name||function(e){var t=$t(e);return t?"function("+(t[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}(e)),Kt("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",n);w($t(e)[1].split(Ut),(function(e){e.replace(Nt,(function(e,t,n){r.push(n)}))}))}e.$inject=r}}else G(e)?(Oe(e[i=e.length-1],"fn"),r=e.slice(0,i)):Oe(e,"fn",!0);return r};var Vt=i("$animate");function zt(e,t){return e||t?e?t?(G(e)&&(e=e.join(" ")),G(t)&&(t=t.join(" ")),e+" "+t):e:t:""}function qt(e){return H(e)?e:{}}var Wt=function(){this.$get=M},Xt=function(){var e=new Rt,t=[];this.$get=["$$AnimateRunner","$rootScope",function(n,r){return{enabled:M,on:M,off:M,pin:M,push:function(o,s,c,u){u&&u(),(c=c||{}).from&&o.css(c.from),c.to&&o.css(c.to),(c.addClass||c.removeClass)&&function(n,o,s){var c=e.get(n)||{},u=i(c,o,!0),l=i(c,s,!1);(u||l)&&(e.set(n,c),t.push(n),1===t.length&&r.$$postDigest(a))}(o,c.addClass,c.removeClass);var l=new n;return l.complete(),l}};function i(e,t,n){var r=!1;return t&&w(t=N(t)?t.split(" "):G(t)?t:[],(function(t){t&&(r=!0,e[t]=n)})),r}function a(){w(t,(function(t){var n=e.get(t);if(n){var r=function(e){N(e)&&(e=e.split(" "));var t=je();return w(e,(function(e){e.length&&(t[e]=!0)})),t}(t.attr("class")),i="",a="";w(n,(function(e,t){e!==!!r[t]&&(e?i+=(i.length?" ":"")+t:a+=(a.length?" ":"")+t)})),w(t,(function(e){i&&vt(e,i),a&&yt(e,a)})),e.delete(t)}})),t.length=0}}]},Zt=["$provide",function(e){var t=this,n=null,r=null;this.$$registeredAnimations=Object.create(null),this.register=function(n,r){if(n&&"."!==n.charAt(0))throw Vt("notcsel","Expecting class selector starting with '.' got '{0}'.",n);var i=n+"-animation";t.$$registeredAnimations[n.substr(1)]=i,e.factory(i,r)},this.customFilter=function(e){return 1===arguments.length&&(r=Y(e)?e:null),r},this.classNameFilter=function(e){if(1===arguments.length&&(n=e instanceof RegExp?e:null)){var t=new RegExp("[(\\s|\\/)]ng-animate[(\\s|\\/)]");if(t.test(n.toString()))throw n=null,Vt("nongcls",'$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the "{0}" CSS class.',"ng-animate")}return n},this.$get=["$$animateQueue",function(e){function t(e,t,n){if(n){var r=function(e){for(var t=0;t<e.length;t++){var n=e[t];if(1===n.nodeType)return n}}(n);!r||r.parentNode||r.previousElementSibling||(n=null)}n?n.after(e):t.prepend(e)}return{on:e.on,off:e.off,pin:e.pin,enabled:e.enabled,cancel:function(e){e.cancel&&e.cancel()},enter:function(n,r,i,a){return r=r&&o(r),i=i&&o(i),t(n,r=r||i.parent(),i),e.push(n,"enter",qt(a))},move:function(n,r,i,a){return r=r&&o(r),i=i&&o(i),t(n,r=r||i.parent(),i),e.push(n,"move",qt(a))},leave:function(t,n){return e.push(t,"leave",qt(n),(function(){t.remove()}))},addClass:function(t,n,r){return(r=qt(r)).addClass=zt(r.addclass,n),e.push(t,"addClass",r)},removeClass:function(t,n,r){return(r=qt(r)).removeClass=zt(r.removeClass,n),e.push(t,"removeClass",r)},setClass:function(t,n,r,i){return(i=qt(i)).addClass=zt(i.addClass,n),i.removeClass=zt(i.removeClass,r),e.push(t,"setClass",i)},animate:function(t,n,r,i,a){return(a=qt(a)).from=a.from?Q(a.from,n):n,a.to=a.to?Q(a.to,r):r,i=i||"ng-inline-animate",a.tempClasses=zt(a.tempClasses,i),e.push(t,"animate",a)}}}]}],en=function(){this.$get=["$$rAF",function(e){var t=[];function n(n){t.push(n),t.length>1||e((function(){for(var e=0;e<t.length;e++)t[e]();t=[]}))}return function(){var e=!1;return n((function(){e=!0})),function(t){e?t():n(t)}}}]},tn=function(){this.$get=["$q","$sniffer","$$animateAsyncRun","$$isDocumentHidden","$timeout",function(e,t,n,r,i){function a(e){this.setHost(e);var t=n();this._doneCallbacks=[],this._tick=function(e){r()?function(e){i(e,0,!1)}(e):t(e)},this._state=0}return a.chain=function(e,t){var n=0;!function r(){if(n===e.length)return void t(!0);e[n]((function(e){!1!==e?(n++,r()):t(!1)}))}()},a.all=function(e,t){var n=0,r=!0;function i(i){r=r&&i,++n===e.length&&t(r)}w(e,(function(e){e.done(i)}))},a.prototype={setHost:function(e){this.host=e||{}},done:function(e){2===this._state?e():this._doneCallbacks.push(e)},progress:M,getPromise:function(){if(!this.promise){var t=this;this.promise=e((function(e,n){t.done((function(t){!1===t?n():e()}))}))}return this.promise},then:function(e,t){return this.getPromise().then(e,t)},catch:function(e){return this.getPromise().catch(e)},finally:function(e){return this.getPromise().finally(e)},pause:function(){this.host.pause&&this.host.pause()},resume:function(){this.host.resume&&this.host.resume()},end:function(){this.host.end&&this.host.end(),this._resolve(!0)},cancel:function(){this.host.cancel&&this.host.cancel(),this._resolve(!1)},complete:function(e){var t=this;0===t._state&&(t._state=1,t._tick((function(){t._resolve(e)})))},_resolve:function(e){2!==this._state&&(w(this._doneCallbacks,(function(t){t(e)})),this._doneCallbacks.length=0,this._state=2)}},a}]},nn=function(){this.$get=["$$rAF","$q","$$AnimateRunner",function(e,t,n){return function(t,r){var i=r||{};i.$$prepared||(i=ae(i)),i.cleanupStyles&&(i.from=i.to=null),i.from&&(t.css(i.from),i.from=null);var a,o=new n;return{start:s,end:s};function s(){return e((function(){!function(){i.addClass&&(t.addClass(i.addClass),i.addClass=null);i.removeClass&&(t.removeClass(i.removeClass),i.removeClass=null);i.to&&(t.css(i.to),i.to=null)}(),a||o.complete(),a=!0})),o}}}]};function rn(e,t,n,r,i){var a=this,s=e.location,c=e.history,u=e.setTimeout,l=e.clearTimeout,A={},f=i(n);a.isMock=!1,a.$$completeOutstandingRequest=f.completeTask,a.$$incOutstandingRequestCount=f.incTaskCount,a.notifyWhenNoOutstandingRequests=f.notifyWhenNoPendingTasks;var h,p,d=s.href,g=t.find("base"),y=null,v=r.history?function(){try{return c.state}catch(e){}}:M;B(),a.url=function(t,n,i){if(T(i)&&(i=null),s!==e.location&&(s=e.location),c!==e.history&&(c=e.history),t){var o=p===i;if(t=ri(t).href,d===t&&(!r.history||o))return a;var u=d&&nr(d)===nr(t);return d=t,p=i,!r.history||u&&o?(u||(y=t),n?s.replace(t):u?s.hash=function(e){var t=e.indexOf("#");return-1===t?"":e.substr(t)}(t):s.href=t,s.href!==t&&(y=t)):(c[n?"replaceState":"pushState"](i,"",t),B()),y&&(y=t),a}return function(e){return e.replace(/#$/,"")}(y||s.href)},a.state=function(){return h};var m=[],b=!1;function I(){y=null,E()}var C=null;function B(){se(h=T(h=v())?null:h,C)&&(h=C),C=h,p=h}function E(){var e=p;B(),d===a.url()&&e===h||(d=a.url(),p=h,w(m,(function(e){e(a.url(),h)})))}a.onUrlChange=function(t){return b||(r.history&&o(e).on("popstate",I),o(e).on("hashchange",I),b=!0),m.push(t),t},a.$$applicationDestroyed=function(){o(e).off("hashchange popstate",I)},a.$$checkUrlChange=E,a.baseHref=function(){var e=g.attr("href");return e?e.replace(/^(https?:)?\/\/[^/]*/,""):""},a.defer=function(e,t,n){var r;return t=t||0,n=n||f.DEFAULT_TASK_TYPE,f.incTaskCount(n),r=u((function(){delete A[r],f.completeTask(e,n)}),t),A[r]=n,r},a.defer.cancel=function(e){if(A.hasOwnProperty(e)){var t=A[e];return delete A[e],l(e),f.completeTask(M,t),!0}return!1}}function an(){this.$get=["$window","$log","$sniffer","$document","$$taskTrackerFactory",function(e,t,n,r,i){return new rn(e,r,t,n,i)}]}function on(){this.$get=function(){var e={};function t(t,n){if(t in e)throw i("$cacheFactory")("iid","CacheId '{0}' is already taken!",t);var r=0,a=Q({},n,{id:t}),o=je(),s=n&&n.capacity||Number.MAX_VALUE,c=je(),u=null,l=null;return e[t]={put:function(e,t){if(!T(t)){if(s<Number.MAX_VALUE)A(c[e]||(c[e]={key:e}));return e in o||r++,o[e]=t,r>s&&this.remove(l.key),t}},get:function(e){if(s<Number.MAX_VALUE){var t=c[e];if(!t)return;A(t)}return o[e]},remove:function(e){if(s<Number.MAX_VALUE){var t=c[e];if(!t)return;t===u&&(u=t.p),t===l&&(l=t.n),f(t.n,t.p),delete c[e]}e in o&&(delete o[e],r--)},removeAll:function(){o=je(),r=0,c=je(),u=l=null},destroy:function(){o=null,a=null,c=null,delete e[t]},info:function(){return Q({},a,{size:r})}};function A(e){e!==u&&(l?l===e&&(l=e.n):l=e,f(e.n,e.p),f(e,u),(u=e).n=null)}function f(e,t){e!==t&&(e&&(e.p=t),t&&(t.n=e))}}return t.info=function(){var t={};return w(e,(function(e,n){t[n]=e.info()})),t},t.get=function(t){return e[t]},t}}function sn(){this.$get=["$cacheFactory",function(e){return e("templates")}]}var cn=i("$compile");var un=new function(){};function ln(t,n){var r={},i=/^\s*directive:\s*([\w-]+)\s+(.*)$/,s=/(([\w-]+)(?::([^;]+))?;?)/,c=function(e){var t,n={},r=e.split(",");for(t=0;t<r.length;t++)n[r[t]]=!0;return n}("ngSrc,ngSrcset,src,srcset"),u=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,f=/^(on[a-z]+|formaction)$/,h=je();function p(e,t,n){var r=/^([@&]|[=<](\*?))(\??)\s*([\w$]*)$/,i=je();return w(e,(function(e,a){if((e=e.trim())in h)i[a]=h[e];else{var o=e.match(r);if(!o)throw cn("iscp","Invalid {3} for directive '{0}'. Definition: {... {1}: '{2}' ...}",t,a,e,n?"controller bindings definition":"isolate scope definition");i[a]={mode:o[1][0],collection:"*"===o[2],optional:"?"===o[3],attrName:o[4]||a},o[4]&&(h[e]=i[a])}})),i}function d(e,t){var n={isolateScope:null,bindToController:null};if(H(e.scope)&&(!0===e.bindToController?(n.bindToController=p(e.scope,t,!0),n.isolateScope={}):n.isolateScope=p(e.scope,t,!1)),H(e.bindToController)&&(n.bindToController=p(e.bindToController,t,!0)),n.bindToController&&!e.controller)throw cn("noctrl","Cannot bind to controller without directive '{0}'s controller.",t);return n}this.directive=function e(n,i){return Fe(n,"name"),Re(n,"directive"),N(n)?(!function(e){var t=e.charAt(0);if(!t||t!==A(t))throw cn("baddir","Directive/Component name '{0}' is invalid. The first character must be a lowercase letter",e);if(e!==e.trim())throw cn("baddir","Directive/Component name '{0}' is invalid. The name should not contain leading or trailing whitespaces",e)}(n),Fe(i,"directiveFactory"),r.hasOwnProperty(n)||(r[n]=[],t.factory(n+"Directive",["$injector","$exceptionHandler",function(e,t){var i=[];return w(r[n],(function(r,a){try{var o=e.invoke(r);Y(o)?o={compile:O(o)}:!o.compile&&o.link&&(o.compile=O(o.link)),o.priority=o.priority||0,o.index=a,o.name=o.name||n,o.require=function(e){var t=e.require||e.controller&&e.name;return!G(t)&&H(t)&&w(t,(function(e,n){var r=e.match(u);e.substring(r[0].length)||(t[n]=r[0]+n)})),t}(o),o.restrict=function(e,t){if(e&&(!N(e)||!/[EACM]/.test(e)))throw cn("badrestrict","Restrict property '{0}' of directive '{1}' is invalid",e,t);return e||"EA"}(o.restrict,n),o.$$moduleName=r.$$moduleName,i.push(o)}catch(e){t(e)}})),i}])),r[n].push(i)):w(n,B(e)),this},this.component=function e(t,n){if(!N(t))return w(t,B(fe(this,e))),this;var r=n.controller||function(){};function i(e){function t(t){return Y(t)||G(t)?function(n,r){return e.invoke(t,this,{$element:n,$attrs:r})}:t}var i=n.template||n.templateUrl?n.template:"",a={controller:r,controllerAs:mn(n.controller)||n.controllerAs||"$ctrl",template:t(i),templateUrl:t(n.templateUrl),transclude:n.transclude,scope:{},bindToController:n.bindings||{},restrict:"E",require:n.require};return w(n,(function(e,t){"$"===t.charAt(0)&&(a[t]=e)})),a}return w(n,(function(e,t){"$"===t.charAt(0)&&(i[t]=e,Y(r)&&(r[t]=e))})),i.$inject=["$injector"],this.directive(t,i)},this.aHrefSanitizationWhitelist=function(e){return j(e)?(n.aHrefSanitizationWhitelist(e),this):n.aHrefSanitizationWhitelist()},this.imgSrcSanitizationWhitelist=function(e){return j(e)?(n.imgSrcSanitizationWhitelist(e),this):n.imgSrcSanitizationWhitelist()};var y=!0;this.debugInfoEnabled=function(e){return j(e)?(y=e,this):y};var v=!1;this.strictComponentBindingsEnabled=function(e){return j(e)?(v=e,this):v};var m=10;this.onChangesTtl=function(e){return arguments.length?(m=e,this):m};var b=!0;this.commentDirectivesEnabled=function(e){return arguments.length?(b=e,this):b};var I=!0;this.cssClassDirectivesEnabled=function(e){return arguments.length?(I=e,this):I};var C=je();this.addPropertySecurityContext=function(e,t,n){var r=e.toLowerCase()+"|"+t.toLowerCase();if(r in C&&C[r]!==n)throw cn("ctxoverride","Property context '{0}.{1}' already set to '{2}', cannot override to '{3}'.",e,t,C[r],n);return C[r]=n,this},function(){function e(e,t){w(t,(function(t){C[t.toLowerCase()]=e}))}e(Hr.HTML,["iframe|srcdoc","*|innerHTML","*|outerHTML"]),e(Hr.CSS,["*|style"]),e(Hr.URL,["area|href","area|ping","a|href","a|ping","blockquote|cite","body|background","del|cite","input|src","ins|cite","q|cite"]),e(Hr.MEDIA_URL,["audio|src","img|src","img|srcset","source|src","source|srcset","track|src","video|src","video|poster"]),e(Hr.RESOURCE_URL,["*|formAction","applet|code","applet|codebase","base|href","embed|src","frame|src","form|action","head|profile","html|manifest","iframe|src","link|href","media|src","object|codebase","object|data","script|src"])}(),this.$get=["$injector","$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$sce","$animate",function(t,n,h,p,B,E,_,k,S){var x,D=/^\w/,O=e.document.createElement("div"),R=b,j=I,U=m;function L(){try{if(!--U)throw x=void 0,cn("infchng","{0} $onChanges() iterations reached. Aborting!\n",m);_.$apply((function(){for(var e=0,t=x.length;e<t;++e)try{x[e]()}catch(e){h(e)}x=void 0}))}finally{U++}}function K(e,t){if(!e)return e;if(!N(e))throw cn("srcset",'Can\'t pass trusted values to `{0}`: "{1}"',t,e.toString());for(var n="",r=Z(e),i=/\s/.test(r)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,a=r.split(i),o=Math.floor(a.length/2),s=0;s<o;s++){var c=2*s;n+=k.getTrustedMediaUrl(Z(a[c])),n+=" "+Z(a[c+1])}var u=Z(a[2*s]).split(/\s/);return n+=k.getTrustedMediaUrl(Z(u[0])),2===u.length&&(n+=" "+Z(u[1])),n}function J(e,t){if(t){var n,r,i,a=Object.keys(t);for(n=0,r=a.length;n<r;n++)this[i=a[n]]=t[i]}else this.$attr={};this.$$element=e}function V(e,t){try{e.addClass(t)}catch(e){}}J.prototype={$normalize:pn,$addClass:function(e){e&&e.length>0&&S.addClass(this.$$element,e)},$removeClass:function(e){e&&e.length>0&&S.removeClass(this.$$element,e)},$updateClass:function(e,t){var n=dn(e,t);n&&n.length&&S.addClass(this.$$element,n);var r=dn(t,e);r&&r.length&&S.removeClass(this.$$element,r)},$set:function(e,t,n,r){var i=St(this.$$element[0],e),a=Qt[e],o=e;i?(this.$$element.prop(e,t),r=i):a&&(this[a]=t,o=a),this[e]=t,r?this.$attr[e]=r:(r=this.$attr[e])||(this.$attr[e]=r=Pe(e,"-")),"img"===ne(this.$$element)&&"srcset"===e&&(this[e]=t=K(t,"$set('srcset', value)")),!1!==n&&(null===t||T(t)?this.$$element.removeAttr(r):D.test(r)?i&&!1===t?this.$$element.removeAttr(r):this.$$element.attr(r,t):function(e,t,n){O.innerHTML="<span "+t+">";var r=O.firstChild.attributes,i=r[0];r.removeNamedItem(i.name),i.value=n,e.attributes.setNamedItem(i)}(this.$$element[0],r,t));var s=this.$$observers;s&&w(s[o],(function(e){try{e(t)}catch(e){h(e)}}))},$observe:function(e,t){var n=this,r=n.$$observers||(n.$$observers=je()),i=r[e]||(r[e]=[]);return i.push(t),_.$evalAsync((function(){i.$$inter||!n.hasOwnProperty(e)||T(n[e])||t(n[e])})),function(){ie(i,t)}}};var W=n.startSymbol(),X=n.endSymbol(),ee="{{"===W&&"}}"===X?F:function(e){return e.replace(/\{\{/g,W).replace(/}}/g,X)},te=/^ng(Attr|Prop|On)([A-Z].*)$/,re=/^(.+)Start$/;return ae.$$addBindingInfo=y?function(e,t){var n=e.data("$binding")||[];G(t)?n=n.concat(t):n.push(t),e.data("$binding",n)}:M,ae.$$addBindingClass=y?function(e){V(e,"ng-binding")}:M,ae.$$addScopeInfo=y?function(e,t,n,r){var i=n?r?"$isolateScopeNoTemplate":"$isolateScope":"$scope";e.data(i,t)}:M,ae.$$addScopeClass=y?function(e,t){V(e,t?"ng-isolate-scope":"ng-scope")}:M,ae.$$createComment=function(t,n){var r="";return y&&(r=" "+(t||"")+": ",n&&(r+=n+" ")),e.document.createComment(r)},ae;function ae(e,t,n,r,i){e instanceof o||(e=o(e));var a=ce(e,t,e,n,r,i);ae.$$addScopeClass(e);var s=null;return function(t,n,r){if(!e)throw cn("multilink","This element has already been linked.");Fe(t,"scope"),i&&i.needsNewScope&&(t=t.$parent.$new());var c,u,l,A=(r=r||{}).parentBoundTranscludeFn,f=r.transcludeControllers,h=r.futureParentElement;if(A&&A.$$boundTransclude&&(A=A.$$boundTransclude),s||(u=(c=h)&&c[0],s=u&&"foreignobject"!==ne(u)&&g.call(u).match(/SVG/)?"svg":"html"),l="html"!==s?o(ke(s,o("<div></div>").append(e).html())):n?Et.clone.call(e):e,f)for(var p in f)l.data("$"+p+"Controller",f[p].instance);return ae.$$addScopeInfo(l,t),n&&n(l,t),a&&a(t,l,l,A),n||(e=a=null),l}}function ce(e,t,n,r,i,s){for(var c,u,l,A,f,h,p,d=[],g=G(e)||e instanceof o,y=0;y<e.length;y++)c=new J,11===a&&ue(e,y,g),(l=(u=he(e[y],[],c,0===y?r:void 0,i)).length?ye(u,e[y],c,t,n,null,[],[],s):null)&&l.scope&&ae.$$addScopeClass(c.$$element),f=l&&l.terminal||!(A=e[y].childNodes)||!A.length?null:ce(A,l?(l.transcludeOnThisElement||!l.templateOnThisElement)&&l.transclude:t),(l||f)&&(d.push(y,l,f),h=!0,p=p||l),s=null;return h?function(e,n,r,i){var a,s,c,u,l,A,f,h,g;if(p){var y=n.length;for(g=new Array(y),l=0;l<d.length;l+=3)f=d[l],g[f]=n[f]}else g=n;for(l=0,A=d.length;l<A;)c=g[d[l++]],a=d[l++],s=d[l++],a?(a.scope?(u=e.$new(),ae.$$addScopeInfo(o(c),u)):u=e,h=a.transcludeOnThisElement?le(e,a.transclude,i):!a.templateOnThisElement&&i?i:!i&&t?le(e,t):null,a(s,u,c,r,h)):s&&s(e,c.childNodes,void 0,i)}:null}function ue(e,t,n){var r,i=e[t],a=i.parentNode;if(i.nodeType===Ue)for(;(r=a?i.nextSibling:e[t+1])&&r.nodeType===Ue;)i.nodeValue=i.nodeValue+r.nodeValue,r.parentNode&&r.parentNode.removeChild(r),n&&r===e[t+1]&&e.splice(t+1,1)}function le(e,t,n){function r(r,i,a,o,s){return r||((r=e.$new(!1,s)).$$transcluded=!0),t(r,i,{parentBoundTranscludeFn:n,transcludeControllers:a,futureParentElement:o})}var i=r.$$slots=je();for(var a in t.$$slots)t.$$slots[a]?i[a]=le(e,t.$$slots[a],n):i[a]=null;return r}function he(e,t,r,a,o){var c,u,l,A=e.nodeType,f=r.$attr;switch(A){case 1:Ie(t,pn(u=ne(e)),"E",a,o);for(var h,p,d,g,y,v=e.attributes,m=0,b=v&&v.length;m<b;m++){var I,w=!1,C=!1,B=!1,E=!1,_=!1;p=(h=v[m]).name,g=h.value,(y=(d=pn(p.toLowerCase())).match(te))?(B="Attr"===y[1],E="Prop"===y[1],_="On"===y[1],p=p.replace(fn,"").toLowerCase().substr(4+y[1].length).replace(/_(.)/g,(function(e,t){return t.toUpperCase()}))):(I=d.match(re))&&we(I[1])&&(w=p,C=p.substr(0,p.length-5)+"end",p=p.substr(0,p.length-6)),E||_?(r[d]=g,f[d]=h.name,E?Se(e,t,d,p):xe(t,d,p)):(f[d=pn(p.toLowerCase())]=p,!B&&r.hasOwnProperty(d)||(r[d]=g,St(e,d)&&(r[d]=!0)),De(e,t,g,d,B),Ie(t,d,"A",a,o,w,C))}if("input"===u&&"hidden"===e.getAttribute("type")&&e.setAttribute("autocomplete","off"),!j)break;if(H(l=e.className)&&(l=l.animVal),N(l)&&""!==l)for(;c=s.exec(l);)Ie(t,d=pn(c[2]),"C",a,o)&&(r[d]=Z(c[3])),l=l.substr(c.index+c[0].length);break;case Ue:!function(e,t){var r=n(t,!0);r&&e.push({priority:0,compile:function(e){var t=e.parent(),n=!!t.length;return n&&ae.$$addBindingClass(t),function(e,t){var i=t.parent();n||ae.$$addBindingClass(i),ae.$$addBindingInfo(i,r.expressions),e.$watch(r,(function(e){t[0].nodeValue=e}))}}})}(t,e.nodeValue);break;case 8:if(!R)break;!function(e,t,n,r,a){try{var o=i.exec(e.nodeValue);if(o){var s=pn(o[1]);Ie(t,s,"M",r,a)&&(n[s]=Z(o[2]))}}catch(e){}}(e,t,r,a,o)}return t.sort(Ee),t}function pe(e,t,n){var r=[],i=0;if(t&&e.hasAttribute&&e.hasAttribute(t))do{if(!e)throw cn("uterdir","Unterminated attribute, found '{0}' but no matching '{1}' found.",t,n);1===e.nodeType&&(e.hasAttribute(t)&&i++,e.hasAttribute(n)&&i--),r.push(e),e=e.nextSibling}while(i>0);else r.push(e);return o(r)}function de(e,t,n){return function(r,i,a,o,s){return i=pe(i[0],t,n),e(r,i,a,o,s)}}function ge(e,t,n,r,i,a){var o;return e?ae(t,n,r,i,a):function(){return o||(o=ae(t,n,r,i,a),t=n=a=null),o.apply(this,arguments)}}function ye(t,n,r,i,a,s,c,u,l){l=l||{};for(var A,f,p,d,g,y=-Number.MAX_VALUE,v=l.newScopeDirective,m=l.controllerDirectives,b=l.newIsolateScopeDirective,I=l.templateDirective,C=l.nonTlbTranscludeDirective,B=!1,_=!1,k=l.hasElementTranscludeDirective,S=r.$$element=o(n),x=s,D=i,P=!1,M=!1,F=0,O=t.length;F<O;F++){var R=(A=t[F]).$$start,j=A.$$end;if(R&&(S=pe(n,R,j)),p=void 0,y>A.priority)break;if((g=A.scope)&&(A.templateUrl||(H(g)?(_e("new/isolated scope",b||v,A,S),b=A):_e("new/isolated scope",b,A,S)),v=v||A),f=A.name,!P&&(A.replace&&(A.templateUrl||A.template)||A.transclude&&!A.$$tlb)){for(var U,N=F+1;U=t[N++];)if(U.transclude&&!U.$$tlb||U.replace&&(U.templateUrl||U.template)){M=!0;break}P=!0}if(!A.templateUrl&&A.controller&&(m=m||je(),_e("'"+f+"' controller",m[f],A,S),m[f]=A),g=A.transclude)if(B=!0,A.$$tlb||(_e("transclusion",C,A,S),C=A),"element"===g)k=!0,y=A.priority,p=S,S=r.$$element=o(ae.$$createComment(f,r[f])),n=S[0],Me(a,Ae(p),n),D=ge(M,p,i,y,x&&x.name,{nonTlbTranscludeDirective:C});else{var L=je();if(H(g)){p=e.document.createDocumentFragment();var K=je(),$=je();for(var V in w(g,(function(e,t){var n="?"===e.charAt(0);e=n?e.substring(1):e,K[e]=t,L[t]=null,$[t]=n})),w(S.contents(),(function(t){var n=K[pn(ne(t))];n?($[n]=!0,L[n]=L[n]||e.document.createDocumentFragment(),L[n].appendChild(t)):p.appendChild(t)})),w($,(function(e,t){if(!e)throw cn("reqslot","Required transclusion slot `{0}` was not filled.",t)})),L)if(L[V]){var q=o(L[V].childNodes);L[V]=ge(M,q,i)}p=o(p.childNodes)}else p=o(ct(n)).contents();S.empty(),(D=ge(M,p,i,void 0,void 0,{needsNewScope:A.$$isolateScope||A.$$newScope})).$$slots=L}if(A.template)if(_=!0,_e("template",I,A,S),I=A,g=Y(A.template)?A.template(S,r):A.template,g=ee(g),A.replace){if(x=A,p=rt(g)?[]:gn(ke(A.templateNamespace,Z(g))),n=p[0],1!==p.length||1!==n.nodeType)throw cn("tplrt","Template for directive '{0}' must have exactly one root element. {1}",f,"");Me(a,S,n);var W={$attr:{}},X=he(n,[],W),te=t.splice(F+1,t.length-(F+1));(b||v)&&me(X,b,v),t=t.concat(X).concat(te),Ce(r,W),O=t.length}else S.html(g);if(A.templateUrl)_=!0,_e("template",I,A,S),I=A,A.replace&&(x=A),oe=Be(t.splice(F,t.length-F),S,r,a,B&&D,c,u,{controllerDirectives:m,newScopeDirective:v!==A&&v,newIsolateScopeDirective:b,templateDirective:I,nonTlbTranscludeDirective:C}),O=t.length;else if(A.compile)try{d=A.compile(S,r,D);var re=A.$$originalDirective||A;Y(d)?ie(null,fe(re,d),R,j):d&&ie(fe(re,d.pre),fe(re,d.post),R,j)}catch(e){h(e,be(S))}A.terminal&&(oe.terminal=!0,y=Math.max(y,A.priority))}return oe.scope=v&&!0===v.scope,oe.transcludeOnThisElement=B,oe.templateOnThisElement=_,oe.transclude=D,l.hasElementTranscludeDirective=k,oe;function ie(e,t,n,r){e&&(n&&(e=de(e,n,r)),e.require=A.require,e.directiveName=f,(b===A||A.$$isolateScope)&&(e=Oe(e,{isolateScope:!0})),c.push(e)),t&&(n&&(t=de(t,n,r)),t.require=A.require,t.directiveName=f,(b===A||A.$$isolateScope)&&(t=Oe(t,{isolateScope:!0})),u.push(t))}function oe(e,t,i,a,s){var l,A,f,p,d,g,y,C,B,_;for(var S in n===i?(B=r,C=r.$$element):B=new J(C=o(i),r),d=t,b?p=t.$new(!0):v&&(d=t.$parent),s&&((y=function(e,t,n,r){var i;z(e)||(r=n,n=t,t=e,e=void 0);k&&(i=g);n||(n=k?C.parent():C);if(!r)return s(e,t,i,n,M);var a=s.$$slots[r];if(a)return a(e,t,i,n,M);if(T(a))throw cn("noslot",'No parent directive that requires a transclusion with slot name "{0}". Element: {1}',r,be(C))}).$$boundTransclude=s,y.isSlotFilled=function(e){return!!s.$$slots[e]}),m&&(g=function(e,t,n,r,i,a,o){var s=je();for(var c in r){var u=r[c],l={$scope:u===o||u.$$isolateScope?i:a,$element:e,$attrs:t,$transclude:n},A=u.controller;"@"===A&&(A=t[u.name]);var f=E(A,l,!0,u.controllerAs);s[u.name]=f,e.data("$"+u.name+"Controller",f.instance)}return s}(C,B,y,m,p,t,b)),b&&(ae.$$addScopeInfo(C,p,!0,!(I&&(I===b||I===b.$$originalDirective))),ae.$$addScopeClass(C,!0),p.$$isolateBindings=b.$$isolateBindings,(_=He(t,B,p,p.$$isolateBindings,b)).removeWatches&&p.$on("$destroy",_.removeWatches)),g){var x=m[S],D=g[S],P=x.$$bindings.bindToController;D.instance=D(),C.data("$"+x.name+"Controller",D.instance),D.bindingInfo=He(d,B,D.instance,P,x)}for(w(m,(function(e,t){var n=e.require;e.bindToController&&!G(n)&&H(n)&&Q(g[t].instance,ve(t,n,C,g))})),w(g,(function(e){var t=e.instance;if(Y(t.$onChanges))try{t.$onChanges(e.bindingInfo.initialChanges)}catch(e){h(e)}if(Y(t.$onInit))try{t.$onInit()}catch(e){h(e)}Y(t.$doCheck)&&(d.$watch((function(){t.$doCheck()})),t.$doCheck()),Y(t.$onDestroy)&&d.$on("$destroy",(function(){t.$onDestroy()}))})),l=0,A=c.length;l<A;l++)Re(f=c[l],f.isolateScope?p:t,C,B,f.require&&ve(f.directiveName,f.require,C,g),y);var M=t;for(b&&(b.template||null===b.templateUrl)&&(M=p),e&&e(M,i.childNodes,void 0,s),l=u.length-1;l>=0;l--)Re(f=u[l],f.isolateScope?p:t,C,B,f.require&&ve(f.directiveName,f.require,C,g),y);w(g,(function(e){var t=e.instance;Y(t.$postLink)&&t.$postLink()}))}}function ve(e,t,n,r){var i;if(N(t)){var a=t.match(u),o=t.substring(a[0].length),s=a[1]||a[3],c="?"===a[2];if("^^"===s?n=n.parent():i=(i=r&&r[o])&&i.instance,!i){var l="$"+o+"Controller";i="^^"===s&&n[0]&&9===n[0].nodeType?null:s?n.inheritedData(l):n.data(l)}if(!i&&!c)throw cn("ctreq","Controller '{0}', required by directive '{1}', can't be found!",o,e)}else if(G(t)){i=[];for(var A=0,f=t.length;A<f;A++)i[A]=ve(e,t[A],n,r)}else H(t)&&(i={},w(t,(function(t,a){i[a]=ve(e,t,n,r)})));return i||null}function me(e,t,n){for(var r=0,i=e.length;r<i;r++)e[r]=P(e[r],{$$isolateScope:t,$$newScope:n})}function Ie(e,n,i,a,o,s,c){if(n===o)return null;var u=null;if(r.hasOwnProperty(n))for(var l,A=t.get(n+"Directive"),f=0,h=A.length;f<h;f++)if(l=A[f],(T(a)||a>l.priority)&&-1!==l.restrict.indexOf(i)){if(s&&(l=P(l,{$$start:s,$$end:c})),!l.$$bindings){var p=l.$$bindings=d(l,l.name);H(p.isolateScope)&&(l.$$isolateBindings=p.isolateScope)}e.push(l),u=l}return u}function we(e){if(r.hasOwnProperty(e))for(var n=t.get(e+"Directive"),i=0,a=n.length;i<a;i++)if(n[i].multiElement)return!0;return!1}function Ce(e,t){var n=t.$attr,r=e.$attr;w(e,(function(r,i){"$"!==i.charAt(0)&&(t[i]&&t[i]!==r&&(r.length?r+=("style"===i?";":" ")+t[i]:r=t[i]),e.$set(i,r,!0,n[i]))})),w(t,(function(t,i){e.hasOwnProperty(i)||"$"===i.charAt(0)||(e[i]=t,"class"!==i&&"style"!==i&&(r[i]=n[i]))}))}function Be(e,t,n,r,i,a,s,c){var u,l,A=[],f=t[0],d=e.shift(),g=P(d,{templateUrl:null,transclude:null,replace:null,$$originalDirective:d}),y=Y(d.templateUrl)?d.templateUrl(t,n):d.templateUrl,v=d.templateNamespace;return t.empty(),p(y).then((function(h){var p,m,b,I;if(h=ee(h),d.replace){if(b=rt(h)?[]:gn(ke(v,Z(h))),p=b[0],1!==b.length||1!==p.nodeType)throw cn("tplrt","Template for directive '{0}' must have exactly one root element. {1}",d.name,y);m={$attr:{}},Me(r,t,p);var C=he(p,[],m);H(d.scope)&&me(C,!0),e=C.concat(e),Ce(n,m)}else p=f,t.html(h);for(e.unshift(g),u=ye(e,p,n,i,t,d,a,s,c),w(r,(function(e,n){e===p&&(r[n]=t[0])})),l=ce(t[0].childNodes,i);A.length;){var B=A.shift(),E=A.shift(),_=A.shift(),k=A.shift(),Q=t[0];if(!B.$$destroyed){if(E!==f){var S=E.className;c.hasElementTranscludeDirective&&d.replace||(Q=ct(p)),Me(_,o(E),Q),V(o(Q),S)}I=u.transcludeOnThisElement?le(B,u.transclude,k):k,u(l,B,Q,r,I)}}A=null})).catch((function(e){$(e)&&h(e)})),function(e,t,n,r,i){var a=i;t.$$destroyed||(A?A.push(t,n,r,a):(u.transcludeOnThisElement&&(a=le(t,u.transclude,i)),u(l,t,n,r,a)))}}function Ee(e,t){var n=t.priority-e.priority;return 0!==n?n:e.name!==t.name?e.name<t.name?-1:1:e.index-t.index}function _e(e,t,n,r){function i(e){return e?" (module: "+e+")":""}if(t)throw cn("multidir","Multiple directives [{0}{1}, {2}{3}] asking for {4} on: {5}",t.name,i(t.$$moduleName),n.name,i(n.$$moduleName),e,be(r))}function ke(t,n){switch(t=A(t||"html")){case"svg":case"math":var r=e.document.createElement("div");return r.innerHTML="<"+t+">"+n+"</"+t+">",r.childNodes[0].childNodes;default:return n}}function Qe(e){return K(k.valueOf(e),"ng-prop-srcset")}function Se(e,t,n,r){if(f.test(r))throw cn("nodomevents","Property bindings for HTML DOM event properties are disallowed");var i=ne(e),a=function(e,t){var n=t.toLowerCase();return C[e+"|"+n]||C["*|"+n]}(i,r),o=F;"srcset"!==r||"img"!==i&&"source"!==i?a&&(o=k.getTrusted.bind(k,a)):o=Qe,t.push({priority:100,compile:function(e,t){var i=B(t[n]),a=B(t[n],(function(e){return k.valueOf(e)}));return{pre:function(e,t){function n(){var n=i(e);t[0][r]=o(n)}n(),e.$watch(a,n)}}}})}function xe(e,t,n){e.push(_a(B,_,h,t,n,!1))}function De(e,t,r,i,a){var o=ne(e),s=function(e,t){return"srcdoc"===t?k.HTML:"src"===t||"ngSrc"===t?-1===["img","video","audio","source","track"].indexOf(e)?k.RESOURCE_URL:k.MEDIA_URL:"xlinkHref"===t?"image"===e?k.MEDIA_URL:"a"===e?k.URL:k.RESOURCE_URL:"form"===e&&"action"===t||"base"===e&&"href"===t||"link"===e&&"href"===t?k.RESOURCE_URL:"a"!==e||"href"!==t&&"ngHref"!==t?void 0:k.URL}(o,i),u=!a,l=c[i]||a,A=n(r,u,s,l);if(A){if("multiple"===i&&"select"===o)throw cn("selmulti","Binding to the 'multiple' attribute is not supported. Element: {0}",be(e));if(f.test(i))throw cn("nodomevents","Interpolations for HTML DOM event attributes are disallowed");t.push({priority:100,compile:function(){return{pre:function(e,t,a){var o=a.$$observers||(a.$$observers=je()),c=a[i];c!==r&&(A=c&&n(c,!0,s,l),r=c),A&&(a[i]=A(e),(o[i]||(o[i]=[])).$$inter=!0,(a.$$observers&&a.$$observers[i].$$scope||e).$watch(A,(function(e,t){"class"===i&&e!==t?a.$updateClass(e,t):a.$set(i,e)})))}}}})}}function Me(t,n,r){var i,a,s=n[0],c=n.length,u=s.parentNode;if(t)for(i=0,a=t.length;i<a;i++)if(t[i]===s){t[i++]=r;for(var l=i,A=l+c-1,f=t.length;l<f;l++,A++)A<f?t[l]=t[A]:delete t[l];t.length-=c-1,t.context===s&&(t.context=r);break}u&&u.replaceChild(r,s);var h=e.document.createDocumentFragment();for(i=0;i<c;i++)h.appendChild(n[i]);for(o.hasData(s)&&(o.data(r,o.data(s)),o(s).off("$destroy")),o.cleanData(h.querySelectorAll("*")),i=1;i<c;i++)delete n[i];n[0]=r,n.length=1}function Oe(e,t){return Q((function(){return e.apply(null,arguments)}),e,t)}function Re(e,t,n,r,i,a){try{e(t,n,r,i,a)}catch(e){h(e,be(n))}}function Te(e,t){if(v)throw cn("missingattr","Attribute '{0}' of '{1}' is non-optional and must be set!",e,t)}function He(e,t,r,i,a){var o,s=[],c={};function u(t,n,i){Y(r.$onChanges)&&!oe(n,i)&&(x||(e.$$postDigest(L),x=[]),o||(o={},x.push(A)),o[t]&&(i=o[t].previousValue),o[t]=new An(i,n))}function A(){r.$onChanges(o),o=void 0}return w(i,(function(i,o){var A,f,h,p,d,g=i.attrName,y=i.optional;switch(i.mode){case"@":y||l.call(t,g)||(Te(g,a.name),r[o]=t[g]=void 0),d=t.$observe(g,(function(e){if(N(e)||q(e)){var t=r[o];u(o,e,t),r[o]=e}})),t.$$observers[g].$$scope=e,N(A=t[g])?r[o]=n(A)(e):q(A)&&(r[o]=A),c[o]=new An(un,r[o]),s.push(d);break;case"=":if(!l.call(t,g)){if(y)break;Te(g,a.name),t[g]=void 0}if(y&&!t[g])break;f=B(t[g]),p=f.literal?se:oe,h=f.assign||function(){throw A=r[o]=f(e),cn("nonassign","Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",t[g],g,a.name)},A=r[o]=f(e);var v=function(t){return p(t,r[o])||(p(t,A)?h(e,t=r[o]):r[o]=t),A=t};v.$stateful=!0,d=i.collection?e.$watchCollection(t[g],v):e.$watch(B(t[g],v),null,f.literal),s.push(d);break;case"<":if(!l.call(t,g)){if(y)break;Te(g,a.name),t[g]=void 0}if(y&&!t[g])break;var m=(f=B(t[g])).literal,b=r[o]=f(e);c[o]=new An(un,r[o]),d=e[i.collection?"$watchCollection":"$watch"](f,(function(e,t){if(t===e){if(t===b||m&&se(t,b))return;t=b}u(o,e,t),r[o]=e})),s.push(d);break;case"&":if(y||l.call(t,g)||Te(g,a.name),(f=t.hasOwnProperty(g)?B(t[g]):M)===M&&y)break;r[o]=function(t){return f(e,t)}}})),{initialChanges:c,removeWatches:s.length&&function(){for(var e=0,t=s.length;e<t;++e)s[e]()}}}}]}function An(e,t){this.previousValue=e,this.currentValue=t}ln.$inject=["$provide","$$sanitizeUriProvider"],An.prototype.isFirstChange=function(){return this.previousValue===un};var fn=/^((?:x|data)[:\-_])/i,hn=/[:\-_]+(.)/g;function pn(e){return e.replace(fn,"").replace(hn,(function(e,t,n){return n?t.toUpperCase():t}))}function dn(e,t){var n="",r=e.split(/\s+/),i=t.split(/\s+/);e:for(var a=0;a<r.length;a++){for(var o=r[a],s=0;s<i.length;s++)if(o===i[s])continue e;n+=(n.length>0?" ":"")+o}return n}function gn(e){var t=(e=o(e)).length;if(t<=1)return e;for(;t--;){var n=e[t];(8===n.nodeType||n.nodeType===Ue&&""===n.nodeValue.trim())&&p.call(e,t,1)}return e}var yn=i("$controller"),vn=/^(\S+)(\s+as\s+([\w$]+))?$/;function mn(e,t){if(t&&N(t))return t;if(N(e)){var n=vn.exec(e);if(n)return n[3]}}function bn(){var e={};this.has=function(t){return e.hasOwnProperty(t)},this.register=function(t,n){Re(t,"controller"),H(t)?Q(e,t):e[t]=n},this.$get=["$injector",function(t){return function(r,i,a,o){var s,c,u,l;if(a=!0===a,o&&N(o)&&(l=o),N(r)){if(!(c=r.match(vn)))throw yn("ctrlfmt","Badly formed controller string '{0}'. Must match `__name__ as __id__` or `__name__`.",r);if(u=c[1],l=l||c[3],!(r=e.hasOwnProperty(u)?e[u]:function(e,t,n){if(!t)return e;for(var r,i=t.split("."),a=e,o=i.length,s=0;s<o;s++)r=i[s],e&&(e=(a=e)[r]);return!n&&Y(e)?fe(a,e):e}(i.$scope,u,!0)))throw yn("ctrlreg","The controller with the name '{0}' is not registered.",u);Oe(r,u,!0)}if(a){var A=(G(r)?r[r.length-1]:r).prototype;return s=Object.create(A||null),l&&n(i,l,s,u||r.name),Q((function(){var e=t.invoke(r,s,i,u);return e!==s&&(H(e)||Y(e))&&(s=e,l&&n(i,l,s,u||r.name)),s}),{instance:s,identifier:l})}return s=t.instantiate(r,i,u),l&&n(i,l,s,u||r.name),s};function n(e,t,n,r){if(!e||!H(e.$scope))throw i("$controller")("noscp","Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",r,t);e.$scope[t]=n}}]}function In(){this.$get=["$window",function(e){return o(e.document)}]}function wn(){this.$get=["$document","$rootScope",function(e,t){var n=e[0],r=n&&n.hidden;function i(){r=n.hidden}return e.on("visibilitychange",i),t.$on("$destroy",(function(){e.off("visibilitychange",i)})),function(){return r}}]}function Cn(){this.$get=["$log",function(e){return function(t,n){e.error.apply(e,arguments)}}]}var Bn=function(){this.$get=["$document",function(e){return function(t){return t?!t.nodeType&&t instanceof o&&(t=t[0]):t=e[0].body,t.offsetWidth+1}}]},En={"Content-Type":"application/json;charset=utf-8"},_n=/^\[|^\{(?!\{)/,kn={"[":/]$/,"{":/}$/},Qn=/^\)]\}',?\n/,Sn=i("$http");function xn(e){return H(e)?K(e)?e.toISOString():pe(e):e}function Dn(){this.$get=function(){return function(e){if(!e)return"";var t=[];return C(e,(function(e,n){null===e||T(e)||Y(e)||(G(e)?w(e,(function(e){t.push(Be(n)+"="+Be(xn(e)))})):t.push(Be(n)+"="+Be(xn(e))))})),t.join("&")}}}function Pn(){this.$get=function(){return function(e){if(!e)return"";var t=[];return function e(n,r,i){G(n)?w(n,(function(t,n){e(t,r+"["+(H(t)?n:"")+"]")})):H(n)&&!K(n)?C(n,(function(t,n){e(t,r+(i?"":"[")+n+(i?"":"]"))})):(Y(n)&&(n=n()),t.push(Be(r)+"="+(null==n?"":Be(xn(n)))))}(e,"",!0),t.join("&")}}}function Mn(e,t){if(N(e)){var n=e.replace(Qn,"").trim();if(n){var r=t("Content-Type"),i=r&&0===r.indexOf("application/json");if(i||(o=(a=n).match(_n))&&kn[o[0]].test(a))try{e=de(n)}catch(t){if(!i)return e;throw Sn("baddata",'Data must be a valid JSON object. Received: "{0}". Parse error: "{1}"',e,t)}}}var a,o;return e}function Fn(e){var t,n=je();function r(e,t){e&&(n[e]=n[e]?n[e]+", "+t:t)}return N(e)?w(e.split("\n"),(function(e){t=e.indexOf(":"),r(A(Z(e.substr(0,t))),Z(e.substr(t+1)))})):H(e)&&w(e,(function(e,t){r(A(t),Z(e))})),n}function On(e){var t;return function(n){if(t||(t=Fn(e)),n){var r=t[A(n)];return void 0===r&&(r=null),r}return t}}function Rn(e,t,n,r){return Y(r)?r(e,t,n):(w(r,(function(r){e=r(e,t,n)})),e)}function Tn(e){return 200<=e&&e<300}function jn(){var e=this.defaults={transformResponse:[Mn],transformRequest:[function(e){return!H(e)||(t=e,"[object File]"===g.call(t))||function(e){return"[object Blob]"===g.call(e)}(e)||function(e){return"[object FormData]"===g.call(e)}(e)?e:pe(e);var t}],headers:{common:{Accept:"application/json, text/plain, */*"},post:Ne(En),put:Ne(En),patch:Ne(En)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer",jsonpCallbackParam:"callback"},t=!1;this.useApplyAsync=function(e){return j(e)?(t=!!e,this):t};var n=this.interceptors=[],r=this.xsrfWhitelistedOrigins=[];this.$get=["$browser","$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector","$sce",function(a,o,s,c,u,l,h,p){var d=c("$http");e.paramSerializer=N(e.paramSerializer)?h.get(e.paramSerializer):e.paramSerializer;var g=[];w(n,(function(e){g.unshift(N(e)?h.get(e):h.invoke(e))}));var y,v=(y=[ti].concat(r.map(ri)),function(e){var t=ri(e);return y.some(ii.bind(null,t))});function m(n){if(!H(n))throw i("$http")("badreq","Http request configuration must be an object. Received: {0}",n);if(!N(p.valueOf(n.url)))throw i("$http")("badreq","Http request configuration url must be a string or a $sce trusted object. Received: {0}",n.url);var r=Q({method:"get",transformRequest:e.transformRequest,transformResponse:e.transformResponse,paramSerializer:e.paramSerializer,jsonpCallbackParam:e.jsonpCallbackParam},n);r.headers=function(t){var n,r,i,a=e.headers,o=Q({},t.headers);a=Q({},a.common,a[A(t.method)]);e:for(n in a){for(i in r=A(n),o)if(A(i)===r)continue e;o[n]=a[n]}return function(e,t){var n,r={};return w(e,(function(e,i){Y(e)?null!=(n=e(t))&&(r[i]=n):r[i]=e})),r}(o,Ne(t))}(n),r.method=f(r.method),r.paramSerializer=N(r.paramSerializer)?h.get(r.paramSerializer):r.paramSerializer,a.$$incOutstandingRequestCount("$http");var c=[],y=[],b=l.resolve(r);return w(g,(function(e){(e.request||e.requestError)&&c.unshift(e.request,e.requestError),(e.response||e.responseError)&&y.push(e.response,e.responseError)})),b=I(b,c),b=(b=I(b=b.then((function(n){var r=n.headers,i=Rn(n.data,On(r),void 0,n.transformRequest);T(i)&&w(r,(function(e,t){"content-type"===A(t)&&delete r[t]}));T(n.withCredentials)&&!T(e.withCredentials)&&(n.withCredentials=e.withCredentials);return function(n,r){var i,a,c=l.defer(),f=c.promise,h=n.headers,g="jsonp"===A(n.method),y=n.url;g?y=p.getTrustedResourceUrl(y):N(y)||(y=p.valueOf(y));y=function(e,t){t.length>0&&(e+=(-1===e.indexOf("?")?"?":"&")+t);return e}(y,n.paramSerializer(n.params)),g&&(y=function(e,t){var n=e.split("?");if(n.length>2)throw Sn("badjsonp",'Illegal use more than one "?", in url, "{1}"',e);return w(we(n[1]),(function(n,r){if("JSON_CALLBACK"===n)throw Sn("badjsonp",'Illegal use of JSON_CALLBACK in url, "{0}"',e);if(r===t)throw Sn("badjsonp",'Illegal use of callback param, "{0}", in url, "{1}"',t,e)})),e+=(-1===e.indexOf("?")?"?":"&")+t+"=JSON_CALLBACK"}(y,n.jsonpCallbackParam));m.pendingRequests.push(n),f.then(E,E),!n.cache&&!e.cache||!1===n.cache||"GET"!==n.method&&"JSONP"!==n.method||(i=H(n.cache)?n.cache:H(e.cache)?e.cache:d);i&&(j(a=i.get(y))?W(a)?a.then(B,B):G(a)?C(a[1],a[0],Ne(a[2]),a[3],a[4]):C(a,200,{},"OK","complete"):i.put(y,f));if(T(a)){var b=v(n.url)?s()[n.xsrfCookieName||e.xsrfCookieName]:void 0;b&&(h[n.xsrfHeaderName||e.xsrfHeaderName]=b),o(n.method,y,r,(function(e,n,r,a,o){i&&(Tn(e)?i.put(y,[e,n,Fn(r),a,o]):i.remove(y));function s(){C(n,e,r,a,o)}t?u.$applyAsync(s):(s(),u.$$phase||u.$apply())}),h,n.timeout,n.withCredentials,n.responseType,I(n.eventHandlers),I(n.uploadEventHandlers))}return f;function I(e){if(e){var n={};return w(e,(function(e,r){n[r]=function(n){function r(){e(n)}t?u.$applyAsync(r):u.$$phase?r():u.$apply(r)}})),n}}function C(e,t,r,i,a){(Tn(t=t>=-1?t:0)?c.resolve:c.reject)({data:e,status:t,headers:On(r),config:n,statusText:i,xhrStatus:a})}function B(e){C(e.data,e.status,Ne(e.headers()),e.statusText,e.xhrStatus)}function E(){var e=m.pendingRequests.indexOf(n);-1!==e&&m.pendingRequests.splice(e,1)}}(n,i).then(C,C)})),y)).finally((function(){a.$$completeOutstandingRequest(M,"$http")}));function I(e,t){for(var n=0,r=t.length;n<r;){var i=t[n++],a=t[n++];e=e.then(i,a)}return t.length=0,e}function C(e){var t=Q({},e);return t.data=Rn(e.data,e.headers,e.status,r.transformResponse),Tn(e.status)?t:l.reject(t)}}return m.pendingRequests=[],function(e){w(arguments,(function(e){m[e]=function(t,n){return m(Q({},n||{},{method:e,url:t}))}}))}("get","delete","head","jsonp"),function(e){w(arguments,(function(e){m[e]=function(t,n,r){return m(Q({},r||{},{method:e,url:t,data:n}))}}))}("post","put","patch"),m.defaults=e,m}]}function Hn(){this.$get=function(){return function(){return new e.XMLHttpRequest}}}function Un(){this.$get=["$browser","$jsonpCallbacks","$document","$xhrFactory",function(e,t,n,r){return function(e,t,n,r,i){return function(a,o,s,c,u,l,f,h,p,d){if(o=o||e.url(),"jsonp"===A(a))var g=r.createCallback(o),y=function(e,t,n){e=e.replace("JSON_CALLBACK",t);var a=i.createElement("script"),o=null;return a.type="text/javascript",a.src=e,a.async=!0,o=function(e){a.removeEventListener("load",o),a.removeEventListener("error",o),i.body.removeChild(a),a=null;var s=-1,c="unknown";e&&("load"!==e.type||r.wasCalled(t)||(e={type:"error"}),c=e.type,s="error"===e.type?404:200),n&&n(s,c)},a.addEventListener("load",o),a.addEventListener("error",o),i.body.appendChild(a),o}(o,g,(function(e,t){var n=200===e&&r.getResponse(g);C(c,e,n,"",t,"complete"),r.removeCallback(g)}));else{var v=t(a,o),m=!1;v.open(a,o,!0),w(u,(function(e,t){j(e)&&v.setRequestHeader(t,e)})),v.onload=function(){var e=v.statusText||"",t="response"in v?v.response:v.responseText,n=1223===v.status?204:v.status;0===n&&(n=t?200:"file"===ri(o).protocol?404:0),C(c,n,t,v.getAllResponseHeaders(),e,"complete")};if(v.onerror=function(){C(c,-1,null,null,"","error")},v.ontimeout=function(){C(c,-1,null,null,"","timeout")},v.onabort=function(){C(c,-1,null,null,"",m?"timeout":"abort")},w(p,(function(e,t){v.addEventListener(t,e)})),w(d,(function(e,t){v.upload.addEventListener(t,e)})),f&&(v.withCredentials=!0),h)try{v.responseType=h}catch(e){if("json"!==h)throw e}v.send(T(s)?null:s)}if(l>0)var b=n((function(){I("timeout")}),l);else W(l)&&l.then((function(){I(j(l.$$timeoutId)?"timeout":"abort")}));function I(e){m="timeout"===e,y&&y(),v&&v.abort()}function C(e,t,r,i,a,o){j(b)&&n.cancel(b),y=v=null,e(t,r,i,a,o)}}}(e,r,e.defer,t,n[0])}]}var Nn=m.$interpolateMinErr=i("$interpolate");function Ln(){var e="{{",t="}}";this.startSymbol=function(t){return t?(e=t,this):e},this.endSymbol=function(e){return e?(t=e,this):t},this.$get=["$parse","$exceptionHandler","$sce",function(n,r,i){var a=e.length,o=t.length,s=new RegExp(e.replace(/./g,u),"g"),c=new RegExp(t.replace(/./g,u),"g");function u(e){return"\\\\\\"+e}function l(n){return n.replace(s,e).replace(c,t)}function A(e,t,n,r){var i=e.$watch((function(e){return i(),r(e)}),t,n);return i}function f(s,c,u,f){var h=u===i.URL||u===i.MEDIA_URL;if(!s.length||-1===s.indexOf(e)){if(c)return;var p=l(s);h&&(p=i.getTrusted(u,p));var d=O(p);return d.exp=s,d.expressions=[],d.$$watchDelegate=A,d}f=!!f;for(var g,y,v,m,b,I=0,w=[],C=s.length,B=[],E=[];I<C;){if(-1===(g=s.indexOf(e,I))||-1===(y=s.indexOf(t,g+a))){I!==C&&B.push(l(s.substring(I)));break}I!==g&&B.push(l(s.substring(I,g))),m=s.substring(g+a,y),w.push(m),I=y+o,E.push(B.length),B.push("")}b=1===B.length&&1===E.length;var _=h&&b?void 0:function(e){try{return e=u&&!h?i.getTrusted(u,e):i.valueOf(e),f&&!j(e)?e:He(e)}catch(e){r(Nn.interr(s,e))}};if(v=w.map((function(e){return n(e,_)})),!c||w.length){var k=function(e){for(var t=0,n=w.length;t<n;t++){if(f&&T(e[t]))return;B[E[t]]=e[t]}return h?i.getTrusted(u,b?B[0]:B.join("")):(u&&B.length>1&&Nn.throwNoconcat(s),B.join(""))};return Q((function(e){var t=0,n=w.length,i=new Array(n);try{for(;t<n;t++)i[t]=v[t](e);return k(i)}catch(e){r(Nn.interr(s,e))}}),{exp:s,expressions:w,$$watchDelegate:function(e,t){var n;return e.$watchGroup(v,(function(r,i){var a=k(r);t.call(this,a,r!==i?n:a,e),n=a}))}})}}return f.startSymbol=function(){return e},f.endSymbol=function(){return t},f}]}Nn.throwNoconcat=function(e){throw Nn("noconcat","Error while interpolating: {0}\nStrict Contextual Escaping disallows interpolations that concatenate multiple expressions when a trusted value is required. See http://docs.angularjs.org/api/ng.$sce",e)},Nn.interr=function(e,t){return Nn("interr","Can't interpolate: {0}\n{1}",e,t.toString())};var Kn=i("$interval");function Gn(){this.$get=["$$intervalFactory","$window",function(e,t){var n={},r=function(e){t.clearInterval(e),delete n[e]},i=e((function(e,r,i){var a=t.setInterval(e,r);return n[a]=i,a}),r);return i.cancel=function(e){if(!e)return!1;if(!e.hasOwnProperty("$$intervalId"))throw Kn("badprom","`$interval.cancel()` called with a promise that was not generated by `$interval()`.");if(!n.hasOwnProperty(e.$$intervalId))return!1;var t=e.$$intervalId,i=n[t];return Fr(i.promise),i.reject("canceled"),r(t),!0},i}]}function $n(){this.$get=["$browser","$q","$$q","$rootScope",function(e,t,n,r){return function(i,a){return function(o,s,c,u){var l=arguments.length>4,A=l?Ae(arguments,4):[],f=0,h=j(u)&&!u,p=(h?n:t).defer(),d=p.promise;function g(){l?o.apply(null,A):o(f)}function y(){h?e.defer(g):r.$evalAsync(g),p.notify(f++),c>0&&f>=c&&(p.resolve(f),a(d.$$intervalId)),h||r.$apply()}return c=j(c)?c:0,d.$$intervalId=i(y,s,p,h),d}}}]}var Yn=function(){this.$get=function(){var e=m.callbacks,t={};return{createCallback:function(n){var r="_"+(e.$$counter++).toString(36),i="angular.callbacks."+r,a=function(e){var t=function(e){t.data=e,t.called=!0};return t.id=e,t}(r);return t[i]=e[r]=a,i},wasCalled:function(e){return t[e].called},getResponse:function(e){return t[e].data},removeCallback:function(n){var r=t[n];delete e[r.id],delete t[n]}}}},Jn=/^([^?#]*)(\?([^#]*))?(#(.*))?$/,Vn={http:80,https:443,ftp:21},zn=i("$location");function qn(e,t,n){var r,i=(r=[],w(t,(function(e,t){G(e)?w(e,(function(e){r.push(Be(t,!0)+(!0===e?"":"="+Be(e,!0)))})):r.push(Be(t,!0)+(!0===e?"":"="+Be(e,!0)))})),r.length?r.join("&"):""),a=n?"#"+Ce(n):"";return function(e){for(var t=e.split("/"),n=t.length;n--;)t[n]=Ce(t[n].replace(/%2F/g,"/"));return t.join("/")}(e)+(i?"?"+i:"")+a}function Wn(e,t){var n=ri(e);t.$$protocol=n.protocol,t.$$host=n.hostname,t.$$port=x(n.port)||Vn[n.protocol]||null}var Xn=/^\s*[\\/]{2,}/;function Zn(e,t,n){if(Xn.test(e))throw zn("badpath",'Invalid url "{0}".',e);var r="/"!==e.charAt(0);r&&(e="/"+e);var i=ri(e),a=r&&"/"===i.pathname.charAt(0)?i.pathname.substring(1):i.pathname;t.$$path=function(e,t){for(var n=e.split("/"),r=n.length;r--;)n[r]=decodeURIComponent(n[r]),t&&(n[r]=n[r].replace(/\//g,"%2F"));return n.join("/")}(a,n),t.$$search=we(i.search),t.$$hash=decodeURIComponent(i.hash),t.$$path&&"/"!==t.$$path.charAt(0)&&(t.$$path="/"+t.$$path)}function er(e,t){return e.slice(0,t.length)===t}function tr(e,t){if(er(t,e))return t.substr(e.length)}function nr(e){var t=e.indexOf("#");return-1===t?e:e.substr(0,t)}function rr(e,t,n){this.$$html5=!0,n=n||"",Wn(e,this),this.$$parse=function(e){var n=tr(t,e);if(!N(n))throw zn("ipthprfx",'Invalid url "{0}", missing path prefix "{1}".',e,t);Zn(n,this,!0),this.$$path||(this.$$path="/"),this.$$compose()},this.$$normalizeUrl=function(e){return t+e.substr(1)},this.$$parseLinkUrl=function(r,i){return i&&"#"===i[0]?(this.hash(i.slice(1)),!0):(j(a=tr(e,r))?(o=a,s=n&&j(a=tr(n,a))?t+(tr("/",a)||a):e+o):j(a=tr(t,r))?s=t+a:t===r+"/"&&(s=t),s&&this.$$parse(s),!!s);var a,o,s}}function ir(e,t,n){Wn(e,this),this.$$parse=function(r){var i,a=tr(e,r)||tr(t,r);T(a)||"#"!==a.charAt(0)?this.$$html5?i=a:(i="",T(a)&&(e=r,this.replace())):T(i=tr(n,a))&&(i=a),Zn(i,this,!1),this.$$path=function(e,t,n){var r,i=/^\/[A-Z]:(\/.*)/;er(t,n)&&(t=t.replace(n,""));if(i.exec(t))return e;return(r=i.exec(e))?r[1]:e}(this.$$path,i,e),this.$$compose()},this.$$normalizeUrl=function(t){return e+(t?n+t:"")},this.$$parseLinkUrl=function(t,n){return nr(e)===nr(t)&&(this.$$parse(t),!0)}}function ar(e,t,n){this.$$html5=!0,ir.apply(this,arguments),this.$$parseLinkUrl=function(r,i){return i&&"#"===i[0]?(this.hash(i.slice(1)),!0):(e===nr(r)?a=r:(o=tr(t,r))?a=e+n+o:t===r+"/"&&(a=t),a&&this.$$parse(a),!!a);var a,o},this.$$normalizeUrl=function(t){return e+n+t}}var or={$$absUrl:"",$$html5:!1,$$replace:!1,$$compose:function(){this.$$url=qn(this.$$path,this.$$search,this.$$hash),this.$$absUrl=this.$$normalizeUrl(this.$$url),this.$$urlUpdatedByLocation=!0},absUrl:sr("$$absUrl"),url:function(e){if(T(e))return this.$$url;var t=Jn.exec(e);return(t[1]||""===e)&&this.path(decodeURIComponent(t[1])),(t[2]||t[1]||""===e)&&this.search(t[3]||""),this.hash(t[5]||""),this},protocol:sr("$$protocol"),host:sr("$$host"),port:sr("$$port"),path:cr("$$path",(function(e){return"/"===(e=null!==e?e.toString():"").charAt(0)?e:"/"+e})),search:function(e,t){switch(arguments.length){case 0:return this.$$search;case 1:if(N(e)||L(e))e=e.toString(),this.$$search=we(e);else{if(!H(e))throw zn("isrcharg","The first argument of the `$location#search()` call must be a string or an object.");w(e=ae(e,{}),(function(t,n){null==t&&delete e[n]})),this.$$search=e}break;default:T(t)||null===t?delete this.$$search[e]:this.$$search[e]=t}return this.$$compose(),this},hash:cr("$$hash",(function(e){return null!==e?e.toString():""})),replace:function(){return this.$$replace=!0,this}};function sr(e){return function(){return this[e]}}function cr(e,t){return function(n){return T(n)?this[e]:(this[e]=t(n),this.$$compose(),this)}}function ur(){var e="!",t={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(t){return j(t)?(e=t,this):e},this.html5Mode=function(e){return q(e)?(t.enabled=e,this):H(e)?(q(e.enabled)&&(t.enabled=e.enabled),q(e.requireBase)&&(t.requireBase=e.requireBase),(q(e.rewriteLinks)||N(e.rewriteLinks))&&(t.rewriteLinks=e.rewriteLinks),this):t},this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(n,r,i,a,s){var c,u,l,A,f=r.baseHref(),h=r.url();if(t.enabled){if(!f&&t.requireBase)throw zn("nobase","$location in HTML5 mode requires a <base> tag to be present!");l=(A=h).substring(0,A.indexOf("/",A.indexOf("//")+2))+(f||"/"),u=i.history?rr:ar}else l=nr(h),u=ir;var p=function(e){return e.substr(0,nr(e).lastIndexOf("/")+1)}(l);(c=new u(l,p,"#"+e)).$$parseLinkUrl(h,h),c.$$state=r.state();var d=/^\s*(javascript|mailto):/i;function g(e,t,n){var i=c.url(),a=c.$$state;try{r.url(e,t,n),c.$$state=r.state()}catch(e){throw c.url(i),c.$$state=a,e}}a.on("click",(function(e){var i=t.rewriteLinks;if(i&&!e.ctrlKey&&!e.metaKey&&!e.shiftKey&&2!==e.which&&2!==e.button){for(var s=o(e.target);"a"!==ne(s[0]);)if(s[0]===a[0]||!(s=s.parent())[0])return;if(!N(i)||!T(s.attr(i))){var u=s.prop("href"),l=s.attr("href")||s.attr("xlink:href");H(u)&&"[object SVGAnimatedString]"===u.toString()&&(u=ri(u.animVal).href),d.test(u)||!u||s.attr("target")||e.isDefaultPrevented()||c.$$parseLinkUrl(u,l)&&(e.preventDefault(),c.absUrl()!==r.url()&&n.$apply())}}})),c.absUrl()!==h&&r.url(c.absUrl(),!0);var y=!0;return r.onUrlChange((function(e,t){er(e,p)?(n.$evalAsync((function(){var r,i=c.absUrl(),a=c.$$state;c.$$parse(e),c.$$state=t,r=n.$broadcast("$locationChangeStart",e,i,t,a).defaultPrevented,c.absUrl()===e&&(r?(c.$$parse(i),c.$$state=a,g(i,!1,a)):(y=!1,v(i,a)))})),n.$$phase||n.$digest()):s.location.href=e})),n.$watch((function(){if(y||c.$$urlUpdatedByLocation){c.$$urlUpdatedByLocation=!1;var e=r.url(),t=c.absUrl(),a=r.state(),o=c.$$replace,s=!((u=e)===(l=t)||ri(u).href===ri(l).href)||c.$$html5&&i.history&&a!==c.$$state;(y||s)&&(y=!1,n.$evalAsync((function(){var t=c.absUrl(),r=n.$broadcast("$locationChangeStart",t,e,c.$$state,a).defaultPrevented;c.absUrl()===t&&(r?(c.$$parse(e),c.$$state=a):(s&&g(t,o,a===c.$$state?null:c.$$state),v(e,a)))})))}var u,l;c.$$replace=!1})),c;function v(e,t){n.$broadcast("$locationChangeSuccess",c.absUrl(),e,c.$$state,t)}}]}function lr(){var e=!0,t=this;this.debugEnabled=function(t){return j(t)?(e=t,this):e},this.$get=["$window",function(n){var r,i=a||/\bEdge\//.test(n.navigator&&n.navigator.userAgent);return{log:s("log"),info:s("info"),warn:s("warn"),error:s("error"),debug:(r=s("debug"),function(){e&&r.apply(t,arguments)})};function o(e){return $(e)&&(e.stack&&i?e=e.message&&-1===e.stack.indexOf(e.message)?"Error: "+e.message+"\n"+e.stack:e.stack:e.sourceURL&&(e=e.message+"\n"+e.sourceURL+":"+e.line)),e}function s(e){var t=n.console||{},r=t[e]||t.log||M;return function(){var e=[];return w(arguments,(function(t){e.push(o(t))})),Function.prototype.apply.call(r,t,e)}}}]}w([ar,ir,rr],(function(e){e.prototype=Object.create(or),e.prototype.state=function(t){if(!arguments.length)return this.$$state;if(e!==rr||!this.$$html5)throw zn("nostate","History API state support is available only in HTML5 mode and only in browsers supporting HTML5 History API");return this.$$state=T(t)?null:t,this.$$urlUpdatedByLocation=!0,this}}));var Ar=i("$parse"),fr={}.constructor.prototype.valueOf;function hr(e){return e+""}var pr=je();w("+ - * / % === !== == != < > <= >= && || ! = |".split(" "),(function(e){pr[e]=!0}));var dr={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},gr=function(e){this.options=e};gr.prototype={constructor:gr,lex:function(e){for(this.text=e,this.index=0,this.tokens=[];this.index<this.text.length;){var t=this.text.charAt(this.index);if('"'===t||"'"===t)this.readString(t);else if(this.isNumber(t)||"."===t&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdentifierStart(this.peekMultichar()))this.readIdent();else if(this.is(t,"(){}[].,;:?"))this.tokens.push({index:this.index,text:t}),this.index++;else if(this.isWhitespace(t))this.index++;else{var n=t+this.peek(),r=n+this.peek(2),i=pr[t],a=pr[n],o=pr[r];if(i||a||o){var s=o?r:a?n:t;this.tokens.push({index:this.index,text:s,operator:!0}),this.index+=s.length}else this.throwError("Unexpected next character ",this.index,this.index+1)}}return this.tokens},is:function(e,t){return-1!==t.indexOf(e)},peek:function(e){var t=e||1;return this.index+t<this.text.length&&this.text.charAt(this.index+t)},isNumber:function(e){return"0"<=e&&e<="9"&&"string"==typeof e},isWhitespace:function(e){return" "===e||"\r"===e||"\t"===e||"\n"===e||"\v"===e||" "===e},isIdentifierStart:function(e){return this.options.isIdentifierStart?this.options.isIdentifierStart(e,this.codePointAt(e)):this.isValidIdentifierStart(e)},isValidIdentifierStart:function(e){return"a"<=e&&e<="z"||"A"<=e&&e<="Z"||"_"===e||"$"===e},isIdentifierContinue:function(e){return this.options.isIdentifierContinue?this.options.isIdentifierContinue(e,this.codePointAt(e)):this.isValidIdentifierContinue(e)},isValidIdentifierContinue:function(e,t){return this.isValidIdentifierStart(e,t)||this.isNumber(e)},codePointAt:function(e){return 1===e.length?e.charCodeAt(0):(e.charCodeAt(0)<<10)+e.charCodeAt(1)-56613888},peekMultichar:function(){var e=this.text.charAt(this.index),t=this.peek();if(!t)return e;var n=e.charCodeAt(0),r=t.charCodeAt(0);return n>=55296&&n<=56319&&r>=56320&&r<=57343?e+t:e},isExpOperator:function(e){return"-"===e||"+"===e||this.isNumber(e)},throwError:function(e,t,n){n=n||this.index;var r=j(t)?"s "+t+"-"+this.index+" ["+this.text.substring(t,n)+"]":" "+n;throw Ar("lexerr","Lexer Error: {0} at column{1} in expression [{2}].",e,r,this.text)},readNumber:function(){for(var e="",t=this.index;this.index<this.text.length;){var n=A(this.text.charAt(this.index));if("."===n||this.isNumber(n))e+=n;else{var r=this.peek();if("e"===n&&this.isExpOperator(r))e+=n;else if(this.isExpOperator(n)&&r&&this.isNumber(r)&&"e"===e.charAt(e.length-1))e+=n;else{if(!this.isExpOperator(n)||r&&this.isNumber(r)||"e"!==e.charAt(e.length-1))break;this.throwError("Invalid exponent")}}this.index++}this.tokens.push({index:t,text:e,constant:!0,value:Number(e)})},readIdent:function(){var e=this.index;for(this.index+=this.peekMultichar().length;this.index<this.text.length;){var t=this.peekMultichar();if(!this.isIdentifierContinue(t))break;this.index+=t.length}this.tokens.push({index:e,text:this.text.slice(e,this.index),identifier:!0})},readString:function(e){var t=this.index;this.index++;for(var n="",r=e,i=!1;this.index<this.text.length;){var a=this.text.charAt(this.index);if(r+=a,i){if("u"===a){var o=this.text.substring(this.index+1,this.index+5);o.match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+o+"]"),this.index+=4,n+=String.fromCharCode(parseInt(o,16))}else{n+=dr[a]||a}i=!1}else if("\\"===a)i=!0;else{if(a===e)return this.index++,void this.tokens.push({index:t,text:r,constant:!0,value:n});n+=a}this.index++}this.throwError("Unterminated quote",t)}};var yr=function(e,t){this.lexer=e,this.options=t};function vr(e,t){return void 0!==e?e:t}function mr(e,t){return void 0===e?t:void 0===t?e:e+t}yr.Program="Program",yr.ExpressionStatement="ExpressionStatement",yr.AssignmentExpression="AssignmentExpression",yr.ConditionalExpression="ConditionalExpression",yr.LogicalExpression="LogicalExpression",yr.BinaryExpression="BinaryExpression",yr.UnaryExpression="UnaryExpression",yr.CallExpression="CallExpression",yr.MemberExpression="MemberExpression",yr.Identifier="Identifier",yr.Literal="Literal",yr.ArrayExpression="ArrayExpression",yr.Property="Property",yr.ObjectExpression="ObjectExpression",yr.ThisExpression="ThisExpression",yr.LocalsExpression="LocalsExpression",yr.NGValueParameter="NGValueParameter",yr.prototype={ast:function(e){this.text=e,this.tokens=this.lexer.lex(e);var t=this.program();return 0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]),t},program:function(){for(var e=[];;)if(this.tokens.length>0&&!this.peek("}",")",";","]")&&e.push(this.expressionStatement()),!this.expect(";"))return{type:yr.Program,body:e}},expressionStatement:function(){return{type:yr.ExpressionStatement,expression:this.filterChain()}},filterChain:function(){for(var e=this.expression();this.expect("|");)e=this.filter(e);return e},expression:function(){return this.assignment()},assignment:function(){var e=this.ternary();if(this.expect("=")){if(!wr(e))throw Ar("lval","Trying to assign a value to a non l-value");e={type:yr.AssignmentExpression,left:e,right:this.assignment(),operator:"="}}return e},ternary:function(){var e,t,n=this.logicalOR();return this.expect("?")&&(e=this.expression(),this.consume(":"))?(t=this.expression(),{type:yr.ConditionalExpression,test:n,alternate:e,consequent:t}):n},logicalOR:function(){for(var e=this.logicalAND();this.expect("||");)e={type:yr.LogicalExpression,operator:"||",left:e,right:this.logicalAND()};return e},logicalAND:function(){for(var e=this.equality();this.expect("&&");)e={type:yr.LogicalExpression,operator:"&&",left:e,right:this.equality()};return e},equality:function(){for(var e,t=this.relational();e=this.expect("==","!=","===","!==");)t={type:yr.BinaryExpression,operator:e.text,left:t,right:this.relational()};return t},relational:function(){for(var e,t=this.additive();e=this.expect("<",">","<=",">=");)t={type:yr.BinaryExpression,operator:e.text,left:t,right:this.additive()};return t},additive:function(){for(var e,t=this.multiplicative();e=this.expect("+","-");)t={type:yr.BinaryExpression,operator:e.text,left:t,right:this.multiplicative()};return t},multiplicative:function(){for(var e,t=this.unary();e=this.expect("*","/","%");)t={type:yr.BinaryExpression,operator:e.text,left:t,right:this.unary()};return t},unary:function(){var e;return(e=this.expect("+","-","!"))?{type:yr.UnaryExpression,operator:e.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var e,t;for(this.expect("(")?(e=this.filterChain(),this.consume(")")):this.expect("[")?e=this.arrayDeclaration():this.expect("{")?e=this.object():this.selfReferential.hasOwnProperty(this.peek().text)?e=ae(this.selfReferential[this.consume().text]):this.options.literals.hasOwnProperty(this.peek().text)?e={type:yr.Literal,value:this.options.literals[this.consume().text]}:this.peek().identifier?e=this.identifier():this.peek().constant?e=this.constant():this.throwError("not a primary expression",this.peek());t=this.expect("(","[",".");)"("===t.text?(e={type:yr.CallExpression,callee:e,arguments:this.parseArguments()},this.consume(")")):"["===t.text?(e={type:yr.MemberExpression,object:e,property:this.expression(),computed:!0},this.consume("]")):"."===t.text?e={type:yr.MemberExpression,object:e,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return e},filter:function(e){for(var t=[e],n={type:yr.CallExpression,callee:this.identifier(),arguments:t,filter:!0};this.expect(":");)t.push(this.expression());return n},parseArguments:function(){var e=[];if(")"!==this.peekToken().text)do{e.push(this.filterChain())}while(this.expect(","));return e},identifier:function(){var e=this.consume();return e.identifier||this.throwError("is not a valid identifier",e),{type:yr.Identifier,name:e.text}},constant:function(){return{type:yr.Literal,value:this.consume().value}},arrayDeclaration:function(){var e=[];if("]"!==this.peekToken().text)do{if(this.peek("]"))break;e.push(this.expression())}while(this.expect(","));return this.consume("]"),{type:yr.ArrayExpression,elements:e}},object:function(){var e,t=[];if("}"!==this.peekToken().text)do{if(this.peek("}"))break;e={type:yr.Property,kind:"init"},this.peek().constant?(e.key=this.constant(),e.computed=!1,this.consume(":"),e.value=this.expression()):this.peek().identifier?(e.key=this.identifier(),e.computed=!1,this.peek(":")?(this.consume(":"),e.value=this.expression()):e.value=e.key):this.peek("[")?(this.consume("["),e.key=this.expression(),this.consume("]"),e.computed=!0,this.consume(":"),e.value=this.expression()):this.throwError("invalid key",this.peek()),t.push(e)}while(this.expect(","));return this.consume("}"),{type:yr.ObjectExpression,properties:t}},throwError:function(e,t){throw Ar("syntax","Syntax Error: Token '{0}' {1} at column {2} of the expression [{3}] starting at [{4}].",t.text,e,t.index+1,this.text,this.text.substring(t.index))},consume:function(e){if(0===this.tokens.length)throw Ar("ueoe","Unexpected end of expression: {0}",this.text);var t=this.expect(e);return t||this.throwError("is unexpected, expecting ["+e+"]",this.peek()),t},peekToken:function(){if(0===this.tokens.length)throw Ar("ueoe","Unexpected end of expression: {0}",this.text);return this.tokens[0]},peek:function(e,t,n,r){return this.peekAhead(0,e,t,n,r)},peekAhead:function(e,t,n,r,i){if(this.tokens.length>e){var a=this.tokens[e],o=a.text;if(o===t||o===n||o===r||o===i||!t&&!n&&!r&&!i)return a}return!1},expect:function(e,t,n,r){var i=this.peek(e,t,n,r);return!!i&&(this.tokens.shift(),i)},selfReferential:{this:{type:yr.ThisExpression},$locals:{type:yr.LocalsExpression}}};function br(e,t,n){var r,i,a,o=e.isPure=function(e,t){switch(e.type){case yr.MemberExpression:if(e.computed)return!1;break;case yr.UnaryExpression:return 1;case yr.BinaryExpression:return"+"!==e.operator&&1;case yr.CallExpression:return!1}return void 0===t?2:t}(e,n);switch(e.type){case yr.Program:r=!0,w(e.body,(function(e){br(e.expression,t,o),r=r&&e.expression.constant})),e.constant=r;break;case yr.Literal:e.constant=!0,e.toWatch=[];break;case yr.UnaryExpression:br(e.argument,t,o),e.constant=e.argument.constant,e.toWatch=e.argument.toWatch;break;case yr.BinaryExpression:br(e.left,t,o),br(e.right,t,o),e.constant=e.left.constant&&e.right.constant,e.toWatch=e.left.toWatch.concat(e.right.toWatch);break;case yr.LogicalExpression:br(e.left,t,o),br(e.right,t,o),e.constant=e.left.constant&&e.right.constant,e.toWatch=e.constant?[]:[e];break;case yr.ConditionalExpression:br(e.test,t,o),br(e.alternate,t,o),br(e.consequent,t,o),e.constant=e.test.constant&&e.alternate.constant&&e.consequent.constant,e.toWatch=e.constant?[]:[e];break;case yr.Identifier:e.constant=!1,e.toWatch=[e];break;case yr.MemberExpression:br(e.object,t,o),e.computed&&br(e.property,t,o),e.constant=e.object.constant&&(!e.computed||e.property.constant),e.toWatch=e.constant?[]:[e];break;case yr.CallExpression:a=!!e.filter&&function(e,t){return!e(t).$stateful}(t,e.callee.name),r=a,i=[],w(e.arguments,(function(e){br(e,t,o),r=r&&e.constant,i.push.apply(i,e.toWatch)})),e.constant=r,e.toWatch=a?i:[e];break;case yr.AssignmentExpression:br(e.left,t,o),br(e.right,t,o),e.constant=e.left.constant&&e.right.constant,e.toWatch=[e];break;case yr.ArrayExpression:r=!0,i=[],w(e.elements,(function(e){br(e,t,o),r=r&&e.constant,i.push.apply(i,e.toWatch)})),e.constant=r,e.toWatch=i;break;case yr.ObjectExpression:r=!0,i=[],w(e.properties,(function(e){br(e.value,t,o),r=r&&e.value.constant,i.push.apply(i,e.value.toWatch),e.computed&&(br(e.key,t,!1),r=r&&e.key.constant,i.push.apply(i,e.key.toWatch))})),e.constant=r,e.toWatch=i;break;case yr.ThisExpression:case yr.LocalsExpression:e.constant=!1,e.toWatch=[]}}function Ir(e){if(1===e.length){var t=e[0].expression,n=t.toWatch;return 1!==n.length||n[0]!==t?n:void 0}}function wr(e){return e.type===yr.Identifier||e.type===yr.MemberExpression}function Cr(e){if(1===e.body.length&&wr(e.body[0].expression))return{type:yr.AssignmentExpression,left:e.body[0].expression,right:{type:yr.NGValueParameter},operator:"="}}function Br(e){this.$filter=e}function Er(e){this.$filter=e}function _r(e,t,n){this.ast=new yr(e,n),this.astCompiler=n.csp?new Er(t):new Br(t)}function kr(e){return Y(e.valueOf)?e.valueOf():fr.call(e)}function Qr(){var e,t,n=je(),r={true:!0,false:!1,null:null,undefined:void 0};this.addLiteral=function(e,t){r[e]=t},this.setIdentifierFns=function(n,r){return e=n,t=r,this},this.$get=["$filter",function(i){var a={csp:ce().noUnsafeEval,literals:ae(r),isIdentifierStart:Y(e)&&e,isIdentifierContinue:Y(t)&&t};return o.$$getAst=function(e){return new _r(new gr(a),i,a).getAst(e).ast},o;function o(e,t){var r,o;switch(typeof e){case"string":if(e=e.trim(),!(r=n[o=e]))r=new _r(new gr(a),i,a).parse(e),n[o]=f(r);return h(r,t);case"function":return h(e,t);default:return h(M,t)}}function s(e,t,n){return null==e||null==t?e===t:!("object"==typeof e&&"object"==typeof(e=kr(e))&&!n)&&(e===t||e!=e&&t!=t)}function c(e,t,n,r,i){var a,o=r.inputs;if(1===o.length){var c=s;return o=o[0],e.$watch((function(e){var t=o(e);return s(t,c,o.isPure)||(a=r(e,void 0,void 0,[t]),c=t&&kr(t)),a}),t,n,i)}for(var u=[],l=[],A=0,f=o.length;A<f;A++)u[A]=s,l[A]=null;return e.$watch((function(e){for(var t=!1,n=0,i=o.length;n<i;n++){var c=o[n](e);(t||(t=!s(c,u[n],o[n].isPure)))&&(l[n]=c,u[n]=c&&kr(c))}return t&&(a=r(e,void 0,void 0,l)),a}),t,n,i)}function u(e,t,n,r,i){var a,o,s=r.literal?l:j,c=r.$$intercepted||r,u=r.$$interceptor||F,A=r.inputs&&!c.inputs;return p.literal=r.literal,p.constant=r.constant,p.inputs=r.inputs,f(p),a=e.$watch(p,t,n,i);function h(){s(o)&&a()}function p(e,t,n,r){return o=A&&r?r[0]:c(e,t,n,r),s(o)&&e.$$postDigest(h),u(o)}}function l(e){var t=!0;return w(e,(function(e){j(e)||(t=!1)})),t}function A(e,t,n,r){var i=e.$watch((function(e){return i(),r(e)}),t,n);return i}function f(e){return e.constant?e.$$watchDelegate=A:e.oneTime?e.$$watchDelegate=u:e.inputs&&(e.$$watchDelegate=c),e}function h(e,t){if(!t)return e;e.$$interceptor&&(t=function(e,t){function n(n){return t(e(n))}return n.$stateful=e.$stateful||t.$stateful,n.$$pure=e.$$pure&&t.$$pure,n}(e.$$interceptor,t),e=e.$$intercepted);var n=!1,r=function(r,i,a,o){var s=n&&o?o[0]:e(r,i,a,o);return t(s)};return r.$$intercepted=e,r.$$interceptor=t,r.literal=e.literal,r.oneTime=e.oneTime,r.constant=e.constant,t.$stateful||(n=!e.inputs,r.inputs=e.inputs?e.inputs:[e],t.$$pure||(r.inputs=r.inputs.map((function(e){return 2===e.isPure?function(t){return e(t)}:e})))),f(r)}}]}function Sr(){var e=!0;this.$get=["$rootScope","$exceptionHandler",function(t,n){return Dr((function(e){t.$evalAsync(e)}),n,e)}],this.errorOnUnhandledRejections=function(t){return j(t)?(e=t,this):e}}function xr(){var e=!0;this.$get=["$browser","$exceptionHandler",function(t,n){return Dr((function(e){t.defer(e)}),n,e)}],this.errorOnUnhandledRejections=function(t){return j(t)?(e=t,this):e}}function Dr(e,t,n){var r=i("$q",TypeError),a=0,o=[];function s(){return new c}function c(){var e=this.promise=new u;this.resolve=function(t){f(e,t)},this.reject=function(t){h(e,t)},this.notify=function(t){d(e,t)}}function u(){this.$$state={status:0}}function l(){for(;!a&&o.length;){var e=o.shift();if(!Pr(e)){Mr(e);var n="Possibly unhandled rejection: "+Le(e.value);$(e.value)?t(e.value,n):t(n)}}}function A(r){!n||r.pending||2!==r.status||Pr(r)||(0===a&&0===o.length&&e(l),o.push(r)),!r.processScheduled&&r.pending&&(r.processScheduled=!0,++a,e((function(){!function(r){var i,o,s;s=r.pending,r.processScheduled=!1,r.pending=void 0;try{for(var c=0,u=s.length;c<u;++c){Mr(r),o=s[c][0],i=s[c][r.status];try{Y(i)?f(o,i(r.value)):1===r.status?f(o,r.value):h(o,r.value)}catch(e){h(o,e),e&&!0===e.$$passToExceptionHandler&&t(e)}}}finally{--a,n&&0===a&&e(l)}}(r)})))}function f(e,t){e.$$state.status||(t===e?p(e,r("qcycle","Expected promise to be resolved with value other than itself '{0}'",t)):function e(t,n){var r,i=!1;try{(H(n)||Y(n))&&(r=n.then),Y(r)?(t.$$state.status=-1,r.call(n,a,o,(function(e){d(t,e)}))):(t.$$state.value=n,t.$$state.status=1,A(t.$$state))}catch(e){o(e)}function a(n){i||(i=!0,e(t,n))}function o(e){i||(i=!0,p(t,e))}}(e,t))}function h(e,t){e.$$state.status||p(e,t)}function p(e,t){e.$$state.value=t,e.$$state.status=2,A(e.$$state)}function d(n,r){var i=n.$$state.pending;n.$$state.status<=0&&i&&i.length&&e((function(){for(var e,n,a=0,o=i.length;a<o;a++){n=i[a][0],e=i[a][3];try{d(n,Y(e)?e(r):r)}catch(e){t(e)}}}))}function g(e){var t=new u;return h(t,e),t}function y(e,t,n){var r=null;try{Y(n)&&(r=n())}catch(e){return g(e)}return W(r)?r.then((function(){return t(e)}),g):t(e)}function v(e,t,n,r){var i=new u;return f(i,e),i.then(t,n,r)}Q(u.prototype,{then:function(e,t,n){if(T(e)&&T(t)&&T(n))return this;var r=new u;return this.$$state.pending=this.$$state.pending||[],this.$$state.pending.push([r,e,t,n]),this.$$state.status>0&&A(this.$$state),r},catch:function(e){return this.then(null,e)},finally:function(e,t){return this.then((function(t){return y(t,m,e)}),(function(t){return y(t,g,e)}),t)}});var m=v;function b(e){if(!Y(e))throw r("norslvr","Expected resolverFn, got '{0}'",e);var t=new u;return e((function(e){f(t,e)}),(function(e){h(t,e)})),t}return b.prototype=u.prototype,b.defer=s,b.reject=g,b.when=v,b.resolve=m,b.all=function(e){var t=new u,n=0,r=G(e)?[]:{};return w(e,(function(e,i){n++,v(e).then((function(e){r[i]=e,--n||f(t,r)}),(function(e){h(t,e)}))})),0===n&&f(t,r),t},b.race=function(e){var t=s();return w(e,(function(e){v(e).then(t.resolve,t.reject)})),t.promise},b}function Pr(e){return!!e.pur}function Mr(e){e.pur=!0}function Fr(e){e.$$state&&Mr(e.$$state)}function Or(){this.$get=["$window","$timeout",function(e,t){var n=e.requestAnimationFrame||e.webkitRequestAnimationFrame,r=e.cancelAnimationFrame||e.webkitCancelAnimationFrame||e.webkitCancelRequestAnimationFrame,i=!!n,a=i?function(e){var t=n(e);return function(){r(t)}}:function(e){var n=t(e,16.66,!1);return function(){t.cancel(n)}};return a.supported=i,a}]}function Rr(){var e=10,t=i("$rootScope"),n=null,r=null;this.digestTtl=function(t){return arguments.length&&(e=t),e},this.$get=["$exceptionHandler","$parse","$browser",function(i,o,s){function c(e){e.currentScope.$$destroyed=!0}function u(){this.$id=E(),this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null,this.$root=this,this.$$destroyed=!1,this.$$suspended=!1,this.$$listeners={},this.$$listenerCount={},this.$$watchersCount=0,this.$$isolateBindings=null}u.prototype={constructor:u,$new:function(e,t){var n;return t=t||this,e?(n=new u).$root=this.$root:(this.$$ChildScope||(this.$$ChildScope=function(e){function t(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null,this.$$listeners={},this.$$listenerCount={},this.$$watchersCount=0,this.$id=E(),this.$$ChildScope=null,this.$$suspended=!1}return t.prototype=e,t}(this)),n=new this.$$ChildScope),n.$parent=t,n.$$prevSibling=t.$$childTail,t.$$childHead?(t.$$childTail.$$nextSibling=n,t.$$childTail=n):t.$$childHead=t.$$childTail=n,(e||t!==this)&&n.$on("$destroy",c),n},$watch:function(e,t,r,i){var a=o(e),s=Y(t)?t:M;if(a.$$watchDelegate)return a.$$watchDelegate(this,s,r,a,e);var c=this,u=c.$$watchers,l={fn:s,last:b,get:a,exp:i||e,eq:!!r};return n=null,u||((u=c.$$watchers=[]).$$digestWatchIndex=-1),u.unshift(l),u.$$digestWatchIndex++,v(this,1),function(){var e=ie(u,l);e>=0&&(v(c,-1),e<u.$$digestWatchIndex&&u.$$digestWatchIndex--),n=null}},$watchGroup:function(e,t){var n=new Array(e.length),r=new Array(e.length),i=[],a=this,o=!1,s=!0;if(!e.length){var c=!0;return a.$evalAsync((function(){c&&t(r,r,a)})),function(){c=!1}}if(1===e.length)return this.$watch(e[0],(function(e,i,a){r[0]=e,n[0]=i,t(r,e===i?r:n,a)}));function u(){o=!1;try{s?(s=!1,t(r,r,a)):t(r,n,a)}finally{for(var i=0;i<e.length;i++)n[i]=r[i]}}return w(e,(function(e,t){var n=a.$watch(e,(function(e){r[t]=e,o||(o=!0,a.$evalAsync(u))}));i.push(n)})),function(){for(;i.length;)i.shift()()}},$watchCollection:function(e,t){d.$$pure=o(e).literal,d.$stateful=!d.$$pure;var n,r,i,a=this,s=t.length>1,c=0,u=o(e,d),A=[],f={},h=!0,p=0;function d(e){var t,i,a,o;if(!T(n=e)){if(H(n))if(I(n)){r!==A&&(p=(r=A).length=0,c++),t=n.length,p!==t&&(c++,r.length=p=t);for(var s=0;s<t;s++)o=r[s],a=n[s],o!=o&&a!=a||o===a||(c++,r[s]=a)}else{for(i in r!==f&&(r=f={},p=0,c++),t=0,n)l.call(n,i)&&(t++,a=n[i],o=r[i],i in r?o!=o&&a!=a||o===a||(c++,r[i]=a):(p++,r[i]=a,c++));if(p>t)for(i in c++,r)l.call(n,i)||(p--,delete r[i])}else r!==n&&(r=n,c++);return c}}return this.$watch(u,(function(){if(h?(h=!1,t(n,n,a)):t(n,i,a),s)if(H(n))if(I(n)){i=new Array(n.length);for(var e=0;e<n.length;e++)i[e]=n[e]}else for(var r in i={},n)l.call(n,r)&&(i[r]=n[r]);else i=n}))},$digest:function(){var a,o,c,u,l,p,v,m,I,w=e,B=f.length?A:this,E=[];g("$digest"),s.$$checkUrlChange(),this===A&&null!==r&&(s.defer.cancel(r),C()),n=null;do{l=!1,v=B;for(var _=0;_<f.length;_++){try{(0,(I=f[_]).fn)(I.scope,I.locals)}catch(e){i(e)}n=null}f.length=0;e:do{if(u=!v.$$suspended&&v.$$watchers)for(u.$$digestWatchIndex=u.length;u.$$digestWatchIndex--;)try{if(a=u[u.$$digestWatchIndex])if((o=(0,a.get)(v))===(c=a.last)||(a.eq?se(o,c):D(o)&&D(c))){if(a===n){l=!1;break e}}else l=!0,n=a,a.last=a.eq?ae(o,null):o,(0,a.fn)(o,c===b?o:c,v),w<5&&(E[m=4-w]||(E[m]=[]),E[m].push({msg:Y(a.exp)?"fn: "+(a.exp.name||a.exp.toString()):a.exp,newVal:o,oldVal:c}))}catch(e){i(e)}if(!(p=!v.$$suspended&&v.$$watchersCount&&v.$$childHead||v!==B&&v.$$nextSibling))for(;v!==B&&!(p=v.$$nextSibling);)v=v.$parent}while(v=p);if((l||f.length)&&!w--)throw y(),t("infdig","{0} $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: {1}",e,E)}while(l||f.length);for(y();d<h.length;)try{h[d++]()}catch(e){i(e)}h.length=d=0,s.$$checkUrlChange()},$suspend:function(){this.$$suspended=!0},$isSuspended:function(){return this.$$suspended},$resume:function(){this.$$suspended=!1},$destroy:function(){if(!this.$$destroyed){var e=this.$parent;for(var t in this.$broadcast("$destroy"),this.$$destroyed=!0,this===A&&s.$$applicationDestroyed(),v(this,-this.$$watchersCount),this.$$listenerCount)m(this,this.$$listenerCount[t],t);e&&e.$$childHead===this&&(e.$$childHead=this.$$nextSibling),e&&e.$$childTail===this&&(e.$$childTail=this.$$prevSibling),this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling),this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling),this.$destroy=this.$digest=this.$apply=this.$evalAsync=this.$applyAsync=M,this.$on=this.$watch=this.$watchGroup=function(){return M},this.$$listeners={},this.$$nextSibling=null,function e(t){9===a&&(t.$$childHead&&e(t.$$childHead),t.$$nextSibling&&e(t.$$nextSibling)),t.$parent=t.$$nextSibling=t.$$prevSibling=t.$$childHead=t.$$childTail=t.$root=t.$$watchers=null}(this)}},$eval:function(e,t){return o(e)(this,t)},$evalAsync:function(e,t){A.$$phase||f.length||s.defer((function(){f.length&&A.$digest()}),null,"$evalAsync"),f.push({scope:this,fn:o(e),locals:t})},$$postDigest:function(e){h.push(e)},$apply:function(e){try{g("$apply");try{return this.$eval(e)}finally{y()}}catch(e){i(e)}finally{try{A.$digest()}catch(e){throw i(e),e}}},$applyAsync:function(e){var t=this;e&&p.push((function(){t.$eval(e)})),e=o(e),null===r&&(r=s.defer((function(){A.$apply(C)}),null,"$applyAsync"))},$on:function(e,t){var n=this.$$listeners[e];n||(this.$$listeners[e]=n=[]),n.push(t);var r=this;do{r.$$listenerCount[e]||(r.$$listenerCount[e]=0),r.$$listenerCount[e]++}while(r=r.$parent);var i=this;return function(){var r=n.indexOf(t);-1!==r&&(delete n[r],m(i,1,e))}},$emit:function(e,t){var n,r,a,o=[],s=this,c=!1,u={name:e,targetScope:s,stopPropagation:function(){c=!0},preventDefault:function(){u.defaultPrevented=!0},defaultPrevented:!1},l=le([u],arguments,1);do{for(n=s.$$listeners[e]||o,u.currentScope=s,r=0,a=n.length;r<a;r++)if(n[r])try{n[r].apply(null,l)}catch(e){i(e)}else n.splice(r,1),r--,a--;if(c)break;s=s.$parent}while(s);return u.currentScope=null,u},$broadcast:function(e,t){var n=this,r=n,a=n,o={name:e,targetScope:n,preventDefault:function(){o.defaultPrevented=!0},defaultPrevented:!1};if(!n.$$listenerCount[e])return o;for(var s,c,u,l=le([o],arguments,1);r=a;){for(o.currentScope=r,c=0,u=(s=r.$$listeners[e]||[]).length;c<u;c++)if(s[c])try{s[c].apply(null,l)}catch(e){i(e)}else s.splice(c,1),c--,u--;if(!(a=r.$$listenerCount[e]&&r.$$childHead||r!==n&&r.$$nextSibling))for(;r!==n&&!(a=r.$$nextSibling);)r=r.$parent}return o.currentScope=null,o}};var A=new u,f=A.$$asyncQueue=[],h=A.$$postDigestQueue=[],p=A.$$applyAsyncQueue=[],d=0;return A;function g(e){if(A.$$phase)throw t("inprog","{0} already in progress",A.$$phase);A.$$phase=e}function y(){A.$$phase=null}function v(e,t){do{e.$$watchersCount+=t}while(e=e.$parent)}function m(e,t,n){do{e.$$listenerCount[n]-=t,0===e.$$listenerCount[n]&&delete e.$$listenerCount[n]}while(e=e.$parent)}function b(){}function C(){for(;p.length;)try{p.shift()()}catch(e){i(e)}r=null}}]}function Tr(){var e=/^\s*(https?|s?ftp|mailto|tel|file):/,t=/^\s*((https?|ftp|file|blob):|data:image\/)/;this.aHrefSanitizationWhitelist=function(t){return j(t)?(e=t,this):e},this.imgSrcSanitizationWhitelist=function(e){return j(e)?(t=e,this):t},this.$get=function(){return function(n,r){var i=r?t:e,a=ri(n&&n.trim()).href;return""===a||a.match(i)?n:"unsafe:"+a}}}Br.prototype={compile:function(e){var t=this;this.state={nextId:0,filters:{},fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]},br(e,t.$filter);var n,r="";if(this.stage="assign",n=Cr(e)){this.state.computing="assign";var i=this.nextId();this.recurse(n,i),this.return_(i),r="fn.assign="+this.generateFunction("assign","s,v,l")}var a=Ir(e.body);t.stage="inputs",w(a,(function(e,n){var r="fn"+n;t.state[r]={vars:[],body:[],own:{}},t.state.computing=r;var i=t.nextId();t.recurse(e,i),t.return_(i),t.state.inputs.push({name:r,isPure:e.isPure}),e.watchId=n})),this.state.computing="fn",this.stage="main",this.recurse(e);var o='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+r+this.watchFns()+"return fn;",s=new Function("$filter","getStringValue","ifDefined","plus",o)(this.$filter,hr,vr,mr);return this.state=this.stage=void 0,s},USE:"use",STRICT:"strict",watchFns:function(){var e=[],t=this.state.inputs,n=this;return w(t,(function(t){e.push("var "+t.name+"="+n.generateFunction(t.name,"s")),t.isPure&&e.push(t.name,".isPure="+JSON.stringify(t.isPure)+";")})),t.length&&e.push("fn.inputs=["+t.map((function(e){return e.name})).join(",")+"];"),e.join("")},generateFunction:function(e,t){return"function("+t+"){"+this.varsPrefix(e)+this.body(e)+"};"},filterPrefix:function(){var e=[],t=this;return w(this.state.filters,(function(n,r){e.push(n+"=$filter("+t.escape(r)+")")})),e.length?"var "+e.join(",")+";":""},varsPrefix:function(e){return this.state[e].vars.length?"var "+this.state[e].vars.join(",")+";":""},body:function(e){return this.state[e].body.join("")},recurse:function(e,t,n,r,i,a){var o,s,c,u,l,A=this;if(r=r||M,!a&&j(e.watchId))return t=t||this.nextId(),void this.if_("i",this.lazyAssign(t,this.computedMember("i",e.watchId)),this.lazyRecurse(e,t,n,r,i,!0));switch(e.type){case yr.Program:w(e.body,(function(t,n){A.recurse(t.expression,void 0,void 0,(function(e){s=e})),n!==e.body.length-1?A.current().body.push(s,";"):A.return_(s)}));break;case yr.Literal:u=this.escape(e.value),this.assign(t,u),r(t||u);break;case yr.UnaryExpression:this.recurse(e.argument,void 0,void 0,(function(e){s=e})),u=e.operator+"("+this.ifDefined(s,0)+")",this.assign(t,u),r(u);break;case yr.BinaryExpression:this.recurse(e.left,void 0,void 0,(function(e){o=e})),this.recurse(e.right,void 0,void 0,(function(e){s=e})),u="+"===e.operator?this.plus(o,s):"-"===e.operator?this.ifDefined(o,0)+e.operator+this.ifDefined(s,0):"("+o+")"+e.operator+"("+s+")",this.assign(t,u),r(u);break;case yr.LogicalExpression:t=t||this.nextId(),A.recurse(e.left,t),A.if_("&&"===e.operator?t:A.not(t),A.lazyRecurse(e.right,t)),r(t);break;case yr.ConditionalExpression:t=t||this.nextId(),A.recurse(e.test,t),A.if_(t,A.lazyRecurse(e.alternate,t),A.lazyRecurse(e.consequent,t)),r(t);break;case yr.Identifier:t=t||this.nextId(),n&&(n.context="inputs"===A.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",e.name)+"?l:s"),n.computed=!1,n.name=e.name),A.if_("inputs"===A.stage||A.not(A.getHasOwnProperty("l",e.name)),(function(){A.if_("inputs"===A.stage||"s",(function(){i&&1!==i&&A.if_(A.isNull(A.nonComputedMember("s",e.name)),A.lazyAssign(A.nonComputedMember("s",e.name),"{}")),A.assign(t,A.nonComputedMember("s",e.name))}))}),t&&A.lazyAssign(t,A.nonComputedMember("l",e.name))),r(t);break;case yr.MemberExpression:o=n&&(n.context=this.nextId())||this.nextId(),t=t||this.nextId(),A.recurse(e.object,o,void 0,(function(){A.if_(A.notNull(o),(function(){e.computed?(s=A.nextId(),A.recurse(e.property,s),A.getStringValue(s),i&&1!==i&&A.if_(A.not(A.computedMember(o,s)),A.lazyAssign(A.computedMember(o,s),"{}")),u=A.computedMember(o,s),A.assign(t,u),n&&(n.computed=!0,n.name=s)):(i&&1!==i&&A.if_(A.isNull(A.nonComputedMember(o,e.property.name)),A.lazyAssign(A.nonComputedMember(o,e.property.name),"{}")),u=A.nonComputedMember(o,e.property.name),A.assign(t,u),n&&(n.computed=!1,n.name=e.property.name))}),(function(){A.assign(t,"undefined")})),r(t)}),!!i);break;case yr.CallExpression:t=t||this.nextId(),e.filter?(s=A.filter(e.callee.name),c=[],w(e.arguments,(function(e){var t=A.nextId();A.recurse(e,t),c.push(t)})),u=s+"("+c.join(",")+")",A.assign(t,u),r(t)):(s=A.nextId(),o={},c=[],A.recurse(e.callee,s,o,(function(){A.if_(A.notNull(s),(function(){w(e.arguments,(function(t){A.recurse(t,e.constant?void 0:A.nextId(),void 0,(function(e){c.push(e)}))})),u=o.name?A.member(o.context,o.name,o.computed)+"("+c.join(",")+")":s+"("+c.join(",")+")",A.assign(t,u)}),(function(){A.assign(t,"undefined")})),r(t)})));break;case yr.AssignmentExpression:s=this.nextId(),o={},this.recurse(e.left,void 0,o,(function(){A.if_(A.notNull(o.context),(function(){A.recurse(e.right,s),u=A.member(o.context,o.name,o.computed)+e.operator+s,A.assign(t,u),r(t||u)}))}),1);break;case yr.ArrayExpression:c=[],w(e.elements,(function(t){A.recurse(t,e.constant?void 0:A.nextId(),void 0,(function(e){c.push(e)}))})),u="["+c.join(",")+"]",this.assign(t,u),r(t||u);break;case yr.ObjectExpression:c=[],l=!1,w(e.properties,(function(e){e.computed&&(l=!0)})),l?(t=t||this.nextId(),this.assign(t,"{}"),w(e.properties,(function(e){e.computed?(o=A.nextId(),A.recurse(e.key,o)):o=e.key.type===yr.Identifier?e.key.name:""+e.key.value,s=A.nextId(),A.recurse(e.value,s),A.assign(A.member(t,o,e.computed),s)}))):(w(e.properties,(function(t){A.recurse(t.value,e.constant?void 0:A.nextId(),void 0,(function(e){c.push(A.escape(t.key.type===yr.Identifier?t.key.name:""+t.key.value)+":"+e)}))})),u="{"+c.join(",")+"}",this.assign(t,u)),r(t||u);break;case yr.ThisExpression:this.assign(t,"s"),r(t||"s");break;case yr.LocalsExpression:this.assign(t,"l"),r(t||"l");break;case yr.NGValueParameter:this.assign(t,"v"),r(t||"v")}},getHasOwnProperty:function(e,t){var n=e+"."+t,r=this.current().own;return r.hasOwnProperty(n)||(r[n]=this.nextId(!1,e+"&&("+this.escape(t)+" in "+e+")")),r[n]},assign:function(e,t){if(e)return this.current().body.push(e,"=",t,";"),e},filter:function(e){return this.state.filters.hasOwnProperty(e)||(this.state.filters[e]=this.nextId(!0)),this.state.filters[e]},ifDefined:function(e,t){return"ifDefined("+e+","+this.escape(t)+")"},plus:function(e,t){return"plus("+e+","+t+")"},return_:function(e){this.current().body.push("return ",e,";")},if_:function(e,t,n){if(!0===e)t();else{var r=this.current().body;r.push("if(",e,"){"),t(),r.push("}"),n&&(r.push("else{"),n(),r.push("}"))}},not:function(e){return"!("+e+")"},isNull:function(e){return e+"==null"},notNull:function(e){return e+"!=null"},nonComputedMember:function(e,t){return/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(t)?e+"."+t:e+'["'+t.replace(/[^$_a-zA-Z0-9]/g,this.stringEscapeFn)+'"]'},computedMember:function(e,t){return e+"["+t+"]"},member:function(e,t,n){return n?this.computedMember(e,t):this.nonComputedMember(e,t)},getStringValue:function(e){this.assign(e,"getStringValue("+e+")")},lazyRecurse:function(e,t,n,r,i,a){var o=this;return function(){o.recurse(e,t,n,r,i,a)}},lazyAssign:function(e,t){var n=this;return function(){n.assign(e,t)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(e){return"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)},escape:function(e){if(N(e))return"'"+e.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(L(e))return e.toString();if(!0===e)return"true";if(!1===e)return"false";if(null===e)return"null";if(void 0===e)return"undefined";throw Ar("esc","IMPOSSIBLE")},nextId:function(e,t){var n="v"+this.state.nextId++;return e||this.current().vars.push(n+(t?"="+t:"")),n},current:function(){return this.state[this.state.computing]}},Er.prototype={compile:function(e){var t,n,r=this;br(e,r.$filter),(t=Cr(e))&&(n=this.recurse(t));var i,a=Ir(e.body);a&&(i=[],w(a,(function(e,t){var n=r.recurse(e);n.isPure=e.isPure,e.input=n,i.push(n),e.watchId=t})));var o=[];w(e.body,(function(e){o.push(r.recurse(e.expression))}));var s=0===e.body.length?M:1===e.body.length?o[0]:function(e,t){var n;return w(o,(function(r){n=r(e,t)})),n};return n&&(s.assign=function(e,t,r){return n(e,r,t)}),i&&(s.inputs=i),s},recurse:function(e,t,n){var r,i,a,o=this;if(e.input)return this.inputs(e.input,e.watchId);switch(e.type){case yr.Literal:return this.value(e.value,t);case yr.UnaryExpression:return i=this.recurse(e.argument),this["unary"+e.operator](i,t);case yr.BinaryExpression:case yr.LogicalExpression:return r=this.recurse(e.left),i=this.recurse(e.right),this["binary"+e.operator](r,i,t);case yr.ConditionalExpression:return this["ternary?:"](this.recurse(e.test),this.recurse(e.alternate),this.recurse(e.consequent),t);case yr.Identifier:return o.identifier(e.name,t,n);case yr.MemberExpression:return r=this.recurse(e.object,!1,!!n),e.computed||(i=e.property.name),e.computed&&(i=this.recurse(e.property)),e.computed?this.computedMember(r,i,t,n):this.nonComputedMember(r,i,t,n);case yr.CallExpression:return a=[],w(e.arguments,(function(e){a.push(o.recurse(e))})),e.filter&&(i=this.$filter(e.callee.name)),e.filter||(i=this.recurse(e.callee,!0)),e.filter?function(e,n,r,o){for(var s=[],c=0;c<a.length;++c)s.push(a[c](e,n,r,o));var u=i.apply(void 0,s,o);return t?{context:void 0,name:void 0,value:u}:u}:function(e,n,r,o){var s,c=i(e,n,r,o);if(null!=c.value){for(var u=[],l=0;l<a.length;++l)u.push(a[l](e,n,r,o));s=c.value.apply(c.context,u)}return t?{value:s}:s};case yr.AssignmentExpression:return r=this.recurse(e.left,!0,1),i=this.recurse(e.right),function(e,n,a,o){var s=r(e,n,a,o),c=i(e,n,a,o);return s.context[s.name]=c,t?{value:c}:c};case yr.ArrayExpression:return a=[],w(e.elements,(function(e){a.push(o.recurse(e))})),function(e,n,r,i){for(var o=[],s=0;s<a.length;++s)o.push(a[s](e,n,r,i));return t?{value:o}:o};case yr.ObjectExpression:return a=[],w(e.properties,(function(e){e.computed?a.push({key:o.recurse(e.key),computed:!0,value:o.recurse(e.value)}):a.push({key:e.key.type===yr.Identifier?e.key.name:""+e.key.value,computed:!1,value:o.recurse(e.value)})})),function(e,n,r,i){for(var o={},s=0;s<a.length;++s)a[s].computed?o[a[s].key(e,n,r,i)]=a[s].value(e,n,r,i):o[a[s].key]=a[s].value(e,n,r,i);return t?{value:o}:o};case yr.ThisExpression:return function(e){return t?{value:e}:e};case yr.LocalsExpression:return function(e,n){return t?{value:n}:n};case yr.NGValueParameter:return function(e,n,r){return t?{value:r}:r}}},"unary+":function(e,t){return function(n,r,i,a){var o=e(n,r,i,a);return o=j(o)?+o:0,t?{value:o}:o}},"unary-":function(e,t){return function(n,r,i,a){var o=e(n,r,i,a);return o=j(o)?-o:-0,t?{value:o}:o}},"unary!":function(e,t){return function(n,r,i,a){var o=!e(n,r,i,a);return t?{value:o}:o}},"binary+":function(e,t,n){return function(r,i,a,o){var s=mr(e(r,i,a,o),t(r,i,a,o));return n?{value:s}:s}},"binary-":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o),c=t(r,i,a,o),u=(j(s)?s:0)-(j(c)?c:0);return n?{value:u}:u}},"binary*":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)*t(r,i,a,o);return n?{value:s}:s}},"binary/":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)/t(r,i,a,o);return n?{value:s}:s}},"binary%":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)%t(r,i,a,o);return n?{value:s}:s}},"binary===":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)===t(r,i,a,o);return n?{value:s}:s}},"binary!==":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)!==t(r,i,a,o);return n?{value:s}:s}},"binary==":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)==t(r,i,a,o);return n?{value:s}:s}},"binary!=":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)!=t(r,i,a,o);return n?{value:s}:s}},"binary<":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)<t(r,i,a,o);return n?{value:s}:s}},"binary>":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)>t(r,i,a,o);return n?{value:s}:s}},"binary<=":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)<=t(r,i,a,o);return n?{value:s}:s}},"binary>=":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)>=t(r,i,a,o);return n?{value:s}:s}},"binary&&":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)&&t(r,i,a,o);return n?{value:s}:s}},"binary||":function(e,t,n){return function(r,i,a,o){var s=e(r,i,a,o)||t(r,i,a,o);return n?{value:s}:s}},"ternary?:":function(e,t,n,r){return function(i,a,o,s){var c=e(i,a,o,s)?t(i,a,o,s):n(i,a,o,s);return r?{value:c}:c}},value:function(e,t){return function(){return t?{context:void 0,name:void 0,value:e}:e}},identifier:function(e,t,n){return function(r,i,a,o){var s=i&&e in i?i:r;n&&1!==n&&s&&null==s[e]&&(s[e]={});var c=s?s[e]:void 0;return t?{context:s,name:e,value:c}:c}},computedMember:function(e,t,n,r){return function(i,a,o,s){var c,u,l=e(i,a,o,s);return null!=l&&(c=hr(c=t(i,a,o,s)),r&&1!==r&&l&&!l[c]&&(l[c]={}),u=l[c]),n?{context:l,name:c,value:u}:u}},nonComputedMember:function(e,t,n,r){return function(i,a,o,s){var c=e(i,a,o,s);r&&1!==r&&c&&null==c[t]&&(c[t]={});var u=null!=c?c[t]:void 0;return n?{context:c,name:t,value:u}:u}},inputs:function(e,t){return function(n,r,i,a){return a?a[t]:e(n,r,i)}}},_r.prototype={constructor:_r,parse:function(e){var t=this.getAst(e),n=this.astCompiler.compile(t.ast);return n.literal=function(e){return 0===e.body.length||1===e.body.length&&(e.body[0].expression.type===yr.Literal||e.body[0].expression.type===yr.ArrayExpression||e.body[0].expression.type===yr.ObjectExpression)}(t.ast),n.constant=function(e){return e.constant}(t.ast),n.oneTime=t.oneTime,n},getAst:function(e){var t=!1;return":"===(e=e.trim()).charAt(0)&&":"===e.charAt(1)&&(t=!0,e=e.substring(2)),{ast:this.ast.ast(e),oneTime:t}}};var jr=i("$sce"),Hr={HTML:"html",CSS:"css",MEDIA_URL:"mediaUrl",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},Ur=/_([a-z])/g;function Nr(e){return e.replace(Ur,qe)}function Lr(e){var t=[];return j(e)&&w(e,(function(e){t.push(function(e){if("self"===e)return e;if(N(e)){if(e.indexOf("***")>-1)throw jr("iwcard","Illegal sequence *** in string matcher. String: {0}",e);return e=ee(e).replace(/\\\*\\\*/g,".*").replace(/\\\*/g,"[^:/.?&;]*"),new RegExp("^"+e+"$")}if(J(e))return new RegExp("^"+e.source+"$");throw jr("imatcher",'Matchers may only be "self", string patterns or RegExp objects')}(e))})),t}function Kr(){this.SCE_CONTEXTS=Hr;var t=["self"],n=[];this.resourceUrlWhitelist=function(e){return arguments.length&&(t=Lr(e)),t},this.resourceUrlBlacklist=function(e){return arguments.length&&(n=Lr(e)),n},this.$get=["$injector","$$sanitizeUri",function(r,i){var a=function(e){throw jr("unsafe","Attempting to use an unsafe value in a safe context.")};function o(t,n){return"self"===t?ii(n,ti)||function(t){return ii(t,function(){if(e.document.baseURI)return e.document.baseURI;Zr||((Zr=e.document.createElement("a")).href=".",Zr=Zr.cloneNode(!1));return Zr.href}())}(n):!!t.exec(n.href)}function s(e){var t=function(e){this.$$unwrapTrustedValue=function(){return e}};return e&&(t.prototype=new e),t.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},t.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},t}r.has("$sanitize")&&(a=r.get("$sanitize"));var c=s(),u={};return u[Hr.HTML]=s(c),u[Hr.CSS]=s(c),u[Hr.MEDIA_URL]=s(c),u[Hr.URL]=s(u[Hr.MEDIA_URL]),u[Hr.JS]=s(c),u[Hr.RESOURCE_URL]=s(u[Hr.URL]),{trustAs:function(e,t){var n=u.hasOwnProperty(e)?u[e]:null;if(!n)throw jr("icontext","Attempted to trust a value in invalid context. Context: {0}; Value: {1}",e,t);if(null===t||T(t)||""===t)return t;if("string"!=typeof t)throw jr("itype","Attempted to trust a non-string value in a content requiring a string: Context: {0}",e);return new n(t)},getTrusted:function(e,r){if(null===r||T(r)||""===r)return r;var s=u.hasOwnProperty(e)?u[e]:null;if(s&&r instanceof s)return r.$$unwrapTrustedValue();if(Y(r.$$unwrapTrustedValue)&&(r=r.$$unwrapTrustedValue()),e===Hr.MEDIA_URL||e===Hr.URL)return i(r.toString(),e===Hr.MEDIA_URL);if(e===Hr.RESOURCE_URL){if(function(e){var r,i,a=ri(e.toString()),s=!1;for(r=0,i=t.length;r<i;r++)if(o(t[r],a)){s=!0;break}if(s)for(r=0,i=n.length;r<i;r++)if(o(n[r],a)){s=!1;break}return s}(r))return r;throw jr("insecurl","Blocked loading resource from url not allowed by $sceDelegate policy. URL: {0}",r.toString())}if(e===Hr.HTML)return a(r);throw jr("unsafe","Attempting to use an unsafe value in a safe context.")},valueOf:function(e){return e instanceof c?e.$$unwrapTrustedValue():e}}}]}function Gr(){var e=!0;this.enabled=function(t){return arguments.length&&(e=!!t),e},this.$get=["$parse","$sceDelegate",function(t,n){if(e&&a<8)throw jr("iequirks","Strict Contextual Escaping does not support Internet Explorer version < 11 in quirks mode. You can fix this by adding the text <!doctype html> to the top of your HTML document. See http://docs.angularjs.org/api/ng.$sce for more information.");var r=Ne(Hr);r.isEnabled=function(){return e},r.trustAs=n.trustAs,r.getTrusted=n.getTrusted,r.valueOf=n.valueOf,e||(r.trustAs=r.getTrusted=function(e,t){return t},r.valueOf=F),r.parseAs=function(e,n){var i=t(n);return i.literal&&i.constant?i:t(n,(function(t){return r.getTrusted(e,t)}))};var i=r.parseAs,o=r.getTrusted,s=r.trustAs;return w(Hr,(function(e,t){var n=A(t);r[Nr("parse_as_"+n)]=function(t){return i(e,t)},r[Nr("get_trusted_"+n)]=function(t){return o(e,t)},r[Nr("trust_as_"+n)]=function(t){return s(e,t)}})),r}]}function $r(){this.$get=["$window","$document",function(e,t){var n={},r=!(!(e.nw&&e.nw.process)&&e.chrome&&(e.chrome.app&&e.chrome.app.runtime||!e.chrome.app&&e.chrome.runtime&&e.chrome.runtime.id))&&e.history&&e.history.pushState,i=x((/android (\d+)/.exec(A((e.navigator||{}).userAgent))||[])[1]),o=/Boxee/i.test((e.navigator||{}).userAgent),s=t[0]||{},c=s.body&&s.body.style,u=!1,l=!1;return c&&(u=!!("transition"in c||"webkitTransition"in c),l=!!("animation"in c||"webkitAnimation"in c)),{history:!(!r||i<4||o),hasEvent:function(e){if("input"===e&&a)return!1;if(T(n[e])){var t=s.createElement("div");n[e]="on"+e in t}return n[e]},csp:ce(),transitions:u,animations:l,android:i}}]}function Yr(){this.$get=O((function(e){return new Jr(e)}))}function Jr(e){var t={},n=[],r=this.ALL_TASKS_TYPE="$$all$$",i=this.DEFAULT_TASK_TYPE="$$default$$";function a(){var e=n.pop();return e&&e.cb}function o(e){for(var t=n.length-1;t>=0;--t){var r=n[t];if(r.type===e)return n.splice(t,1),r.cb}}this.completeTask=function(n,s){s=s||i;try{n()}finally{!function(e){t[e=e||i]&&(t[e]--,t[r]--)}(s);var c=t[s],u=t[r];if(!u||!c)for(var l,A=u?o:a;l=A(s);)try{l()}catch(t){e.error(t)}}},this.incTaskCount=function(e){t[e=e||i]=(t[e]||0)+1,t[r]=(t[r]||0)+1},this.notifyWhenNoPendingTasks=function(e,i){t[i=i||r]?n.push({type:i,cb:e}):e()}}var Vr=i("$templateRequest");function zr(){var e;this.httpOptions=function(t){return t?(e=t,this):e},this.$get=["$exceptionHandler","$templateCache","$http","$q","$sce",function(t,n,r,i,a){function o(s,c){o.totalPendingRequests++,N(s)&&!T(n.get(s))||(s=a.getTrustedResourceUrl(s));var u=r.defaults&&r.defaults.transformResponse;return G(u)?u=u.filter((function(e){return e!==Mn})):u===Mn&&(u=null),r.get(s,Q({cache:n,transformResponse:u},e)).finally((function(){o.totalPendingRequests--})).then((function(e){return n.put(s,e.data)}),(function(e){c||(e=Vr("tpload","Failed to load template: {0} (HTTP status: {1} {2})",s,e.status,e.statusText),t(e));return i.reject(e)}))}return o.totalPendingRequests=0,o}]}function qr(){this.$get=["$rootScope","$browser","$location",function(e,t,n){var r={findBindings:function(e,t,n){var r=e.getElementsByClassName("ng-binding"),i=[];return w(r,(function(e){var r=m.element(e).data("$binding");r&&w(r,(function(r){n?new RegExp("(^|\\s)"+ee(t)+"(\\s|\\||$)").test(r)&&i.push(e):-1!==r.indexOf(t)&&i.push(e)}))})),i},findModels:function(e,t,n){for(var r=["ng-","data-ng-","ng\\:"],i=0;i<r.length;++i){var a="["+r[i]+"model"+(n?"=":"*=")+'"'+t+'"]',o=e.querySelectorAll(a);if(o.length)return o}},getLocation:function(){return n.url()},setLocation:function(t){t!==n.url()&&(n.url(t),e.$digest())},whenStable:function(e){t.notifyWhenNoOutstandingRequests(e)}};return r}]}var Wr=i("$timeout");function Xr(){this.$get=["$rootScope","$browser","$q","$$q","$exceptionHandler",function(e,t,n,r,i){var a={};function o(o,s,c){Y(o)||(c=s,s=o,o=M);var u,l=Ae(arguments,3),A=j(c)&&!c,f=(A?r:n).defer(),h=f.promise;return u=t.defer((function(){try{f.resolve(o.apply(null,l))}catch(e){f.reject(e),i(e)}finally{delete a[h.$$timeoutId]}A||e.$apply()}),s,"$timeout"),h.$$timeoutId=u,a[u]=f,h}return o.cancel=function(e){if(!e)return!1;if(!e.hasOwnProperty("$$timeoutId"))throw Wr("badprom","`$timeout.cancel()` called with a promise that was not generated by `$timeout()`.");if(!a.hasOwnProperty(e.$$timeoutId))return!1;var n=e.$$timeoutId,r=a[n];return Fr(r.promise),r.reject("canceled"),delete a[n],t.defer.cancel(n)},o}]}var Zr,ei=e.document.createElement("a"),ti=ri(e.location.href);ei.href="http://[::1]";var ni="[::1]"===ei.hostname;function ri(e){if(!N(e))return e;var t=e;a&&(ei.setAttribute("href",t),t=ei.href),ei.setAttribute("href",t);var n=ei.hostname;return!ni&&n.indexOf(":")>-1&&(n="["+n+"]"),{href:ei.href,protocol:ei.protocol?ei.protocol.replace(/:$/,""):"",host:ei.host,search:ei.search?ei.search.replace(/^\?/,""):"",hash:ei.hash?ei.hash.replace(/^#/,""):"",hostname:n,port:ei.port,pathname:"/"===ei.pathname.charAt(0)?ei.pathname:"/"+ei.pathname}}function ii(e,t){return e=ri(e),t=ri(t),e.protocol===t.protocol&&e.host===t.host}function ai(){this.$get=O(e)}function oi(e){var t=e[0]||{},n={},r="";function i(e){try{return decodeURIComponent(e)}catch(t){return e}}return function(){var e,a,o,s,c,u=function(e){try{return e.cookie||""}catch(e){return""}}(t);if(u!==r)for(e=(r=u).split("; "),n={},o=0;o<e.length;o++)(s=(a=e[o]).indexOf("="))>0&&(c=i(a.substring(0,s)),T(n[c])&&(n[c]=i(a.substring(s+1))));return n}}function si(){this.$get=oi}function ci(e){function t(n,r){if(H(n)){var i={};return w(n,(function(e,n){i[n]=t(n,e)})),i}return e.factory(n+"Filter",r)}this.register=t,this.$get=["$injector",function(e){return function(t){return e.get(t+"Filter")}}],t("currency",fi),t("date",Bi),t("filter",ui),t("json",Ei),t("limitTo",Qi),t("lowercase",_i),t("number",hi),t("orderBy",xi),t("uppercase",ki)}function ui(){return function(e,t,n,r){if(!I(e)){if(null==e)return e;throw i("filter")("notarray","Expected array but received: {0}",e)}var a,o;switch(r=r||"$",Ai(t)){case"function":a=t;break;case"boolean":case"null":case"number":case"string":o=!0;case"object":a=function(e,t,n,r){var i=H(e)&&n in e;!0===t?t=se:Y(t)||(t=function(e,t){return!T(e)&&(null===e||null===t?e===t:!(H(t)||H(e)&&!R(e))&&(e=A(""+e),t=A(""+t),-1!==e.indexOf(t)))});return function(a){return i&&!H(a)?li(a,e[n],t,n,!1):li(a,e,t,n,r)}}(t,n,r,o);break;default:return e}return Array.prototype.filter.call(e,a)}}function li(e,t,n,r,i,a){var o=Ai(e),s=Ai(t);if("string"===s&&"!"===t.charAt(0))return!li(e,t.substring(1),n,r,i);if(G(e))return e.some((function(e){return li(e,t,n,r,i)}));switch(o){case"object":var c;if(i){for(c in e)if(c.charAt&&"$"!==c.charAt(0)&&li(e[c],t,n,r,!0))return!0;return!a&&li(e,t,n,r,!1)}if("object"===s){for(c in t){var u=t[c];if(!Y(u)&&!T(u)){var l=c===r;if(!li(l?e:e[c],u,n,r,l,l))return!1}}return!0}return n(e,t);case"function":return!1;default:return n(e,t)}}function Ai(e){return null===e?"null":typeof e}oi.$inject=["$document"],ci.$inject=["$provide"];function fi(e){var t=e.NUMBER_FORMATS;return function(e,n,r){T(n)&&(n=t.CURRENCY_SYM),T(r)&&(r=t.PATTERNS[1].maxFrac);var i=n?/\u00A4/g:/\s*\u00A4\s*/g;return null==e?e:pi(e,t.PATTERNS[1],t.GROUP_SEP,t.DECIMAL_SEP,r).replace(i,n)}}function hi(e){var t=e.NUMBER_FORMATS;return function(e,n){return null==e?e:pi(e,t.PATTERNS[0],t.GROUP_SEP,t.DECIMAL_SEP,n)}}function pi(e,t,n,r,i){if(!N(e)&&!L(e)||isNaN(e))return"";var a,o=!isFinite(e),s=!1,c=Math.abs(e)+"",u="";if(o)u="∞";else{(function(e,t,n,r){var i=e.d,a=i.length-e.i,o=(t=T(t)?Math.min(Math.max(n,a),r):+t)+e.i,s=i[o];if(o>0){i.splice(Math.max(e.i,o));for(var c=o;c<i.length;c++)i[c]=0}else{a=Math.max(0,a),e.i=1,i.length=Math.max(1,o=t+1),i[0]=0;for(var u=1;u<o;u++)i[u]=0}if(s>=5)if(o-1<0){for(var l=0;l>o;l--)i.unshift(0),e.i++;i.unshift(1),e.i++}else i[o-1]++;for(;a<Math.max(0,t);a++)i.push(0);var A=i.reduceRight((function(e,t,n,r){return t+=e,r[n]=t%10,Math.floor(t/10)}),0);A&&(i.unshift(A),e.i++)})(a=function(e){var t,n,r,i,a,o=0;for((n=e.indexOf("."))>-1&&(e=e.replace(".","")),(r=e.search(/e/i))>0?(n<0&&(n=r),n+=+e.slice(r+1),e=e.substring(0,r)):n<0&&(n=e.length),r=0;"0"===e.charAt(r);r++);if(r===(a=e.length))t=[0],n=1;else{for(a--;"0"===e.charAt(a);)a--;for(n-=r,t=[],i=0;r<=a;r++,i++)t[i]=+e.charAt(r)}return n>22&&(t=t.splice(0,21),o=n-1,n=1),{d:t,e:o,i:n}}(c),i,t.minFrac,t.maxFrac);var l=a.d,A=a.i,f=a.e,h=[];for(s=l.reduce((function(e,t){return e&&!t}),!0);A<0;)l.unshift(0),A++;A>0?h=l.splice(A,l.length):(h=l,l=[0]);var p=[];for(l.length>=t.lgSize&&p.unshift(l.splice(-t.lgSize,l.length).join(""));l.length>t.gSize;)p.unshift(l.splice(-t.gSize,l.length).join(""));l.length&&p.unshift(l.join("")),u=p.join(n),h.length&&(u+=r+h.join("")),f&&(u+="e+"+f)}return e<0&&!s?t.negPre+u+t.negSuf:t.posPre+u+t.posSuf}function di(e,t,n,r){var i="";for((e<0||r&&e<=0)&&(r?e=1-e:(e=-e,i="-")),e=""+e;e.length<t;)e="0"+e;return n&&(e=e.substr(e.length-t)),i+e}function gi(e,t,n,r,i){return n=n||0,function(a){var o=a["get"+e]();return(n>0||o>-n)&&(o+=n),0===o&&-12===n&&(o=12),di(o,t,r,i)}}function yi(e,t,n){return function(r,i){var a=r["get"+e]();return i[f((n?"STANDALONE":"")+(t?"SHORT":"")+e)][a]}}function vi(e){var t=new Date(e,0,1).getDay();return new Date(e,0,(t<=4?5:12)-t)}function mi(e){return function(t){var n,r=vi(t.getFullYear()),i=+(n=t,new Date(n.getFullYear(),n.getMonth(),n.getDate()+(4-n.getDay())))-+r;return di(1+Math.round(i/6048e5),e)}}function bi(e,t){return e.getFullYear()<=0?t.ERAS[0]:t.ERAS[1]}fi.$inject=["$locale"],hi.$inject=["$locale"];var Ii={yyyy:gi("FullYear",4,0,!1,!0),yy:gi("FullYear",2,0,!0,!0),y:gi("FullYear",1,0,!1,!0),MMMM:yi("Month"),MMM:yi("Month",!0),MM:gi("Month",2,1),M:gi("Month",1,1),LLLL:yi("Month",!1,!0),dd:gi("Date",2),d:gi("Date",1),HH:gi("Hours",2),H:gi("Hours",1),hh:gi("Hours",2,-12),h:gi("Hours",1,-12),mm:gi("Minutes",2),m:gi("Minutes",1),ss:gi("Seconds",2),s:gi("Seconds",1),sss:gi("Milliseconds",3),EEEE:yi("Day"),EEE:yi("Day",!0),a:function(e,t){return e.getHours()<12?t.AMPMS[0]:t.AMPMS[1]},Z:function(e,t,n){var r=-1*n,i=r>=0?"+":"";return i+=di(Math[r>0?"floor":"ceil"](r/60),2)+di(Math.abs(r%60),2)},ww:mi(2),w:mi(1),G:bi,GG:bi,GGG:bi,GGGG:function(e,t){return e.getFullYear()<=0?t.ERANAMES[0]:t.ERANAMES[1]}},wi=/((?:[^yMLdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|m+|s+|a|Z|G+|w+))([\s\S]*)/,Ci=/^-?\d+$/;function Bi(e){var t=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(n,r,i){var a,o,s="",c=[];if(r=r||"mediumDate",r=e.DATETIME_FORMATS[r]||r,N(n)&&(n=Ci.test(n)?x(n):function(e){var n;if(n=e.match(t)){var r=new Date(0),i=0,a=0,o=n[8]?r.setUTCFullYear:r.setFullYear,s=n[8]?r.setUTCHours:r.setHours;n[9]&&(i=x(n[9]+n[10]),a=x(n[9]+n[11])),o.call(r,x(n[1]),x(n[2])-1,x(n[3]));var c=x(n[4]||0)-i,u=x(n[5]||0)-a,l=x(n[6]||0),A=Math.round(1e3*parseFloat("0."+(n[7]||0)));return s.call(r,c,u,l,A),r}return e}(n)),L(n)&&(n=new Date(n)),!K(n)||!isFinite(n.getTime()))return n;for(;r;)(o=wi.exec(r))?r=(c=le(c,o,1)).pop():(c.push(r),r=null);var u=n.getTimezoneOffset();return i&&(u=ye(i,u),n=me(n,i,!0)),w(c,(function(t){s+=(a=Ii[t])?a(n,e.DATETIME_FORMATS,u):"''"===t?"'":t.replace(/(^'|'$)/g,"").replace(/''/g,"'")})),s}}function Ei(){return function(e,t){return T(t)&&(t=2),pe(e,t)}}Bi.$inject=["$locale"];var _i=O(A),ki=O(f);function Qi(){return function(e,t,n){return t=Math.abs(Number(t))===1/0?Number(t):x(t),D(t)?e:(L(e)&&(e=e.toString()),I(e)?(n=(n=!n||isNaN(n)?0:x(n))<0?Math.max(0,e.length+n):n,t>=0?Si(e,n,n+t):0===n?Si(e,t,e.length):Si(e,Math.max(0,n+t),n)):e)}}function Si(e,t,n){return N(e)?e.slice(t,n):h.call(e,t,n)}function xi(e){return function(r,a,o,s){if(null==r)return r;if(!I(r))throw i("orderBy")("notarray","Expected array but received: {0}",r);G(a)||(a=[a]),0===a.length&&(a=["+"]);var c=a.map((function(t){var n=1,r=F;if(Y(t))r=t;else if(N(t)&&("+"!==t.charAt(0)&&"-"!==t.charAt(0)||(n="-"===t.charAt(0)?-1:1,t=t.substring(1)),""!==t&&(r=e(t)).constant)){var i=r();r=function(e){return e[i]}}return{get:r,descending:n}})),u=o?-1:1,l=Y(s)?s:n,A=Array.prototype.map.call(r,(function(e,n){return{value:e,tieBreaker:{value:n,type:"number",index:n},predicateValues:c.map((function(r){return function(e,n){var r=typeof e;null===e?r="null":"object"===r&&(e=function(e){if(Y(e.valueOf)&&t(e=e.valueOf()))return e;if(R(e)&&t(e=e.toString()))return e;return e}(e));return{value:e,type:r,index:n}}(r.get(e),n)}))}}));return A.sort((function(e,t){for(var r=0,i=c.length;r<i;r++){var a=l(e.predicateValues[r],t.predicateValues[r]);if(a)return a*c[r].descending*u}return(l(e.tieBreaker,t.tieBreaker)||n(e.tieBreaker,t.tieBreaker))*u})),r=A.map((function(e){return e.value}))};function t(e){switch(typeof e){case"number":case"boolean":case"string":return!0;default:return!1}}function n(e,t){var n=0,r=e.type,i=t.type;if(r===i){var a=e.value,o=t.value;"string"===r?(a=a.toLowerCase(),o=o.toLowerCase()):"object"===r&&(H(a)&&(a=e.index),H(o)&&(o=t.index)),a!==o&&(n=a<o?-1:1)}else n="undefined"===r?1:"undefined"===i?-1:"null"===r?1:"null"===i||r<i?-1:1;return n}}function Di(e){return Y(e)&&(e={link:e}),e.restrict=e.restrict||"AC",O(e)}xi.$inject=["$parse"];var Pi=O({restrict:"E",compile:function(e,t){if(!t.href&&!t.xlinkHref)return function(e,t){if("a"===t[0].nodeName.toLowerCase()){var n="[object SVGAnimatedString]"===g.call(t.prop("href"))?"xlink:href":"href";t.on("click",(function(e){t.attr(n)||e.preventDefault()}))}}}}),Mi={};w(_t,(function(e,t){if("multiple"!==e){var n=pn("ng-"+t),r=i;"checked"===e&&(r=function(e,t,r){r.ngModel!==r[n]&&i(e,0,r)}),Mi[n]=function(){return{restrict:"A",priority:100,link:r}}}function i(e,r,i){e.$watch(i[n],(function(e){i.$set(t,!!e)}))}})),w(Qt,(function(e,t){Mi[t]=function(){return{priority:100,link:function(e,n,r){if("ngPattern"===t&&"/"===r.ngPattern.charAt(0)){var i=r.ngPattern.match(u);if(i)return void r.$set("ngPattern",new RegExp(i[1],i[2]))}e.$watch(r[t],(function(e){r.$set(t,e)}))}}}})),w(["src","srcset","href"],(function(e){var t=pn("ng-"+e);Mi[t]=["$sce",function(n){return{priority:99,link:function(r,i,o){var s=e,c=e;"href"===e&&"[object SVGAnimatedString]"===g.call(i.prop("href"))&&(c="xlinkHref",o.$attr[c]="xlink:href",s=null),o.$set(t,n.getTrustedMediaUrl(o[t])),o.$observe(t,(function(t){t?(o.$set(c,t),a&&s&&i.prop(s,o[c])):"href"===e&&o.$set(c,null)}))}}}]}));var Fi={$addControl:M,$getControls:O([]),$$renameControl:function(e,t){e.$name=t},$removeControl:M,$setValidity:M,$setDirty:M,$setPristine:M,$setSubmitted:M,$$setSubmitted:M};function Oi(e,t,n,r,i){this.$$controls=[],this.$error={},this.$$success={},this.$pending=void 0,this.$name=i(t.name||t.ngForm||"")(n),this.$dirty=!1,this.$pristine=!0,this.$valid=!0,this.$invalid=!1,this.$submitted=!1,this.$$parentForm=Fi,this.$$element=e,this.$$animate=r,Hi(this)}Oi.$inject=["$element","$attrs","$scope","$animate","$interpolate"],Oi.prototype={$rollbackViewValue:function(){w(this.$$controls,(function(e){e.$rollbackViewValue()}))},$commitViewValue:function(){w(this.$$controls,(function(e){e.$commitViewValue()}))},$addControl:function(e){Re(e.$name,"input"),this.$$controls.push(e),e.$name&&(this[e.$name]=e),e.$$parentForm=this},$getControls:function(){return Ne(this.$$controls)},$$renameControl:function(e,t){var n=e.$name;this[n]===e&&delete this[n],this[t]=e,e.$name=t},$removeControl:function(e){e.$name&&this[e.$name]===e&&delete this[e.$name],w(this.$pending,(function(t,n){this.$setValidity(n,null,e)}),this),w(this.$error,(function(t,n){this.$setValidity(n,null,e)}),this),w(this.$$success,(function(t,n){this.$setValidity(n,null,e)}),this),ie(this.$$controls,e),e.$$parentForm=Fi},$setDirty:function(){this.$$animate.removeClass(this.$$element,Fa),this.$$animate.addClass(this.$$element,Oa),this.$dirty=!0,this.$pristine=!1,this.$$parentForm.$setDirty()},$setPristine:function(){this.$$animate.setClass(this.$$element,Fa,Oa+" ng-submitted"),this.$dirty=!1,this.$pristine=!0,this.$submitted=!1,w(this.$$controls,(function(e){e.$setPristine()}))},$setUntouched:function(){w(this.$$controls,(function(e){e.$setUntouched()}))},$setSubmitted:function(){for(var e=this;e.$$parentForm&&e.$$parentForm!==Fi;)e=e.$$parentForm;e.$$setSubmitted()},$$setSubmitted:function(){this.$$animate.addClass(this.$$element,"ng-submitted"),this.$submitted=!0,w(this.$$controls,(function(e){e.$$setSubmitted&&e.$$setSubmitted()}))}},Ui({clazz:Oi,set:function(e,t,n){var r=e[t];r?-1===r.indexOf(n)&&r.push(n):e[t]=[n]},unset:function(e,t,n){var r=e[t];r&&(ie(r,n),0===r.length&&delete e[t])}});var Ri=function(e){return["$timeout","$parse",function(t,n){return{name:"form",restrict:e?"EAC":"E",require:["form","^^?form"],controller:Oi,compile:function(n,i){n.addClass(Fa).addClass(Pa);var a=i.name?"name":!(!e||!i.ngForm)&&"ngForm";return{pre:function(e,n,i,o){var s=o[0];if(!("action"in i)){var c=function(t){e.$apply((function(){s.$commitViewValue(),s.$setSubmitted()})),t.preventDefault()};n[0].addEventListener("submit",c),n.on("$destroy",(function(){t((function(){n[0].removeEventListener("submit",c)}),0,!1)}))}(o[1]||s.$$parentForm).$addControl(s);var u=a?r(s.$name):M;a&&(u(e,s),i.$observe(a,(function(t){s.$name!==t&&(u(e,void 0),s.$$parentForm.$$renameControl(s,t),(u=r(s.$name))(e,s))}))),n.on("$destroy",(function(){s.$$parentForm.$removeControl(s),u(e,void 0),Q(s,Fi)}))}}}};function r(e){return""===e?n('this[""]').assign:n(e).assign||M}}]},Ti=Ri(),ji=Ri(!0);function Hi(e){e.$$classCache={},e.$$classCache[Ma]=!(e.$$classCache[Pa]=e.$$element.hasClass(Pa))}function Ui(e){var t=e.clazz,n=e.set,r=e.unset;function i(e,t,n){n&&!e.$$classCache[t]?(e.$$animate.addClass(e.$$element,t),e.$$classCache[t]=!0):!n&&e.$$classCache[t]&&(e.$$animate.removeClass(e.$$element,t),e.$$classCache[t]=!1)}function a(e,t,n){t=t?"-"+Pe(t,"-"):"",i(e,Pa+t,!0===n),i(e,Ma+t,!1===n)}t.prototype.$setValidity=function(e,t,o){var s;T(t)?function(e,t,r,i){e[t]||(e[t]={});n(e[t],r,i)}(this,"$pending",e,o):function(e,t,n,i){e[t]&&r(e[t],n,i);Ni(e[t])&&(e[t]=void 0)}(this,"$pending",e,o),q(t)?t?(r(this.$error,e,o),n(this.$$success,e,o)):(n(this.$error,e,o),r(this.$$success,e,o)):(r(this.$error,e,o),r(this.$$success,e,o)),this.$pending?(i(this,"ng-pending",!0),this.$valid=this.$invalid=void 0,a(this,"",null)):(i(this,"ng-pending",!1),this.$valid=Ni(this.$error),this.$invalid=!this.$valid,a(this,"",this.$valid)),a(this,e,s=this.$pending&&this.$pending[e]?void 0:!this.$error[e]&&(!!this.$$success[e]||null)),this.$$parentForm.$setValidity(e,s,this)}}function Ni(e){if(e)for(var t in e)if(e.hasOwnProperty(t))return!1;return!0}var Li=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/,Ki=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,Gi=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/,$i=/^\s*(-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,Yi=/^(\d{4,})-(\d{2})-(\d{2})$/,Ji=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Vi=/^(\d{4,})-W(\d\d)$/,zi=/^(\d{4,})-(\d\d)$/,qi=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Wi=je();w("date,datetime-local,month,time,week".split(","),(function(e){Wi[e]=!0}));var Xi={text:function(e,t,n,r,i,a){ea(e,t,n,r,i,a),Zi(r)},date:na("date",Yi,ta(Yi,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":na("datetimelocal",Ji,ta(Ji,["yyyy","MM","dd","HH","mm","ss","sss"]),"yyyy-MM-ddTHH:mm:ss.sss"),time:na("time",qi,ta(qi,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:na("week",Vi,(function(e,t){if(K(e))return e;if(N(e)){Vi.lastIndex=0;var n=Vi.exec(e);if(n){var r=+n[1],i=+n[2],a=0,o=0,s=0,c=0,u=vi(r),l=7*(i-1);return t&&(a=t.getHours(),o=t.getMinutes(),s=t.getSeconds(),c=t.getMilliseconds()),new Date(r,0,u.getDate()+l,a,o,s,c)}}return NaN}),"yyyy-Www"),month:na("month",zi,ta(zi,["yyyy","MM"]),"yyyy-MM"),number:function(e,t,n,r,i,a,o,s){var c;if(ra(e,t,n,r,"number"),ia(r),ea(e,t,n,r,i,a),j(n.min)||n.ngMin){var u=n.min||s(n.ngMin)(e);c=aa(u),r.$validators.min=function(e,t){return r.$isEmpty(t)||T(c)||t>=c},n.$observe("min",(function(e){e!==u&&(c=aa(e),u=e,r.$validate())}))}if(j(n.max)||n.ngMax){var l=n.max||s(n.ngMax)(e),A=aa(l);r.$validators.max=function(e,t){return r.$isEmpty(t)||T(A)||t<=A},n.$observe("max",(function(e){e!==l&&(A=aa(e),l=e,r.$validate())}))}if(j(n.step)||n.ngStep){var f=n.step||s(n.ngStep)(e),h=aa(f);r.$validators.step=function(e,t){return r.$isEmpty(t)||T(h)||ca(t,c||0,h)},n.$observe("step",(function(e){e!==f&&(h=aa(e),f=e,r.$validate())}))}},url:function(e,t,n,r,i,a){ea(e,t,n,r,i,a),Zi(r),r.$validators.url=function(e,t){var n=e||t;return r.$isEmpty(n)||Ki.test(n)}},email:function(e,t,n,r,i,a){ea(e,t,n,r,i,a),Zi(r),r.$validators.email=function(e,t){var n=e||t;return r.$isEmpty(n)||Gi.test(n)}},radio:function(e,t,n,r){var i=!n.ngTrim||"false"!==Z(n.ngTrim);T(n.name)&&t.attr("name",E());t.on("change",(function(e){var a;t[0].checked&&(a=n.value,i&&(a=Z(a)),r.$setViewValue(a,e&&e.type))})),r.$render=function(){var e=n.value;i&&(e=Z(e)),t[0].checked=e===r.$viewValue},n.$observe("value",r.$render)},range:function(e,t,n,r,i,a){ra(e,t,n,r,"range"),ia(r),ea(e,t,n,r,i,a);var o=r.$$hasNativeValidators&&"range"===t[0].type,s=o?0:void 0,c=o?100:void 0,u=o?1:void 0,l=t[0].validity,A=j(n.min),f=j(n.max),h=j(n.step),p=r.$render;r.$render=o&&j(l.rangeUnderflow)&&j(l.rangeOverflow)?function(){p(),r.$setViewValue(t.val())}:p,A&&(s=aa(n.min),r.$validators.min=o?function(){return!0}:function(e,t){return r.$isEmpty(t)||T(s)||t>=s},d("min",(function(e){if(s=aa(e),D(r.$modelValue))return;if(o){var n=t.val();s>n&&(n=s,t.val(n)),r.$setViewValue(n)}else r.$validate()})));f&&(c=aa(n.max),r.$validators.max=o?function(){return!0}:function(e,t){return r.$isEmpty(t)||T(c)||t<=c},d("max",(function(e){if(c=aa(e),D(r.$modelValue))return;if(o){var n=t.val();c<n&&(t.val(c),n=c<s?s:c),r.$setViewValue(n)}else r.$validate()})));h&&(u=aa(n.step),r.$validators.step=o?function(){return!l.stepMismatch}:function(e,t){return r.$isEmpty(t)||T(u)||ca(t,s||0,u)},d("step",(function(e){if(u=aa(e),D(r.$modelValue))return;o?r.$viewValue!==t.val()&&r.$setViewValue(t.val()):r.$validate()})));function d(e,r){t.attr(e,n[e]);var i=n[e];n.$observe(e,(function(e){e!==i&&(i=e,r(e))}))}},checkbox:function(e,t,n,r,i,a,o,s){var c=ua(s,e,"ngTrueValue",n.ngTrueValue,!0),u=ua(s,e,"ngFalseValue",n.ngFalseValue,!1);t.on("change",(function(e){r.$setViewValue(t[0].checked,e&&e.type)})),r.$render=function(){t[0].checked=r.$viewValue},r.$isEmpty=function(e){return!1===e},r.$formatters.push((function(e){return se(e,c)})),r.$parsers.push((function(e){return e?c:u}))},hidden:M,button:M,submit:M,reset:M,file:M};function Zi(e){e.$formatters.push((function(t){return e.$isEmpty(t)?t:t.toString()}))}function ea(e,t,n,r,i,a){var o,s=A(t[0].type);if(!i.android){var c=!1;t.on("compositionstart",(function(){c=!0})),t.on("compositionupdate",(function(e){(T(e.data)||""===e.data)&&(c=!1)})),t.on("compositionend",(function(){c=!1,u()}))}var u=function(e){if(o&&(a.defer.cancel(o),o=null),!c){var i=t.val(),u=e&&e.type;"password"===s||n.ngTrim&&"false"===n.ngTrim||(i=Z(i)),(r.$viewValue!==i||""===i&&r.$$hasNativeValidators)&&r.$setViewValue(i,u)}};if(i.hasEvent("input"))t.on("input",u);else{var l=function(e,t,n){o||(o=a.defer((function(){o=null,t&&t.value===n||u(e)})))};t.on("keydown",(function(e){var t=e.keyCode;91===t||15<t&&t<19||37<=t&&t<=40||l(e,this,this.value)})),i.hasEvent("paste")&&t.on("paste cut drop",l)}t.on("change",u),Wi[s]&&r.$$hasNativeValidators&&s===n.type&&t.on("keydown wheel mousedown",(function(e){if(!o){var t=this.validity,n=t.badInput,r=t.typeMismatch;o=a.defer((function(){o=null,t.badInput===n&&t.typeMismatch===r||u(e)}))}})),r.$render=function(){var e=r.$isEmpty(r.$viewValue)?"":r.$viewValue;t.val()!==e&&t.val(e)}}function ta(e,t){return function(n,r){var i,a;if(K(n))return n;if(N(n)){if('"'===n.charAt(0)&&'"'===n.charAt(n.length-1)&&(n=n.substring(1,n.length-1)),Li.test(n))return new Date(n);if(e.lastIndex=0,i=e.exec(n)){i.shift(),a=r?{yyyy:r.getFullYear(),MM:r.getMonth()+1,dd:r.getDate(),HH:r.getHours(),mm:r.getMinutes(),ss:r.getSeconds(),sss:r.getMilliseconds()/1e3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},w(i,(function(e,n){n<t.length&&(a[t[n]]=+e)}));var o=new Date(a.yyyy,a.MM-1,a.dd,a.HH,a.mm,a.ss||0,1e3*a.sss||0);return a.yyyy<100&&o.setFullYear(a.yyyy),o}}return NaN}}function na(e,t,n,r){return function(i,a,o,s,c,u,l,A){ra(i,a,o,s,e),ea(0,a,o,s,c,u);var f,h,p="time"===e||"datetimelocal"===e;if(s.$parsers.push((function(n){return s.$isEmpty(n)?null:t.test(n)?I(n,f):void(s.$$parserName=e)})),s.$formatters.push((function(e){if(e&&!K(e))throw Ra("datefmt","Expected `{0}` to be a date",e);if(m(e)){f=e;var t=s.$options.getOption("timezone");return t&&(h=t,f=me(f,t,!0)),function(e,t){var n=r;p&&N(s.$options.getOption("timeSecondsFormat"))&&(n=r.replace("ss.sss",s.$options.getOption("timeSecondsFormat")).replace(/:$/,""));var i=l("date")(e,n,t);p&&s.$options.getOption("timeStripZeroSeconds")&&(i=i.replace(/(?::00)?(?:\.000)?$/,""));return i}(e,t)}return f=null,h=null,""})),j(o.min)||o.ngMin){var d=o.min||A(o.ngMin)(i),g=b(d);s.$validators.min=function(e){return!m(e)||T(g)||n(e)>=g},o.$observe("min",(function(e){e!==d&&(g=b(e),d=e,s.$validate())}))}if(j(o.max)||o.ngMax){var y=o.max||A(o.ngMax)(i),v=b(y);s.$validators.max=function(e){return!m(e)||T(v)||n(e)<=v},o.$observe("max",(function(e){e!==y&&(v=b(e),y=e,s.$validate())}))}function m(e){return e&&!(e.getTime&&e.getTime()!=e.getTime())}function b(e){return j(e)&&!K(e)?I(e)||void 0:e}function I(e,t){var r=s.$options.getOption("timezone");h&&h!==r&&(t=ve(t,ye(h)));var i=n(e,t);return!isNaN(i)&&r&&(i=me(i,r)),i}}}function ra(e,t,n,r,i){var a=t[0];(r.$$hasNativeValidators=H(a.validity))&&r.$parsers.push((function(e){var n=t.prop("validity")||{};if(!n.badInput&&!n.typeMismatch)return e;r.$$parserName=i}))}function ia(e){e.$parsers.push((function(t){return e.$isEmpty(t)?null:$i.test(t)?parseFloat(t):void(e.$$parserName="number")})),e.$formatters.push((function(t){if(!e.$isEmpty(t)){if(!L(t))throw Ra("numfmt","Expected `{0}` to be a number",t);t=t.toString()}return t}))}function aa(e){return j(e)&&!L(e)&&(e=parseFloat(e)),D(e)?void 0:e}function oa(e){return(0|e)===e}function sa(e){var t=e.toString(),n=t.indexOf(".");if(-1===n){if(-1<e&&e<1){var r=/e-(\d+)$/.exec(t);if(r)return Number(r[1])}return 0}return t.length-n-1}function ca(e,t,n){var r=Number(e),i=!oa(r),a=!oa(t),o=!oa(n);if(i||a||o){var s=i?sa(r):0,c=a?sa(t):0,u=o?sa(n):0,l=Math.max(s,c,u),A=Math.pow(10,l);r*=A,t*=A,n*=A,i&&(r=Math.round(r)),a&&(t=Math.round(t)),o&&(n=Math.round(n))}return(r-t)%n==0}function ua(e,t,n,r,i){var a;if(j(r)){if(!(a=e(r)).constant)throw Ra("constexpr","Expected constant expression for `{0}`, but saw `{1}`.",n,r);return a(t)}return i}var la=["$browser","$sniffer","$filter","$parse",function(e,t,n,r){return{restrict:"E",require:["?ngModel"],link:{pre:function(i,a,o,s){s[0]&&(Xi[A(o.type)]||Xi.text)(i,a,o,s[0],t,e,n,r)}}}}],Aa=function(){var e={configurable:!0,enumerable:!1,get:function(){return this.getAttribute("value")||""},set:function(e){this.setAttribute("value",e)}};return{restrict:"E",priority:200,compile:function(t,n){if("hidden"===A(n.type))return{pre:function(t,n,r,i){var a=n[0];a.parentNode&&a.parentNode.insertBefore(a,a.nextSibling),Object.defineProperty&&Object.defineProperty(a,"value",e)}}}}},fa=/^(true|false|\d+)$/,ha=function(){function e(e,t,n){var r=j(n)?n:9===a?"":null;e.prop("value",r),t.$set("value",n)}return{restrict:"A",priority:100,compile:function(t,n){return fa.test(n.ngValue)?function(t,n,r){e(n,r,t.$eval(r.ngValue))}:function(t,n,r){t.$watch(r.ngValue,(function(t){e(n,r,t)}))}}}},pa=["$compile",function(e){return{restrict:"AC",compile:function(t){return e.$$addBindingClass(t),function(t,n,r){e.$$addBindingInfo(n,r.ngBind),n=n[0],t.$watch(r.ngBind,(function(e){n.textContent=He(e)}))}}}}],da=["$interpolate","$compile",function(e,t){return{compile:function(n){return t.$$addBindingClass(n),function(n,r,i){var a=e(r.attr(i.$attr.ngBindTemplate));t.$$addBindingInfo(r,a.expressions),r=r[0],i.$observe("ngBindTemplate",(function(e){r.textContent=T(e)?"":e}))}}}}],ga=["$sce","$parse","$compile",function(e,t,n){return{restrict:"A",compile:function(r,i){var a=t(i.ngBindHtml),o=t(i.ngBindHtml,(function(t){return e.valueOf(t)}));return n.$$addBindingClass(r),function(t,r,i){n.$$addBindingInfo(r,i.ngBindHtml),t.$watch(o,(function(){var n=a(t);r.html(e.getTrustedHtml(n)||"")}))}}}}],ya=O({restrict:"A",require:"ngModel",link:function(e,t,n,r){r.$viewChangeListeners.push((function(){e.$eval(n.ngChange)}))}});function va(e,t){var n;return e="ngClass"+e,["$parse",function(o){return{restrict:"AC",link:function(s,c,u){var l,A=c.data("$classCounts"),f=!0;function h(e,t){var n=[];return w(e,(function(e){(t>0||A[e])&&(A[e]=(A[e]||0)+t,A[e]===+(t>0)&&n.push(e))})),n.join(" ")}A||(A=je(),c.data("$classCounts",A)),"ngClass"!==e&&(n||(n=o("$index",(function(e){return 1&e}))),s.$watch(n,(function(e){e===t?(n=h(i(n=l),1),u.$addClass(n)):function(e){e=h(i(e),-1),u.$removeClass(e)}(l);var n;f=e}))),s.$watch(o(u[e],a),(function(e){f===t&&function(e,t){var n=i(e),a=i(t),o=r(n,a),s=r(a,n),c=h(o,-1),l=h(s,1);u.$addClass(l),u.$removeClass(c)}(l,e);l=e}))}}}];function r(e,t){if(!e||!e.length)return[];if(!t||!t.length)return e;var n=[];e:for(var r=0;r<e.length;r++){for(var i=e[r],a=0;a<t.length;a++)if(i===t[a])continue e;n.push(i)}return n}function i(e){return e&&e.split(" ")}function a(e){if(!e)return e;var t=e;return G(e)?t=e.map(a).join(" "):H(e)?t=Object.keys(e).filter((function(t){return e[t]})).join(" "):N(e)||(t=e+""),t}}var ma=va("",!0),ba=va("Odd",0),Ia=va("Even",1),wa=Di({compile:function(e,t){t.$set("ngCloak",void 0),e.removeClass("ng-cloak")}}),Ca=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Ba={},Ea={blur:!0,focus:!0};function _a(e,t,n,r,i,a){return{restrict:"A",compile:function(o,s){var c=e(s[r]);return function(e,r){r.on(i,(function(r){var i=function(){c(e,{$event:r})};if(t.$$phase)if(a)e.$evalAsync(i);else try{i()}catch(e){n(e)}else e.$apply(i)}))}}}}w("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),(function(e){var t=pn("ng-"+e);Ba[t]=["$parse","$rootScope","$exceptionHandler",function(n,r,i){return _a(n,r,i,t,e,Ea[e])}]}));var ka=["$animate","$compile",function(e,t){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(n,r,i,a,o){var s,c,u;n.$watch(i.ngIf,(function(n){n?c||o((function(n,a){c=a,n[n.length++]=t.$$createComment("end ngIf",i.ngIf),s={clone:n},e.enter(n,r.parent(),r)})):(u&&(u.remove(),u=null),c&&(c.$destroy(),c=null),s&&(u=Te(s.clone),e.leave(u).done((function(e){!1!==e&&(u=null)})),s=null))}))}}}],Qa=["$templateRequest","$anchorScroll","$animate",function(e,t,n){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:m.noop,compile:function(r,i){var a=i.ngInclude||i.src,o=i.onload||"",s=i.autoscroll;return function(r,i,c,u,l){var A,f,h,p=0,d=function(){f&&(f.remove(),f=null),A&&(A.$destroy(),A=null),h&&(n.leave(h).done((function(e){!1!==e&&(f=null)})),f=h,h=null)};r.$watch(a,(function(a){var c=function(e){!1===e||!j(s)||s&&!r.$eval(s)||t()},f=++p;a?(e(a,!0).then((function(e){if(!r.$$destroyed&&f===p){var t=r.$new();u.template=e;var s=l(t,(function(e){d(),n.enter(e,null,i).done(c)}));h=s,(A=t).$emit("$includeContentLoaded",a),r.$eval(o)}}),(function(){r.$$destroyed||f===p&&(d(),r.$emit("$includeContentError",a))})),r.$emit("$includeContentRequested",a)):(d(),u.template=null)}))}}}}],Sa=["$compile",function(t){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(n,r,i,a){if(g.call(r[0]).match(/SVG/))return r.empty(),void t(at(a.template,e.document).childNodes)(n,(function(e){r.append(e)}),{futureParentElement:r});r.html(a.template),t(r.contents())(n)}}}],xa=Di({priority:450,compile:function(){return{pre:function(e,t,n){e.$eval(n.ngInit)}}}}),Da=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(e,t,n,r){var i=n.ngList||", ",a="false"!==n.ngTrim,o=a?Z(i):i;r.$parsers.push((function(e){if(!T(e)){var t=[];return e&&w(e.split(o),(function(e){e&&t.push(a?Z(e):e)})),t}})),r.$formatters.push((function(e){if(G(e))return e.join(i)})),r.$isEmpty=function(e){return!e||!e.length}}}},Pa="ng-valid",Ma="ng-invalid",Fa="ng-pristine",Oa="ng-dirty",Ra=i("ngModel");function Ta(e,t,n,r,i,a,o,s,c){var u;this.$viewValue=Number.NaN,this.$modelValue=Number.NaN,this.$$rawModelValue=void 0,this.$validators={},this.$asyncValidators={},this.$parsers=[],this.$formatters=[],this.$viewChangeListeners=[],this.$untouched=!0,this.$touched=!1,this.$pristine=!0,this.$dirty=!1,this.$valid=!0,this.$invalid=!1,this.$error={},this.$$success={},this.$pending=void 0,this.$name=c(n.name||"",!1)(e),this.$$parentForm=Fi,this.$options=ja,this.$$updateEvents="",this.$$updateEventHandler=this.$$updateEventHandler.bind(this),this.$$parsedNgModel=i(n.ngModel),this.$$parsedNgModelAssign=this.$$parsedNgModel.assign,this.$$ngModelGet=this.$$parsedNgModel,this.$$ngModelSet=this.$$parsedNgModelAssign,this.$$pendingDebounce=null,this.$$parserValid=void 0,this.$$parserName="parse",this.$$currentValidationRunId=0,this.$$scope=e,this.$$rootScope=e.$root,this.$$attr=n,this.$$element=r,this.$$animate=a,this.$$timeout=o,this.$$parse=i,this.$$q=s,this.$$exceptionHandler=t,Hi(this),(u=this).$$scope.$watch((function(e){var t=u.$$ngModelGet(e);return t===u.$modelValue||u.$modelValue!=u.$modelValue&&t!=t||u.$$setModelValue(t),t}))}Ta.$inject=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$q","$interpolate"],Ta.prototype={$$initGetterSetters:function(){if(this.$options.getOption("getterSetter")){var e=this.$$parse(this.$$attr.ngModel+"()"),t=this.$$parse(this.$$attr.ngModel+"($$$p)");this.$$ngModelGet=function(t){var n=this.$$parsedNgModel(t);return Y(n)&&(n=e(t)),n},this.$$ngModelSet=function(e,n){Y(this.$$parsedNgModel(e))?t(e,{$$$p:n}):this.$$parsedNgModelAssign(e,n)}}else if(!this.$$parsedNgModel.assign)throw Ra("nonassign","Expression '{0}' is non-assignable. Element: {1}",this.$$attr.ngModel,be(this.$$element))},$render:M,$isEmpty:function(e){return T(e)||""===e||null===e||e!=e},$$updateEmptyClasses:function(e){this.$isEmpty(e)?(this.$$animate.removeClass(this.$$element,"ng-not-empty"),this.$$animate.addClass(this.$$element,"ng-empty")):(this.$$animate.removeClass(this.$$element,"ng-empty"),this.$$animate.addClass(this.$$element,"ng-not-empty"))},$setPristine:function(){this.$dirty=!1,this.$pristine=!0,this.$$animate.removeClass(this.$$element,Oa),this.$$animate.addClass(this.$$element,Fa)},$setDirty:function(){this.$dirty=!0,this.$pristine=!1,this.$$animate.removeClass(this.$$element,Fa),this.$$animate.addClass(this.$$element,Oa),this.$$parentForm.$setDirty()},$setUntouched:function(){this.$touched=!1,this.$untouched=!0,this.$$animate.setClass(this.$$element,"ng-untouched","ng-touched")},$setTouched:function(){this.$touched=!0,this.$untouched=!1,this.$$animate.setClass(this.$$element,"ng-touched","ng-untouched")},$rollbackViewValue:function(){this.$$timeout.cancel(this.$$pendingDebounce),this.$viewValue=this.$$lastCommittedViewValue,this.$render()},$validate:function(){if(!D(this.$modelValue)){var e=this.$$lastCommittedViewValue,t=this.$$rawModelValue,n=this.$valid,r=this.$modelValue,i=this.$options.getOption("allowInvalid"),a=this;this.$$runValidators(t,e,(function(e){i||n===e||(a.$modelValue=e?t:void 0,a.$modelValue!==r&&a.$$writeModelToScope())}))}},$$runValidators:function(e,t,n){this.$$currentValidationRunId++;var r,i,a=this.$$currentValidationRunId,o=this;(function(){var e=o.$$parserName;if(!T(o.$$parserValid))return o.$$parserValid||(w(o.$validators,(function(e,t){s(t,null)})),w(o.$asyncValidators,(function(e,t){s(t,null)}))),s(e,o.$$parserValid),o.$$parserValid;s(e,null);return!0})()?!function(){var n=!0;if(w(o.$validators,(function(r,i){var a=Boolean(r(e,t));n=n&&a,s(i,a)})),!n)return w(o.$asyncValidators,(function(e,t){s(t,null)})),!1;return!0}()?c(!1):(r=[],i=!0,w(o.$asyncValidators,(function(n,a){var o=n(e,t);if(!W(o))throw Ra("nopromise","Expected asynchronous validator to return a promise but got '{0}' instead.",o);s(a,void 0),r.push(o.then((function(){s(a,!0)}),(function(){i=!1,s(a,!1)})))})),r.length?o.$$q.all(r).then((function(){c(i)}),M):c(!0)):c(!1);function s(e,t){a===o.$$currentValidationRunId&&o.$setValidity(e,t)}function c(e){a===o.$$currentValidationRunId&&n(e)}},$commitViewValue:function(){var e=this.$viewValue;this.$$timeout.cancel(this.$$pendingDebounce),(this.$$lastCommittedViewValue!==e||""===e&&this.$$hasNativeValidators)&&(this.$$updateEmptyClasses(e),this.$$lastCommittedViewValue=e,this.$pristine&&this.$setDirty(),this.$$parseAndValidate())},$$parseAndValidate:function(){var e=this.$$lastCommittedViewValue,t=this;if(this.$$parserValid=!T(e)||void 0,this.$setValidity(this.$$parserName,null),this.$$parserName="parse",this.$$parserValid)for(var n=0;n<this.$parsers.length;n++)if(T(e=this.$parsers[n](e))){this.$$parserValid=!1;break}D(this.$modelValue)&&(this.$modelValue=this.$$ngModelGet(this.$$scope));var r=this.$modelValue,i=this.$options.getOption("allowInvalid");function a(){t.$modelValue!==r&&t.$$writeModelToScope()}this.$$rawModelValue=e,i&&(this.$modelValue=e,a()),this.$$runValidators(e,this.$$lastCommittedViewValue,(function(n){i||(t.$modelValue=n?e:void 0,a())}))},$$writeModelToScope:function(){this.$$ngModelSet(this.$$scope,this.$modelValue),w(this.$viewChangeListeners,(function(e){try{e()}catch(e){this.$$exceptionHandler(e)}}),this)},$setViewValue:function(e,t){this.$viewValue=e,this.$options.getOption("updateOnDefault")&&this.$$debounceViewValueCommit(t)},$$debounceViewValueCommit:function(e){var t=this.$options.getOption("debounce");L(t[e])?t=t[e]:L(t.default)&&-1===this.$options.getOption("updateOn").indexOf(e)?t=t.default:L(t["*"])&&(t=t["*"]),this.$$timeout.cancel(this.$$pendingDebounce);var n=this;t>0?this.$$pendingDebounce=this.$$timeout((function(){n.$commitViewValue()}),t):this.$$rootScope.$$phase?this.$commitViewValue():this.$$scope.$apply((function(){n.$commitViewValue()}))},$overrideModelOptions:function(e){this.$options=this.$options.createChild(e),this.$$setUpdateOnEvents()},$processModelValue:function(){var e=this.$$format();this.$viewValue!==e&&(this.$$updateEmptyClasses(e),this.$viewValue=this.$$lastCommittedViewValue=e,this.$render(),this.$$runValidators(this.$modelValue,this.$viewValue,M))},$$format:function(){for(var e=this.$formatters,t=e.length,n=this.$modelValue;t--;)n=e[t](n);return n},$$setModelValue:function(e){this.$modelValue=this.$$rawModelValue=e,this.$$parserValid=void 0,this.$processModelValue()},$$setUpdateOnEvents:function(){this.$$updateEvents&&this.$$element.off(this.$$updateEvents,this.$$updateEventHandler),this.$$updateEvents=this.$options.getOption("updateOn"),this.$$updateEvents&&this.$$element.on(this.$$updateEvents,this.$$updateEventHandler)},$$updateEventHandler:function(e){this.$$debounceViewValueCommit(e&&e.type)}},Ui({clazz:Ta,set:function(e,t){e[t]=!0},unset:function(e,t){delete e[t]}});var ja,Ha=["$rootScope",function(e){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:Ta,priority:1,compile:function(t){return t.addClass(Fa).addClass("ng-untouched").addClass(Pa),{pre:function(e,t,n,r){var i=r[0],a=r[1]||i.$$parentForm,o=r[2];o&&(i.$options=o.$options),i.$$initGetterSetters(),a.$addControl(i),n.$observe("name",(function(e){i.$name!==e&&i.$$parentForm.$$renameControl(i,e)})),e.$on("$destroy",(function(){i.$$parentForm.$removeControl(i)}))},post:function(t,n,r,i){var a=i[0];function o(){a.$setTouched()}a.$$setUpdateOnEvents(),n.on("blur",(function(){a.$touched||(e.$$phase?t.$evalAsync(o):t.$apply(o))}))}}}}}],Ua=/(\s+|^)default(\s+|$)/;function Na(e){this.$$options=e}Na.prototype={getOption:function(e){return this.$$options[e]},createChild:function(e){var t=!1;return w(e=Q({},e),(function(n,r){"$inherit"===n?"*"===r?t=!0:(e[r]=this.$$options[r],"updateOn"===r&&(e.updateOnDefault=this.$$options.updateOnDefault)):"updateOn"===r&&(e.updateOnDefault=!1,e[r]=Z(n.replace(Ua,(function(){return e.updateOnDefault=!0," "}))))}),this),t&&(delete e["*"],Ka(e,this.$$options)),Ka(e,ja.$$options),new Na(e)}},ja=new Na({updateOn:"",updateOnDefault:!0,debounce:0,getterSetter:!1,allowInvalid:!1,timezone:null});var La=function(){function e(e,t){this.$$attrs=e,this.$$scope=t}return e.$inject=["$attrs","$scope"],e.prototype={$onInit:function(){var e=this.parentCtrl?this.parentCtrl.$options:ja,t=this.$$scope.$eval(this.$$attrs.ngModelOptions);this.$options=e.createChild(t)}},{restrict:"A",priority:10,require:{parentCtrl:"?^^ngModelOptions"},bindToController:!0,controller:e}};function Ka(e,t){w(t,(function(t,n){j(e[n])||(e[n]=t)}))}var Ga=Di({terminal:!0,priority:1e3}),$a=i("ngOptions"),Ya=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([$\w][$\w]*)|(?:\(\s*([$\w][$\w]*)\s*,\s*([$\w][$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,Ja=["$compile","$document","$parse",function(t,n,r){var i=e.document.createElement("option"),a=e.document.createElement("optgroup");return{restrict:"A",terminal:!0,require:["select","ngModel"],link:{pre:function(e,t,n,r){r[0].registerOption=M},post:function(e,s,c,u){for(var l=u[0],A=u[1],f=c.multiple,h=0,p=s.children(),d=p.length;h<d;h++)if(""===p[h].value){l.hasEmptyOption=!0,l.emptyOption=p.eq(h);break}s.empty();var g,y=!!l.emptyOption;o(i.cloneNode(!1)).val("?");var v=function(e,t,n){var i=e.match(Ya);if(!i)throw $a("iexp","Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}",e,be(t));var a=i[5]||i[7],o=i[6],s=/ as /.test(i[0])&&i[1],c=i[9],u=r(i[2]?i[1]:a),l=s&&r(s)||u,A=c&&r(c),f=c?function(e,t){return A(n,t)}:function(e){return Mt(e)},h=function(e,t){return f(e,m(e,t))},p=r(i[2]||i[1]),d=r(i[3]||""),g=r(i[4]||""),y=r(i[8]),v={},m=o?function(e,t){return v[o]=t,v[a]=e,v}:function(e){return v[a]=e,v};function b(e,t,n,r,i){this.selectValue=e,this.viewValue=t,this.label=n,this.group=r,this.disabled=i}function w(e){var t;if(!o&&I(e))t=e;else for(var n in t=[],e)e.hasOwnProperty(n)&&"$"!==n.charAt(0)&&t.push(n);return t}return{trackBy:c,getTrackByValue:h,getWatchables:r(y,(function(e){for(var t=[],r=w(e=e||[]),a=r.length,o=0;o<a;o++){var s=e===r?o:r[o],c=e[s],u=m(c,s),l=f(c,u);if(t.push(l),i[2]||i[1]){var A=p(n,u);t.push(A)}if(i[4]){var h=g(n,u);t.push(h)}}return t})),getOptions:function(){for(var e=[],t={},r=y(n)||[],i=w(r),a=i.length,o=0;o<a;o++){var s=r===i?o:i[o],u=r[s],A=m(u,s),v=l(n,A),I=f(v,A),C=new b(I,v,p(n,A),d(n,A),g(n,A));e.push(C),t[I]=C}return{items:e,selectValueMap:t,getOptionFromViewValue:function(e){return t[h(e)]},getViewValueFromOption:function(e){return c?ae(e.viewValue):e.viewValue}}}}}(c.ngOptions,s,e),m=n[0].createDocumentFragment();function b(e,t){var n=i.cloneNode(!1);t.appendChild(n),function(e,t){e.element=t,t.disabled=e.disabled,e.label!==t.label&&(t.label=e.label,t.textContent=e.label);t.value=e.selectValue}(e,n)}function C(e){var t=g.getOptionFromViewValue(e),n=t&&t.element;return n&&!n.selected&&(n.selected=!0),t}l.generateUnknownOptionValue=function(e){return"?"},f?(l.writeValue=function(e){if(g){var t=e&&e.map(C)||[];g.items.forEach((function(e){e.element.selected&&!re(t,e)&&(e.element.selected=!1)}))}},l.readValue=function(){var e=s.val()||[],t=[];return w(e,(function(e){var n=g.selectValueMap[e];n&&!n.disabled&&t.push(g.getViewValueFromOption(n))})),t},v.trackBy&&e.$watchCollection((function(){if(G(A.$viewValue))return A.$viewValue.map((function(e){return v.getTrackByValue(e)}))}),(function(){A.$render()}))):(l.writeValue=function(e){if(g){var t=s[0].options[s[0].selectedIndex],n=g.getOptionFromViewValue(e);t&&t.removeAttribute("selected"),n?(s[0].value!==n.selectValue&&(l.removeUnknownOption(),s[0].value=n.selectValue,n.element.selected=!0),n.element.setAttribute("selected","selected")):l.selectUnknownOrEmptyOption(e)}},l.readValue=function(){var e=g.selectValueMap[s.val()];return e&&!e.disabled?(l.unselectEmptyOption(),l.removeUnknownOption(),g.getViewValueFromOption(e)):null},v.trackBy&&e.$watch((function(){return v.getTrackByValue(A.$viewValue)}),(function(){A.$render()}))),y&&(t(l.emptyOption)(e),s.prepend(l.emptyOption),8===l.emptyOption[0].nodeType?(l.hasEmptyOption=!1,l.registerOption=function(e,t){""===t.val()&&(l.hasEmptyOption=!0,l.emptyOption=t,l.emptyOption.removeClass("ng-scope"),A.$render(),t.on("$destroy",(function(){var e=l.$isEmptyOptionSelected();l.hasEmptyOption=!1,l.emptyOption=void 0,e&&A.$render()})))}):l.emptyOption.removeClass("ng-scope")),e.$watchCollection(v.getWatchables,(function(){var e=g&&l.readValue();if(g)for(var t=g.items.length-1;t>=0;t--){var n=g.items[t];j(n.group)?Ct(n.element.parentNode):Ct(n.element)}g=v.getOptions();var r={};if(g.items.forEach((function(e){var t;j(e.group)?((t=r[e.group])||(t=a.cloneNode(!1),m.appendChild(t),t.label=null===e.group?"null":e.group,r[e.group]=t),b(e,t)):b(e,m)})),s[0].appendChild(m),A.$render(),!A.$isEmpty(e)){var i=l.readValue();(v.trackBy||f?se(e,i):e===i)||(A.$setViewValue(i),A.$render())}}))}}}}],Va=["$locale","$interpolate","$log",function(e,t,n){var r=/{}/g,i=/^when(Minus)?(.+)$/;return{link:function(a,o,s){var c,u=s.count,l=s.$attr.when&&o.attr(s.$attr.when),f=s.offset||0,h=a.$eval(l)||{},p={},d=t.startSymbol(),g=t.endSymbol(),y=d+u+"-"+f+g,v=m.noop;function b(e){o.text(e||"")}w(s,(function(e,t){var n=i.exec(t);if(n){var r=(n[1]?"-":"")+A(n[2]);h[r]=o.attr(s.$attr[t])}})),w(h,(function(e,n){p[n]=t(e.replace(r,y))})),a.$watch(u,(function(t){var r=parseFloat(t),i=D(r);if(i||r in h||(r=e.pluralCat(r-f)),!(r===c||i&&D(c))){v();var o=p[r];T(o)?(null!=t&&n.debug("ngPluralize: no rule defined for '"+r+"' in "+l),v=M,b()):v=a.$watch(o,b),c=r}}))}}}],za=i("ngRef"),qa=["$parse",function(e){return{priority:-1,restrict:"A",compile:function(t,n){var r=pn(ne(t)),i=e(n.ngRef),a=i.assign||function(){throw za("nonassign",'Expression in ngRef="{0}" is non-assignable!',n.ngRef)};return function(e,t,o){var s;if(o.hasOwnProperty("ngRefRead")){if("$element"===o.ngRefRead)s=t;else if(!(s=t.data("$"+o.ngRefRead+"Controller")))throw za("noctrl",'The controller for ngRefRead="{0}" could not be found on ngRef="{1}"',o.ngRefRead,n.ngRef)}else s=t.data("$"+r+"Controller");a(e,s=s||t),t.on("$destroy",(function(){i(e)===s&&a(e,null)}))}}}}],Wa=["$parse","$animate","$compile",function(e,t,n){var r=i("ngRepeat"),a=function(e,t,n,r,i,a,o){e[n]=r,i&&(e[i]=a),e.$index=t,e.$first=0===t,e.$last=t===o-1,e.$middle=!(e.$first||e.$last),e.$odd=!(e.$even=0==(1&t))},o=function(e){return e.clone[0]},s=function(e){return e.clone[e.clone.length-1]},c=function(e,t,n){return Mt(n)},u=function(e,t){return t};return{restrict:"A",multiElement:!0,transclude:"element",priority:1e3,terminal:!0,$$tlb:!0,compile:function(i,A){var f=A.ngRepeat,h=n.$$createComment("end ngRepeat",f),p=f.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);if(!p)throw r("iexp","Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.",f);var d=p[1],g=p[2],y=p[3],v=p[4];if(!(p=d.match(/^(?:(\s*[$\w]+)|\(\s*([$\w]+)\s*,\s*([$\w]+)\s*\))$/)))throw r("iidexp","'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'.",d);var m,b=p[3]||p[1],C=p[2];if(y&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(y)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(y)))throw r("badident","alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.",y);if(v){var B={$id:Mt},E=e(v);m=function(e,t,n,r){return C&&(B[C]=t),B[b]=n,B.$index=r,E(e,B)}}return function(e,n,i,A,p){var d=je();e.$watchCollection(g,(function(i){var A,g,v,E,_,k,Q,S,x,D,P,M,F=n[0],O=je();if(y&&(e[y]=i),I(i))x=i,S=m||c;else for(var R in S=m||u,x=[],i)l.call(i,R)&&"$"!==R.charAt(0)&&x.push(R);for(E=x.length,P=new Array(E),A=0;A<E;A++)if(_=i===x?A:x[A],k=i[_],Q=S(e,_,k,A),d[Q])D=d[Q],delete d[Q],O[Q]=D,P[A]=D;else{if(O[Q])throw w(P,(function(e){e&&e.scope&&(d[e.id]=e)})),r("dupes","Duplicates in a repeater are not allowed. Use 'track by' expression to specify unique keys. Repeater: {0}, Duplicate key: {1}, Duplicate value: {2}",f,Q,k);P[A]={id:Q,scope:void 0,clone:void 0},O[Q]=!0}for(var T in B&&(B[b]=void 0),d){if(M=Te((D=d[T]).clone),t.leave(M),M[0].parentNode)for(A=0,g=M.length;A<g;A++)M[A].$$NG_REMOVED=!0;D.scope.$destroy()}for(A=0;A<E;A++)if(_=i===x?A:x[A],k=i[_],(D=P[A]).scope){v=F;do{v=v.nextSibling}while(v&&v.$$NG_REMOVED);o(D)!==v&&t.move(Te(D.clone),null,F),F=s(D),a(D.scope,A,b,k,C,_,E)}else p((function(e,n){D.scope=n;var r=h.cloneNode(!1);e[e.length++]=r,t.enter(e,null,F),F=r,D.clone=e,O[D.id]=D,a(D.scope,A,b,k,C,_,E)}));d=O}))}}}}],Xa=["$animate",function(e){return{restrict:"A",multiElement:!0,link:function(t,n,r){t.$watch(r.ngShow,(function(t){e[t?"removeClass":"addClass"](n,"ng-hide",{tempClasses:"ng-hide-animate"})}))}}}],Za=["$animate",function(e){return{restrict:"A",multiElement:!0,link:function(t,n,r){t.$watch(r.ngHide,(function(t){e[t?"addClass":"removeClass"](n,"ng-hide",{tempClasses:"ng-hide-animate"})}))}}}],eo=Di((function(e,t,n){e.$watchCollection(n.ngStyle,(function(e,n){n&&e!==n&&w(n,(function(e,n){t.css(n,"")})),e&&t.css(e)}))})),to=["$animate","$compile",function(e,t){return{require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(n,r,i,a){var o=i.ngSwitch||i.on,s=[],c=[],u=[],l=[],A=function(e,t){return function(n){!1!==n&&e.splice(t,1)}};n.$watch(o,(function(n){for(var r,i;u.length;)e.cancel(u.pop());for(r=0,i=l.length;r<i;++r){var o=Te(c[r].clone);l[r].$destroy(),(u[r]=e.leave(o)).done(A(u,r))}c.length=0,l.length=0,(s=a.cases["!"+n]||a.cases["?"])&&w(s,(function(n){n.transclude((function(r,i){l.push(i);var a=n.element;r[r.length++]=t.$$createComment("end ngSwitchWhen");var o={clone:r};c.push(o),e.enter(r,a.parent(),a)}))}))}))}}}],no=Di({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(e,t,n,r,i){w(n.ngSwitchWhen.split(n.ngSwitchWhenSeparator).sort().filter((function(e,t,n){return n[t-1]!==e})),(function(e){r.cases["!"+e]=r.cases["!"+e]||[],r.cases["!"+e].push({transclude:i,element:t})}))}}),ro=Di({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(e,t,n,r,i){r.cases["?"]=r.cases["?"]||[],r.cases["?"].push({transclude:i,element:t})}}),io=i("ngTransclude"),ao=["$compile",function(e){return{restrict:"EAC",compile:function(t){var n=e(t.contents());return t.empty(),function(e,t,r,i,a){if(!a)throw io("orphan","Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}",be(t));r.ngTransclude===r.$attr.ngTransclude&&(r.ngTransclude="");var o=r.ngTransclude||r.ngTranscludeSlot;function s(){n(e,(function(e){t.append(e)}))}a((function(e,n){e.length&&function(e){for(var t=0,n=e.length;t<n;t++){var r=e[t];if(r.nodeType!==Ue||r.nodeValue.trim())return!0}}(e)?t.append(e):(s(),n.$destroy())}),null,o),o&&!a.isSlotFilled(o)&&s()}}}}],oo=["$templateCache",function(e){return{restrict:"E",terminal:!0,compile:function(t,n){if("text/ng-template"===n.type){var r=n.id,i=t[0].text;e.put(r,i)}}}}],so={$setViewValue:M,$render:M};function co(e,t){e.prop("selected",t),e.attr("selected",t)}var uo=["$element","$scope",function(t,n){var r=this,i=new Rt;r.selectValueMap={},r.ngModelCtrl=so,r.multiple=!1,r.unknownOption=o(e.document.createElement("option")),r.hasEmptyOption=!1,r.emptyOption=void 0,r.renderUnknownOption=function(e){var n=r.generateUnknownOptionValue(e);r.unknownOption.val(n),t.prepend(r.unknownOption),co(r.unknownOption,!0),t.val(n)},r.updateUnknownOption=function(e){var n=r.generateUnknownOptionValue(e);r.unknownOption.val(n),co(r.unknownOption,!0),t.val(n)},r.generateUnknownOptionValue=function(e){return"? "+Mt(e)+" ?"},r.removeUnknownOption=function(){r.unknownOption.parent()&&r.unknownOption.remove()},r.selectEmptyOption=function(){r.emptyOption&&(t.val(""),co(r.emptyOption,!0))},r.unselectEmptyOption=function(){r.hasEmptyOption&&co(r.emptyOption,!1)},n.$on("$destroy",(function(){r.renderUnknownOption=M})),r.readValue=function(){var e=t.val(),n=e in r.selectValueMap?r.selectValueMap[e]:e;return r.hasOption(n)?n:null},r.writeValue=function(e){var n=t[0].options[t[0].selectedIndex];if(n&&co(o(n),!1),r.hasOption(e)){r.removeUnknownOption();var i=Mt(e);t.val(i in r.selectValueMap?i:e);var a=t[0].options[t[0].selectedIndex];co(o(a),!0)}else r.selectUnknownOrEmptyOption(e)},r.addOption=function(e,t){if(8!==t[0].nodeType){Re(e,'"option value"'),""===e&&(r.hasEmptyOption=!0,r.emptyOption=t);var n=i.get(e)||0;i.set(e,n+1),s()}},r.removeOption=function(e){var t=i.get(e);t&&(1===t?(i.delete(e),""===e&&(r.hasEmptyOption=!1,r.emptyOption=void 0)):i.set(e,t-1))},r.hasOption=function(e){return!!i.get(e)},r.$hasEmptyOption=function(){return r.hasEmptyOption},r.$isUnknownOptionSelected=function(){return t[0].options[0]===r.unknownOption[0]},r.$isEmptyOptionSelected=function(){return r.hasEmptyOption&&t[0].options[t[0].selectedIndex]===r.emptyOption[0]},r.selectUnknownOrEmptyOption=function(e){null==e&&r.emptyOption?(r.removeUnknownOption(),r.selectEmptyOption()):r.unknownOption.parent().length?r.updateUnknownOption(e):r.renderUnknownOption(e)};var a=!1;function s(){a||(a=!0,n.$$postDigest((function(){a=!1,r.ngModelCtrl.$render()})))}var c=!1;function u(e){c||(c=!0,n.$$postDigest((function(){n.$$destroyed||(c=!1,r.ngModelCtrl.$setViewValue(r.readValue()),e&&r.ngModelCtrl.$render())})))}r.registerOption=function(e,t,n,i,a){var o,c;n.$attr.ngValue?n.$observe("value",(function(e){var n,i=t.prop("selected");j(c)&&(r.removeOption(o),delete r.selectValueMap[c],n=!0),c=Mt(e),o=e,r.selectValueMap[c]=e,r.addOption(e,t),t.attr("value",c),n&&i&&u()})):i?n.$observe("value",(function(e){var n;r.readValue();var i=t.prop("selected");j(o)&&(r.removeOption(o),n=!0),o=e,r.addOption(e,t),n&&i&&u()})):a?e.$watch(a,(function(e,i){n.$set("value",e);var a=t.prop("selected");i!==e&&r.removeOption(i),r.addOption(e,t),i&&a&&u()})):r.addOption(n.value,t);n.$observe("disabled",(function(e){("true"===e||e&&t.prop("selected"))&&(r.multiple?u(!0):(r.ngModelCtrl.$setViewValue(null),r.ngModelCtrl.$render()))})),t.on("$destroy",(function(){var e=r.readValue(),t=n.value;r.removeOption(t),s(),(r.multiple&&e&&-1!==e.indexOf(t)||e===t)&&u(!0)}))}}],lo=function(){return{restrict:"E",require:["select","?ngModel"],controller:uo,priority:1,link:{pre:function(e,t,n,r){var i=r[0],a=r[1];if(!a)return void(i.registerOption=M);if(i.ngModelCtrl=a,t.on("change",(function(){i.removeUnknownOption(),e.$apply((function(){a.$setViewValue(i.readValue())}))})),n.multiple){i.multiple=!0,i.readValue=function(){var e=[];return w(t.find("option"),(function(t){if(t.selected&&!t.disabled){var n=t.value;e.push(n in i.selectValueMap?i.selectValueMap[n]:n)}})),e},i.writeValue=function(e){w(t.find("option"),(function(t){var n=!!e&&(re(e,t.value)||re(e,i.selectValueMap[t.value]));n!==t.selected&&co(o(t),n)}))};var s,c=NaN;e.$watch((function(){c!==a.$viewValue||se(s,a.$viewValue)||(s=Ne(a.$viewValue),a.$render()),c=a.$viewValue})),a.$isEmpty=function(e){return!e||0===e.length}}},post:function(e,t,n,r){var i=r[1];if(!i)return;var a=r[0];i.$render=function(){a.writeValue(i.$viewValue)}}}}},Ao=["$interpolate",function(e){return{restrict:"E",priority:100,compile:function(t,n){var r,i;return j(n.ngValue)||(j(n.value)?r=e(n.value,!0):(i=e(t.text(),!0))||n.$set("value",t.text())),function(e,t,n){var a=t.parent(),o=a.data("$selectController")||a.parent().data("$selectController");o&&o.registerOption(e,t,n,r,i)}}}}],fo=["$parse",function(e){return{restrict:"A",require:"?ngModel",link:function(t,n,r,i){if(i){var a=r.hasOwnProperty("required")||e(r.ngRequired)(t);r.ngRequired||(r.required=!0),i.$validators.required=function(e,t){return!a||!i.$isEmpty(t)},r.$observe("required",(function(e){a!==e&&(a=e,i.$validate())}))}}}}],ho=["$parse",function(e){return{restrict:"A",require:"?ngModel",compile:function(t,n){var r,i;return n.ngPattern&&(r=n.ngPattern,i="/"===n.ngPattern.charAt(0)&&u.test(n.ngPattern)?function(){return n.ngPattern}:e(n.ngPattern)),function(e,t,n,a){if(a){var o=n.pattern;n.ngPattern?o=i(e):r=n.pattern;var s=yo(o,r,t);n.$observe("pattern",(function(e){var n=s;s=yo(e,r,t),(n&&n.toString())!==(s&&s.toString())&&a.$validate()})),a.$validators.pattern=function(e,t){return a.$isEmpty(t)||T(s)||s.test(t)}}}}}}],po=["$parse",function(e){return{restrict:"A",require:"?ngModel",link:function(t,n,r,i){if(i){var a=r.maxlength||e(r.ngMaxlength)(t),o=vo(a);r.$observe("maxlength",(function(e){a!==e&&(o=vo(e),a=e,i.$validate())})),i.$validators.maxlength=function(e,t){return o<0||i.$isEmpty(t)||t.length<=o}}}}}],go=["$parse",function(e){return{restrict:"A",require:"?ngModel",link:function(t,n,r,i){if(i){var a=r.minlength||e(r.ngMinlength)(t),o=vo(a)||-1;r.$observe("minlength",(function(e){a!==e&&(o=vo(e)||-1,a=e,i.$validate())})),i.$validators.minlength=function(e,t){return i.$isEmpty(t)||t.length>=o}}}}}];function yo(e,t,n){if(e){if(N(e)&&(e=new RegExp("^"+e+"$")),!e.test)throw i("ngPattern")("noregexp","Expected {0} to be a RegExp but was {1}. Element: {2}",t,e,be(n));return e}}function vo(e){var t=x(e);return D(t)?-1:t}e.angular.bootstrap?e.console&&console.log("WARNING: Tried to load AngularJS more than once."):(!function(){var t;if(!Me){var n=ue();(s=T(n)?e.jQuery:n?e[n]:void 0)&&s.fn.on?(o=s,Q(s.fn,{scope:Et.scope,isolateScope:Et.isolateScope,controller:Et.controller,injector:Et.injector,inheritedData:Et.inheritedData})):o=st,t=o.cleanData,o.cleanData=function(e){for(var n,r,i=0;null!=(r=e[i]);i++)(n=(o._data(r)||{}).events)&&n.$destroy&&o(r).triggerHandler("$destroy");t(e)},m.element=o,Me=!0}}(),function(t){Q(t,{errorHandlingConfig:n,bootstrap:Qe,copy:ae,extend:Q,merge:S,equals:se,element:o,forEach:w,injector:Yt,noop:M,bind:fe,toJson:pe,fromJson:de,identity:F,isUndefined:T,isDefined:j,isString:N,isFunction:Y,isObject:H,isNumber:L,isElement:te,isArray:G,version:Ke,isDate:K,callbacks:{$$counter:0},getTestability:xe,reloadWithDebugInfo:Se,$$minErr:i,$$csp:ce,$$encodeUriSegment:Ce,$$encodeUriQuery:Be,$$lowercase:A,$$stringify:He,$$uppercase:f}),(c=function(e){var t=i("$injector"),n=i("ng");function r(e,t,n){return e[t]||(e[t]=n())}var a=r(e,"angular",Object);return a.$$minErr=a.$$minErr||i,r(a,"module",(function(){var e={};return function(i,a,o){var s={};return function(e,t){if("hasOwnProperty"===e)throw n("badname","hasOwnProperty is not a valid {0} name",t)}(i,"module"),a&&e.hasOwnProperty(i)&&(e[i]=null),r(e,i,(function(){if(!a)throw t("nomod","Module '{0}' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.",i);var e=[],r=[],c=[],u=A("$injector","invoke","push",r),l={_invokeQueue:e,_configBlocks:r,_runBlocks:c,info:function(e){if(j(e)){if(!H(e))throw n("aobj","Argument '{0}' must be an object","value");return s=e,this}return s},requires:a,name:i,provider:f("$provide","provider"),factory:f("$provide","factory"),service:f("$provide","service"),value:A("$provide","value"),constant:A("$provide","constant","unshift"),decorator:f("$provide","decorator",r),animation:f("$animateProvider","register"),filter:f("$filterProvider","register"),controller:f("$controllerProvider","register"),directive:f("$compileProvider","directive"),component:f("$compileProvider","component"),config:u,run:function(e){return c.push(e),this}};return o&&u(o),l;function A(t,n,r,i){return i||(i=e),function(){return i[r||"push"]([t,n,arguments]),l}}function f(t,n,r){return r||(r=e),function(e,a){return a&&Y(a)&&(a.$$moduleName=i),r.push([t,n,arguments]),l}}}))}}))}(e))("ng",["ngLocale"],["$provide",function(e){e.provider({$$sanitizeUri:Tr}),e.provider("$compile",ln).directive({a:Pi,input:la,textarea:la,form:Ti,script:oo,select:lo,option:Ao,ngBind:pa,ngBindHtml:ga,ngBindTemplate:da,ngClass:ma,ngClassEven:Ia,ngClassOdd:ba,ngCloak:wa,ngController:Ca,ngForm:ji,ngHide:Za,ngIf:ka,ngInclude:Qa,ngInit:xa,ngNonBindable:Ga,ngPluralize:Va,ngRef:qa,ngRepeat:Wa,ngShow:Xa,ngStyle:eo,ngSwitch:to,ngSwitchWhen:no,ngSwitchDefault:ro,ngOptions:Ja,ngTransclude:ao,ngModel:Ha,ngList:Da,ngChange:ya,pattern:ho,ngPattern:ho,required:fo,ngRequired:fo,minlength:go,ngMinlength:go,maxlength:po,ngMaxlength:po,ngValue:ha,ngModelOptions:La}).directive({ngInclude:Sa,input:Aa}).directive(Mi).directive(Ba),e.provider({$anchorScroll:Jt,$animate:Zt,$animateCss:nn,$$animateJs:Wt,$$animateQueue:Xt,$$AnimateRunner:tn,$$animateAsyncRun:en,$browser:an,$cacheFactory:on,$controller:bn,$document:In,$$isDocumentHidden:wn,$exceptionHandler:Cn,$filter:ci,$$forceReflow:Bn,$interpolate:Ln,$interval:Gn,$$intervalFactory:$n,$http:jn,$httpParamSerializer:Dn,$httpParamSerializerJQLike:Pn,$httpBackend:Un,$xhrFactory:Hn,$jsonpCallbacks:Yn,$location:ur,$log:lr,$parse:Qr,$rootScope:Rr,$q:Sr,$$q:xr,$sce:Gr,$sceDelegate:Kr,$sniffer:$r,$$taskTrackerFactory:Yr,$templateCache:sn,$templateRequest:zr,$$testability:qr,$timeout:Xr,$window:ai,$$rAF:Or,$$jqLite:Pt,$$Map:Tt,$$cookieReader:si})}]).info({angularVersion:"1.7.9"})}(m),m.module("ngLocale",[],["$provide",function(e){var t="one",n="other";e.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM","PM"],DAY:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,MONTH:["January","February","March","April","May","June","July","August","September","October","November","December"],SHORTDAY:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],SHORTMONTH:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],STANDALONEMONTH:["January","February","March","April","May","June","July","August","September","October","November","December"],WEEKENDRANGE:[5,6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",mediumDate:"MMM d, y",mediumTime:"h:mm:ss a",short:"M/d/yy h:mm a",shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-¤",negSuf:"",posPre:"¤",posSuf:""}]},id:"en-us",localeID:"en_US",pluralCat:function(e,r){var i=0|e,a=function(e,t){var n=t;void 0===n&&(n=Math.min(function(e){var t=(e+="").indexOf(".");return-1==t?0:e.length-t-1}(e),3));var r=Math.pow(10,n);return{v:n,f:(e*r|0)%r}}(e,r);return 1==i&&0==a.v?t:n}})}]),o((function(){ke(e.document,Qe)})))}(window),!window.angular.$$csp().noInlineStyle&&window.angular.element(document.head).prepend('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}.ng-animate-shim{visibility:hidden;}.ng-anchor{position:absolute;}</style>')},function(e,t,n){"use strict";var r,i,a,o,s,c,u,l,A,f=angular.$$minErr("$sanitize");angular.module("ngSanitize",[]).provider("$sanitize",(function(){var e=!1,t=!1;this.$get=["$$sanitizeUri",function(n){return e=!0,t&&i(w,b),function(e){var t=[];return l(e,A(t,(function(e,t){return!/^unsafe:/.test(n(e,t))}))),t.join("")}}],this.enableSvg=function(e){return s(e)?(t=e,this):t},this.addValidElements=function(t){return e||(o(t)&&(t={htmlElements:t}),S(b,t.svgElements),S(p,t.htmlVoidElements),S(w,t.htmlVoidElements),S(w,t.htmlElements)),this},this.addValidAttrs=function(t){return e||i(_,Q(t,!0)),this},r=angular.bind,i=angular.extend,a=angular.forEach,o=angular.isArray,s=angular.isDefined,c=angular.$$lowercase,angular.noop,l=function(e,t){null==e?e="":"string"!=typeof e&&(e=""+e);var n=x(e);if(!n)return"";var r=5;do{if(0===r)throw f("uinput","Failed to sanitize html because the input is unstable");r--,e=n.innerHTML,n=x(e)}while(e!==n.innerHTML);var i=n.firstChild;for(;i;){switch(i.nodeType){case 1:t.start(i.nodeName.toLowerCase(),D(i.attributes));break;case 3:t.chars(i.textContent)}var a;if(!((a=i.firstChild)||(1===i.nodeType&&t.end(i.nodeName.toLowerCase()),a=F("nextSibling",i))))for(;null==a&&(i=F("parentNode",i))!==n;)a=F("nextSibling",i),1===i.nodeType&&t.end(i.nodeName.toLowerCase());i=a}for(;i=n.firstChild;)n.removeChild(i)},A=function(e,t){var n=!1,i=r(e,e.push);return{start:function(e,r){e=c(e),!n&&I[e]&&(n=e),n||!0!==w[e]||(i("<"),i(e),a(r,(function(n,r){var a=c(r),o="img"===e&&"src"===a||"background"===a;!0!==_[a]||!0===C[a]&&!t(n,o)||(i(" "),i(r),i('="'),i(P(n)),i('"'))})),i(">"))},end:function(e){e=c(e),n||!0!==w[e]||!0===p[e]||(i("</"),i(e),i(">")),e==n&&(n=!1)},chars:function(e){n||i(P(e))}}},u=window.Node.prototype.contains||function(e){return!!(16&this.compareDocumentPosition(e))};var n=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,h=/([^#-~ |!])/g,p=k("area,br,col,hr,img,wbr"),d=k("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),g=k("rp,rt"),y=i({},g,d),v=i({},d,k("address,article,aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,section,table,ul,progress")),m=i({},g,k("a,abbr,acronym,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s,samp,small,span,strike,strong,sub,sup,time,tt,u,var")),b=k("circle,defs,desc,ellipse,font-face,font-face-name,font-face-src,g,glyph,hkern,image,linearGradient,line,marker,metadata,missing-glyph,mpath,path,polygon,polyline,radialGradient,rect,stop,svg,switch,text,title,tspan"),I=k("script,style"),w=i({},p,v,m,y),C=k("background,cite,href,longdesc,src,xlink:href,xml:base"),B=k("abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,scope,scrolling,shape,size,span,start,summary,tabindex,target,title,type,valign,value,vspace,width,style"),E=k("accent-height,accumulate,additive,alphabetic,arabic-form,ascent,baseProfile,bbox,begin,by,calcMode,cap-height,class,color,color-rendering,content,cx,cy,d,dx,dy,descent,display,dur,end,fill,fill-rule,font-family,font-size,font-stretch,font-style,font-variant,font-weight,from,fx,fy,g1,g2,glyph-name,gradientUnits,hanging,height,horiz-adv-x,horiz-origin-x,ideographic,k,keyPoints,keySplines,keyTimes,lang,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mathematical,max,min,offset,opacity,orient,origin,overline-position,overline-thickness,panose-1,path,pathLength,points,preserveAspectRatio,r,refX,refY,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,rotate,rx,ry,slope,stemh,stemv,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,systemLanguage,target,text-anchor,to,transform,type,u1,u2,underline-position,underline-thickness,unicode,unicode-range,units-per-em,values,version,viewBox,visibility,width,widths,x,x-height,x1,x2,xlink:actuate,xlink:arcrole,xlink:role,xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,xmlns,xmlns:xlink,y,y1,y2,zoomAndPan",!0),_=i({},C,E,B);function k(e,t){return Q(e.split(","),t)}function Q(e,t){var n,r={};for(n=0;n<e.length;n++)r[t?c(e[n]):e[n]]=!0;return r}function S(e,t){t&&t.length&&i(e,Q(t))}var x=function(e,t){var n;if(!t||!t.implementation)throw f("noinert","Can't create an inert html document");var r=((n=t.implementation.createHTMLDocument("inert")).documentElement||n.getDocumentElement()).querySelector("body");return r.innerHTML='<svg><g onload="this.parentNode.remove()"></g></svg>',r.querySelector("svg")?(r.innerHTML='<svg><p><style><img src="</style><img src=x onerror=alert(1)//">',r.querySelector("svg img")?function(t){t="<remove></remove>"+t;try{var n=(new e.DOMParser).parseFromString(t,"text/html").body;return n.firstChild.remove(),n}catch(e){return}}:function(e){r.innerHTML=e,t.documentMode&&M(r);return r}):function(t){t="<remove></remove>"+t;try{t=encodeURI(t)}catch(e){return}var n=new e.XMLHttpRequest;n.responseType="document",n.open("GET","data:text/html;charset=utf-8,"+t,!1),n.send(null);var r=n.response.body;return r.firstChild.remove(),r}}(window,window.document);function D(e){for(var t={},n=0,r=e.length;n<r;n++){var i=e[n];t[i.name]=i.value}return t}function P(e){return e.replace(/&/g,"&amp;").replace(n,(function(e){return"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";"})).replace(h,(function(e){return"&#"+e.charCodeAt(0)+";"})).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function M(e){for(;e;){if(e.nodeType===window.Node.ELEMENT_NODE)for(var t=e.attributes,n=0,r=t.length;n<r;n++){var i=t[n],a=i.name.toLowerCase();"xmlns:ns1"!==a&&0!==a.lastIndexOf("ns1:",0)||(e.removeAttributeNode(i),n--,r--)}var o=e.firstChild;o&&M(o),e=F("nextSibling",e)}}function F(e,t){var n=t[e];if(n&&u.call(t,n))throw f("elclob","Failed to sanitize html because the element is clobbered: {0}",t.outerHTML||t.outerText);return n}})).info({angularVersion:'"NG_VERSION_FULL"'})},function(e,t){!function(e){"use strict";var t=[0,1,2,3,4,4,5,5,6,6,6,6,7,7,7,7,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,0,0,16,17,18,18,19,19,20,20,20,20,21,21,21,21,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29];function n(){var e=this;function t(e,t){var n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}e.build_tree=function(n){var r,i,a,o=e.dyn_tree,s=e.stat_desc.static_tree,c=e.stat_desc.elems,u=-1;for(n.heap_len=0,n.heap_max=573,r=0;r<c;r++)0!==o[2*r]?(n.heap[++n.heap_len]=u=r,n.depth[r]=0):o[2*r+1]=0;for(;n.heap_len<2;)o[2*(a=n.heap[++n.heap_len]=u<2?++u:0)]=1,n.depth[a]=0,n.opt_len--,s&&(n.static_len-=s[2*a+1]);for(e.max_code=u,r=Math.floor(n.heap_len/2);r>=1;r--)n.pqdownheap(o,r);a=c;do{r=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(o,1),i=n.heap[1],n.heap[--n.heap_max]=r,n.heap[--n.heap_max]=i,o[2*a]=o[2*r]+o[2*i],n.depth[a]=Math.max(n.depth[r],n.depth[i])+1,o[2*r+1]=o[2*i+1]=a,n.heap[1]=a++,n.pqdownheap(o,1)}while(n.heap_len>=2);n.heap[--n.heap_max]=n.heap[1],function(t){var n,r,i,a,o,s,c=e.dyn_tree,u=e.stat_desc.static_tree,l=e.stat_desc.extra_bits,A=e.stat_desc.extra_base,f=e.stat_desc.max_length,h=0;for(a=0;a<=15;a++)t.bl_count[a]=0;for(c[2*t.heap[t.heap_max]+1]=0,n=t.heap_max+1;n<573;n++)(a=c[2*c[2*(r=t.heap[n])+1]+1]+1)>f&&(a=f,h++),c[2*r+1]=a,r>e.max_code||(t.bl_count[a]++,o=0,r>=A&&(o=l[r-A]),s=c[2*r],t.opt_len+=s*(a+o),u&&(t.static_len+=s*(u[2*r+1]+o)));if(0!==h){do{for(a=f-1;0===t.bl_count[a];)a--;t.bl_count[a]--,t.bl_count[a+1]+=2,t.bl_count[f]--,h-=2}while(h>0);for(a=f;0!==a;a--)for(r=t.bl_count[a];0!==r;)(i=t.heap[--n])>e.max_code||(c[2*i+1]!=a&&(t.opt_len+=(a-c[2*i+1])*c[2*i],c[2*i+1]=a),r--)}}(n),function(e,n,r){var i,a,o,s=[],c=0;for(i=1;i<=15;i++)s[i]=c=c+r[i-1]<<1;for(a=0;a<=n;a++)0!==(o=e[2*a+1])&&(e[2*a]=t(s[o]++,o))}(o,e.max_code,n.bl_count)}}function r(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i}n._length_code=[0,1,2,3,4,5,6,7,8,8,9,9,10,10,11,11,12,12,12,12,13,13,13,13,14,14,14,14,15,15,15,15,16,16,16,16,16,16,16,16,17,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,28],n.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],n.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],n.d_code=function(e){return e<256?t[e]:t[256+(e>>>7)]},n.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],n.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],n.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],n.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],r.static_ltree=[12,8,140,8,76,8,204,8,44,8,172,8,108,8,236,8,28,8,156,8,92,8,220,8,60,8,188,8,124,8,252,8,2,8,130,8,66,8,194,8,34,8,162,8,98,8,226,8,18,8,146,8,82,8,210,8,50,8,178,8,114,8,242,8,10,8,138,8,74,8,202,8,42,8,170,8,106,8,234,8,26,8,154,8,90,8,218,8,58,8,186,8,122,8,250,8,6,8,134,8,70,8,198,8,38,8,166,8,102,8,230,8,22,8,150,8,86,8,214,8,54,8,182,8,118,8,246,8,14,8,142,8,78,8,206,8,46,8,174,8,110,8,238,8,30,8,158,8,94,8,222,8,62,8,190,8,126,8,254,8,1,8,129,8,65,8,193,8,33,8,161,8,97,8,225,8,17,8,145,8,81,8,209,8,49,8,177,8,113,8,241,8,9,8,137,8,73,8,201,8,41,8,169,8,105,8,233,8,25,8,153,8,89,8,217,8,57,8,185,8,121,8,249,8,5,8,133,8,69,8,197,8,37,8,165,8,101,8,229,8,21,8,149,8,85,8,213,8,53,8,181,8,117,8,245,8,13,8,141,8,77,8,205,8,45,8,173,8,109,8,237,8,29,8,157,8,93,8,221,8,61,8,189,8,125,8,253,8,19,9,275,9,147,9,403,9,83,9,339,9,211,9,467,9,51,9,307,9,179,9,435,9,115,9,371,9,243,9,499,9,11,9,267,9,139,9,395,9,75,9,331,9,203,9,459,9,43,9,299,9,171,9,427,9,107,9,363,9,235,9,491,9,27,9,283,9,155,9,411,9,91,9,347,9,219,9,475,9,59,9,315,9,187,9,443,9,123,9,379,9,251,9,507,9,7,9,263,9,135,9,391,9,71,9,327,9,199,9,455,9,39,9,295,9,167,9,423,9,103,9,359,9,231,9,487,9,23,9,279,9,151,9,407,9,87,9,343,9,215,9,471,9,55,9,311,9,183,9,439,9,119,9,375,9,247,9,503,9,15,9,271,9,143,9,399,9,79,9,335,9,207,9,463,9,47,9,303,9,175,9,431,9,111,9,367,9,239,9,495,9,31,9,287,9,159,9,415,9,95,9,351,9,223,9,479,9,63,9,319,9,191,9,447,9,127,9,383,9,255,9,511,9,0,7,64,7,32,7,96,7,16,7,80,7,48,7,112,7,8,7,72,7,40,7,104,7,24,7,88,7,56,7,120,7,4,7,68,7,36,7,100,7,20,7,84,7,52,7,116,7,3,8,131,8,67,8,195,8,35,8,163,8,99,8,227,8],r.static_dtree=[0,5,16,5,8,5,24,5,4,5,20,5,12,5,28,5,2,5,18,5,10,5,26,5,6,5,22,5,14,5,30,5,1,5,17,5,9,5,25,5,5,5,21,5,13,5,29,5,3,5,19,5,11,5,27,5,7,5,23,5],r.static_l_desc=new r(r.static_ltree,n.extra_lbits,257,286,15),r.static_d_desc=new r(r.static_dtree,n.extra_dbits,0,30,15),r.static_bl_desc=new r(null,n.extra_blbits,0,19,7);function i(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}var a=[new i(0,0,0,0,0),new i(4,4,8,4,1),new i(4,5,16,8,1),new i(4,6,32,32,1),new i(4,4,16,16,2),new i(8,16,32,32,2),new i(8,16,128,128,2),new i(8,32,128,256,2),new i(32,128,258,1024,2),new i(32,258,258,4096,2)],o=["need dictionary","stream end","","","stream error","data error","","buffer error","",""];function s(e,t,n,r){var i=e[2*t],a=e[2*n];return i<a||i==a&&r[t]<=r[n]}function c(){var e,t,i,c,u,l,A,f,h,p,d,g,y,v,m,b,I,w,C,B,E,_,k,Q,S,x,D,P,M,F,O,R,T,j,H,U,N,L,K,G,$,Y=this,J=new n,V=new n,z=new n;function q(){var e;for(e=0;e<286;e++)O[2*e]=0;for(e=0;e<30;e++)R[2*e]=0;for(e=0;e<19;e++)T[2*e]=0;O[512]=1,Y.opt_len=Y.static_len=0,U=L=0}function W(e,t){var n,r,i=-1,a=e[1],o=0,s=7,c=4;for(0===a&&(s=138,c=3),e[2*(t+1)+1]=65535,n=0;n<=t;n++)r=a,a=e[2*(n+1)+1],++o<s&&r==a||(o<c?T[2*r]+=o:0!==r?(r!=i&&T[2*r]++,T[32]++):o<=10?T[34]++:T[36]++,o=0,i=r,0===a?(s=138,c=3):r==a?(s=6,c=3):(s=7,c=4))}function X(e){Y.pending_buf[Y.pending++]=e}function Z(e){X(255&e),X(e>>>8&255)}function ee(e,t){var n,r=t;$>16-r?(Z(G|=(n=e)<<$&65535),G=n>>>16-$,$+=r-16):(G|=e<<$&65535,$+=r)}function te(e,t){var n=2*e;ee(65535&t[n],65535&t[n+1])}function ne(e,t){var n,r,i=-1,a=e[1],o=0,s=7,c=4;for(0===a&&(s=138,c=3),n=0;n<=t;n++)if(r=a,a=e[2*(n+1)+1],!(++o<s&&r==a)){if(o<c)do{te(r,T)}while(0!=--o);else 0!==r?(r!=i&&(te(r,T),o--),te(16,T),ee(o-3,2)):o<=10?(te(17,T),ee(o-3,3)):(te(18,T),ee(o-11,7));o=0,i=r,0===a?(s=138,c=3):r==a?(s=6,c=3):(s=7,c=4)}}function re(){16==$?(Z(G),G=0,$=0):$>=8&&(X(255&G),G>>>=8,$-=8)}function ie(e,t){var r,i,a;if(Y.pending_buf[N+2*U]=e>>>8&255,Y.pending_buf[N+2*U+1]=255&e,Y.pending_buf[j+U]=255&t,U++,0===e?O[2*t]++:(L++,e--,O[2*(n._length_code[t]+256+1)]++,R[2*n.d_code(e)]++),0==(8191&U)&&D>2){for(r=8*U,i=E-I,a=0;a<30;a++)r+=R[2*a]*(5+n.extra_dbits[a]);if(r>>>=3,L<Math.floor(U/2)&&r<Math.floor(i/2))return!0}return U==H-1}function ae(e,t){var r,i,a,o,s=0;if(0!==U)do{r=Y.pending_buf[N+2*s]<<8&65280|255&Y.pending_buf[N+2*s+1],i=255&Y.pending_buf[j+s],s++,0===r?te(i,e):(te((a=n._length_code[i])+256+1,e),0!==(o=n.extra_lbits[a])&&ee(i-=n.base_length[a],o),r--,te(a=n.d_code(r),t),0!==(o=n.extra_dbits[a])&&ee(r-=n.base_dist[a],o))}while(s<U);te(256,e),K=e[513]}function oe(){$>8?Z(G):$>0&&X(255&G),G=0,$=0}function se(e,t,n){ee(0+(n?1:0),3),function(e,t,n){oe(),K=8,n&&(Z(t),Z(~t)),Y.pending_buf.set(f.subarray(e,e+t),Y.pending),Y.pending+=t}(e,t,!0)}function ce(e,t,i){var a,o,s=0;D>0?(J.build_tree(Y),V.build_tree(Y),s=function(){var e;for(W(O,J.max_code),W(R,V.max_code),z.build_tree(Y),e=18;e>=3&&0===T[2*n.bl_order[e]+1];e--);return Y.opt_len+=3*(e+1)+5+5+4,e}(),a=Y.opt_len+3+7>>>3,(o=Y.static_len+3+7>>>3)<=a&&(a=o)):a=o=t+5,t+4<=a&&-1!=e?se(e,t,i):o==a?(ee(2+(i?1:0),3),ae(r.static_ltree,r.static_dtree)):(ee(4+(i?1:0),3),function(e,t,r){var i;for(ee(e-257,5),ee(t-1,5),ee(r-4,4),i=0;i<r;i++)ee(T[2*n.bl_order[i]+1],3);ne(O,e-1),ne(R,t-1)}(J.max_code+1,V.max_code+1,s+1),ae(O,R)),q(),i&&oe()}function ue(t){ce(I>=0?I:-1,E-I,t),I=E,e.flush_pending()}function le(){var t,n,r,i;do{if(0===(i=h-k-E)&&0===E&&0===k)i=u;else if(-1==i)i--;else if(E>=u+u-262){f.set(f.subarray(u,u+u),0),_-=u,E-=u,I-=u,r=t=y;do{n=65535&d[--r],d[r]=n>=u?n-u:0}while(0!=--t);r=t=u;do{n=65535&p[--r],p[r]=n>=u?n-u:0}while(0!=--t);i+=u}if(0===e.avail_in)return;t=e.read_buf(f,E+k,i),(k+=t)>=3&&(g=((g=255&f[E])<<b^255&f[E+1])&m)}while(k<262&&0!==e.avail_in)}function Ae(e){var t,n,r=S,i=E,a=Q,o=E>u-262?E-(u-262):0,s=F,c=A,l=E+258,h=f[i+a-1],d=f[i+a];Q>=M&&(r>>=2),s>k&&(s=k);do{if(f[(t=e)+a]==d&&f[t+a-1]==h&&f[t]==f[i]&&f[++t]==f[i+1]){i+=2,t++;do{}while(f[++i]==f[++t]&&f[++i]==f[++t]&&f[++i]==f[++t]&&f[++i]==f[++t]&&f[++i]==f[++t]&&f[++i]==f[++t]&&f[++i]==f[++t]&&f[++i]==f[++t]&&i<l);if(n=258-(l-i),i=l-258,n>a){if(_=e,a=n,n>=s)break;h=f[i+a-1],d=f[i+a]}}}while((e=65535&p[e&c])>o&&0!=--r);return a<=k?a:k}function fe(e){return e.total_in=e.total_out=0,e.msg=null,Y.pending=0,Y.pending_out=0,t=113,c=0,J.dyn_tree=O,J.stat_desc=r.static_l_desc,V.dyn_tree=R,V.stat_desc=r.static_d_desc,z.dyn_tree=T,z.stat_desc=r.static_bl_desc,G=0,$=0,K=8,q(),function(){var e;for(h=2*u,d[y-1]=0,e=0;e<y-1;e++)d[e]=0;x=a[D].max_lazy,M=a[D].good_length,F=a[D].nice_length,S=a[D].max_chain,E=0,I=0,k=0,w=Q=2,B=0,g=0}(),0}Y.depth=[],Y.bl_count=[],Y.heap=[],O=[],R=[],T=[],Y.pqdownheap=function(e,t){for(var n=Y.heap,r=n[t],i=t<<1;i<=Y.heap_len&&(i<Y.heap_len&&s(e,n[i+1],n[i],Y.depth)&&i++,!s(e,r,n[i],Y.depth));)n[t]=n[i],t=i,i<<=1;n[t]=r},Y.deflateInit=function(e,t,n,r,a,o){return r||(r=8),a||(a=8),o||(o=0),e.msg=null,-1==t&&(t=6),a<1||a>9||8!=r||n<9||n>15||t<0||t>9||o<0||o>2?-2:(e.dstate=Y,A=(u=1<<(l=n))-1,m=(y=1<<(v=a+7))-1,b=Math.floor((v+3-1)/3),f=new Uint8Array(2*u),p=[],d=[],H=1<<a+6,Y.pending_buf=new Uint8Array(4*H),i=4*H,N=Math.floor(H/2),j=3*H,D=t,P=o,255&r,fe(e))},Y.deflateEnd=function(){return 42!=t&&113!=t&&666!=t?-2:(Y.pending_buf=null,d=null,p=null,f=null,Y.dstate=null,113==t?-3:0)},Y.deflateParams=function(e,t,n){var r=0;return-1==t&&(t=6),t<0||t>9||n<0||n>2?-2:(a[D].func!=a[t].func&&0!==e.total_in&&(r=e.deflate(1)),D!=t&&(x=a[D=t].max_lazy,M=a[D].good_length,F=a[D].nice_length,S=a[D].max_chain),P=n,r)},Y.deflateSetDictionary=function(e,n,r){var i,a=r,o=0;if(!n||42!=t)return-2;if(a<3)return 0;for(a>u-262&&(o=r-(a=u-262)),f.set(n.subarray(o,o+a),0),E=a,I=a,g=((g=255&f[0])<<b^255&f[1])&m,i=0;i<=a-3;i++)g=(g<<b^255&f[i+2])&m,p[i&A]=d[g],d[g]=i;return 0},Y.deflate=function(n,s){var h,v,S,M,F,O;if(s>4||s<0)return-2;if(!n.next_out||!n.next_in&&0!==n.avail_in||666==t&&4!=s)return n.msg=o[4],-2;if(0===n.avail_out)return n.msg=o[7],-5;if(e=n,M=c,c=s,42==t&&(v=8+(l-8<<4)<<8,(S=(D-1&255)>>1)>3&&(S=3),v|=S<<6,0!==E&&(v|=32),t=113,X((O=v+=31-v%31)>>8&255),X(255&O)),0!==Y.pending){if(e.flush_pending(),0===e.avail_out)return c=-1,0}else if(0===e.avail_in&&s<=M&&4!=s)return e.msg=o[7],-5;if(666==t&&0!==e.avail_in)return n.msg=o[7],-5;if(0!==e.avail_in||0!==k||0!=s&&666!=t){switch(F=-1,a[D].func){case 0:F=function(t){var n,r=65535;for(r>i-5&&(r=i-5);;){if(k<=1){if(le(),0===k&&0==t)return 0;if(0===k)break}if(E+=k,k=0,n=I+r,(0===E||E>=n)&&(k=E-n,E=n,ue(!1),0===e.avail_out))return 0;if(E-I>=u-262&&(ue(!1),0===e.avail_out))return 0}return ue(4==t),0===e.avail_out?4==t?2:0:4==t?3:1}(s);break;case 1:F=function(t){for(var n,r=0;;){if(k<262){if(le(),k<262&&0==t)return 0;if(0===k)break}if(k>=3&&(g=(g<<b^255&f[E+2])&m,r=65535&d[g],p[E&A]=d[g],d[g]=E),0!==r&&(E-r&65535)<=u-262&&2!=P&&(w=Ae(r)),w>=3)if(n=ie(E-_,w-3),k-=w,w<=x&&k>=3){w--;do{E++,g=(g<<b^255&f[E+2])&m,r=65535&d[g],p[E&A]=d[g],d[g]=E}while(0!=--w);E++}else E+=w,w=0,g=((g=255&f[E])<<b^255&f[E+1])&m;else n=ie(0,255&f[E]),k--,E++;if(n&&(ue(!1),0===e.avail_out))return 0}return ue(4==t),0===e.avail_out?4==t?2:0:4==t?3:1}(s);break;case 2:F=function(t){for(var n,r,i=0;;){if(k<262){if(le(),k<262&&0==t)return 0;if(0===k)break}if(k>=3&&(g=(g<<b^255&f[E+2])&m,i=65535&d[g],p[E&A]=d[g],d[g]=E),Q=w,C=_,w=2,0!==i&&Q<x&&(E-i&65535)<=u-262&&(2!=P&&(w=Ae(i)),w<=5&&(1==P||3==w&&E-_>4096)&&(w=2)),Q>=3&&w<=Q){r=E+k-3,n=ie(E-1-C,Q-3),k-=Q-1,Q-=2;do{++E<=r&&(g=(g<<b^255&f[E+2])&m,i=65535&d[g],p[E&A]=d[g],d[g]=E)}while(0!=--Q);if(B=0,w=2,E++,n&&(ue(!1),0===e.avail_out))return 0}else if(0!==B){if((n=ie(0,255&f[E-1]))&&ue(!1),E++,k--,0===e.avail_out)return 0}else B=1,E++,k--}return 0!==B&&(n=ie(0,255&f[E-1]),B=0),ue(4==t),0===e.avail_out?4==t?2:0:4==t?3:1}(s)}if(2!=F&&3!=F||(t=666),0==F||2==F)return 0===e.avail_out&&(c=-1),0;if(1==F){if(1==s)ee(2,3),te(256,r.static_ltree),re(),1+K+10-$<9&&(ee(2,3),te(256,r.static_ltree),re()),K=7;else if(se(0,0,!1),3==s)for(h=0;h<y;h++)d[h]=0;if(e.flush_pending(),0===e.avail_out)return c=-1,0}}return 4!=s?0:1}}function u(){this.next_in_index=0,this.next_out_index=0,this.avail_in=0,this.total_in=0,this.avail_out=0,this.total_out=0}u.prototype={deflateInit:function(e,t){return this.dstate=new c,t||(t=15),this.dstate.deflateInit(this,e,t)},deflate:function(e){return this.dstate?this.dstate.deflate(this,e):-2},deflateEnd:function(){if(!this.dstate)return-2;var e=this.dstate.deflateEnd();return this.dstate=null,e},deflateParams:function(e,t){return this.dstate?this.dstate.deflateParams(this,e,t):-2},deflateSetDictionary:function(e,t){return this.dstate?this.dstate.deflateSetDictionary(this,e,t):-2},read_buf:function(e,t,n){var r=this.avail_in;return r>n&&(r=n),0===r?0:(this.avail_in-=r,e.set(this.next_in.subarray(this.next_in_index,this.next_in_index+r),t),this.next_in_index+=r,this.total_in+=r,r)},flush_pending:function(){var e=this.dstate.pending;e>this.avail_out&&(e=this.avail_out),0!==e&&(this.next_out.set(this.dstate.pending_buf.subarray(this.dstate.pending_out,this.dstate.pending_out+e),this.next_out_index),this.next_out_index+=e,this.dstate.pending_out+=e,this.total_out+=e,this.avail_out-=e,this.dstate.pending-=e,0===this.dstate.pending&&(this.dstate.pending_out=0))}};var l=e.zip||e;l.Deflater=l._jzlib_Deflater=function(e){var t=new u,n=new Uint8Array(512),r=e?e.level:-1;void 0===r&&(r=-1),t.deflateInit(r),t.next_out=n,this.append=function(e,r){var i,a=[],o=0,s=0,c=0;if(e.length){t.next_in_index=0,t.next_in=e,t.avail_in=e.length;do{if(t.next_out_index=0,t.avail_out=512,0!=t.deflate(0))throw new Error("deflating: "+t.msg);t.next_out_index&&(512==t.next_out_index?a.push(new Uint8Array(n)):a.push(new Uint8Array(n.subarray(0,t.next_out_index)))),c+=t.next_out_index,r&&t.next_in_index>0&&t.next_in_index!=o&&(r(t.next_in_index),o=t.next_in_index)}while(t.avail_in>0||0===t.avail_out);return i=new Uint8Array(c),a.forEach((function(e){i.set(e,s),s+=e.length})),i}},this.flush=function(){var e,r,i=[],a=0,o=0;do{if(t.next_out_index=0,t.avail_out=512,1!=(e=t.deflate(4))&&0!=e)throw new Error("deflating: "+t.msg);512-t.avail_out>0&&i.push(new Uint8Array(n.subarray(0,t.next_out_index))),o+=t.next_out_index}while(t.avail_in>0||0===t.avail_out);return t.deflateEnd(),r=new Uint8Array(o),i.forEach((function(e){r.set(e,a),a+=e.length})),r}}}(this)},function(e,t){!function(e){"use strict";var t=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],n=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],r=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],i=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],a=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],o=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],s=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];function c(){var e,t,n,r,c,u;function l(e,t,i,a,o,s,l,A,f,h,p){var d,g,y,v,m,b,I,w,C,B,E,_,k,Q,S;B=0,m=i;do{n[e[t+B]]++,B++,m--}while(0!==m);if(n[0]==i)return l[0]=-1,A[0]=0,0;for(w=A[0],b=1;b<=15&&0===n[b];b++);for(I=b,w<b&&(w=b),m=15;0!==m&&0===n[m];m--);for(y=m,w>m&&(w=m),A[0]=w,Q=1<<b;b<m;b++,Q<<=1)if((Q-=n[b])<0)return-3;if((Q-=n[m])<0)return-3;for(n[m]+=Q,u[1]=b=0,B=1,k=2;0!=--m;)u[k]=b+=n[B],k++,B++;m=0,B=0;do{0!==(b=e[t+B])&&(p[u[b]++]=m),B++}while(++m<i);for(i=u[y],u[0]=m=0,B=0,v=-1,_=-w,c[0]=0,E=0,S=0;I<=y;I++)for(d=n[I];0!=d--;){for(;I>_+w;){if(v++,S=(S=y-(_+=w))>w?w:S,(g=1<<(b=I-_))>d+1&&(g-=d+1,k=I,b<S))for(;++b<S&&!((g<<=1)<=n[++k]);)g-=n[k];if(S=1<<b,h[0]+S>1440)return-3;c[v]=E=h[0],h[0]+=S,0!==v?(u[v]=m,r[0]=b,r[1]=w,b=m>>>_-w,r[2]=E-c[v-1]-b,f.set(r,3*(c[v-1]+b))):l[0]=E}for(r[1]=I-_,B>=i?r[0]=192:p[B]<a?(r[0]=p[B]<256?0:96,r[2]=p[B++]):(r[0]=s[p[B]-a]+16+64,r[2]=o[p[B++]-a]),g=1<<I-_,b=m>>>_;b<S;b+=g)f.set(r,3*(E+b));for(b=1<<I-1;0!=(m&b);b>>>=1)m^=b;for(m^=b,C=(1<<_)-1;(m&C)!=u[v];)v--,C=(1<<(_-=w))-1}return 0!==Q&&1!=y?-5:0}function A(i){var a;for(e||(e=[],t=[],n=new Int32Array(16),r=[],c=new Int32Array(15),u=new Int32Array(16)),t.length<i&&(t=[]),a=0;a<i;a++)t[a]=0;for(a=0;a<16;a++)n[a]=0;for(a=0;a<3;a++)r[a]=0;c.set(n.subarray(0,15),0),u.set(n.subarray(0,16),0)}this.inflate_trees_bits=function(n,r,i,a,o){var s;return A(19),e[0]=0,-3==(s=l(n,0,19,19,null,null,i,r,a,e,t))?o.msg="oversubscribed dynamic bit lengths tree":-5!=s&&0!==r[0]||(o.msg="incomplete dynamic bit lengths tree",s=-3),s},this.inflate_trees_dynamic=function(n,r,c,u,f,h,p,d,g){var y;return A(288),e[0]=0,0!=(y=l(c,0,n,257,i,a,h,u,d,e,t))||0===u[0]?(-3==y?g.msg="oversubscribed literal/length tree":-4!=y&&(g.msg="incomplete literal/length tree",y=-3),y):(A(288),0!=(y=l(c,n,r,0,o,s,p,f,d,e,t))||0===f[0]&&n>257?(-3==y?g.msg="oversubscribed distance tree":-5==y?(g.msg="incomplete distance tree",y=-3):-4!=y&&(g.msg="empty distance tree with lengths",y=-3),y):0)}}c.inflate_trees_fixed=function(e,t,i,a){return e[0]=9,t[0]=5,i[0]=n,a[0]=r,0};function u(){var e,n,r,i,a=0,o=0,s=0,c=0,u=0,l=0,A=0,f=0,h=0,p=0;function d(e,n,r,i,a,o,s,c){var u,l,A,f,h,p,d,g,y,v,m,b,I,w,C,B;d=c.next_in_index,g=c.avail_in,h=s.bitb,p=s.bitk,v=(y=s.write)<s.read?s.read-y-1:s.end-y,m=t[e],b=t[n];do{for(;p<20;)g--,h|=(255&c.read_byte(d++))<<p,p+=8;if(0!==(f=(l=r)[B=3*((A=i)+(u=h&m))]))for(;;){if(h>>=l[B+1],p-=l[B+1],0!=(16&f)){for(f&=15,I=l[B+2]+(h&t[f]),h>>=f,p-=f;p<15;)g--,h|=(255&c.read_byte(d++))<<p,p+=8;for(f=(l=a)[B=3*((A=o)+(u=h&b))];;){if(h>>=l[B+1],p-=l[B+1],0!=(16&f)){for(f&=15;p<f;)g--,h|=(255&c.read_byte(d++))<<p,p+=8;if(w=l[B+2]+(h&t[f]),h>>=f,p-=f,v-=I,y>=w)y-(C=y-w)>0&&2>y-C?(s.window[y++]=s.window[C++],s.window[y++]=s.window[C++],I-=2):(s.window.set(s.window.subarray(C,C+2),y),y+=2,C+=2,I-=2);else{C=y-w;do{C+=s.end}while(C<0);if(I>(f=s.end-C)){if(I-=f,y-C>0&&f>y-C)do{s.window[y++]=s.window[C++]}while(0!=--f);else s.window.set(s.window.subarray(C,C+f),y),y+=f,C+=f,f=0;C=0}}if(y-C>0&&I>y-C)do{s.window[y++]=s.window[C++]}while(0!=--I);else s.window.set(s.window.subarray(C,C+I),y),y+=I,C+=I,I=0;break}if(0!=(64&f))return c.msg="invalid distance code",g+=I=p>>3<(I=c.avail_in-g)?p>>3:I,d-=I,p-=I<<3,s.bitb=h,s.bitk=p,c.avail_in=g,c.total_in+=d-c.next_in_index,c.next_in_index=d,s.write=y,-3;u+=l[B+2],f=l[B=3*(A+(u+=h&t[f]))]}break}if(0!=(64&f))return 0!=(32&f)?(g+=I=p>>3<(I=c.avail_in-g)?p>>3:I,d-=I,p-=I<<3,s.bitb=h,s.bitk=p,c.avail_in=g,c.total_in+=d-c.next_in_index,c.next_in_index=d,s.write=y,1):(c.msg="invalid literal/length code",g+=I=p>>3<(I=c.avail_in-g)?p>>3:I,d-=I,p-=I<<3,s.bitb=h,s.bitk=p,c.avail_in=g,c.total_in+=d-c.next_in_index,c.next_in_index=d,s.write=y,-3);if(u+=l[B+2],0===(f=l[B=3*(A+(u+=h&t[f]))])){h>>=l[B+1],p-=l[B+1],s.window[y++]=l[B+2],v--;break}}else h>>=l[B+1],p-=l[B+1],s.window[y++]=l[B+2],v--}while(v>=258&&g>=10);return g+=I=p>>3<(I=c.avail_in-g)?p>>3:I,d-=I,p-=I<<3,s.bitb=h,s.bitk=p,c.avail_in=g,c.total_in+=d-c.next_in_index,c.next_in_index=d,s.write=y,0}this.init=function(t,a,o,s,c,u){e=0,A=t,f=a,r=o,h=s,i=c,p=u,n=null},this.proc=function(g,y,v){var m,b,I,w,C,B,E,_=0,k=0,Q=0;for(Q=y.next_in_index,w=y.avail_in,_=g.bitb,k=g.bitk,B=(C=g.write)<g.read?g.read-C-1:g.end-C;;)switch(e){case 0:if(B>=258&&w>=10&&(g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,v=d(A,f,r,h,i,p,g,y),Q=y.next_in_index,w=y.avail_in,_=g.bitb,k=g.bitk,B=(C=g.write)<g.read?g.read-C-1:g.end-C,0!=v)){e=1==v?7:9;break}s=A,n=r,o=h,e=1;case 1:for(m=s;k<m;){if(0===w)return g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v);v=0,w--,_|=(255&y.read_byte(Q++))<<k,k+=8}if(_>>>=n[(b=3*(o+(_&t[m])))+1],k-=n[b+1],0===(I=n[b])){c=n[b+2],e=6;break}if(0!=(16&I)){u=15&I,a=n[b+2],e=2;break}if(0==(64&I)){s=I,o=b/3+n[b+2];break}if(0!=(32&I)){e=7;break}return e=9,y.msg="invalid literal/length code",v=-3,g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v);case 2:for(m=u;k<m;){if(0===w)return g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v);v=0,w--,_|=(255&y.read_byte(Q++))<<k,k+=8}a+=_&t[m],_>>=m,k-=m,s=f,n=i,o=p,e=3;case 3:for(m=s;k<m;){if(0===w)return g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v);v=0,w--,_|=(255&y.read_byte(Q++))<<k,k+=8}if(_>>=n[(b=3*(o+(_&t[m])))+1],k-=n[b+1],0!=(16&(I=n[b]))){u=15&I,l=n[b+2],e=4;break}if(0==(64&I)){s=I,o=b/3+n[b+2];break}return e=9,y.msg="invalid distance code",v=-3,g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v);case 4:for(m=u;k<m;){if(0===w)return g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v);v=0,w--,_|=(255&y.read_byte(Q++))<<k,k+=8}l+=_&t[m],_>>=m,k-=m,e=5;case 5:for(E=C-l;E<0;)E+=g.end;for(;0!==a;){if(0===B&&(C==g.end&&0!==g.read&&(B=(C=0)<g.read?g.read-C-1:g.end-C),0===B&&(g.write=C,v=g.inflate_flush(y,v),B=(C=g.write)<g.read?g.read-C-1:g.end-C,C==g.end&&0!==g.read&&(B=(C=0)<g.read?g.read-C-1:g.end-C),0===B)))return g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v);g.window[C++]=g.window[E++],B--,E==g.end&&(E=0),a--}e=0;break;case 6:if(0===B&&(C==g.end&&0!==g.read&&(B=(C=0)<g.read?g.read-C-1:g.end-C),0===B&&(g.write=C,v=g.inflate_flush(y,v),B=(C=g.write)<g.read?g.read-C-1:g.end-C,C==g.end&&0!==g.read&&(B=(C=0)<g.read?g.read-C-1:g.end-C),0===B)))return g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v);v=0,g.window[C++]=c,B--,e=0;break;case 7:if(k>7&&(k-=8,w++,Q--),g.write=C,v=g.inflate_flush(y,v),B=(C=g.write)<g.read?g.read-C-1:g.end-C,g.read!=g.write)return g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v);e=8;case 8:return v=1,g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v);case 9:return v=-3,g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v);default:return v=-2,g.bitb=_,g.bitk=k,y.avail_in=w,y.total_in+=Q-y.next_in_index,y.next_in_index=Q,g.write=C,g.inflate_flush(y,v)}},this.free=function(){}}var l=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function A(e,n){var r,i=this,a=0,o=0,s=0,A=0,f=[0],h=[0],p=new u,d=0,g=new Int32Array(4320),y=new c;i.bitk=0,i.bitb=0,i.window=new Uint8Array(n),i.end=n,i.read=0,i.write=0,i.reset=function(e,t){t&&(t[0]=0),6==a&&p.free(e),a=0,i.bitk=0,i.bitb=0,i.read=i.write=0},i.reset(e,null),i.inflate_flush=function(e,t){var n,r,a;return r=e.next_out_index,(n=((a=i.read)<=i.write?i.write:i.end)-a)>e.avail_out&&(n=e.avail_out),0!==n&&-5==t&&(t=0),e.avail_out-=n,e.total_out+=n,e.next_out.set(i.window.subarray(a,a+n),r),r+=n,(a+=n)==i.end&&(a=0,i.write==i.end&&(i.write=0),(n=i.write-a)>e.avail_out&&(n=e.avail_out),0!==n&&-5==t&&(t=0),e.avail_out-=n,e.total_out+=n,e.next_out.set(i.window.subarray(a,a+n),r),r+=n,a+=n),e.next_out_index=r,i.read=a,t},i.proc=function(e,n){var u,v,m,b,I,w,C,B;for(b=e.next_in_index,I=e.avail_in,v=i.bitb,m=i.bitk,C=(w=i.write)<i.read?i.read-w-1:i.end-w;;)switch(a){case 0:for(;m<3;){if(0===I)return i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);n=0,I--,v|=(255&e.read_byte(b++))<<m,m+=8}switch(d=1&(u=7&v),u>>>1){case 0:v>>>=3,v>>>=u=7&(m-=3),m-=u,a=1;break;case 1:var E=[],_=[],k=[[]],Q=[[]];c.inflate_trees_fixed(E,_,k,Q),p.init(E[0],_[0],k[0],0,Q[0],0),v>>>=3,m-=3,a=6;break;case 2:v>>>=3,m-=3,a=3;break;case 3:return v>>>=3,m-=3,a=9,e.msg="invalid block type",n=-3,i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n)}break;case 1:for(;m<32;){if(0===I)return i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);n=0,I--,v|=(255&e.read_byte(b++))<<m,m+=8}if((~v>>>16&65535)!=(65535&v))return a=9,e.msg="invalid stored block lengths",n=-3,i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);o=65535&v,v=m=0,a=0!==o?2:0!==d?7:0;break;case 2:if(0===I)return i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);if(0===C&&(w==i.end&&0!==i.read&&(C=(w=0)<i.read?i.read-w-1:i.end-w),0===C&&(i.write=w,n=i.inflate_flush(e,n),C=(w=i.write)<i.read?i.read-w-1:i.end-w,w==i.end&&0!==i.read&&(C=(w=0)<i.read?i.read-w-1:i.end-w),0===C)))return i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);if(n=0,(u=o)>I&&(u=I),u>C&&(u=C),i.window.set(e.read_buf(b,u),w),b+=u,I-=u,w+=u,C-=u,0!=(o-=u))break;a=0!==d?7:0;break;case 3:for(;m<14;){if(0===I)return i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);n=0,I--,v|=(255&e.read_byte(b++))<<m,m+=8}if(s=u=16383&v,(31&u)>29||(u>>5&31)>29)return a=9,e.msg="too many length or distance symbols",n=-3,i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);if(u=258+(31&u)+(u>>5&31),!r||r.length<u)r=[];else for(B=0;B<u;B++)r[B]=0;v>>>=14,m-=14,A=0,a=4;case 4:for(;A<4+(s>>>10);){for(;m<3;){if(0===I)return i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);n=0,I--,v|=(255&e.read_byte(b++))<<m,m+=8}r[l[A++]]=7&v,v>>>=3,m-=3}for(;A<19;)r[l[A++]]=0;if(f[0]=7,0!=(u=y.inflate_trees_bits(r,f,h,g,e)))return-3==(n=u)&&(r=null,a=9),i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);A=0,a=5;case 5:for(;!(A>=258+(31&(u=s))+(u>>5&31));){var S,x;for(u=f[0];m<u;){if(0===I)return i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);n=0,I--,v|=(255&e.read_byte(b++))<<m,m+=8}if(u=g[3*(h[0]+(v&t[u]))+1],(x=g[3*(h[0]+(v&t[u]))+2])<16)v>>>=u,m-=u,r[A++]=x;else{for(B=18==x?7:x-14,S=18==x?11:3;m<u+B;){if(0===I)return i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);n=0,I--,v|=(255&e.read_byte(b++))<<m,m+=8}if(m-=u,S+=(v>>>=u)&t[B],v>>>=B,m-=B,(B=A)+S>258+(31&(u=s))+(u>>5&31)||16==x&&B<1)return r=null,a=9,e.msg="invalid bit length repeat",n=-3,i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);x=16==x?r[B-1]:0;do{r[B++]=x}while(0!=--S);A=B}}h[0]=-1;var D=[],P=[],M=[],F=[];if(D[0]=9,P[0]=6,u=s,0!=(u=y.inflate_trees_dynamic(257+(31&u),1+(u>>5&31),r,D,P,M,F,g,e)))return-3==u&&(r=null,a=9),n=u,i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);p.init(D[0],P[0],g,M[0],g,F[0]),a=6;case 6:if(i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,1!=(n=p.proc(i,e,n)))return i.inflate_flush(e,n);if(n=0,p.free(e),b=e.next_in_index,I=e.avail_in,v=i.bitb,m=i.bitk,C=(w=i.write)<i.read?i.read-w-1:i.end-w,0===d){a=0;break}a=7;case 7:if(i.write=w,n=i.inflate_flush(e,n),C=(w=i.write)<i.read?i.read-w-1:i.end-w,i.read!=i.write)return i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);a=8;case 8:return n=1,i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);case 9:return n=-3,i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n);default:return n=-2,i.bitb=v,i.bitk=m,e.avail_in=I,e.total_in+=b-e.next_in_index,e.next_in_index=b,i.write=w,i.inflate_flush(e,n)}},i.free=function(e){i.reset(e,null),i.window=null,g=null},i.set_dictionary=function(e,t,n){i.window.set(e.subarray(t,t+n),0),i.read=i.write=n},i.sync_point=function(){return 1==a?1:0}}var f=[0,0,255,255];function h(){var e=this;function t(e){return e&&e.istate?(e.total_in=e.total_out=0,e.msg=null,e.istate.mode=7,e.istate.blocks.reset(e,null),0):-2}e.mode=0,e.method=0,e.was=[0],e.need=0,e.marker=0,e.wbits=0,e.inflateEnd=function(t){return e.blocks&&e.blocks.free(t),e.blocks=null,0},e.inflateInit=function(n,r){return n.msg=null,e.blocks=null,r<8||r>15?(e.inflateEnd(n),-2):(e.wbits=r,n.istate.blocks=new A(n,1<<r),t(n),0)},e.inflate=function(e,t){var n,r;if(!e||!e.istate||!e.next_in)return-2;for(t=4==t?-5:0,n=-5;;)switch(e.istate.mode){case 0:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,8!=(15&(e.istate.method=e.read_byte(e.next_in_index++)))){e.istate.mode=13,e.msg="unknown compression method",e.istate.marker=5;break}if(8+(e.istate.method>>4)>e.istate.wbits){e.istate.mode=13,e.msg="invalid window size",e.istate.marker=5;break}e.istate.mode=1;case 1:if(0===e.avail_in)return n;if(n=t,e.avail_in--,e.total_in++,r=255&e.read_byte(e.next_in_index++),((e.istate.method<<8)+r)%31!=0){e.istate.mode=13,e.msg="incorrect header check",e.istate.marker=5;break}if(0==(32&r)){e.istate.mode=7;break}e.istate.mode=2;case 2:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,e.istate.need=(255&e.read_byte(e.next_in_index++))<<24&4278190080,e.istate.mode=3;case 3:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,e.istate.need+=(255&e.read_byte(e.next_in_index++))<<16&16711680,e.istate.mode=4;case 4:if(0===e.avail_in)return n;n=t,e.avail_in--,e.total_in++,e.istate.need+=(255&e.read_byte(e.next_in_index++))<<8&65280,e.istate.mode=5;case 5:return 0===e.avail_in?n:(n=t,e.avail_in--,e.total_in++,e.istate.need+=255&e.read_byte(e.next_in_index++),e.istate.mode=6,2);case 6:return e.istate.mode=13,e.msg="need dictionary",e.istate.marker=0,-2;case 7:if(-3==(n=e.istate.blocks.proc(e,n))){e.istate.mode=13,e.istate.marker=0;break}if(0==n&&(n=t),1!=n)return n;n=t,e.istate.blocks.reset(e,e.istate.was),e.istate.mode=12;case 12:return 1;case 13:return-3;default:return-2}},e.inflateSetDictionary=function(e,t,n){var r=0,i=n;return e&&e.istate&&6==e.istate.mode?(i>=1<<e.istate.wbits&&(r=n-(i=(1<<e.istate.wbits)-1)),e.istate.blocks.set_dictionary(t,r,i),e.istate.mode=7,0):-2},e.inflateSync=function(e){var n,r,i,a,o;if(!e||!e.istate)return-2;if(13!=e.istate.mode&&(e.istate.mode=13,e.istate.marker=0),0===(n=e.avail_in))return-5;for(r=e.next_in_index,i=e.istate.marker;0!==n&&i<4;)e.read_byte(r)==f[i]?i++:i=0!==e.read_byte(r)?0:4-i,r++,n--;return e.total_in+=r-e.next_in_index,e.next_in_index=r,e.avail_in=n,e.istate.marker=i,4!=i?-3:(a=e.total_in,o=e.total_out,t(e),e.total_in=a,e.total_out=o,e.istate.mode=7,0)},e.inflateSyncPoint=function(e){return e&&e.istate&&e.istate.blocks?e.istate.blocks.sync_point():-2}}function p(){}p.prototype={inflateInit:function(e){return this.istate=new h,e||(e=15),this.istate.inflateInit(this,e)},inflate:function(e){return this.istate?this.istate.inflate(this,e):-2},inflateEnd:function(){if(!this.istate)return-2;var e=this.istate.inflateEnd(this);return this.istate=null,e},inflateSync:function(){return this.istate?this.istate.inflateSync(this):-2},inflateSetDictionary:function(e,t){return this.istate?this.istate.inflateSetDictionary(this,e,t):-2},read_byte:function(e){return this.next_in.subarray(e,e+1)[0]},read_buf:function(e,t){return this.next_in.subarray(e,e+t)}};var d=e.zip||e;d.Inflater=d._jzlib_Inflater=function(){var e=new p,t=new Uint8Array(512),n=!1;e.inflateInit(),e.next_out=t,this.append=function(r,i){var a,o,s=[],c=0,u=0,l=0;if(0!==r.length){e.next_in_index=0,e.next_in=r,e.avail_in=r.length;do{if(e.next_out_index=0,e.avail_out=512,0!==e.avail_in||n||(e.next_in_index=0,n=!0),a=e.inflate(0),n&&-5===a){if(0!==e.avail_in)throw new Error("inflating: bad input")}else if(0!==a&&1!==a)throw new Error("inflating: "+e.msg);if((n||1===a)&&e.avail_in===r.length)throw new Error("inflating: bad input");e.next_out_index&&(512===e.next_out_index?s.push(new Uint8Array(t)):s.push(new Uint8Array(t.subarray(0,e.next_out_index)))),l+=e.next_out_index,i&&e.next_in_index>0&&e.next_in_index!=c&&(i(e.next_in_index),c=e.next_in_index)}while(e.avail_in>0||0===e.avail_out);return o=new Uint8Array(l),s.forEach((function(e){o.set(e,u),u+=e.length})),o}},this.flush=function(){e.inflateEnd()}}}(this)},function(e,t){!function(e){"use strict";var t,n="File format is not recognized.",r="Error while reading zip file.";try{t=0===new Blob([new DataView(new ArrayBuffer(0))]).size}catch(e){}function i(){this.crc=-1}function a(){}function o(e,t){var n,r;return n=new ArrayBuffer(e),r=new Uint8Array(n),t&&r.set(t,0),{buffer:n,array:r,view:new DataView(n)}}function s(){}function c(e){var t,n=this;n.size=0,n.init=function(r,i){var a=new Blob([e],{type:"text/plain"});(t=new l(a)).init((function(){n.size=t.size,r()}),i)},n.readUint8Array=function(e,n,r,i){t.readUint8Array(e,n,r,i)}}function u(t){var n,r=this;r.size=0,r.init=function(e){for(var i=t.length;"="==t.charAt(i-1);)i--;n=t.indexOf(",")+1,r.size=Math.floor(.75*(i-n)),e()},r.readUint8Array=function(r,i,a){var s,c=o(i),u=4*Math.floor(r/3),l=4*Math.ceil((r+i)/3),A=e.atob(t.substring(u+n,l+n)),f=r-3*Math.floor(u/4);for(s=f;s<f+i;s++)c.array[s-f]=A.charCodeAt(s);a(c.array)}}function l(e){var t=this;t.size=0,t.init=function(n){t.size=e.size,n()},t.readUint8Array=function(t,n,r,i){var a=new FileReader;a.onload=function(e){r(new Uint8Array(e.target.result))},a.onerror=i;try{a.readAsArrayBuffer(function(e,t,n){if(t<0||n<0||t+n>e.size)throw new RangeError("offset:"+t+", length:"+n+", size:"+e.size);return e.slice?e.slice(t,t+n):e.webkitSlice?e.webkitSlice(t,t+n):e.mozSlice?e.mozSlice(t,t+n):e.msSlice?e.msSlice(t,t+n):void 0}(e,t,n))}catch(e){i(e)}}}function A(){}function f(e){var n;this.init=function(e){n=new Blob([],{type:"text/plain"}),e()},this.writeUint8Array=function(e,r){n=new Blob([n,t?e:e.buffer],{type:"text/plain"}),r()},this.getData=function(t,r){var i=new FileReader;i.onload=function(e){t(e.target.result)},i.onerror=r,i.readAsText(n,e)}}function h(t){var n="",r="";this.init=function(e){n+="data:"+(t||"")+";base64,",e()},this.writeUint8Array=function(t,i){var a,o=r.length,s=r;for(r="",a=0;a<3*Math.floor((o+t.length)/3)-o;a++)s+=String.fromCharCode(t[a]);for(;a<t.length;a++)r+=String.fromCharCode(t[a]);s.length>2?n+=e.btoa(s):r=s,i()},this.getData=function(t){t(n+e.btoa(r))}}function p(e){var n;this.init=function(t){n=new Blob([],{type:e}),t()},this.writeUint8Array=function(r,i){n=new Blob([n,t?r:r.buffer],{type:e}),i()},this.getData=function(e){e(n)}}function d(e,t,n,r,i,a,o,s,c,u){var l,A,f,h=0,p=t.sn;function d(){e.removeEventListener("message",g,!1),s(A,f)}function g(t){var n=t.data,i=n.data,s=n.error;if(s)return s.toString=function(){return"Error: "+this.message},void c(s);if(n.sn===p)switch("number"==typeof n.codecTime&&(e.codecTime+=n.codecTime),"number"==typeof n.crcTime&&(e.crcTime+=n.crcTime),n.type){case"append":i?(A+=i.length,r.writeUint8Array(i,(function(){y()}),u)):y();break;case"flush":f=n.crc,i?(A+=i.length,r.writeUint8Array(i,(function(){d()}),u)):d();break;case"progress":o&&o(l+n.loaded,a);break;case"importScripts":case"newTask":case"echo":break;default:console.warn("zip.js:launchWorkerProcess: unknown message: ",n)}}function y(){(l=524288*h)<=a?n.readUint8Array(i+l,Math.min(524288,a-l),(function(n){o&&o(l,a);var r=0===l?t:{sn:p};r.type="append",r.data=n;try{e.postMessage(r,[n.buffer])}catch(t){e.postMessage(r)}h++}),c):e.postMessage({sn:p,type:"flush"})}A=0,e.addEventListener("message",g,!1),y()}function g(e,t,n,r,a,o,s,c,u,l){var A,f=0,h=0,p="input"===o,d="output"===o,g=new i;!function i(){var o;if((A=524288*f)<a)t.readUint8Array(r+A,Math.min(524288,a-A),(function(t){var r;try{r=e.append(t,(function(e){s&&s(A+e,a)}))}catch(e){return void u(e)}r?(h+=r.length,n.writeUint8Array(r,(function(){f++,setTimeout(i,1)}),l),d&&g.append(r)):(f++,setTimeout(i,1)),p&&g.append(t),s&&s(A,a)}),u);else{try{o=e.flush()}catch(e){return void u(e)}o?(d&&g.append(o),h+=o.length,n.writeUint8Array(o,(function(){c(h,g.get())}),l)):c(h,g.get())}}()}function y(t,n,r,i,o,s,c,u,l,A,f){e.zip.useWebWorkers&&c?d(t,{sn:n,codecClass:"NOOP",crcType:"input"},r,i,o,s,l,u,A,f):g(new a,r,i,o,s,"input",l,u,A,f)}function v(e){var t,n,r="",i=["Ç","ü","é","â","ä","à","å","ç","ê","ë","è","ï","î","ì","Ä","Å","É","æ","Æ","ô","ö","ò","û","ù","ÿ","Ö","Ü","ø","£","Ø","×","ƒ","á","í","ó","ú","ñ","Ñ","ª","º","¿","®","¬","½","¼","¡","«","»","_","_","_","¦","¦","Á","Â","À","©","¦","¦","+","+","¢","¥","+","+","-","-","+","-","+","ã","Ã","+","+","-","-","¦","-","+","¤","ð","Ð","Ê","Ë","È","i","Í","Î","Ï","+","+","_","_","¦","Ì","_","Ó","ß","Ô","Ò","õ","Õ","µ","þ","Þ","Ú","Û","Ù","ý","Ý","¯","´","­","±","_","¾","¶","§","÷","¸","°","¨","·","¹","³","²","_"," "];for(t=0;t<e.length;t++)r+=(n=255&e.charCodeAt(t))>127?i[n-128]:String.fromCharCode(n);return r}function m(e){return decodeURIComponent(escape(e))}function b(e){var t,n="";for(t=0;t<e.length;t++)n+=String.fromCharCode(e[t]);return n}function I(e,t,n,r,i){e.version=t.view.getUint16(n,!0),e.bitFlag=t.view.getUint16(n+2,!0),e.compressionMethod=t.view.getUint16(n+4,!0),e.lastModDateRaw=t.view.getUint32(n+6,!0),e.lastModDate=function(e){var t=(4294901760&e)>>16,n=65535&e;try{return new Date(1980+((65024&t)>>9),((480&t)>>5)-1,31&t,(63488&n)>>11,(2016&n)>>5,2*(31&n),0)}catch(e){}}(e.lastModDateRaw),1!=(1&e.bitFlag)?((r||8!=(8&e.bitFlag))&&(e.crc32=t.view.getUint32(n+10,!0),e.compressedSize=t.view.getUint32(n+14,!0),e.uncompressedSize=t.view.getUint32(n+18,!0)),4294967295!==e.compressedSize&&4294967295!==e.uncompressedSize?(e.filenameLength=t.view.getUint16(n+22,!0),e.extraFieldLength=t.view.getUint16(n+24,!0)):i("File is using Zip64 (4gb+ file size).")):i("File contains encrypted entry.")}function w(t,i,a){var s=0;function c(){}c.prototype.getData=function(r,i,c,u){var l=this;function A(e,t){u&&!function(e){var t=o(4);return t.view.setUint32(0,e),l.crc32==t.view.getUint32(0)}(t)?a("CRC failed."):r.getData((function(e){i(e)}))}function f(e){a(e||"Error while reading file data.")}function h(e){a(e||"Error while writing file data.")}t.readUint8Array(l.offset,30,(function(i){var p,v=o(i.length,i);1347093252==v.view.getUint32(0)?(I(l,v,4,!1,a),p=l.offset+30+l.filenameLength+l.extraFieldLength,r.init((function(){0===l.compressionMethod?y(l._worker,s++,t,r,p,l.compressedSize,u,A,c,f,h):function(t,n,r,i,a,o,s,c,u,l,A){var f=s?"output":"none";e.zip.useWebWorkers?d(t,{sn:n,codecClass:"Inflater",crcType:f},r,i,a,o,u,c,l,A):g(new e.zip.Inflater,r,i,a,o,f,u,c,l,A)}(l._worker,s++,t,r,p,l.compressedSize,u,A,c,f,h)}),h)):a(n)}),f)};var u={getEntries:function(e){var i=this._worker;!function(e){if(t.size<22)a(n);else{i(22,(function(){i(Math.min(65558,t.size),(function(){a(n)}))}))}function i(n,i){t.readUint8Array(t.size-n,n,(function(t){for(var n=t.length-22;n>=0;n--)if(80===t[n]&&75===t[n+1]&&5===t[n+2]&&6===t[n+3])return void e(new DataView(t.buffer,n,22));i()}),(function(){a(r)}))}}((function(s){var u,l;u=s.getUint32(16,!0),l=s.getUint16(8,!0),u<0||u>=t.size?a(n):t.readUint8Array(u,t.size-u,(function(t){var r,s,u,A,f=0,h=[],p=o(t.length,t);for(r=0;r<l;r++){if((s=new c)._worker=i,1347092738!=p.view.getUint32(f))return void a(n);I(s,p,f+6,!0,a),s.commentLength=p.view.getUint16(f+32,!0),s.directory=16==(16&p.view.getUint8(f+38)),s.offset=p.view.getUint32(f+42,!0),u=b(p.array.subarray(f+46,f+46+s.filenameLength)),s.filename=2048==(2048&s.bitFlag)?m(u):v(u),s.directory||"/"!=s.filename.charAt(s.filename.length-1)||(s.directory=!0),A=b(p.array.subarray(f+46+s.filenameLength+s.extraFieldLength,f+46+s.filenameLength+s.extraFieldLength+s.commentLength)),s.comment=2048==(2048&s.bitFlag)?m(A):v(A),h.push(s),f+=46+s.filenameLength+s.extraFieldLength+s.commentLength}e(h)}),(function(){a(r)}))}))},close:function(e){this._worker&&(this._worker.terminate(),this._worker=null),e&&e()},_worker:null};e.zip.useWebWorkers?k("inflater",(function(e){u._worker=e,i(u)}),(function(e){a(e)})):i(u)}function C(e){return unescape(encodeURIComponent(e))}function B(e){var t,n=[];for(t=0;t<e.length;t++)n.push(e.charCodeAt(t));return n}function E(t,n,r,i){var a={},s=[],c=0,u=0;function l(e){r(e||"Error while writing zip file.")}function A(e){r(e||"Error while reading file data.")}var f={add:function(n,f,h,p,v){var m,b,I,w=this._worker;function E(e,n){var r=o(16);c+=e||0,r.view.setUint32(0,1347094280),void 0!==n&&(m.view.setUint32(10,n,!0),r.view.setUint32(4,n,!0)),f&&(r.view.setUint32(8,e,!0),m.view.setUint32(14,e,!0),r.view.setUint32(12,f.size,!0),m.view.setUint32(18,f.size,!0)),t.writeUint8Array(r.array,(function(){c+=16,h()}),l)}function _(){v=v||{},n=n.trim(),v.directory&&"/"!=n.charAt(n.length-1)&&(n+="/"),a.hasOwnProperty(n)?r("File already exists."):(b=B(C(n)),s.push(n),function(e){var r;I=v.lastModDate||new Date,m=o(26),a[n]={headerArray:m.array,directory:v.directory,filename:b,offset:c,comment:B(C(v.comment||""))},m.view.setUint32(0,335546376),v.version&&m.view.setUint8(0,v.version),i||0===v.level||v.directory||m.view.setUint16(4,2048),m.view.setUint16(6,(I.getHours()<<6|I.getMinutes())<<5|I.getSeconds()/2,!0),m.view.setUint16(8,(I.getFullYear()-1980<<4|I.getMonth()+1)<<5|I.getDate(),!0),m.view.setUint16(22,b.length,!0),(r=o(30+b.length)).view.setUint32(0,1347093252),r.array.set(m.array,4),r.array.set(b,30),c+=r.array.length,t.writeUint8Array(r.array,e,l)}((function(){f?i||0===v.level?y(w,u++,f,t,0,f.size,!0,E,p,A,l):function(t,n,r,i,a,o,s,c,u){e.zip.useWebWorkers?d(t,{sn:n,options:{level:a},codecClass:"Deflater",crcType:"input"},r,i,0,r.size,s,o,c,u):g(new e.zip.Deflater,r,i,0,r.size,"input",s,o,c,u)}(w,u++,f,t,v.level,E,p,A,l):E()})))}f?f.init(_,A):_()},close:function(e){this._worker&&(this._worker.terminate(),this._worker=null);var n,r,i,u=0,A=0;for(r=0;r<s.length;r++)u+=46+(i=a[s[r]]).filename.length+i.comment.length;for(n=o(u+22),r=0;r<s.length;r++)i=a[s[r]],n.view.setUint32(A,1347092738),n.view.setUint16(A+4,5120),n.array.set(i.headerArray,A+6),n.view.setUint16(A+32,i.comment.length,!0),i.directory&&n.view.setUint8(A+38,16),n.view.setUint32(A+42,i.offset,!0),n.array.set(i.filename,A+46),n.array.set(i.comment,A+46+i.filename.length),A+=46+i.filename.length+i.comment.length;n.view.setUint32(A,1347093766),n.view.setUint16(A+8,s.length,!0),n.view.setUint16(A+10,s.length,!0),n.view.setUint32(A+12,u,!0),n.view.setUint32(A+16,c,!0),t.writeUint8Array(n.array,(function(){t.getData(e)}),l)},_worker:null};e.zip.useWebWorkers?k("deflater",(function(e){f._worker=e,n(f)}),(function(e){r(e)})):n(f)}i.prototype.append=function(e){for(var t=0|this.crc,n=this.table,r=0,i=0|e.length;r<i;r++)t=t>>>8^n[255&(t^e[r])];this.crc=t},i.prototype.get=function(){return~this.crc},i.prototype.table=function(){var e,t,n,r=[];for(e=0;e<256;e++){for(n=e,t=0;t<8;t++)1&n?n=n>>>1^3988292384:n>>>=1;r[e]=n}return r}(),a.prototype.append=function(e,t){return e},a.prototype.flush=function(){},c.prototype=new s,c.prototype.constructor=c,u.prototype=new s,u.prototype.constructor=u,l.prototype=new s,l.prototype.constructor=l,A.prototype.getData=function(e){e(this.data)},f.prototype=new A,f.prototype.constructor=f,h.prototype=new A,h.prototype.constructor=h,p.prototype=new A,p.prototype.constructor=p;var _={deflater:["z-worker.js","deflate.js"],inflater:["z-worker.js","inflate.js"]};function k(t,n,r){if(null===e.zip.workerScripts||null===e.zip.workerScriptsPath){var i,a,o;if(e.zip.workerScripts){if(i=e.zip.workerScripts[t],!Array.isArray(i))return void r(new Error("zip.workerScripts."+t+" is not an array!"));a=i,o=document.createElement("a"),i=a.map((function(e){return o.href=e,o.href}))}else(i=_[t].slice(0))[0]=(e.zip.workerScriptsPath||"")+i[0];var s=new Worker(i[0]);s.codecTime=s.crcTime=0,s.postMessage({type:"importScripts",scripts:i.slice(1)}),s.addEventListener("message",(function e(t){var i=t.data;if(i.error)return s.terminate(),void r(i.error);"importScripts"===i.type&&(s.removeEventListener("message",e),s.removeEventListener("error",c),n(s))})),s.addEventListener("error",c)}else r(new Error("Either zip.workerScripts or zip.workerScriptsPath may be set, not both."));function c(e){s.terminate(),r(e)}}function Q(e){console.error(e)}e.zip={Reader:s,Writer:A,BlobReader:l,Data64URIReader:u,TextReader:c,BlobWriter:p,Data64URIWriter:h,TextWriter:f,createReader:function(e,t,n){n=n||Q,e.init((function(){w(e,t,n)}),n)},createWriter:function(e,t,n,r){n=n||Q,r=!!r,e.init((function(){E(e,t,n,r)}),n)},useWebWorkers:!0,workerScriptsPath:null,workerScripts:null}}(this)},function(e,t){!function(e){"use strict";if(e.zWorkerInitialized)throw new Error("z-worker.js should be run only once");e.zWorkerInitialized=!0,addEventListener("message",(function(e){var n=e.data,r=n.type,i=n.sn,a=t[r];if(a)try{a(n)}catch(e){!function(e,t,n){var r={type:e,sn:t,error:o(n)};postMessage(r)}(r,i,e)}}));var t={importScripts:function(e){e.scripts&&e.scripts.length>0&&importScripts.apply(void 0,e.scripts);postMessage({type:"importScripts"})},newTask:r,append:a,flush:a},n={};function r(t){var r=e[t.codecClass],i=t.sn;if(n[i])throw Error("duplicated sn");n[i]={codec:new r(t.options),crcInput:"input"===t.crcType,crcOutput:"output"===t.crcType,crc:new s},postMessage({type:"newTask",sn:i})}var i=e.performance?e.performance.now.bind(e.performance):Date.now;function a(e){var t=e.sn,a=e.type,o=e.data,s=n[t];!s&&e.codecClass&&(r(e),s=n[t]);var c,u="append"===a,l=i();if(u)try{c=s.codec.append(o,(function(e){postMessage({type:"progress",sn:t,loaded:e})}))}catch(e){throw delete n[t],e}else delete n[t],c=s.codec.flush();var A=i()-l;l=i(),o&&s.crcInput&&s.crc.append(o),c&&s.crcOutput&&s.crc.append(c);var f=i()-l,h={type:a,sn:t,codecTime:A,crcTime:f},p=[];c&&(h.data=c,p.push(c.buffer)),u||!s.crcInput&&!s.crcOutput||(h.crc=s.crc.get());try{postMessage(h,p)}catch(e){postMessage(h)}}function o(e){return{message:e.message,stack:e.stack}}function s(){this.crc=-1}function c(){}s.prototype.append=function(e){for(var t=0|this.crc,n=this.table,r=0,i=0|e.length;r<i;r++)t=t>>>8^n[255&(t^e[r])];this.crc=t},s.prototype.get=function(){return~this.crc},s.prototype.table=function(){var e,t,n,r=[];for(e=0;e<256;e++){for(n=e,t=0;t<8;t++)1&n?n=n>>>1^3988292384:n>>>=1;r[e]=n}return r}(),e.NOOP=c,c.prototype.append=function(e,t){return e},c.prototype.flush=function(){}}(this)},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var r,i,a,o,s,c=1,u={},l=!1,A=e.document,f=Object.getPrototypeOf&&Object.getPrototypeOf(e);f=f&&f.setTimeout?f:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){p(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((a=new MessageChannel).port1.onmessage=function(e){p(e.data)},r=function(e){a.port2.postMessage(e)}):A&&"onreadystatechange"in A.createElement("script")?(i=A.documentElement,r=function(e){var t=A.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):r=function(e){setTimeout(p,0,e)}:(o="setImmediate$"+Math.random()+"$",s=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(o)&&p(+t.data.slice(o.length))},e.addEventListener?e.addEventListener("message",s,!1):e.attachEvent("onmessage",s),r=function(t){e.postMessage(o+t,"*")}),f.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var i={callback:e,args:t};return u[c]=i,r(c),c++},f.clearImmediate=h}function h(e){delete u[e]}function p(e){if(l)setTimeout(p,0,e);else{var t=u[e];if(t){l=!0;try{!function(e){var t=e.callback,n=e.args;switch(n.length){case 0:t();break;case 1:t(n[0]);break;case 2:t(n[0],n[1]);break;case 3:t(n[0],n[1],n[2]);break;default:t.apply(void 0,n)}}(t)}finally{h(e),l=!1}}}}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,n(21),n(90))},function(e,t){var n,r,i=e.exports={};function a(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function s(e){if(n===setTimeout)return setTimeout(e,0);if((n===a||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:a}catch(e){n=a}try{r="function"==typeof clearTimeout?clearTimeout:o}catch(e){r=o}}();var c,u=[],l=!1,A=-1;function f(){l&&c&&(l=!1,c.length?u=c.concat(u):A=-1,u.length&&h())}function h(){if(!l){var e=s(f);l=!0;for(var t=u.length;t;){for(c=u,u=[];++A<t;)c&&c[A].run();A=-1,t=u.length}c=null,l=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===o||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function d(){}i.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];u.push(new p(e,t)),1!==u.length||l||s(h)},p.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=d,i.addListener=d,i.once=d,i.off=d,i.removeListener=d,i.removeAllListeners=d,i.emit=d,i.prependListener=d,i.prependOnceListener=d,i.listeners=function(e){return[]},i.binding=function(e){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(e){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},function(e,t,n){var r=n(22),i=n(92),a=n(94);e.exports=function(e,t){return a(i(e,t,r),e+"")}},function(e,t,n){var r=n(93),i=Math.max;e.exports=function(e,t,n){return t=i(void 0===t?e.length-1:t,0),function(){for(var a=arguments,o=-1,s=i(a.length-t,0),c=Array(s);++o<s;)c[o]=a[t+o];o=-1;for(var u=Array(t+1);++o<t;)u[o]=a[o];return u[t]=n(c),r(e,this,u)}}},function(e,t){e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},function(e,t,n){var r=n(95),i=n(104)(r);e.exports=i},function(e,t,n){var r=n(96),i=n(97),a=n(22),o=i?function(e,t){return i(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:a;e.exports=o},function(e,t){e.exports=function(e){return function(){return e}}},function(e,t,n){var r=n(8),i=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=i},function(e,t,n){var r=n(29),i=n(101),a=n(12),o=n(31),s=/^\[object .+?Constructor\]$/,c=Function.prototype,u=Object.prototype,l=c.toString,A=u.hasOwnProperty,f=RegExp("^"+l.call(A).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!a(e)||i(e))&&(r(e)?f:s).test(o(e))}},function(e,t,n){var r=n(11),i=Object.prototype,a=i.hasOwnProperty,o=i.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=a.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(e){}var i=o.call(e);return r&&(t?e[s]=n:delete e[s]),i}},function(e,t){var n=Object.prototype.toString;e.exports=function(e){return n.call(e)}},function(e,t,n){var r,i=n(102),a=(r=/[^.]+$/.exec(i&&i.keys&&i.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!a&&a in e}},function(e,t,n){var r=n(6)["__core-js_shared__"];e.exports=r},function(e,t){e.exports=function(e,t){return null==e?void 0:e[t]}},function(e,t){var n=Date.now;e.exports=function(e){var t=0,r=0;return function(){var i=n(),a=16-(i-r);if(r=i,a>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}},function(e,t,n){var r=n(106);e.exports=function(e,t){return e&&e.length&&t&&t.length?r(e,t):e}},function(e,t,n){var r=n(32),i=n(107),a=n(110),o=n(34),s=n(111),c=Array.prototype.splice;e.exports=function(e,t,n,u){var l=u?a:i,A=-1,f=t.length,h=e;for(e===t&&(t=s(t)),n&&(h=r(e,o(n)));++A<f;)for(var p=0,d=t[A],g=n?n(d):d;(p=l(h,g,p,u))>-1;)h!==e&&c.call(h,p,1),c.call(e,p,1);return e}},function(e,t,n){var r=n(33),i=n(108),a=n(109);e.exports=function(e,t,n){return t==t?a(e,t,n):r(e,i,n)}},function(e,t){e.exports=function(e){return e!=e}},function(e,t){e.exports=function(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}},function(e,t){e.exports=function(e,t,n,r){for(var i=n-1,a=e.length;++i<a;)if(r(e[i],t))return i;return-1}},function(e,t){e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<application-view ng-repeat="application in self.applications" application="application"></application-view>'}},function(e,t){},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="main-ui-view" ng-class="self.platformString"><div class="app" id="app" ng-class="self.state.appClass" ng-if="!self.state.needsUnlock &amp;&amp; self.state.ready"><tags-view application="self.application"></tags-view><notes-view application="self.application"></notes-view><editor-group-view application="self.application"></editor-group-view></div><footer-view ng-if="!self.state.needsUnlock &amp;&amp; self.state.ready" application="self.application"></footer-view></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<editor-view ng-repeat="editor in self.editors" application="self.application" editor="editor"></editor-view>'}},function(e,t,n){var r=n(35),i=n(45),a=n(25);e.exports=function(e){return function(t,n,o){var s=Object(t);if(!i(t)){var c=r(n,3);t=a(t),n=function(e){return c(s[e],e,s)}}var u=e(t,n,o);return u>-1?s[c?t[u]:u]:void 0}}},function(e,t,n){var r=n(118),i=n(173),a=n(47);e.exports=function(e){var t=i(e);return 1==t.length&&t[0][2]?a(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},function(e,t,n){var r=n(36),i=n(38);e.exports=function(e,t,n,a){var o=n.length,s=o,c=!a;if(null==e)return!s;for(e=Object(e);o--;){var u=n[o];if(c&&u[2]?u[1]!==e[u[0]]:!(u[0]in e))return!1}for(;++o<s;){var l=(u=n[o])[0],A=e[l],f=u[1];if(c&&u[2]){if(void 0===A&&!(l in e))return!1}else{var h=new r;if(a)var p=a(A,f,l,e,t,h);if(!(void 0===p?i(f,A,3,a,h):p))return!1}}return!0}},function(e,t){e.exports=function(){this.__data__=[],this.size=0}},function(e,t,n){var r=n(14),i=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0)&&(n==t.length-1?t.pop():i.call(t,n,1),--this.size,!0)}},function(e,t,n){var r=n(14);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},function(e,t,n){var r=n(14);e.exports=function(e){return r(this.__data__,e)>-1}},function(e,t,n){var r=n(14);e.exports=function(e,t){var n=this.__data__,i=r(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this}},function(e,t,n){var r=n(13);e.exports=function(){this.__data__=new r,this.size=0}},function(e,t){e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},function(e,t){e.exports=function(e){return this.__data__.get(e)}},function(e,t){e.exports=function(e){return this.__data__.has(e)}},function(e,t,n){var r=n(13),i=n(23),a=n(24);e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var o=n.__data__;if(!i||o.length<199)return o.push([e,t]),this.size=++n.size,this;n=this.__data__=new a(o)}return n.set(e,t),this.size=n.size,this}},function(e,t,n){var r=n(130),i=n(13),a=n(23);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(a||i),string:new r}}},function(e,t,n){var r=n(131),i=n(132),a=n(133),o=n(134),s=n(135);function c(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=o,c.prototype.set=s,e.exports=c},function(e,t,n){var r=n(15);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},function(e,t){e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},function(e,t,n){var r=n(15),i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return i.call(t,e)?t[e]:void 0}},function(e,t,n){var r=n(15),i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:i.call(t,e)}},function(e,t,n){var r=n(15);e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},function(e,t,n){var r=n(16);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},function(e,t){e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},function(e,t,n){var r=n(16);e.exports=function(e){return r(this,e).get(e)}},function(e,t,n){var r=n(16);e.exports=function(e){return r(this,e).has(e)}},function(e,t,n){var r=n(16);e.exports=function(e,t){var n=r(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this}},function(e,t,n){var r=n(36),i=n(39),a=n(147),o=n(151),s=n(168),c=n(7),u=n(41),l=n(44),A="[object Object]",f=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,h,p,d){var g=c(e),y=c(t),v=g?"[object Array]":s(e),m=y?"[object Array]":s(t),b=(v="[object Arguments]"==v?A:v)==A,I=(m="[object Arguments]"==m?A:m)==A,w=v==m;if(w&&u(e)){if(!u(t))return!1;g=!0,b=!1}if(w&&!b)return d||(d=new r),g||l(e)?i(e,t,n,h,p,d):a(e,t,v,n,h,p,d);if(!(1&n)){var C=b&&f.call(e,"__wrapped__"),B=I&&f.call(t,"__wrapped__");if(C||B){var E=C?e.value():e,_=B?t.value():t;return d||(d=new r),p(E,_,n,h,d)}}return!!w&&(d||(d=new r),o(e,t,n,h,p,d))}},function(e,t,n){var r=n(24),i=n(143),a=n(144);function o(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t<n;)this.add(e[t])}o.prototype.add=o.prototype.push=i,o.prototype.has=a,e.exports=o},function(e,t){e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},function(e,t){e.exports=function(e){return this.__data__.has(e)}},function(e,t){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}},function(e,t){e.exports=function(e,t){return e.has(t)}},function(e,t,n){var r=n(11),i=n(148),a=n(37),o=n(39),s=n(149),c=n(150),u=r?r.prototype:void 0,l=u?u.valueOf:void 0;e.exports=function(e,t,n,r,u,A,f){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!A(new i(e),new i(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return a(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var h=s;case"[object Set]":var p=1&r;if(h||(h=c),e.size!=t.size&&!p)return!1;var d=f.get(e);if(d)return d==t;r|=2,f.set(e,t);var g=o(h(e),h(t),r,u,A,f);return f.delete(e),g;case"[object Symbol]":if(l)return l.call(e)==l.call(t)}return!1}},function(e,t,n){var r=n(6).Uint8Array;e.exports=r},function(e,t){e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},function(e,t){e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}},function(e,t,n){var r=n(152),i=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,a,o,s){var c=1&n,u=r(e),l=u.length;if(l!=r(t).length&&!c)return!1;for(var A=l;A--;){var f=u[A];if(!(c?f in t:i.call(t,f)))return!1}var h=s.get(e);if(h&&s.get(t))return h==t;var p=!0;s.set(e,t),s.set(t,e);for(var d=c;++A<l;){var g=e[f=u[A]],y=t[f];if(a)var v=c?a(y,g,f,t,e,s):a(g,y,f,e,t,s);if(!(void 0===v?g===y||o(g,y,n,a,s):v)){p=!1;break}d||(d="constructor"==f)}if(p&&!d){var m=e.constructor,b=t.constructor;m!=b&&"constructor"in e&&"constructor"in t&&!("function"==typeof m&&m instanceof m&&"function"==typeof b&&b instanceof b)&&(p=!1)}return s.delete(e),s.delete(t),p}},function(e,t,n){var r=n(153),i=n(155),a=n(25);e.exports=function(e){return r(e,a,i)}},function(e,t,n){var r=n(154),i=n(7);e.exports=function(e,t,n){var a=t(e);return i(e)?a:r(a,n(e))}},function(e,t){e.exports=function(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}},function(e,t,n){var r=n(156),i=n(157),a=Object.prototype.propertyIsEnumerable,o=Object.getOwnPropertySymbols,s=o?function(e){return null==e?[]:(e=Object(e),r(o(e),(function(t){return a.call(e,t)})))}:i;e.exports=s},function(e,t){e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=0,a=[];++n<r;){var o=e[n];t(o,n,e)&&(a[i++]=o)}return a}},function(e,t){e.exports=function(){return[]}},function(e,t,n){var r=n(159),i=n(40),a=n(7),o=n(41),s=n(43),c=n(44),u=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=a(e),l=!n&&i(e),A=!n&&!l&&o(e),f=!n&&!l&&!A&&c(e),h=n||l||A||f,p=h?r(e.length,String):[],d=p.length;for(var g in e)!t&&!u.call(e,g)||h&&("length"==g||A&&("offset"==g||"parent"==g)||f&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||s(g,d))||p.push(g);return p}},function(e,t){e.exports=function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}},function(e,t,n){var r=n(9),i=n(10);e.exports=function(e){return i(e)&&"[object Arguments]"==r(e)}},function(e,t){e.exports=function(){return!1}},function(e,t,n){var r=n(9),i=n(26),a=n(10),o={};o["[object Float32Array]"]=o["[object Float64Array]"]=o["[object Int8Array]"]=o["[object Int16Array]"]=o["[object Int32Array]"]=o["[object Uint8Array]"]=o["[object Uint8ClampedArray]"]=o["[object Uint16Array]"]=o["[object Uint32Array]"]=!0,o["[object Arguments]"]=o["[object Array]"]=o["[object ArrayBuffer]"]=o["[object Boolean]"]=o["[object DataView]"]=o["[object Date]"]=o["[object Error]"]=o["[object Function]"]=o["[object Map]"]=o["[object Number]"]=o["[object Object]"]=o["[object RegExp]"]=o["[object Set]"]=o["[object String]"]=o["[object WeakMap]"]=!1,e.exports=function(e){return a(e)&&i(e.length)&&!!o[r(e)]}},function(e,t,n){(function(e){var r=n(30),i=t&&!t.nodeType&&t,a=i&&"object"==typeof e&&e&&!e.nodeType&&e,o=a&&a.exports===i&&r.process,s=function(){try{var e=a&&a.require&&a.require("util").types;return e||o&&o.binding&&o.binding("util")}catch(e){}}();e.exports=s}).call(this,n(42)(e))},function(e,t,n){var r=n(165),i=n(166),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return i(e);var t=[];for(var n in Object(e))a.call(e,n)&&"constructor"!=n&&t.push(n);return t}},function(e,t){var n=Object.prototype;e.exports=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||n)}},function(e,t,n){var r=n(167)(Object.keys,Object);e.exports=r},function(e,t){e.exports=function(e,t){return function(n){return e(t(n))}}},function(e,t,n){var r=n(169),i=n(23),a=n(170),o=n(171),s=n(172),c=n(9),u=n(31),l=u(r),A=u(i),f=u(a),h=u(o),p=u(s),d=c;(r&&"[object DataView]"!=d(new r(new ArrayBuffer(1)))||i&&"[object Map]"!=d(new i)||a&&"[object Promise]"!=d(a.resolve())||o&&"[object Set]"!=d(new o)||s&&"[object WeakMap]"!=d(new s))&&(d=function(e){var t=c(e),n="[object Object]"==t?e.constructor:void 0,r=n?u(n):"";if(r)switch(r){case l:return"[object DataView]";case A:return"[object Map]";case f:return"[object Promise]";case h:return"[object Set]";case p:return"[object WeakMap]"}return t}),e.exports=d},function(e,t,n){var r=n(8)(n(6),"DataView");e.exports=r},function(e,t,n){var r=n(8)(n(6),"Promise");e.exports=r},function(e,t,n){var r=n(8)(n(6),"Set");e.exports=r},function(e,t,n){var r=n(8)(n(6),"WeakMap");e.exports=r},function(e,t,n){var r=n(46),i=n(25);e.exports=function(e){for(var t=i(e),n=t.length;n--;){var a=t[n],o=e[a];t[n]=[a,o,r(o)]}return t}},function(e,t,n){var r=n(38),i=n(175),a=n(181),o=n(27),s=n(46),c=n(47),u=n(18);e.exports=function(e,t){return o(e)&&s(t)?c(u(e),t):function(n){var o=i(n,e);return void 0===o&&o===t?a(n,e):r(t,o,3)}}},function(e,t,n){var r=n(48);e.exports=function(e,t,n){var i=null==e?void 0:r(e,t);return void 0===i?n:i}},function(e,t,n){var r=n(177),i=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,a=/\\(\\)?/g,o=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(i,(function(e,n,r,i){t.push(r?i.replace(a,"$1"):n||e)})),t}));e.exports=o},function(e,t,n){var r=n(178);e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},function(e,t,n){var r=n(24);function i(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=e.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(i.Cache||r),n}i.Cache=r,e.exports=i},function(e,t,n){var r=n(180);e.exports=function(e){return null==e?"":r(e)}},function(e,t,n){var r=n(11),i=n(32),a=n(7),o=n(17),s=r?r.prototype:void 0,c=s?s.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(a(t))return i(t,e)+"";if(o(t))return c?c.call(t):"";var n=t+"";return"0"==n&&1/t==-1/0?"-0":n}},function(e,t,n){var r=n(182),i=n(183);e.exports=function(e,t){return null!=e&&i(e,t,r)}},function(e,t){e.exports=function(e,t){return null!=e&&t in Object(e)}},function(e,t,n){var r=n(49),i=n(40),a=n(7),o=n(43),s=n(26),c=n(18);e.exports=function(e,t,n){for(var u=-1,l=(t=r(t,e)).length,A=!1;++u<l;){var f=c(t[u]);if(!(A=null!=e&&n(e,f)))break;e=e[f]}return A||++u!=l?A:!!(l=null==e?0:e.length)&&s(l)&&o(f,l)&&(a(e)||i(e))}},function(e,t,n){var r=n(185),i=n(186),a=n(27),o=n(18);e.exports=function(e){return a(e)?r(o(e)):i(e)}},function(e,t){e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},function(e,t,n){var r=n(48);e.exports=function(e){return function(t){return r(t,e)}}},function(e,t,n){var r=n(33),i=n(35),a=n(188),o=Math.max;e.exports=function(e,t,n){var s=null==e?0:e.length;if(!s)return-1;var c=null==n?0:a(n);return c<0&&(c=o(s+c,0)),r(e,i(t,3),c)}},function(e,t,n){var r=n(189);e.exports=function(e){var t=r(e),n=t%1;return t==t?n?t-n:t:0}},function(e,t,n){var r=n(190);e.exports=function(e){return e?(e=r(e))===1/0||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},function(e,t,n){var r=n(12),i=n(17),a=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,c=/^0o[0-7]+$/i,u=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(i(e))return NaN;if(r(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=r(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(a,"");var n=s.test(e);return n||c.test(e)?u(e.slice(2),n?2:8):o.test(e)?NaN:+e}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="section editor sn-component" id="editor-column" aria-label="Note"><div class="sn-component"><div class="sk-app-bar no-edges" ng-if="self.noteLocked" ng-init="self.lockText = \'Note Locked\'" ng-mouseleave="self.lockText = \'Note Locked\'" ng-mouseover="self.lockText = \'Unlock\'"><div class="left"><div class="sk-app-bar-item" ng-click="self.toggleLockNote()"><div class="sk-label warning"><i class="icon ion-locked"></i>{{self.lockText}}</div></div></div></div></div><div class="section-title-bar" id="editor-title-bar" ng-class="{\'locked\' : self.noteLocked}" ng-show="self.note &amp;&amp; !self.note.errorDecrypting"><div class="title"><input class="input" id="note-title-editor" ng-blur="self.onTitleBlur()" ng-change="self.onTitleChange()" ng-disabled="self.noteLocked" ng-focus="self.onTitleFocus()" ng-keyup="$event.keyCode == 13 &amp;&amp; self.onTitleEnter($event)" ng-model="self.editorValues.title" select-on-focus="true" spellcheck="false"></div><div id="save-status"><div class="message" ng-class="{\'warning sk-bold\': self.state.syncTakingTooLong, \'danger sk-bold\': self.state.saveError}">{{self.state.noteStatus.message}}</div><div class="desc" ng-show="self.state.noteStatus.desc">{{self.state.noteStatus.desc}}</div></div><div class="editor-tags"><div id="note-tags-component-container" ng-if="self.activeTagsComponent"><component-view class="component-view" component-uuid="self.activeTagsComponent.uuid" ng-class="{\'locked\' : self.noteLocked}" ng-style="self.noteLocked &amp;&amp; {\'pointer-events\' : \'none\'}" application="self.application"></component-view></div><input class="tags-input" ng-blur="self.onTagsInputBlur()" ng-disabled="self.noteLocked" ng-if="!self.activeTagsComponent" ng-keyup="$event.keyCode == 13 &amp;&amp; $event.target.blur();" ng-model="self.editorValues.tagsInputValue" placeholder="#tags" spellcheck="false" type="text"></div></div><div class="sn-component" ng-if="self.note"><div class="sk-app-bar no-edges" id="editor-menu-bar"><div class="left"><div class="sk-app-bar-item" click-outside="self.setMenuState(\'showOptionsMenu\', false)" is-open="self.state.showOptionsMenu" ng-class="{\'selected\' : self.state.showOptionsMenu}" ng-click="self.toggleMenu(\'showOptionsMenu\')"><div class="sk-label">Options</div><div class="sk-menu-panel dropdown-menu" ng-if="self.state.showOptionsMenu"><div class="sk-menu-panel-section"><div class="sk-menu-panel-header"><div class="sk-menu-panel-header-title">Note Options</div></div><menu-row action="self.selectedMenuItem(true); self.togglePin()" desc="\'Pin or unpin a note from the top of your list\'" label="self.note.pinned ? \'Unpin\' : \'Pin\'"></menu-row><menu-row action="self.selectedMenuItem(true); self.toggleArchiveNote()" desc="\'Archive or unarchive a note from your Archived system tag\'" label="self.note.archived ? \'Unarchive\' : \'Archive\'"></menu-row><menu-row action="self.selectedMenuItem(true); self.toggleLockNote()" desc="\'Locking notes prevents unintentional editing\'" label="self.noteLocked ? \'Unlock\' : \'Lock\'"></menu-row><menu-row action="self.selectedMenuItem(true); self.toggleProtectNote()" desc="\'Protecting a note will require credentials to view\n it (Manage Privileges via Account menu)\'" label="self.note.protected ? \'Unprotect\' : \'Protect\'"></menu-row><menu-row action="self.selectedMenuItem(true); self.toggleNotePreview()" circle="self.note.hidePreview ? \'danger\' : \'success\'" circle-align="\'right\'" desc="\'Hide or unhide the note preview from the list of notes\'" label="\'Preview\'"></menu-row><menu-row action="self.selectedMenuItem(); self.deleteNote()" desc="\'Send this note to the trash\'" label="\'Move to Trash\'" ng-show="!self.state.altKeyDown &amp;&amp; !self.note.trashed &amp;&amp; !self.note.errorDecrypting" stylekit-class="\'warning\'"></menu-row><menu-row action="self.selectedMenuItem(); self.deleteNotePermanantely()" desc="\'Delete this note permanently from all your devices\'" label="\'Delete Permanently\'" ng-show="!self.note.trashed &amp;&amp; self.note.errorDecrypting" stylekit-class="\'danger\'"></menu-row></div><div ng-if="self.note.trashed || self.state.altKeyDown"><menu-row action="self.selectedMenuItem(true); self.restoreTrashedNote()" desc="\'Undelete this note and restore it back into your notes\'" label="\'Restore\'" ng-show="self.note.trashed" stylekit-class="\'info\'"></menu-row><menu-row action="self.selectedMenuItem(true); self.deleteNotePermanantely()" desc="\'Delete this note permanently from all your devices\'" label="\'Delete Permanently\'" stylekit-class="\'danger\'"></menu-row><menu-row action="self.selectedMenuItem(true); self.emptyTrash()" desc="\'Permanently delete all notes in the trash\'" label="\'Empty Trash\'" ng-show="self.note.trashed || !self.state.altKeyDown" stylekit-class="\'danger\'" subtitle="self.getTrashCount() + \' notes in trash\'"></menu-row></div><div class="sk-menu-panel-section"><div class="sk-menu-panel-header"><div class="sk-menu-panel-header-title">Global Display</div></div><menu-row action="self.selectedMenuItem(true); self.toggleWebPrefKey(self.prefKeyMonospace)" circle="self.state.monospaceFont ? \'success\' : \'neutral\'" desc="\'Toggles the font style for the default editor\'" disabled="self.activeEditorComponent" label="\'Monospace Font\'" subtitle="self.activeEditorComponent ? \'Not available with editor extensions\' : null"></menu-row><menu-row action="self.selectedMenuItem(true); self.toggleWebPrefKey(self.prefKeySpellcheck)" circle="self.state.spellcheck ? \'success\' : \'neutral\'" desc="\'Toggles spellcheck for the default editor\'" disabled="self.activeEditorComponent" label="\'Spellcheck\'" subtitle="\n self.activeEditorComponent\n ? \'Not available with editor extensions\'\n : (self.state.isDesktop ? \'May degrade editor performance\' : null)\n "></menu-row><menu-row action="self.selectedMenuItem(true); self.toggleWebPrefKey(self.prefKeyMarginResizers)" circle="self.state.marginResizersEnabled ? \'success\' : \'neutral\'" desc="\'Allows for editor left and right margins to be resized\'" faded="!self.state.marginResizersEnabled" label="\'Margin Resizers\'"></menu-row></div></div></div><div class="sk-app-bar-item" click-outside="self.setMenuState(\'showEditorMenu\', false)" is-open="self.state.showEditorMenu" ng-class="{\'selected\' : self.state.showEditorMenu}" ng-click="self.toggleMenu(\'showEditorMenu\')"><div class="sk-label">Editor</div><editor-menu callback="self.editorMenuOnSelect" current-item="self.note" ng-if="self.state.showEditorMenu" selected-editor-uuid="self.activeEditorComponent &amp;&amp; self.activeEditorComponent.uuid" application="self.application"></editor-menu></div><div class="sk-app-bar-item" click-outside="self.setMenuState(\'showExtensions\', false)" is-open="self.state.showExtensions" ng-class="{\'selected\' : self.state.showExtensions}" ng-click="self.toggleMenu(\'showExtensions\')"><div class="sk-label">Actions</div><actions-menu item="self.note" ng-if="self.state.showExtensions" application="self.application"></actions-menu></div><div class="sk-app-bar-item" click-outside="self.setMenuState(\'showSessionHistory\', false)" is-open="self.state.showSessionHistory" ng-click="self.toggleMenu(\'showSessionHistory\')"><div class="sk-label">Session History</div><session-history-menu item="self.note" ng-if="self.state.showSessionHistory" application="self.application"></session-history-menu></div></div></div></div><div class="editor-content" id="editor-content" ng-if="!self.note.errorDecrypting"><panel-resizer class="left" control="self.leftPanelPuppet" hoverable="true" min-width="300" ng-if="self.state.marginResizersEnabled" on-resize-finish="self.onPanelResizeFinish" panel-id="\'editor-content\'" property="\'left\'"></panel-resizer><component-view class="component-view" component-uuid="self.activeEditorComponent.uuid" ng-if="self.activeEditorComponent &amp;&amp; !self.state.editorComponentUnloading" on-load="self.onEditorLoad" application="self.application"></component-view><textarea class="editable" id="note-text-editor" dir="auto" ng-attr-spellcheck="{{self.state.spellcheck}}" ng-change="self.contentChanged()" ng-click="self.clickedTextArea()" ng-focus="self.onContentFocus()" ng-if="!self.activeEditorComponent &amp;&amp; !self.state.textareaUnloading" ng-model="self.editorValues.text" ng-model-options="{ debounce: self.state.editorDebounce}" ng-readonly="self.noteLocked" ng-trim="false">{{self.onSystemEditorLoad()}}</textarea><panel-resizer control="self.rightPanelPuppet" hoverable="true" min-width="300" ng-if="self.state.marginResizersEnabled" on-resize-finish="self.onPanelResizeFinish" panel-id="\'editor-content\'" property="\'right\'"></panel-resizer></div><div class="section" ng-show="self.note.errorDecrypting"><p class="medium-padding" style="padding-top: 0 !important;">There was an error decrypting this item. Ensure you are running the\nlatest version of this app, then sign out and sign back in to try again.</p></div><div id="editor-pane-component-stack" ng-show="self.note"><div class="sk-app-bar no-edges" id="component-stack-menu-bar" ng-if="self.state.stackComponents.length"><div class="left"><div class="sk-app-bar-item" ng-repeat="component in self.state.stackComponents track by component.uuid" ng-click="self.toggleStackComponentForCurrentItem(component)"><div class="sk-app-bar-item-column"><div class="sk-circle small" ng-class="{\'info\' : !self.stackComponentHidden(component) &amp;&amp; component.active, \'neutral\' : self.stackComponentHidden(component) || !component.active}"></div></div><div class="sk-app-bar-item-column"><div class="sk-label">{{component.name}}</div></div></div></div></div><div class="sn-component"><component-view class="component-view component-stack-item" ng-repeat="component in self.state.stackComponents track by component.uuid" component-uuid="component.uuid" manual-dealloc="true" ng-show="!self.stackComponentHidden(component)" application="self.application"></component-view></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component"><div class="sk-app-bar no-edges no-bottom-edge" id="footer-bar"><div class="left"><div class="sk-app-bar-item" click-outside="ctrl.clickOutsideAccountMenu()" is-open="ctrl.showAccountMenu" ng-click="ctrl.accountMenuPressed()"><div class="sk-app-bar-item-column"><div class="sk-circle small" ng-class="ctrl.hasError ? \'danger\' : (ctrl.user ? \'info\' : \'neutral\')"></div></div><div class="sk-app-bar-item-column"><div class="sk-label title" ng-class="{red: ctrl.hasError}">Account</div></div><account-menu close-function="ctrl.closeAccountMenu()" ng-click="$event.stopPropagation()" ng-if="ctrl.showAccountMenu" application="ctrl.application"></account-menu></div><div class="sk-app-bar-item"><a class="no-decoration sk-label title" href="https://standardnotes.org/help" rel="noopener" target="_blank">Help</a></div><div class="sk-app-bar-item border"></div><div class="sk-app-bar-item" ng-repeat="room in ctrl.rooms track by room.uuid"><div class="sk-app-bar-item-column" ng-click="ctrl.selectRoom(room)"><div class="sk-label">{{room.name}}</div></div><component-modal component-uuid="room.uuid" ng-if="ctrl.roomShowState[room.uuid]" on-dismiss="ctrl.onRoomDismiss(room)" application="ctrl.application"></component-modal></div></div><div class="center"><div class="sk-app-bar-item" ng-if="ctrl.arbitraryStatusMessage"><div class="sk-app-bar-item-column"><span class="neutral sk-label">{{ctrl.arbitraryStatusMessage}}</span></div></div></div><div class="right"><div class="sk-app-bar-item" ng-click="ctrl.openSecurityUpdate()" ng-if="ctrl.state.dataUpgradeAvailable"><span class="success sk-label">Encryption upgrade available.</span></div><div class="sk-app-bar-item" ng-click="ctrl.clickedNewUpdateAnnouncement()" ng-if="ctrl.newUpdateAvailable == true"><span class="info sk-label">New update available.</span></div><div class="sk-app-bar-item no-pointer" ng-if="ctrl.lastSyncDate &amp;&amp; !ctrl.isRefreshing"><div class="sk-label subtle">Last refreshed {{ctrl.lastSyncDate}}</div></div><div class="sk-app-bar-item" ng-click="ctrl.toggleSyncResolutionMenu()" ng-if="(ctrl.state.outOfSync &amp;&amp; !ctrl.isRefreshing) || ctrl.showSyncResolution"><div class="sk-label warning" ng-if="ctrl.state.outOfSync">Potentially Out of Sync</div><sync-resolution-menu close-function="ctrl.toggleSyncResolutionMenu()" ng-click="$event.stopPropagation();" ng-if="ctrl.showSyncResolution" application="ctrl.application"></sync-resolution-menu></div><div class="sk-app-bar-item" ng-if="ctrl.lastSyncDate &amp;&amp; ctrl.isRefreshing"><div class="sk-spinner small"></div></div><div class="sk-app-bar-item" ng-if="ctrl.offline"><div class="sk-label">Offline</div></div><div class="sk-app-bar-item" ng-click="ctrl.refreshData()" ng-if="!ctrl.offline"><div class="sk-label">Refresh</div></div><div class="sk-app-bar-item border" ng-if="ctrl.dockShortcuts.length &gt; 0"></div><div class="sk-app-bar-item dock-shortcut" ng-repeat="shortcut in ctrl.dockShortcuts"><div class="sk-app-bar-item-column" ng-class="{\'underline\': shortcut.component.active}" ng-click="ctrl.selectShortcut(shortcut)"><div class="div" ng-if="shortcut.icon.type == \'circle\'" title="{{shortcut.name}}"><div class="sk-circle small" ng-style="{\'background-color\': shortcut.icon.background_color, \'border-color\': shortcut.icon.border_color}"></div></div><div class="div" ng-if="shortcut.icon.type == \'svg\'" title="{{shortcut.name}}"><div class="svg-item" elem-ready="ctrl.initSvgForShortcut(shortcut)" ng-attr-id="dock-svg-{{shortcut.component.uuid}}"></div></div></div></div><div class="sk-app-bar-item border" ng-if="ctrl.state.hasPasscode"></div><div class="sk-app-bar-item" id="lock-item" ng-click="ctrl.lockApp()" ng-if="ctrl.state.hasPasscode" title="Locks application and wipes unencrypted data from memory."><div class="sk-label"><i class="icon ion-locked" id="footer-lock-icon"></i></div></div></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component section notes" id="notes-column" aria-label="Notes"><div class="content"><div class="section-title-bar" id="notes-title-bar"><div class="padded"><div class="section-title-bar-header"><div class="title">{{self.state.panelTitle}}</div><div class="sk-button contrast wide" ng-click="self.createNewNote()" title="Create a new note in the selected tag"><div class="sk-label"><i class="icon ion-plus add-button"></i></div></div></div><div class="filter-section" role="search"><input class="filter-bar" id="search-bar" ng-blur="self.onFilterEnter()" ng-change="self.filterTextChanged()" ng-keyup="$event.keyCode == 13 &amp;&amp; self.onFilterEnter();" ng-model="self.state.noteFilter.text" placeholder="Search" select-on-focus="true" title="Searches notes in the currently selected tag"><div id="search-clear-button" ng-click="self.clearFilterText();" ng-show="self.state.noteFilter.text">✕</div></div></div><div class="sn-component" id="notes-menu-bar"><div class="sk-app-bar no-edges"><div class="left"><div class="sk-app-bar-item" ng-class="{\'selected\' : self.state.mutable.showMenu}" ng-click="self.state.mutable.showMenu = !self.state.mutable.showMenu"><div class="sk-app-bar-item-column"><div class="sk-label">Options</div></div><div class="sk-app-bar-item-column"><div class="sk-sublabel">{{self.optionsSubtitle()}}</div></div></div><div class="sk-menu-panel dropdown-menu" id="notes-options-menu" ng-show="self.state.mutable.showMenu"><div class="sk-menu-panel-header"><div class="sk-menu-panel-header-title">Sort By</div><a class="info sk-h5" ng-click="self.toggleReverseSort()">{{self.state.sortReverse === true ? \'Disable Reverse Sort\' : \'Enable Reverse Sort\'}}</a></div><menu-row action="self.selectedMenuItem(); self.selectedSortByCreated()" circle="self.state.sortBy == \'created_at\' &amp;&amp; \'success\'" desc="\'Sort notes by newest first\'" label="\'Date Added\'"></menu-row><menu-row action="self.selectedMenuItem(); self.selectedSortByUpdated()" circle="self.state.sortBy == \'userModifiedDate\' &amp;&amp; \'success\'" desc="\'Sort notes with the most recently updated first\'" label="\'Date Modified\'"></menu-row><menu-row action="self.selectedMenuItem(); self.selectedSortByTitle()" circle="self.state.sortBy == \'title\' &amp;&amp; \'success\'" desc="\'Sort notes alphabetically by their title\'" label="\'Title\'"></menu-row><div class="sk-menu-panel-section"><div class="sk-menu-panel-header"><div class="sk-menu-panel-header-title">Display</div></div><menu-row action="self.selectedMenuItem(); self.toggleWebPrefKey(\'showArchived\')" circle="self.state.showArchived ? \'success\' : \'danger\'" desc="\'Archived notes are usually hidden.\n You can explicitly show them with this option.\'" faded="!self.state.showArchived" label="\'Archived Notes\'"></menu-row><menu-row action="self.selectedMenuItem(); self.toggleWebPrefKey(\'hidePinned\')" circle="self.state.hidePinned ? \'danger\' : \'success\'" desc="\'Pinned notes always appear on top. You can hide them temporarily\n with this option so you can focus on other notes in the list.\'" faded="self.state.hidePinned" label="\'Pinned Notes\'"></menu-row><menu-row action="self.selectedMenuItem(); self.toggleWebPrefKey(\'hideNotePreview\')" circle="self.state.hideNotePreview ? \'danger\' : \'success\'" desc="\'Hide the note preview for a more condensed list of notes\'" faded="self.state.hideNotePreview" label="\'Note Preview\'"></menu-row><menu-row action="self.selectedMenuItem(); self.toggleWebPrefKey(\'hideDate\')" circle="self.state.hideDate ? \'danger\' : \'success\'" desc="\'Hide the date displayed in each row\'" faded="self.state.hideDate" label="\'Date\'"></menu-row></div></div></div></div></div></div><div class="scrollable"><div class="infinite-scroll" id="notes-scrollable" can-load="true" infinite-scroll="self.paginate()" threshold="200"><div class="note" ng-repeat="note in self.state.renderedNotes track by note.uuid" ng-class="{\'selected\' : self.activeEditorNote.uuid == note.uuid}" ng-click="self.selectNote(note)"><div class="note-flags" ng-show="self.noteFlags[note.uuid].length &gt; 0"><div class="flag" ng-class="flag.class" ng-repeat="flag in self.noteFlags[note.uuid]"><div class="label">{{flag.text}}</div></div></div><div class="name" ng-show="note.title">{{note.title}}</div><div class="note-preview" ng-if="\n !self.state.hideNotePreview &amp;&amp;\n !note.hidePreview &amp;&amp;\n !note.protected"><div class="html-preview" ng-bind-html="note.preview_html" ng-show="note.preview_html"></div><div class="plain-preview" ng-show="!note.preview_html &amp;&amp; note.preview_plain">{{note.preview_plain}}</div><div class="default-preview" ng-show="!note.preview_html &amp;&amp; !note.preview_plain">{{note.text}}</div></div><div class="date faded" ng-show="!self.state.hideDate"><span ng-show="self.state.sortBy == \'userModifiedDate\'">Modified {{note.updatedAtString || \'Now\'}}</span><span ng-show="self.state.sortBy != \'userModifiedDate\'">{{note.createdAtString || \'Now\'}}</span></div></div></div></div></div><panel-resizer collapsable="true" control="self.panelPuppet" default-width="300" hoverable="true" on-resize-finish="self.onPanelResize" panel-id="\'notes-column\'"></panel-resizer></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component section tags" id="tags-column" aria-label="Tags"><div class="component-view-container" ng-if="self.component.active"><component-view class="component-view" component-uuid="self.component.uuid" application="self.application"></component-view></div><div class="content" id="tags-content" ng-if="!(self.component &amp;&amp; self.component.active)"><div class="tags-title-section section-title-bar"><div class="section-title-bar-header"><div class="sk-h3 title"><span class="sk-bold">Views</span></div><div class="sk-button sk-secondary-contrast wide" ng-click="self.clickedAddNewTag()" title="Create a new tag"><div class="sk-label"><i class="icon ion-plus add-button"></i></div></div></div></div><div class="scrollable"><div class="infinite-scroll"><div class="tag" ng-class="{\'selected\' : self.state.selectedTag == tag, \'faded\' : !tag.isAllTag}" ng-click="self.selectTag(tag)" ng-repeat="tag in self.state.smartTags track by tag.uuid"><div class="tag-info"><input class="title" ng-disabled="true" ng-change="self.onTagTitleChange(tag)" ng-model="tag.title"><div class="count" ng-show="tag.isAllTag">{{self.state.noteCounts[tag.uuid]}}</div></div></div><div class="tags-title-section section-title-bar"><div class="section-title-bar-header"><div class="sk-h3 title"><span class="sk-bold">Tags</span></div></div></div><div class="tag" ng-class="{\'selected\' : self.state.selectedTag == tag}" ng-click="self.selectTag(tag)" ng-repeat="tag in self.state.tags track by tag.uuid"><div class="tag-info"><div class="tag-icon">#</div><input class="title" ng-attr-id="tag-{{tag.uuid}}" ng-blur="self.saveTag($event, tag)" ng-change="self.onTagTitleChange(tag)" ng-model="self.titles[tag.uuid]" ng-class="{\'editing\' : self.state.editingTag == tag}" ng-click="self.selectTag(tag)" ng-keyup="$event.keyCode == 13 &amp;&amp; $event.target.blur()" should-focus="self.state.templateTag || self.state.editingTag == tag" sn-autofocus="true" spellcheck="false"><div class="count">{{self.state.noteCounts[tag.uuid]}}</div></div><div class="danger small-text bold" ng-show="tag.conflictOf">Conflicted Copy</div><div class="danger small-text bold" ng-show="tag.errorDecrypting &amp;&amp; !tag.waitingForKey">Missing Keys</div><div class="info small-text bold" ng-show="tag.errorDecrypting &amp;&amp; tag.waitingForKey">Waiting For Keys</div><div class="menu" ng-show="self.state.selectedTag == tag"><a class="item" ng-click="self.selectedRenameTag(tag)" ng-show="!self.state.editingTag">Rename</a><a class="item" ng-click="self.saveTag($event, tag)" ng-show="self.state.editingTag">Save</a><a class="item" ng-click="self.selectedDeleteTag(tag)">Delete</a></div></div><div class="no-tags-placeholder" ng-show="self.state.tags.length == 0">No tags. Create one using the add button above.</div></div></div></div><panel-resizer collapsable="true" control="self.panelPuppet" default-width="150" hoverable="true" on-resize-finish="self.onPanelResize" panel-id="\'tags-column\'"></panel-resizer></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sk-modal-background" ng-click="ctrl.cancel()"></div><div class="sk-modal-content" id="privileges-modal"><div class="sn-component"><div class="sk-panel"><div class="sk-panel-header"><div class="sk-panel-header-title">{{ctrl.title}}</div></div><div class="sk-panel-content"><div class="sk-panel-section"><div ng-repeat="type in ctrl.state.types"><div class="sk-p sk-bold sk-panel-row centered"><strong>{{ctrl.promptForChallenge(type)}}</strong></div><div class="sk-panel-row"><input class="sk-input contrast" ng-model="ctrl.state.values[type].value" should-focus="$index == 0" sn-autofocus="true" sn-enter="ctrl.submit()" ng-change="ctrl.onTextValueChange(type)" type="password"></div><div class="sk-panel-row centered"><label class="sk-label danger" ng-if="ctrl.state.values[type].invalid">Invalid authentication. Please try again.</label></div></div></div></div><div class="sk-panel-footer extra-padding"><div class="sk-button info big block bold" ng-click="ctrl.submit()" ng-class="{\'info\' : !ctrl.state.processing, \'neutral\': ctrl.state.processing}" ng-disabled="ctrl.state.processing"><div class="sk-label">{{ctrl.state.processing ? \'Generating Keys...\' : \'Submit\'}}</div></div><div class="sk-panel-row" ng-if="ctrl.cancelable"></div><a class="sk-panel-row sk-a info centered" ng-if="ctrl.cancelable" ng-click="ctrl.cancel()">Cancel</a></div><div class="sk-panel-footer" ng-if="ctrl.state.showForgotPasscodeLink"><a class="sk-panel-row sk-a info centered" ng-if="!ctrl.state.forgotPasscode" ng-click="ctrl.onForgotPasscodeClick()">Forgot your passcode?</a><p class="sk-panel-row sk-p" ng-if="ctrl.state.forgotPasscode">{{\n ctrl.state.hasAccount\n ? "If you forgot your local passcode, your only option is to clear\n your local data from this device and sign back in to your account."\n : "If you forgot your local passcode, your only option is\n to delete your data."\n}}</p><a class="sk-panel-row sk-a danger centered" ng-if="ctrl.state.forgotPasscode" ng-click="ctrl.destroyLocalData()">Delete Local Data</a><div class="sk-panel-row"></div></div></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component"><div class="sk-panel" id="account-panel"><div class="sk-panel-header"><div class="sk-panel-header-title">Account</div><a class="sk-a info close-button" ng-click="self.close()">Close</a></div><div class="sk-panel-content"><div class="sk-panel-section sk-panel-hero" ng-if="\n !self.state.user &amp;&amp; \n !self.state.formData.showLogin &amp;&amp; \n !self.state.formData.showRegister &amp;&amp; \n !self.state.formData.mfa"><div class="sk-panel-row"><div class="sk-h1">Sign in or register to enable sync and end-to-end encryption.</div></div><div class="sk-panel-row"><div class="sk-button-group stretch"><div class="sk-button info featured" ng-click="self.state.formData.showLogin = true"><div class="sk-label">Sign In</div></div><div class="sk-button info featured" ng-click="self.state.formData.showRegister = true"><div class="sk-label">Register</div></div></div></div><div class="sk-panel-row sk-p">Standard Notes is free on every platform, and comes \nstandard with sync and encryption.</div></div><div class="sk-panel-section" ng-if="\n self.state.formData.showLogin || \n self.state.formData.showRegister"><div class="sk-panel-section-title">{{self.state.formData.showLogin ? "Sign In" : "Register"}}</div><form class="sk-panel-form" ng-submit="self.submitAuthForm()"><div class="sk-panel-section"><input class="sk-input contrast" name="email" ng-model="self.state.formData.email" ng-model-options="{allowInvalid: true}" placeholder="Email" required="" should-focus="true" sn-autofocus="true" spellcheck="false" type="email"><input class="sk-input contrast" name="password" ng-model="self.state.formData.user_password" placeholder="Password" required="" sn-enter="self.submitAuthForm()" type="password"><input class="sk-input contrast" name="password_conf" ng-if="self.state.formData.showRegister" ng-model="self.state.formData.password_conf" placeholder="Confirm Password" required="" sn-enter="self.submitAuthForm()" type="password"><div class="sk-panel-row"></div><a class="sk-panel-row sk-bold" ng-click="\n self.state.formData.showAdvanced = !self.state.formData.showAdvanced\n ">Advanced Options</a></div><div class="sk-notification unpadded contrast advanced-options sk-panel-row" ng-if="self.state.formData.showAdvanced"><div class="sk-panel-column stretch"><div class="sk-notification-title sk-panel-row padded-row">Advanced Options</div><div class="bordered-row padded-row"><label class="sk-label">Sync Server Domain</label><input class="sk-input mt-5 sk-base" name="server" ng-model="self.state.formData.url" ng-change="self.onHostInputChange()" placeholder="Server URL" required="" type="text"></div><label class="sk-label padded-row sk-panel-row justify-left" ng-if="self.state.formData.showLogin"><div class="sk-horizontal-group tight"><input class="sk-input" ng-model="self.state.formData.strictSignin" type="checkbox"><p class="sk-p">Use strict sign in</p><span><a class="info" href="https://standardnotes.org/help/security" rel="noopener" target="_blank">(Learn more)</a></span></div></label></div></div><div class="sk-panel-section form-submit" ng-if="!self.state.formData.authenticating"><div class="sk-button-group stretch"><div class="sk-button info featured" ng-click="self.submitAuthForm()" ng-disabled="self.state.formData.authenticating"><div class="sk-label">{{self.state.formData.showLogin ? "Sign In" : "Register"}}</div></div></div></div><div class="sk-notification neutral" ng-if="self.state.formData.showRegister"><div class="sk-notification-title">No Password Reset.</div><div class="sk-notification-text">Because your notes are encrypted using your password, \nStandard Notes does not have a password reset option. \nYou cannot forget your password.</div></div><div class="sk-panel-section no-bottom-pad" ng-if="self.state.formData.status"><div class="sk-horizontal-group"><div class="sk-spinner small neutral"></div><div class="sk-label">{{self.state.formData.status}}</div></div></div><div class="sk-panel-section no-bottom-pad" ng-if="!self.state.formData.authenticating"><label class="sk-panel-row justify-left"><div class="sk-horizontal-group tight"><input ng-false-value="true" ng-model="self.state.formData.ephemeral" ng-true-value="false" type="checkbox"><p class="sk-p">Stay signed in</p></div></label><label class="sk-panel-row justify-left" ng-if="self.notesAndTagsCount() &gt; 0"><div class="sk-horizontal-group tight"><input ng-bind="true" ng-change="self.mergeLocalChanged()" ng-model="self.state.formData.mergeLocal" type="checkbox"><p class="sk-p">Merge local data ({{self.notesAndTagsCount()}} notes and tags)</p></div></label></div></form></div><div class="sk-panel-section" ng-if="self.state.formData.mfa"><form class="sk-panel-form" ng-submit="self.submitMfaForm()"><div class="sk-p sk-panel-row">{{self.state.formData.mfa.message}}</div><div class="sk-panel-row"><input class="sk-input contrast" autofocus="true" name="mfa" ng-model="self.state.formData.userMfaCode" placeholder="Enter Code" required="" should-focus="true" sn-autofocus="true"></div><div class="sk-button-group stretch sk-panel-row form-submit" ng-if="!self.state.formData.status"><button class="sk-button info featured" type="submit"><div class="sk-label">Sign In</div></button></div></form><div class="sk-panel-section no-bottom-pad" ng-if="self.state.formData.status"><div class="sk-panel-row"></div><div class="sk-panel-row"></div><div class="sk-horizontal-group"><div class="sk-spinner small neutral"></div><div class="sk-label">{{self.state.formData.status}}</div></div></div></div><div ng-if="\n !self.state.formData.showLogin &amp;&amp; \n !self.state.formData.showRegister &amp;&amp; \n !self.state.formData.mfa"><div class="sk-panel-section" ng-if="self.state.user"><div class="sk-notification danger" ng-if="self.syncStatus.error"><div class="sk-notification-title">Sync Unreachable</div><div class="sk-notification-text">Hmm...we can\'t seem to sync your account. \nThe reason: {{self.syncStatus.error.message}}</div><a class="sk-a info-contrast sk-bold sk-panel-row" href="https://standardnotes.org/help" rel="noopener" target="_blank">Need help?</a></div><div class="sk-panel-row"><div class="sk-panel-column"><div class="sk-h1 sk-bold wrap">{{self.state.user.email}}</div><div class="sk-subtitle subtle normal">{{self.state.server}}</div></div><div class="sk-horizontal-group" delay="1000" delay-hide="true" show="self.syncStatus.syncOpInProgress || self.syncStatus.needsMoreSync"><div class="sk-spinner small info"></div><div class="sk-sublabel">{{"Syncing" + (self.syncStatus.total > 0 ? ":" : "")}}<span ng-if="self.syncStatus.total &gt; 0">{{self.syncStatus.current}}/{{self.syncStatus.total}}</span></div></div></div><div class="sk-panel-row"></div><a class="sk-a info sk-panel-row condensed" ng-click="self.openPasswordWizard()">Change Password</a><a class="sk-a info sk-panel-row condensed" ng-click="self.openPrivilegesModal(\'\')" ng-show="self.state.user">Manage Privileges</a></div><div class="sk-panel-section"><div class="sk-panel-section-title">Encryption</div><div class="sk-panel-section-subtitle info" ng-if="self.state.encryptionEnabled">{{self.encryptionStatusForNotes()}}</div><p class="sk-p">{{self.state.encryptionStatusString}}</p></div><div class="sk-panel-section"><div class="sk-panel-section-title">Passcode Lock</div><div ng-if="!self.state.hasPasscode"><div ng-if="self.state.canAddPasscode"><div class="sk-panel-row" ng-if="!self.state.formData.showPasscodeForm"><div class="sk-button info" ng-click="self.addPasscodeClicked(); $event.stopPropagation();"><div class="sk-label">Add Passcode</div></div></div><p class="sk-p"> Add a passcode to lock the application and \nencrypt on-device key storage.</p></div><div ng-if="!self.state.canAddPasscode"><p class="sk-p">Adding a passcode is not supported in temporary sessions. Please sign \nout, then sign back in with the "Stay signed in" option checked.</p></div></div><form class="sk-panel-form" ng-if="self.state.formData.showPasscodeForm" ng-submit="self.submitPasscodeForm()"><div class="sk-panel-row"></div><input class="sk-input contrast" ng-model="self.state.formData.passcode" placeholder="Passcode" should-focus="true" sn-autofocus="true" type="password"><input class="sk-input contrast" ng-model="self.state.formData.confirmPasscode" placeholder="Confirm Passcode" type="password"><div class="sk-button-group stretch sk-panel-row form-submit"><button class="sk-button info" type="submit"><div class="sk-label">Set Passcode</div></button></div><a class="neutral sk-a sk-panel-row" ng-click="self.state.formData.showPasscodeForm = false">Cancel</a></form><div ng-if="self.state.hasPasscode &amp;&amp; !self.state.formData.showPasscodeForm"><div class="sk-p">Passcode lock is enabled.</div><div class="sk-notification contrast"><div class="sk-notification-title">Options</div><div class="sk-notification-text"><div class="sk-panel-row"><div class="sk-horizontal-group"><div class="sk-h4 sk-bold">Autolock</div><a class="sk-a info" ng-class="{\n \'boxed\' : option.value == self.state.selectedAutoLockInterval\n }" ng-click="self.selectAutoLockInterval(option.value)" ng-repeat="option in self.state.passcodeAutoLockOptions">{{option.label}}</a></div></div><div class="sk-p">The autolock timer begins when the window or tab loses focus.</div><div class="sk-panel-row"></div><a class="sk-a info sk-panel-row condensed" ng-click="self.openPrivilegesModal(\'\')" ng-show="!self.state.user">Manage Privileges</a><a class="sk-a info sk-panel-row condensed" ng-click="self.changePasscodePressed()">Change Passcode</a><a class="sk-a danger sk-panel-row condensed" ng-click="self.removePasscodePressed()">Remove Passcode</a></div></div></div></div><div class="sk-panel-section" ng-if="!self.state.importData.loading"><div class="sk-panel-section-title">Data Backups</div><div class="sk-p">Download a backup of all your data.</div><div class="sk-panel-row"></div><form class="sk-panel-form sk-panel-row" ng-if="self.state.encryptionEnabled"><div class="sk-input-group"><label class="sk-horizontal-group tight"><input ng-change="self.state.mutable.backupEncrypted = true" ng-model="self.state.mutable.backupEncrypted" ng-value="true" type="radio"><p class="sk-p">Encrypted</p></label><label class="sk-horizontal-group tight"><input ng-change="self.state.mutable.backupEncrypted = false" ng-model="self.state.mutable.backupEncrypted" ng-value="false" type="radio"><p class="sk-p">Decrypted</p></label></div></form><div class="sk-panel-row"></div><div class="sk-button-group sk-panel-row justify-left"><div class="sk-button info" ng-click="self.downloadDataArchive()"><div class="sk-label">Download Backup</div></div><label class="sk-button info"><input file-change="-&gt;" handler="self.importFileSelected(files)" style="display: none;" type="file"><div class="sk-label">Import Backup</div></label></div><span ng-if="self.isDesktopApplication()">Backups are automatically created on desktop and can be managed \nvia the "Backups" top-level menu.</span><div id="import-password-request" ng-if="self.state.importData.requestPassword"><form class="sk-panel-form stretch" ng-submit="self.submitImportPassword()"><p>Enter the account password associated with the import file.</p><input class="sk-input contrast mt-5" autofocus="true" ng-model="self.state.importData.password" placeholder="Enter File Account Password" type="password"><div class="sk-button-group stretch sk-panel-row form-submit"><button class="sk-button info" type="submit"><div class="sk-label">Decrypt & Import</div></button></div><p>Importing from backup will not overwrite existing data, \nbut instead create a duplicate of any differing data.</p><p>If you\'d like to import only a selection of items instead of \nthe whole file, please use the Batch Manager extension.</p></form></div><div class="sk-panel-row"><div class="sk-spinner small info" ng-if="self.state.importData.loading"></div></div></div></div></div><div class="sk-panel-footer"><div class="sk-panel-row"><div class="sk-p left neutral faded">{{self.state.appVersion}}</div><a class="sk-a right" ng-click="self.hidePasswordForm()" ng-if="self.state.formData.showLogin || self.state.formData.showRegister">Cancel</a><a class="sk-a right danger" ng-click="self.destroyLocalData()" ng-if="\n !self.state.formData.showLogin &amp;&amp; \n !self.state.formData.showRegister">{{ self.state.user ? "Sign out and clear local data" : "Clear all local data" }}</a></div></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component"><div class="sk-menu-panel dropdown-menu"><a class="no-decoration" href="https://standardnotes.org/extensions" ng-if="self.state.extensions.length == 0" rel="noopener" target="blank"><menu-row label="\'Download Actions\'"></menu-row></a><div ng-if="self.loadingExtensions"><div class="sk-menu-panel-header"><div class="sk-menu-panel-column"><div class="sk-menu-panel-header-title">Loading...</div><div class="sk-spinner small loading"></div></div></div></div><div ng-repeat="extension in self.state.extensions track by extension.uuid; self.loadingExtensions = false"><div class="sk-menu-panel-header" ng-click="self.updateExtension(extension, { hidden: !extension.hidden }); $event.stopPropagation();"><div class="sk-menu-panel-column"><div class="sk-menu-panel-header-title">{{extension.name}}</div><div ng-if="extension.hidden">…</div></div></div><menu-row action="self.executeAction(action, extension)" label="action.label" ng-if="!extension.hidden" ng-repeat="action in extension.actionsWithContextForItem(self.props.item) track by $index" disabled="action.running" spinner-class="action.running ? \'info\' : null" sub-rows="action.subrows" subtitle="action.desc"><div class="sk-sublabel" ng-if="action.access_type">Uses <strong>{{action.access_type}}</strong> access to this note.</div></menu-row><menu-row faded="true" label="\'No Actions Available\'" ng-if="extension.actionsWithContextForItem(self.props.item).length == 0"></menu-row></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sk-modal-background" ng-click="ctrl.dismiss()"></div><div class="sk-modal-content" ng-attr-id="component-content-outer-{{ctrl.component.uuid}}"><div class="sn-component"><div class="sk-panel" ng-attr-id="component-content-inner-{{ctrl.component.uuid}}"><div class="sk-panel-header"><div class="sk-panel-header-title">{{ctrl.component.name}}</div><a class="sk-a info close-button" ng-click="ctrl.dismiss()">Close</a></div><component-view class="component-view" ng-if="ctrl.component.active" component-uuid="ctrl.component.uuid" application="ctrl.application"></component-view></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component" ng-if="ctrl.issueLoading"><div class="sk-app-bar no-edges no-top-edge dynamic-height"><div class="left"><div class="sk-app-bar-item"><div class="sk-label warning">There was an issue loading {{ctrl.component.name}}.</div></div></div><div class="right"><div class="sk-app-bar-item" ng-click="ctrl.reloadIframe()"><div class="sk-button info"><div class="sk-label">Reload</div></div></div></div></div></div><div class="sn-component" ng-if="ctrl.expired"><div class="sk-app-bar no-edges no-top-edge dynamic-height"><div class="left"><div class="sk-app-bar-item"><div class="sk-app-bar-item-column"><div class="sk-circle danger small"></div></div><div class="sk-app-bar-item-column"><div><a class="sk-label sk-base" href="https://dashboard.standardnotes.org" rel="noopener" target="_blank">Your Extended subscription expired on \n{{ctrl.component.dateToLocalizedString(ctrl.component.valid_until)}}.</a><div class="sk-p">Extensions are in a read-only state.</div></div></div></div></div><div class="right"><div class="sk-app-bar-item" ng-click="ctrl.reloadComponent()"><div class="sk-button info"><div class="sk-label">Reload</div></div></div><div class="sk-app-bar-item"><div class="sk-app-bar-item-column"><div class="sk-button warning"><a class="sk-label" href="https://standardnotes.org/help/41/expired" rel="noopener" target="_blank">Help</a></div></div></div></div></div></div><div class="sn-component" ng-if="ctrl.error == \'offline-restricted\'"><div class="sk-panel static"><div class="sk-panel-content"><div class="sk-panel-section stretch"><div class="sk-panel-column"></div><div class="sk-h1 sk-bold">You have restricted this extension to be used offline only.</div><div class="sk-subtitle">Offline extensions are not available in the Web app.</div><div class="sk-panel-row"></div><div class="sk-panel-row"><div class="sk-panel-column"><div class="sk-p">You can either:</div><ul><li class="sk-p"><strong>Enable the Hosted option</strong> for this extension by opening the \'Extensions\' menu and \ntoggling \'Use hosted when local is unavailable\' under this \nextension\'s options. Then press Reload below.</li><li class="sk-p"><strong>Use the Desktop application.</strong></li></ul></div></div><div class="sk-panel-row"><div class="sk-button info" ng-click="ctrl.reloadStatus()" ng-if="!ctrl.reloading"><div class="sk-label">Reload</div></div><div class="sk-spinner info small" ng-if="ctrl.reloading"></div></div></div></div></div></div><div class="sn-component" ng-if="ctrl.error == \'url-missing\'"><div class="sk-panel static"><div class="sk-panel-content"><div class="sk-panel-section stretch"><div class="sk-panel-section-title">This extension is not installed correctly.</div><p>Please uninstall {{ctrl.component.name}}, then re-install it.</p><p>This issue can occur if you access Standard Notes using an older \nversion of the app.\nEnsure you are running at least version 2.1 on all platforms.</p></div></div></div></div><iframe data-component-id="{{ctrl.componentUuid}}" frameborder="0" ng-init="ctrl.onIframeInit()" ng-attr-id="component-iframe-{{ctrl.componentUuid}}" ng-if="ctrl.componentUuid &amp;&amp; !ctrl.reloading &amp;&amp; ctrl.componentValid" ng-src="{{ctrl.getUrl() | trusted}}" sandbox="allow-scripts allow-top-navigation-by-user-activation allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-modals allow-forms allow-downloads">Loading</iframe><div class="loading-overlay" ng-if="ctrl.loading"></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component"><div class="sk-menu-panel dropdown-menu"><div class="sk-menu-panel-section"><div class="sk-menu-panel-header"><div class="sk-menu-panel-header-title">Note Editor</div></div><menu-row action="self.selectComponent(null)" circle="!self.selectedEditorUuid &amp;&amp; \'success\'" label="\'Plain Editor\'"></menu-row><menu-row ng-repeat="editor in self.state.editors track by editor.uuid" action="self.selectComponent(editor)" button-action="self.toggleDefaultForEditor(editor)" button-class="self.isEditorSelected(editor) ? \'warning\' : \'info\'" button-text="self.isEditorDefault(editor) ? \'Undefault\' : \'Set Default\'" circle="self.isEditorSelected(editor) &amp;&amp; \'success\'" has-button="self.isEditorSelected(editor) || isEditorDefault(editor)" label="editor.name"><div class="sk-menu-panel-column" ng-if="editor.conflictOf"><div class="info" ng-if="editor.conflictOf">Conflicted copy</div></div></menu-row><a class="no-decoration" href="https://standardnotes.org/extensions" ng-if="self.state.editors.length == 0" rel="noopener" target="blank"><menu-row label="\'Download More Editors\'"></menu-row></a></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component"><div class="sk-modal small auto-height"><div class="sk-modal-background"></div><div class="sk-modal-content"><div class="sn-component"><div class="sk-panel"><div class="sk-panel-header"><div class="sk-h1 sk-panel-header-title">{{ctrl.title}}</div><a class="sk-a info close-button" ng-click="ctrl.dismiss()">Close</a></div><div class="sk-panel-content"><div class="sk-panel-section"><div class="sk-p sk-panel-row">{{ctrl.message}}</div><div class="sk-panel-row"><div class="sk-panel-column stretch"><form ng-submit="ctrl.submit()"><input class="sk-input contrast" ng-model="ctrl.formData.input" should-focus="true" sn-autofocus="true" type="{{ctrl.type}}"></form></div></div></div></div><div class="sk-panel-footer"><a class="sk-a info right" ng-click="ctrl.submit()">Submit</a></div></div></div></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sk-menu-panel-row row" ng-attr-title="{{ctrl.desc}}" ng-click="ctrl.onClick($event)"><div class="sk-menu-panel-column"><div class="left"><div class="sk-menu-panel-column" ng-if="\n ctrl.circle &amp;&amp; \n (!ctrl.circleAlign || ctrl.circleAlign == \'left\')\n "><div class="sk-circle small" ng-class="ctrl.circle"></div></div><div class="sk-menu-panel-column" ng-class="{\'faded\' : ctrl.faded || ctrl.disabled}"><div class="sk-label" ng-class="ctrl.stylekitClass">{{ctrl.label}}</div><div class="sk-sublabel" ng-if="ctrl.subtitle">{{ctrl.subtitle}}</div><ng-transclude></ng-transclude></div></div><div class="sk-menu-panel-subrows" ng-if="ctrl.subRows &amp;&amp; ctrl.subRows.length &gt; 0"><menu-row ng-repeat="row in ctrl.subRows" action="row.onClick()" label="row.label" spinner-class="row.spinnerClass" subtitle="row.subtitle"></menu-row></div></div><div class="sk-menu-panel-column" ng-if="ctrl.circle &amp;&amp; ctrl.circleAlign == \'right\'"><div class="sk-circle small" ng-class="ctrl.circle"></div></div><div class="sk-menu-panel-column" ng-if="ctrl.hasButton"><div class="sk-button" ng-class="ctrl.buttonClass" ng-click="ctrl.clickAccessoryButton($event)"><div class="sk-label">{{ctrl.buttonText}}</div></div></div><div class="sk-menu-panel-column" ng-if="ctrl.spinnerClass"><div class="sk-spinner small" ng-class="ctrl.spinnerClass"></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="panel-resizer-column"></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component"><div class="sk-modal small auto-height" id="password-wizard"><div class="sk-modal-background"></div><div class="sk-modal-content"><div class="sn-component"><div class="sk-panel"><div class="sk-panel-header"><div class="sk-panel-header-title">{{ctrl.state.title}}</div><a class="sk-a info close-button" ng-click="ctrl.dismiss()">Close</a></div><div class="sk-panel-content"><div class="sk-panel-section" ng-if="ctrl.state.step == 1"><div class="sk-panel-row"><div class="sk-panel-column stretch"><form class="sk-panel-form"><input class="sk-input contrast" ng-model="ctrl.state.formData.currentPassword" placeholder="Current Password" should-focus="true" sn-autofocus="true" type="password"><input class="sk-input contrast" ng-if="ctrl.props.changePassword" ng-model="ctrl.state.formData.newPassword" placeholder="New Password" type="password"><input class="sk-input contrast" ng-if="ctrl.props.changePassword" ng-model="ctrl.state.formData.newPasswordConfirmation" placeholder="Confirm New Password" type="password"></form></div></div></div><div class="sk-panel-section" ng-if="ctrl.state.step == 2"><div ng-if="ctrl.props.changePassword"><p class="sk-p sk-panel-row info-i">Your password has been successfully changed.</p></div><div ng-if="ctrl.props.securityUpdate"><p class="sk-p sk-panel-row info-i">The account update has been successfully applied to your account.</p></div><p class="sk-p sk-panel-row">Please ensure you are running the latest version of Standard Notes \non all platforms to ensure maximum compatibility.</p></div></div><div class="sk-panel-footer"><div class="empty"></div><a class="sk-a info right" ng-click="ctrl.nextStep()" ng-disabled="ctrl.state.lockContinue"><div class="sk-spinner small inline info mr-5" ng-if="ctrl.state.showSpinner"></div>{{ctrl.state.continueTitle}}</a></div></div></div></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sk-modal-background" ng-click="ctrl.deny()"></div><div class="sk-modal-content" id="permissions-modal"><div class="sn-component"><div class="sk-panel"><div class="sk-panel-header"><div class="sk-panel-header-title">Activate Extension</div><a class="sk-a info close-button" ng-click="ctrl.deny()">Cancel</a></div><div class="sk-panel-content"><div class="sk-panel-section"><div class="sk-panel-row"><div class="sk-h2"><strong>{{ctrl.component.name}}</strong> would like to interact with your\n {{ctrl.permissionsString}}</div></div><div class="sk-panel-row"><p class="sk-p">Extensions use an offline messaging system to communicate. Learn more at <a class="sk-a info" href="https://standardnotes.org/permissions" rel="noopener" target="_blank">https://standardnotes.org/permissions.</a></p></div></div></div><div class="sk-panel-footer"><div class="sk-button info big block bold" ng-click="ctrl.accept()"><div class="sk-label">Continue</div></div></div></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sk-modal-background" ng-click="ctrl.cancel()"></div><div class="sk-modal-content" id="privileges-modal"><div class="sn-component"><div class="sk-panel"><div class="sk-panel-header"><div class="sk-panel-header-title">Authentication Required</div><a class="close-button info" ng-click="ctrl.cancel()">Cancel</a></div><div class="sk-panel-content"><div class="sk-panel-section"><div ng-repeat="credential in ctrl.requiredCredentials"><div class="sk-p sk-bold sk-panel-row"><strong>{{ctrl.promptForCredential(credential)}}</strong></div><div class="sk-panel-row"><input class="sk-input contrast" ng-model="ctrl.authParameters[credential]" should-focus="$index == 0" sn-autofocus="true" sn-enter="ctrl.submit()" type="password"></div><div class="sk-panel-row"><label class="sk-label danger" ng-if="ctrl.isCredentialInFailureState(credential)">Invalid authentication. Please try again.</label></div></div><div class="sk-panel-row"></div><div class="sk-panel-row"><div class="sk-horizontal-group"><div class="sk-p sk-bold">Remember For</div><a class="sk-a info" ng-repeat="option in ctrl.sessionLengthOptions" ng-class="{\'boxed\' : option.value == ctrl.selectedSessionLength}" ng-click="ctrl.selectSessionLength(option.value)">{{option.label}}</a></div></div></div></div><div class="sk-panel-footer extra-padding"><div class="sk-button info big block bold" ng-click="ctrl.submit()"><div class="sk-label">Submit</div></div></div></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sk-modal-background" ng-click="ctrl.cancel()"></div><div class="sk-modal-content" id="privileges-modal"><div class="sn-component"><div class="sk-panel"><div class="sk-panel-header"><div class="sk-panel-header-title">Manage Privileges</div><a class="sk-a close-button info" ng-click="ctrl.cancel()">Done</a></div><div class="sk-panel-content"><div class="sk-panel-section"><table class="sk-table"><thead><tr><th></th><th ng-repeat="cred in ctrl.availableCredentials"><div class="priv-header"><strong>{{ctrl.credentialDisplayInfo[cred].label}}</strong><div class="sk-p font-small" ng-show="!ctrl.credentialDisplayInfo[cred].availability" style="margin-top: 2px">Not Configured</div></div></th></tr></thead><tbody><tr ng-repeat="action in ctrl.availableActions"><td><div class="sk-p">{{ctrl.displayInfoForAction(action)}}</div></td><th ng-repeat="credential in ctrl.availableCredentials"><input ng-checked="ctrl.isCredentialRequiredForAction(action, credential)" ng-click="ctrl.checkboxValueChanged(action, credential)" ng-disabled="!ctrl.credentialDisplayInfo[credential].availability" type="checkbox"></th></tr></tbody></table></div><div class="sk-panel-section" ng-if="ctrl.sessionExpirey &amp;&amp; !ctrl.sessionExpired"><div class="sk-p sk-panel-row"> You will not be asked to authenticate until {{ctrl.sessionExpirey}}.</div><a class="sk-a sk-panel-row info" ng-click="ctrl.clearSession()">Clear Session</a></div></div><div class="sk-panel-footer"><div class="sk-h2 sk-bold">About Privileges</div><div class="sk-panel-section no-bottom-pad"><div class="sk-panel-row"><div class="text-content"><div class="sk-p">Privileges represent interface level authentication for accessing \ncertain items and features. Note that when your application is unlocked,\nyour data exists in temporary memory in an unencrypted state.\nPrivileges are meant to protect against unwanted access in the event of\nan unlocked application, but do not affect data encryption state.</div><p class="sk-p">Privileges sync across your other devices; however, note that if you \nrequire an "Application Passcode" privilege, and another device does not have \nan application passcode set up, the application passcode requirement will be ignored \non that device.</p></div></div></div></div></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component"><div class="sk-modal medium" id="item-preview-modal"><div class="sk-modal-background"></div><div class="sk-modal-content"><div class="sn-component"><div class="sk-panel"><div class="sk-panel-header"><div class="sk-panel-header-title">Preview</div><div class="sk-horizontal-group"><a class="sk-a info close-button" ng-click="ctrl.restore(false)">Restore</a><a class="sk-a info close-button" ng-click="ctrl.restore(true)">Restore as copy</a><a class="sk-a info close-button" ng-click="ctrl.dismiss(); $event.stopPropagation()">Close</a></div></div><div class="sk-panel-content selectable" ng-if="!ctrl.editor"><div class="sk-h2">{{ctrl.content.title}}</div><p class="normal sk-p" style="white-space: pre-wrap; font-size: 16px;">{{ctrl.content.text}}</p></div><component-view class="component-view" component-uuid="ctrl.editor.uuid" ng-if="ctrl.editor" application="ctrl.application"></component-view></div></div></div></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component" id="session-history-menu"><div class="sk-menu-panel dropdown-menu"><div class="sk-menu-panel-header"><div class="sk-menu-panel-header-title">{{ctrl.history.entries.length || \'No\'}} revisions</div><a class="sk-a info sk-h5" ng-click="ctrl.showOptions = !ctrl.showOptions; $event.stopPropagation();">Options</a></div><div ng-if="ctrl.showOptions"><menu-row action="ctrl.clearItemHistory()" label="\'Clear note local history\'"></menu-row><menu-row action="ctrl.clearAllHistory()" label="\'Clear all local history\'"></menu-row><menu-row action="ctrl.toggleAutoOptimize()" label="(ctrl.autoOptimize ? \'Disable\' : \'Enable\') + \' auto cleanup\'"><div class="sk-sublabel">Automatically cleans up small revisions to conserve space.</div></menu-row><menu-row action="ctrl.toggleDiskSaving()" label="(ctrl.diskEnabled ? \'Disable\' : \'Enable\') + \' saving history to disk\'"><div class="sk-sublabel">Saving to disk is not recommended. Decreases performance and increases app \nloading time and memory footprint.</div></menu-row></div><menu-row ng-repeat="revision in ctrl.entries" action="ctrl.openRevision(revision);" label="revision.previewTitle()"><div class="sk-sublabel opaque" ng-class="ctrl.classForRevision(revision)">{{revision.previewSubTitle()}}</div></menu-row></div></div>'}},function(e,t,n){n(4);e.exports=function(e){var t="";return t+='<div class="sn-component"><div class="sk-panel sk-panel-right" id="sync-resolution-menu"><div class="sk-panel-header"><div class="sk-panel-header-title">Out of Sync</div><a class="sk-a info close-button" ng-click="ctrl.close()">Close</a></div><div class="sk-panel-content"><div class="sk-panel-section"><div class="sk-panel-row sk-p">We\'ve detected that the data on the server may not match \nthe data in the current application session.</div><div class="sk-p sk-panel-row"><div class="sk-panel-column"><strong class="sk-panel-row">Option 1 — Restart App:</strong><div class="sk-p"> Quit the application and re-open it. \nSometimes, this may resolve the issue.</div></div></div><div class="sk-p sk-panel-row"><div class="sk-panel-column"><strong class="sk-panel-row">Option 2 (recommended) — Sign Out:</strong><div class="sk-p">Sign out of your account, then sign back in. \nThis will ensure your data is consistent with the server.</div>Be sure to download a backup of your data before doing so.</div></div><div class="sk-p sk-panel-row"><div class="sk-panel-column"><strong class="sk-panel-row">Option 3 — Sync Resolution:</strong><div class="sk-p">We can attempt to reconcile changes by downloading all data from the \nserver. No existing data will be overwritten. If the local contents of \nan item differ from what the server has, a conflicted copy will be created.</div></div></div><div ng-if="!ctrl.status.backupFinished"><div class="sk-p sk-panel-row">Please download a backup before we attempt to \nperform a full account sync resolution.</div><div class="sk-panel-row"><div class="sk-button-group"><div class="sk-button info" ng-click="ctrl.downloadBackup(true)"><div class="sk-label">Encrypted</div></div><div class="sk-button info" ng-click="ctrl.downloadBackup(false)"><div class="sk-label">Decrypted</div></div><div class="sk-button danger" ng-click="ctrl.skipBackup()"><div class="sk-label">Skip</div></div></div></div></div><div ng-if="ctrl.status.backupFinished"><div class="sk-panel-row" ng-if="!ctrl.status.resolving &amp;&amp; !ctrl.status.attemptedResolution"><div class="sk-button info" ng-click="ctrl.performSyncResolution()"><div class="sk-label">Perform Sync Resolution</div></div></div><div class="sk-panel-row justify-left" ng-if="ctrl.status.resolving"><div class="sk-horizontal-group"><div class="sk-spinner small info"></div><div class="sk-label">Attempting sync resolution...</div></div></div><div class="sk-panel-column" ng-if="ctrl.status.fail"><div class="sk-panel-row sk-label danger">Sync Resolution Failed</div><div class="sk-p sk-panel-row">We attempted to reconcile local content and server content, but were \nunable to do so. At this point, we recommend signing out of your account \nand signing back in. You may wish to download a data backup before doing so.</div></div><div class="sk-panel-column" ng-if="ctrl.status.success"><div class="sk-panel-row sk-label success">Sync Resolution Success</div><div class="sk-p sk-panel-row">Your local data is now in sync with the server. You may close this window.</div></div></div></div></div></div></div>'}},function(e,t,n){"use strict";n.r(t);n(81),n(82);var r=n(3),i=n.n(r),a=(n(84),n(85),n(86),n(87),n(88),n(1));function o(e){Object(a.d)()?e.html5Mode(!1):window.history&&window.history.pushState&&e.html5Mode({enabled:!0,requireBase:!1})}o.$inject=["$locationProvider"];var s=n(51),c=n(0),u=n(5);function l(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function A(e,t=""){const n=t+".txt";return e.replace(/\//g,"").replace(/\\+/g,"").replace(/:/g," ").replace(/\./g," ").slice(0,255-n.length)+n}class f{constructor(e){l(this,"application",void 0),l(this,"textFile",void 0),this.application=e}async downloadBackup(e){const t=this.application.allItems(),n=async()=>{const n=e?c.EncryptionIntent.FileEncrypted:c.EncryptionIntent.FileDecrypted;if(e){const e=await this.itemsData(t,n);this.downloadData(e,`Standard Notes Encrypted Backup and Import File - ${this.formattedDate()}.txt`)}else this.downloadZippedItems(t)};await this.application.privilegesService.actionRequiresPrivilege(c.ProtectedAction.ManageBackups)?this.application.presentPrivilegesModal(c.ProtectedAction.ManageBackups,()=>{n()}):n()}formattedDate(){const e=`${new Date}`,t=e.match(/^(.*?) \(/);return t&&t.length>=2?t[1]:e}async itemsData(e,t){const n=await this.application.createBackupFile(e,t);if(n)return new Blob([n],{type:"text/json"})}get zip(){return window.zip}async loadZip(){if(this.zip)return;const e=document.createElement("script");return e.src="/assets/zip/zip.js",e.async=!1,document.getElementsByTagName("head")[0].appendChild(e),new Promise(t=>{e.onload=()=>{this.zip.workerScriptsPath="assets/zip/",t()}})}async downloadZippedItems(e){await this.loadZip(),this.zip.createWriter(new this.zip.BlobWriter("application/zip"),async t=>{const n=await this.application.createBackupFile(e,c.EncryptionIntent.FileDecrypted);await new Promise(e=>{const r=new Blob([n],{type:"text/plain"}),i=A("Standard Notes Backup and Import File.txt");t.add(i,new this.zip.BlobReader(r),e)});let r=0;const i=()=>{const n=e[r];let a,o;if(n.content_type===c.ContentType.Note){const e=n;a=e.title,o=e.text}else a=n.content_type,o=JSON.stringify(n.content,null,2);a||(a="");const s=new Blob([o],{type:"text/plain"}),u=`Items/${n.content_type}/`+A(a,`-${n.uuid.split("-")[0]}`);t.add(u,new this.zip.BlobReader(s),()=>{r++,r<e.length?i():t.close(e=>{this.downloadData(e,`Standard Notes Backup - ${this.formattedDate()}.zip`),t=null})})};i()},onerror)}hrefForData(e){return this.textFile&&window.URL.revokeObjectURL(this.textFile),this.textFile=window.URL.createObjectURL(e),this.textFile}downloadData(e,t){const n=document.createElement("a");n.setAttribute("download",t),n.href=this.hrefForData(e),document.body.appendChild(n),n.click(),n.remove()}}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class p extends c.ApplicationService{constructor(e,t,n){super(n),h(this,"$rootScope",void 0),h(this,"$timeout",void 0),h(this,"componentActivationObservers",[]),h(this,"updateObservers",[]),h(this,"isDesktop",Object(a.d)()),h(this,"dataLoaded",!1),h(this,"dataLoadHandler",void 0),h(this,"majorDataChangeHandler",void 0),h(this,"extServerHost",void 0),h(this,"installationSyncHandler",void 0),h(this,"installComponentHandler",void 0),h(this,"lastSearchedText",void 0),h(this,"searchHandler",void 0),this.$rootScope=e,this.$timeout=t}get webApplication(){return this.application}deinit(){this.componentActivationObservers.length=0,this.updateObservers.length=0,super.deinit()}async onAppEvent(e){super.onAppEvent(e),e===c.ApplicationEvent.LocalDataLoaded?(this.dataLoaded=!0,this.dataLoadHandler&&this.dataLoadHandler()):e===c.ApplicationEvent.MajorDataChange&&this.majorDataChangeHandler&&this.majorDataChangeHandler()}saveBackup(){this.majorDataChangeHandler&&this.majorDataChangeHandler()}getExtServerHost(){return console.assert(this.extServerHost,"extServerHost is null"),this.extServerHost}async convertComponentForTransmission(e){return this.application.protocolService.payloadByEncryptingPayload(e.payloadRepresentation(),c.EncryptionIntent.FileDecrypted)}syncComponentsInstallation(e){this.isDesktop&&Promise.all(e.map(e=>this.convertComponentForTransmission(e))).then(e=>{this.installationSyncHandler(e)})}async installComponent(e){this.installComponentHandler(await this.convertComponentForTransmission(e))}registerUpdateObserver(e){const t={callback:e};return this.updateObservers.push(t),()=>{Object(c.removeFromArray)(this.updateObservers,t)}}searchText(e){this.isDesktop&&(this.lastSearchedText=e,this.searchHandler&&this.searchHandler(e))}redoSearch(){this.lastSearchedText&&this.searchText(this.lastSearchedText)}desktop_setSearchHandler(e){this.searchHandler=e}desktop_windowGainedFocus(){this.$rootScope.$broadcast("window-gained-focus")}desktop_windowLostFocus(){this.$rootScope.$broadcast("window-lost-focus")}async desktop_onComponentInstallationComplete(e,t){const n=this.application.findItem(e.uuid);if(!n)return;const r=await this.application.changeAndSaveItem(n.uuid,n=>{const r=n;t?r.setAppDataItem(c.AppDataField.ComponentInstallError,t):(r.local_url=e.content.local_url,r.package_info=e.content.package_info,r.setAppDataItem(c.AppDataField.ComponentInstallError,void 0))});this.$timeout(()=>{for(const e of this.updateObservers)e.callback(r)})}desktop_registerComponentActivationObserver(e){const t={id:`${Math.random}`,callback:e};return this.componentActivationObservers.push(t),t}desktop_deregisterComponentActivationObserver(e){Object(c.removeFromArray)(this.componentActivationObservers,e)}async notifyComponentActivation(e){const t=await this.convertComponentForTransmission(e);this.$timeout(()=>{for(const e of this.componentActivationObservers)e.callback(t)})}desktop_setExtServerHost(e){this.extServerHost=e,this.webApplication.getAppState().desktopExtensionsReady()}desktop_setComponentInstallationSyncHandler(e){this.installationSyncHandler=e}desktop_setInstallComponentHandler(e){this.installComponentHandler=e}desktop_setInitialDataLoadHandler(e){this.dataLoadHandler=e,this.dataLoaded&&this.dataLoadHandler()}async desktop_requestBackupFile(e){e(await this.application.createBackupFile(void 0,void 0,!0))}desktop_setMajorDataChangeHandler(e){this.majorDataChangeHandler=e}desktop_didBeginBackup(){this.webApplication.getAppState().beganBackupDownload()}desktop_didFinishBackup(e){this.webApplication.getAppState().endedBackupDownload(e)}}function d(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}let g,y;var v;!function(e){e.Tab="Tab",e.Backspace="Backspace",e.Up="ArrowUp",e.Down="ArrowDown"}(g||(g={})),function(e){e.Shift="Shift",e.Ctrl="Control",e.Meta="Meta",e.Alt="Alt"}(y||(y={})),function(e){e.Down="KeyEventDown",e.Up="KeyEventUp"}(v||(v={}));class m{constructor(){d(this,"observers",[]),d(this,"handleKeyDown",void 0),d(this,"handleKeyUp",void 0),this.handleKeyDown=e=>{this.notifyObserver(e,v.Down)},this.handleKeyUp=e=>{this.notifyObserver(e,v.Up)},window.addEventListener("keydown",this.handleKeyDown),window.addEventListener("keyup",this.handleKeyUp)}deinit(){this.observers.length=0,window.removeEventListener("keydown",this.handleKeyDown),window.removeEventListener("keyup",this.handleKeyUp),this.handleKeyDown=void 0,this.handleKeyUp=void 0}modifiersForEvent(e){return Object.values(y).filter(t=>(e.ctrlKey||e.key===y.Ctrl)&&t===y.Ctrl||(e.metaKey||e.key===y.Meta)&&t===y.Meta||(e.altKey||e.key===y.Alt)&&t===y.Alt||(e.shiftKey||e.key===y.Shift)&&t===y.Shift)}eventMatchesKeyAndModifiers(e,t,n=[]){const r=this.modifiersForEvent(e);if(r.length!==n.length)return!1;for(const e of n)if(!r.includes(e))return!1;return!t||t.toLowerCase()===e.key.toLowerCase()}notifyObserver(e,t){const n=e.target;for(const r of this.observers)if((!r.element||e.target===r.element)&&(!r.elements||r.elements.includes(n))&&(!r.notElement||r.notElement!==e.target)&&(!r.notElementIds||!r.notElementIds.includes(n.id))&&this.eventMatchesKeyAndModifiers(e,r.key,r.modifiers)){const n=t===v.Down?r.onKeyDown:r.onKeyUp;n&&n(e)}}addKeyObserver(e){return this.observers.push(e),()=>{Object(c.removeFromArray)(this.observers,e)}}}var b=n(28);function I(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class w extends c.ApplicationService{constructor(...e){super(...e),I(this,"extManagerId","org.standardnotes.extensions-manager"),I(this,"batchManagerId","org.standardnotes.batch-manager")}async onAppLaunch(){super.onAppLaunch(),this.reload()}get extManagerPred(){return c.SNPredicate.CompoundPredicate([new c.SNPredicate("content_type","=",c.ContentType.Component),new c.SNPredicate("package_info.identifier","=","org.standardnotes.extensions-manager")])}get batchManagerPred(){return c.SNPredicate.CompoundPredicate([new c.SNPredicate("content_type","=",c.ContentType.Component),new c.SNPredicate("package_info.identifier","=","org.standardnotes.batch-manager")])}get extMgrUrl(){return window._extensions_manager_location}get batchMgrUrl(){return window._batch_manager_location}reload(){this.application.singletonManager.registerPredicate(this.extManagerPred),this.application.singletonManager.registerPredicate(this.batchManagerPred),this.resolveExtensionsManager(),this.resolveBatchManager()}async resolveExtensionsManager(){const e=await this.application.singletonManager.findOrCreateSingleton(this.extManagerPred,c.ContentType.Component,this.extensionsManagerTemplateContent());let t=!1;Object(a.d)()?e.local_url||(await this.application.changeItem(e.uuid,e=>{e.local_url=this.extMgrUrl}),t=!0):e.hosted_url||(await this.application.changeItem(e.uuid,e=>{e.hosted_url=this.extMgrUrl}),t=!0);const n=Object(c.Copy)(e.permissions),r=n.find(e=>e.name===c.ComponentAction.StreamItems);r&&!r.content_types.includes(c.ContentType.ExtensionRepo)&&(r.content_types.push(c.ContentType.ExtensionRepo),await this.application.changeItem(e.uuid,e=>{e.permissions=n}),t=!0),t&&this.application.saveItem(e.uuid)}extensionsManagerTemplateContent(){if(!this.extMgrUrl)throw Error("this.extMgrUrl must be set.");const e={name:"Extensions",identifier:this.extManagerId},t=Object(c.FillItemContent)({name:e.name,area:"rooms",package_info:e,permissions:[{name:c.ComponentAction.StreamItems,content_types:[c.ContentType.Component,c.ContentType.Theme,c.ContentType.ServerExtension,c.ContentType.ActionsExtension,c.ContentType.Mfa,c.ContentType.Editor,c.ContentType.ExtensionRepo]}]});return Object(a.d)()?t.local_url=this.extMgrUrl:t.hosted_url=this.extMgrUrl,t}async resolveBatchManager(){const e=await this.application.singletonManager.findOrCreateSingleton(this.batchManagerPred,c.ContentType.Component,this.batchManagerTemplateContent());let t=!1;Object(a.d)()?e.local_url||(await this.application.changeItem(e.uuid,e=>{e.local_url=this.batchMgrUrl}),t=!0):e.hosted_url||(await this.application.changeItem(e.uuid,e=>{e.hosted_url=this.batchMgrUrl}),t=!0);const n=Object(c.Copy)(e.permissions),r=n.find(e=>e.name===c.ComponentAction.StreamItems);r&&!r.content_types.includes(c.ContentType.ExtensionRepo)&&(r.content_types.push(c.ContentType.ExtensionRepo),await this.application.changeItem(e.uuid,e=>{e.permissions=n}),t=!0),t&&this.application.saveItem(e.uuid)}batchManagerTemplateContent(){if(!this.batchMgrUrl)throw Error("window._batch_manager_location must be set.");const e={name:"Batch Manager",identifier:this.batchManagerId},t=Object(c.dictToArray)(c.ContentType),n=Object(c.FillItemContent)({name:e.name,area:"modal",package_info:e,permissions:[{name:c.ComponentAction.StreamItems,content_types:t}]});return Object(a.d)()?n.local_url=this.batchMgrUrl:n.hosted_url=this.batchMgrUrl,n}}function C(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class B extends c.ApplicationService{constructor(...e){super(...e),C(this,"userPreferences",void 0),C(this,"loadingPrefs",!1)}async onAppLaunch(){super.onAppLaunch(),this.reloadSingleton(),this.streamPreferences()}get webApplication(){return this.application}streamPreferences(){this.application.streamItems(c.ContentType.UserPrefs,()=>{this.reloadSingleton()})}async reloadSingleton(){var e,t;if(this.loadingPrefs)return;this.loadingPrefs=!0;const n=c.ContentType.UserPrefs,r=new c.SNPredicate("content_type","=",n),i=this.userPreferences;this.userPreferences=await this.application.singletonManager.findOrCreateSingleton(r,n,Object(c.FillItemContent)({})),this.loadingPrefs=!1,(!i||(null===(e=this.userPreferences.lastSyncBegan)||void 0===e?void 0:e.getTime())!==(null==i||null===(t=i.lastSyncBegan)||void 0===t?void 0:t.getTime()))&&this.webApplication.getAppState().setUserPreferences(this.userPreferences)}syncUserPreferences(){this.userPreferences&&this.application.saveItem(this.userPreferences.uuid)}getValue(e,t){if(!this.userPreferences)return t;const n=this.userPreferences.getPref(e);return null!=n?n:t}async setUserPrefValue(e,t,n=!1){await this.application.changeItem(this.userPreferences.uuid,n=>{n.setWebPref(e,t)}),n&&this.syncUserPreferences()}}function E(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class _{constructor(){E(this,"statuses",[]),E(this,"observers",[])}statusFromString(e){return{string:e}}replaceStatusWithString(e,t){return this.removeStatus(e),this.addStatusFromString(t)}addStatusFromString(e){return this.addStatus(this.statusFromString(e))}addStatus(e){return this.statuses.push(e),this.notifyObservers(),e}removeStatus(e){Object(c.removeFromArray)(this.statuses,e),this.notifyObservers()}getStatusString(){let e="";return this.statuses.forEach((t,n)=>{n>0&&(e+=" "),e+=t.string}),e}notifyObservers(){for(const e of this.observers)e(this.getStatusString())}addStatusObserver(e){return this.observers.push(e),()=>{Object(c.removeFromArray)(this.observers,e)}}}var k=n(2);function Q(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class S extends c.ApplicationService{constructor(...e){super(...e),Q(this,"activeThemes",[]),Q(this,"unsubState",void 0),Q(this,"unregisterDesktop",void 0),Q(this,"unregisterComponent",void 0)}async onAppLaunch(){super.onAppLaunch(),this.unsubState=this.webApplication.getAppState().addObserver(async e=>{e===k.b.DesktopExtsReady&&this.activateCachedThemes()})}onAppEvent(e){super.onAppEvent(e),e===c.ApplicationEvent.SignedOut&&this.deactivateAllThemes()}get webApplication(){return this.application}deinit(){var e;null===(e=this.unsubState)||void 0===e||e.call(this),this.unsubState=void 0,this.activeThemes.length=0,this.unregisterDesktop(),this.unregisterComponent(),this.unregisterDesktop=void 0,this.unregisterComponent=void 0,super.deinit()}async onAppStart(){super.onAppStart(),this.registerObservers(),this.webApplication.getDesktopService().isDesktop||this.activateCachedThemes()}async activateCachedThemes(){const e=await this.getCachedThemes();for(const t of e)this.activateTheme(t,!1)}registerObservers(){this.unregisterDesktop=this.webApplication.getDesktopService().registerUpdateObserver(e=>{e.active&&e.isTheme()&&(this.deactivateTheme(e.uuid),setTimeout(()=>{this.activateTheme(e)},10))}),this.unregisterComponent=this.application.componentManager.registerHandler({identifier:"themeManager",areas:[c.ComponentArea.Themes],activationHandler:(e,t)=>{(null==t?void 0:t.active)?this.activateTheme(t):this.deactivateTheme(e)}})}deactivateAllThemes(){for(const e of this.activeThemes)this.deactivateTheme(e,!1);this.activeThemes=[],this.decacheThemes()}activateTheme(e,t=!0){if(this.activeThemes.find(t=>t===e.uuid))return;this.activeThemes.push(e.uuid);const n=this.application.componentManager.urlForComponent(e),r=document.createElement("link");r.href=n,r.type="text/css",r.rel="stylesheet",r.media="screen,print",r.id=e.uuid,document.getElementsByTagName("head")[0].appendChild(r),t&&this.cacheThemes()}deactivateTheme(e,t=!0){const n=document.getElementById(e);n&&(n.disabled=!0,n.parentNode.removeChild(n)),Object(c.removeFromArray)(this.activeThemes,e),t&&this.cacheThemes()}async cacheThemes(){const e=this.application.getAll(this.activeThemes),t=await Promise.all(e.map(async e=>{const t=e.payloadRepresentation();return await this.application.protocolService.payloadByEncryptingPayload(t,c.EncryptionIntent.LocalStorageDecrypted)}));return this.application.setValue("cachedThemes",t,c.StorageValueModes.Nonwrapped)}async decacheThemes(){if(this.application)return this.application.removeValue("cachedThemes",c.StorageValueModes.Nonwrapped)}async getCachedThemes(){const e=await this.application.getValue("cachedThemes",c.StorageValueModes.Nonwrapped);if(e){const t=[];for(const n of e){const e=this.application.createPayloadFromObject(n),r=this.application.createItemFromPayload(e);t.push(r)}return t}return[]}}function x(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class D{constructor(e,t,n){x(this,"$compile",void 0),x(this,"$rootScope",void 0),x(this,"$timeout",void 0),x(this,"applications",[]),x(this,"changeObservers",[]),x(this,"activeApplication",void 0),this.$compile=e,this.$timeout=n,this.$rootScope=t,this.onApplicationDeinit=this.onApplicationDeinit.bind(this),this.createDefaultApplication()}createDefaultApplication(){this.activeApplication=this.createNewApplication(),this.applications.push(this.activeApplication),this.notifyObserversOfAppChange()}onApplicationDeinit(e){Object(c.removeFromArray)(this.applications,e),this.activeApplication===e&&(this.activeApplication=void 0),0===this.applications.length?this.createDefaultApplication():this.notifyObserversOfAppChange()}createNewApplication(){const e=this.$rootScope.$new(!0),t=new s.a(this.$compile,this.$timeout,e,this.onApplicationDeinit),n=new k.a(this.$rootScope,this.$timeout,t),r=new f(t),i=new p(this.$rootScope,this.$timeout,t),a=new m,o=new b.a(t),c=new w(t),u=new B(t),l=new _,A=new S(t);return t.setWebServices({appState:n,archiveService:r,desktopService:i,keyboardService:a,lockService:o,nativeExtService:c,prefsService:u,statusService:l,themeService:A}),t}get application(){return this.activeApplication}getApplications(){return this.applications.slice()}addApplicationChangeObserver(e){return this.changeObservers.push(e),this.application&&e(),()=>{Object(c.removeFromArray)(this.changeObservers,e)}}notifyObserversOfAppChange(){for(const e of this.changeObservers)e()}}function P(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}D.$inject=["$compile","$rootScope","$timeout"];class M{constructor(e,t={}){this.props=t,P(this,"$timeout",void 0),P(this,"application",void 0),P(this,"state",{}),P(this,"unsubApp",void 0),P(this,"unsubState",void 0),P(this,"stateTimeout",void 0),this.$timeout=e}$onInit(){this.state={...this.getInitialState(),...this.state},this.addAppEventObserver(),this.addAppStateObserver()}deinit(){this.unsubApp(),this.unsubState(),this.unsubApp=void 0,this.unsubState=void 0,this.stateTimeout&&this.$timeout.cancel(this.stateTimeout)}$onDestroy(){this.deinit()}get appState(){return this.application.getAppState()}async resetState(){this.state=this.getInitialState(),await this.setState(this.state)}getInitialState(){return{}}async setState(e){if(this.$timeout)return this.state=Object.freeze(Object.assign({},this.state,e)),new Promise(e=>{this.stateTimeout=this.$timeout(e)})}async updateUI(e){this.$timeout(e)}initProps(e){if(Object.keys(this.props).length>0)throw"Already init-ed props.";this.props=Object.freeze(Object.assign({},this.props,e))}addAppStateObserver(){this.unsubState=this.application.getAppState().addObserver(async(e,t)=>{this.onAppStateEvent(e,t)})}onAppStateEvent(e,t){}addAppEventObserver(){this.application.isStarted()&&this.onAppStart(),this.application.isLaunched()&&this.onAppLaunch(),this.unsubApp=this.application.addEventObserver(async e=>{this.onAppEvent(e),e===c.ApplicationEvent.Started?await this.onAppStart():e===c.ApplicationEvent.Launched?await this.onAppLaunch():e===c.ApplicationEvent.CompletedIncrementalSync?this.onAppIncrementalSync():e===c.ApplicationEvent.CompletedFullSync?this.onAppFullSync():e===c.ApplicationEvent.KeyStatusChanged&&this.onAppKeyChange()})}onAppEvent(e){}async onAppStart(){await this.resetState()}async onAppLaunch(){}async onAppKeyChange(){}onAppIncrementalSync(){}onAppFullSync(){}}function F(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}M.$inject=["$timeout","props"];class O{constructor(){F(this,"controller",void 0),F(this,"controllerAs",void 0),F(this,"bindToController",void 0),F(this,"restrict",void 0),F(this,"replace",void 0),F(this,"scope",void 0),F(this,"template",void 0),F(this,"transclude",void 0)}}let R;!function(e){e[e.ChangePassword=1]="ChangePassword",e[e.AccountUpgrade=2]="AccountUpgrade"}(R||(R={}));var T=n(55),j=n.n(T);function H(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class U{constructor(e,t){H(this,"$timeout",void 0),H(this,"applicationGroup",void 0),H(this,"applications",[]),this.$timeout=e,this.applicationGroup=t,this.applicationGroup.addApplicationChangeObserver(()=>{this.reload()})}reload(){this.$timeout(()=>{this.applications=this.applicationGroup.getApplications()})}}U.$inject=["$timeout","mainApplicationGroup"];class N extends O{constructor(){super(),this.template=j.a,this.controller=U,this.replace=!0,this.controllerAs="self",this.bindToController=!0}}var L=n(56),K=n.n(L);function G(e){return`Are you sure you want to permanently delete ${e} note(s)?`}const $="Are you sure you want to end your session? This will delete all local items and extensions.";function Y(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class J extends M{constructor(e,t,n,r){super(r),Y(this,"$compile",void 0),Y(this,"$location",void 0),Y(this,"$rootScope",void 0),Y(this,"platformString",void 0),Y(this,"completedInitialSync",!1),Y(this,"syncStatus",void 0),Y(this,"notesCollapsed",!1),Y(this,"tagsCollapsed",!1),Y(this,"showingDownloadStatus",!1),Y(this,"uploadSyncStatus",void 0),Y(this,"lastAlertShownTimeStamp",0),Y(this,"showingInvalidSessionAlert",!1),this.$location=t,this.$rootScope=n,this.$compile=e,this.platformString=Object(a.c)(),this.state={appClass:""},this.onDragDrop=this.onDragDrop.bind(this),this.onDragOver=this.onDragOver.bind(this),this.openModalComponent=this.openModalComponent.bind(this),this.presentPermissionsDialog=this.presentPermissionsDialog.bind(this),this.addDragDropHandlers()}deinit(){this.$location=void 0,this.$rootScope=void 0,this.$compile=void 0,this.application=void 0,window.removeEventListener("dragover",this.onDragOver,!0),window.removeEventListener("drop",this.onDragDrop,!0),this.onDragDrop=void 0,this.onDragOver=void 0,this.openModalComponent=void 0,this.presentPermissionsDialog=void 0,super.deinit()}$onInit(){super.$onInit(),this.loadApplication()}async loadApplication(){await this.application.prepareForLaunch({receiveChallenge:async e=>{this.application.promptForChallenge(e)}}),await this.application.launch()}async onAppStart(){super.onAppStart(),this.overrideComponentManagerFunctions(),this.application.componentManager.setDesktopManager(this.application.getDesktopService()),this.setState({ready:!0,needsUnlock:this.application.hasPasscode()})}async onAppLaunch(){super.onAppLaunch(),this.setState({needsUnlock:!1}),this.handleAutoSignInFromParams()}onUpdateAvailable(){this.$rootScope.$broadcast("new-update-available")}async onAppEvent(e){super.onAppEvent(e),e===c.ApplicationEvent.LocalDataIncrementalLoad?this.updateLocalDataStatus():e===c.ApplicationEvent.SyncStatusChanged||e===c.ApplicationEvent.FailedSync?this.updateSyncStatus():e===c.ApplicationEvent.LocalDataLoaded?this.updateLocalDataStatus():e===c.ApplicationEvent.WillSync?this.completedInitialSync||(this.syncStatus=this.application.getStatusService().replaceStatusWithString(this.syncStatus,"Syncing...")):e===c.ApplicationEvent.CompletedFullSync?this.completedInitialSync||(this.syncStatus=this.application.getStatusService().removeStatus(this.syncStatus),this.completedInitialSync=!0):e===c.ApplicationEvent.InvalidSyncSession?this.showInvalidSessionAlert():e===c.ApplicationEvent.LocalDatabaseReadError?this.application.alertService.alert("Unable to load local database. Please restart the app and try again."):e===c.ApplicationEvent.LocalDatabaseWriteError&&this.application.alertService.alert("Unable to write to local database. Please restart the app and try again.")}async onAppStateEvent(e,t){if(e===k.b.PanelResized){"notes"===t.panel&&(this.notesCollapsed=t.collapsed),"tags"===t.panel&&(this.tagsCollapsed=t.collapsed);let e="";this.notesCollapsed&&(e+="collapsed-notes"),this.tagsCollapsed&&(e+=" collapsed-tags"),this.setState({appClass:e})}else e===k.b.WindowDidFocus&&(await this.application.isLocked()||this.application.sync())}updateLocalDataStatus(){const e=this.application.getSyncStatus().getStats(),t=this.application.isEncryptionAvailable();if(e.localDataDone)return void(this.syncStatus=this.application.getStatusService().removeStatus(this.syncStatus));const n=`${e.localDataCurrent}/${e.localDataTotal} items...`,r=t?`Decrypting ${n}`:`Loading ${n}`;this.syncStatus=this.application.getStatusService().replaceStatusWithString(this.syncStatus,r)}updateSyncStatus(){const e=this.application.getSyncStatus(),t=e.getStats();if(e.hasError())this.syncStatus=this.application.getStatusService().replaceStatusWithString(this.syncStatus,"Unable to Sync");else if(t.downloadCount>20){const e=`Downloading ${t.downloadCount} items. Keep app open.`;this.syncStatus=this.application.getStatusService().replaceStatusWithString(this.syncStatus,e),this.showingDownloadStatus=!0}else if(this.showingDownloadStatus){this.showingDownloadStatus=!1;const e="Download Complete.";this.syncStatus=this.application.getStatusService().replaceStatusWithString(this.syncStatus,e),setTimeout(()=>{this.syncStatus=this.application.getStatusService().removeStatus(this.syncStatus)},2e3)}else t.uploadTotalCount>20?this.uploadSyncStatus=this.application.getStatusService().replaceStatusWithString(this.uploadSyncStatus,`Syncing ${t.uploadCompletionCount}/${t.uploadTotalCount} items...`):(this.syncStatus&&(this.syncStatus=this.application.getStatusService().removeStatus(this.syncStatus)),this.uploadSyncStatus&&(this.uploadSyncStatus=this.application.getStatusService().removeStatus(this.uploadSyncStatus)))}openModalComponent(e){const t=this.$rootScope.$new(!0);t.componentUuid=e.uuid,t.application=this.application;const n=this.$compile("<component-modal application='application' component-uuid='componentUuid' class='sk-modal'></component-modal>")(t);i.a.element(document.body).append(n)}presentPermissionsDialog(e){const t=this.$rootScope.$new(!0);t.permissionsString=e.permissionsString,t.component=e.component,t.callback=e.callback;const n=this.$compile("<permissions-modal component='component' permissions-string='permissionsString' callback='callback' class='sk-modal'></permissions-modal>")(t);i.a.element(document.body).append(n)}overrideComponentManagerFunctions(){this.application.componentManager.openModalComponent=this.openModalComponent,this.application.componentManager.presentPermissionsDialog=this.presentPermissionsDialog}showInvalidSessionAlert(){!this.showingInvalidSessionAlert&&Date.now()-this.lastAlertShownTimeStamp>3e4&&(this.lastAlertShownTimeStamp=Date.now(),this.showingInvalidSessionAlert=!0,setTimeout(async()=>{await Object(u.b)({text:"Your session has expired. New changes will not be pulled in. Please sign out and sign back in to refresh your session."}),this.showingInvalidSessionAlert=!1},500))}addDragDropHandlers(){window.addEventListener("dragover",this.onDragOver,!0),window.addEventListener("drop",this.onDragDrop,!0)}onDragOver(e){e.dataTransfer.files.length>0&&e.preventDefault()}onDragDrop(e){e.dataTransfer.files.length>0&&(e.preventDefault(),this.application.alertService.alert("Please use FileSafe or the Bold Editor to attach images and files. Learn more at standardnotes.org/filesafe."))}async handleAutoSignInFromParams(){const e=this.$location.search(),t=e.server,n=e.email,r=e.pw;if(!t||!n||!r)return;const i=this.application.getUser();if(i){if(i.email===n&&await this.application.getHost()===t)return;await this.application.signOut()}await this.application.setHost(t),this.application.signIn(n,r)}}J.$inject=["$compile","$location","$rootScope","$timeout"];class V extends O{constructor(){super(),this.template=K.a,this.controller=J,this.replace=!0,this.controllerAs="self",this.bindToController=!0,this.scope={application:"="}}}var z=n(57),q=n.n(z);function W(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class X{constructor(){W(this,"application",void 0),W(this,"editors",[])}$onInit(){this.application.editorGroup.addChangeObserver(()=>{this.editors=this.application.editorGroup.editors})}}X.$inject=[];class Z extends O{constructor(){super(),this.template=q.a,this.controller=X,this.replace=!0,this.controllerAs="self",this.bindToController=!0,this.scope={application:"="}}}var ee=n(58),te=n.n(ee),ne=n(59),re=n.n(ne);function ie(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const ae="note-text-editor",oe="note-title-editor",se="editor-content",ce="note-tags-component-container",ue={DesktopMonospaceFamily:"Menlo,Consolas,'DejaVu Sans Mono',monospace",WebMonospaceFamily:"monospace",SansSerifFamily:"inherit"};class le extends M{constructor(e){super(e),ie(this,"application",void 0),ie(this,"editor",void 0),ie(this,"leftPanelPuppet",void 0),ie(this,"rightPanelPuppet",void 0),ie(this,"unregisterComponent",void 0),ie(this,"saveTimeout",void 0),ie(this,"statusTimeout",void 0),ie(this,"lastEditorFocusEventSource",void 0),ie(this,"editorValues",{}),ie(this,"onEditorLoad",void 0),ie(this,"removeAltKeyObserver",void 0),ie(this,"removeTrashKeyObserver",void 0),ie(this,"removeDeleteKeyObserver",void 0),ie(this,"removeTabObserver",void 0),ie(this,"removeTagsObserver",void 0),ie(this,"removeComponentsObserver",void 0),ie(this,"prefKeyMonospace",void 0),ie(this,"prefKeySpellcheck",void 0),ie(this,"prefKeyMarginResizers",void 0),this.leftPanelPuppet={onReady:()=>this.reloadPreferences()},this.rightPanelPuppet={onReady:()=>this.reloadPreferences()},this.prefKeyMonospace=c.WebPrefKey.EditorMonospaceEnabled,this.prefKeySpellcheck=c.WebPrefKey.EditorSpellcheck,this.prefKeyMarginResizers=c.WebPrefKey.EditorResizersEnabled,this.editorMenuOnSelect=this.editorMenuOnSelect.bind(this),this.onPanelResizeFinish=this.onPanelResizeFinish.bind(this),this.onEditorLoad=()=>{this.application.getDesktopService().redoSearch()}}deinit(){this.editor.clearNoteChangeListener(),this.removeTagsObserver(),this.removeComponentsObserver(),this.removeTagsObserver=void 0,this.removeComponentsObserver=void 0,this.removeAltKeyObserver(),this.removeAltKeyObserver=void 0,this.removeTrashKeyObserver(),this.removeTrashKeyObserver=void 0,this.removeDeleteKeyObserver(),this.removeDeleteKeyObserver=void 0,this.removeTabObserver&&this.removeTabObserver(),this.removeTabObserver=void 0,this.leftPanelPuppet=void 0,this.rightPanelPuppet=void 0,this.onEditorLoad=void 0,this.unregisterComponent(),this.unregisterComponent=void 0,this.saveTimeout=void 0,this.statusTimeout=void 0,this.onPanelResizeFinish=void 0,this.editorMenuOnSelect=void 0,super.deinit()}getState(){return this.state}get note(){return this.editor.note}$onInit(){super.$onInit(),this.registerKeyboardShortcuts(),this.editor.onNoteChange(()=>{this.handleEditorNoteChange()}),this.editor.onNoteValueChange((e,t)=>{Object(c.isPayloadSourceRetrieved)(t)&&(this.editorValues.title=e.title,this.editorValues.text=e.text,this.reloadTagsString()),this.editorValues.title||(this.editorValues.title=e.title),this.editorValues.text||(this.editorValues.text=e.text),e.lastSyncBegan&&e.lastSyncEnd&&(e.lastSyncBegan.getTime()>e.lastSyncEnd.getTime()?this.showSavingStatus():e.lastSyncEnd.getTime()>e.lastSyncBegan.getTime()&&this.showAllChangesSavedStatus())})}getInitialState(){return{stackComponents:[],editorDebounce:100,isDesktop:Object(a.d)(),spellcheck:!0,syncTakingTooLong:!1,showExtensions:!1,showOptionsMenu:!1,showEditorMenu:!1,showSessionHistory:!1,altKeyDown:!1,noteStatus:void 0,editorUnloading:!1,textareaUnloading:!1,mutable:{tagsString:""}}}async onAppLaunch(){await super.onAppLaunch(),this.streamItems(),this.registerComponentHandler()}onAppStateEvent(e,t){e===k.b.PreferencesChanged&&this.reloadPreferences()}onAppEvent(e){if(e===c.ApplicationEvent.HighLatencySync)this.setState({syncTakingTooLong:!0});else if(e===c.ApplicationEvent.CompletedFullSync){this.setState({syncTakingTooLong:!1});const e=this.state.saveError;!this.note.dirty&&e&&this.showAllChangesSavedStatus()}else e===c.ApplicationEvent.FailedSync?this.note.dirty&&this.showErrorStatus():e===c.ApplicationEvent.LocalDatabaseWriteError&&this.showErrorStatus({message:"Offline Saving Issue",desc:"Changes not saved"})}async handleEditorNoteChange(){this.cancelPendingSetStatus(),await this.setState({showExtensions:!1,showOptionsMenu:!1,showEditorMenu:!1,showSessionHistory:!1,altKeyDown:!1,noteStatus:void 0});const e=this.editor.note;this.editorValues.title=e.title,this.editorValues.text=e.text,this.reloadEditor(),this.reloadTagsString(),this.reloadPreferences(),this.reloadStackComponents(),0===e.safeText().length&&this.focusTitle()}get noteLocked(){return!(!this.note||this.note.deleted)&&this.note.locked}streamItems(){this.removeTagsObserver=this.application.streamItems(c.ContentType.Tag,e=>{if(this.note)for(const t of e)if(!this.editorValues.tagsInputValue||t.deleted||t.hasRelationshipWithItem(this.note)){this.reloadTagsString();break}}),this.removeComponentsObserver=this.application.streamItems(c.ContentType.Component,async e=>{this.note&&(this.reloadStackComponents(),this.reloadNoteTagsComponent(),this.reloadEditor())})}async reloadEditor(){const e=this.application.componentManager.editorForNote(this.note),t=this.state.editorComponent;if((null==t?void 0:t.uuid)!==(null==e?void 0:e.uuid)){var n;if(await this.setState({editorComponent:e,editorUnloading:!0}),e&&!e.active)await(null===(n=this.application.componentManager)||void 0===n?void 0:n.activateComponent(e.uuid));await this.setState({editorUnloading:!1}),this.reloadFont(),this.application.componentManager.contextItemDidChangeInArea(c.ComponentArea.Editor)}}setMenuState(e,t){this.setState({[e]:t}),this.closeAllMenus(e)}toggleMenu(e){this.setMenuState(e,!this.state[e])}closeAllMenus(e){const t=["showOptionsMenu","showEditorMenu","showExtensions","showSessionHistory"],n={};for(const r of t)r!==e&&(n[r]=!1);this.setState(n)}async editorMenuOnSelect(e){var t;if(this.setMenuState("showEditorMenu",!1),e)if(e.area===c.ComponentArea.Editor){const t=this.state.editorComponent;t&&e!==t&&await this.disassociateComponentWithCurrentNote(t),this.note.prefersPlainEditor&&await this.application.changeItem(this.note.uuid,e=>{e.prefersPlainEditor=!1}),await this.associateComponentWithCurrentNote(e)}else e.area===c.ComponentArea.EditorStack&&await this.toggleStackComponentForCurrentItem(e);else this.note.prefersPlainEditor||await this.application.changeItem(this.note.uuid,e=>{e.prefersPlainEditor=!0}),(null===(t=this.state.editorComponent)||void 0===t?void 0:t.isExplicitlyEnabledForItem(this.note.uuid))&&await this.disassociateComponentWithCurrentNote(this.state.editorComponent),this.reloadFont();this.application.sync()}hasAvailableExtensions(){return this.application.actionsManager.extensionsInContextOfItem(this.note).length>0}performFirefoxPinnedTabFix(){document.hidden&&window.location.reload()}async saveNote(e=!1,t=!1,n=!1,r,i=!1){this.performFirefoxPinnedTabFix();const a=this.note;if(a.deleted)return void this.application.alertService.alert("The note you are attempting to edit has been deleted, and is awaiting sync. Changes you make will be disregarded.");var o;this.editor.isTemplateNote&&(await this.editor.insertTemplatedNote(),!1===(null===(o=this.appState.selectedTag)||void 0===o?void 0:o.isSmartTag())&&await this.application.changeItem(this.appState.selectedTag.uuid,e=>{e.addItemAsRelationship(a)}));if(!this.application.findItem(a.uuid))return void this.application.alertService.alert("The note you are attempting to save can not be found or has been deleted. Changes you make will not be synced. Please copy this note's text and start a new note.");await this.application.changeItem(a.uuid,e=>{const t=e;if(r&&r(t),t.title=this.editorValues.title,t.text=this.editorValues.text,!n){const e=this.editorValues.text||"",n=e.length>80,r=e.substring(0,80)+(n?"...":"");t.preview_plain=r,t.preview_html=void 0}},t),this.saveTimeout&&this.$timeout.cancel(this.saveTimeout);const s=e||this.application.noAccount()?100:350;this.saveTimeout=this.$timeout(()=>{this.application.sync(),i&&this.appState.closeEditor(this.editor)},s)}showSavingStatus(){this.setStatus({message:"Saving…"},!1)}showAllChangesSavedStatus(){this.setState({saveError:!1,syncTakingTooLong:!1}),this.setStatus({message:"All changes saved"})}showErrorStatus(e){e||(e={message:"Sync Unreachable",desc:"Changes saved offline"}),this.setState({saveError:!0,syncTakingTooLong:!1}),this.setStatus(e)}setStatus(e,t=!0){this.statusTimeout&&this.$timeout.cancel(this.statusTimeout),t?this.statusTimeout=this.$timeout(()=>{this.setState({noteStatus:e})},400):this.setState({noteStatus:e})}cancelPendingSetStatus(){this.statusTimeout&&this.$timeout.cancel(this.statusTimeout)}contentChanged(){this.saveNote(!1,!0)}onTitleEnter(e){e.target.blur(),this.onTitleChange(),this.focusEditor()}onTitleChange(){this.saveNote(!1,!0,!0)}focusEditor(){const e=document.getElementById(ae);e&&(this.lastEditorFocusEventSource=k.c.Script,e.focus())}focusTitle(){document.getElementById(oe).focus()}clickedTextArea(){this.setMenuState("showOptionsMenu",!1)}onTitleFocus(){}onTitleBlur(){}onContentFocus(){this.application.getAppState().editorDidFocus(this.lastEditorFocusEventSource),this.lastEditorFocusEventSource=void 0}selectedMenuItem(e){e&&this.setMenuState("showOptionsMenu",!1)}async deleteNote(e){if(this.editor.isTemplateNote)return void this.application.alertService.alert("This note is a placeholder and cannot be deleted. To remove from your list, simply navigate to a different note.");const t=async()=>{if(this.note.locked)return void this.application.alertService.alert("This note is locked. If you'd like to delete it, unlock it, and try again.");const t=function(e,t){return t?`Are you sure you want to permanently delete ${e}?`:`Are you sure you want to move ${e} to the trash?`}(this.note.safeTitle().length?`'${this.note.title}'`:"this note",e);await Object(u.c)({text:t,confirmButtonStyle:"danger"})&&(e?this.performNoteDeletion(this.note):this.saveNote(!0,!1,!0,e=>{e.trashed=!0}))};await this.application.privilegesService.actionRequiresPrivilege(c.ProtectedAction.DeleteNote)?this.application.presentPrivilegesModal(c.ProtectedAction.DeleteNote,()=>{t()}):t()}performNoteDeletion(e){this.application.deleteItem(e)}restoreTrashedNote(){this.saveNote(!0,!1,!0,e=>{e.trashed=!1},!0)}deleteNotePermanantely(){this.deleteNote(!0)}getTrashCount(){return this.application.getTrashedItems().length}async emptyTrash(){const e=this.getTrashCount();await Object(u.c)({text:G(e),confirmButtonStyle:"danger"})&&(this.application.emptyTrash(),this.application.sync())}togglePin(){this.saveNote(!0,!1,!0,e=>{e.pinned=!this.note.pinned})}toggleLockNote(){this.saveNote(!0,!1,!0,e=>{e.locked=!this.note.locked})}toggleProtectNote(){this.saveNote(!0,!1,!0,e=>{e.protected=!this.note.protected}),this.application.privilegesService.actionHasPrivilegesConfigured(c.ProtectedAction.ViewProtectedNotes).then(e=>{e||this.application.presentPrivilegesManagementModal()})}toggleNotePreview(){this.saveNote(!0,!1,!0,e=>{e.hidePreview=!this.note.hidePreview})}toggleArchiveNote(){var e;this.saveNote(!0,!1,!0,e=>{e.archived=!this.note.archived},this.note.archived&&(null===(e=this.appState.selectedTag)||void 0===e?void 0:e.isArchiveTag))}reloadTagsString(){const e=this.appState.getNoteTags(this.note),t=c.SNTag.arrayToDisplayString(e);this.updateUI(()=>{this.editorValues.tagsInputValue=t})}addTag(e){const t=this.appState.getNoteTags(this.note).map(e=>e.title);t.push(e.title),this.saveTagsFromStrings(t)}removeTag(e){const t=this.appState.getNoteTags(this.note).map(e=>e.title).filter(t=>t!==e.title);this.saveTagsFromStrings(t)}onTagsInputBlur(){this.saveTagsFromStrings(),this.focusEditor()}async saveTagsFromStrings(e){if(!e&&this.editorValues.tagsInputValue===this.state.tagsAsStrings)return;e||(e=this.editorValues.tagsInputValue.split("#").filter(e=>e.length>0).map(e=>e.trim()));const t=this.note,n=this.appState.getNoteTags(t),r=[];for(const t of n)-1===e.indexOf(t.title)&&r.push(t);for(const e of r)await this.application.changeItem(e.uuid,e=>{e.removeItemAsRelationship(t)});const i=[];for(const t of e){te()(n,{title:t})||i.push(await this.application.findOrCreateTag(t))}i.length>0&&await this.application.changeItems(Object(c.Uuids)(i),e=>{e.addItemAsRelationship(t)}),this.application.sync(),this.reloadTagsString()}async onPanelResizeFinish(e,t,n){n?await this.application.getPrefsService().setUserPrefValue(c.WebPrefKey.EditorWidth,null):null!=e&&(await this.application.getPrefsService().setUserPrefValue(c.WebPrefKey.EditorWidth,e),this.leftPanelPuppet.setWidth(e)),null!=t&&(await this.application.getPrefsService().setUserPrefValue(c.WebPrefKey.EditorLeft,t),this.rightPanelPuppet.setLeft(t)),this.application.getPrefsService().syncUserPreferences()}async reloadPreferences(){const e=this.application.getPrefsService().getValue(c.WebPrefKey.EditorMonospaceEnabled,!0),t=this.application.getPrefsService().getValue(c.WebPrefKey.EditorSpellcheck,!0),n=this.application.getPrefsService().getValue(c.WebPrefKey.EditorResizersEnabled,!0);if(await this.setState({monospaceFont:e,spellcheck:t,marginResizersEnabled:n}),document.getElementById(se)&&(this.reloadFont(),this.state.marginResizersEnabled&&this.leftPanelPuppet.ready&&this.rightPanelPuppet.ready)){const e=this.application.getPrefsService().getValue(c.WebPrefKey.EditorWidth,null);null!=e&&(this.leftPanelPuppet.setWidth(e),this.rightPanelPuppet.setWidth(e));const t=this.application.getPrefsService().getValue(c.WebPrefKey.EditorLeft,null);null!=t&&(this.leftPanelPuppet.setLeft(t),this.rightPanelPuppet.setLeft(t))}}reloadFont(){const e=document.getElementById(ae);e&&(this.state.monospaceFont?this.state.isDesktop?e.style.fontFamily=ue.DesktopMonospaceFamily:e.style.fontFamily=ue.WebMonospaceFamily:e.style.fontFamily=ue.SansSerifFamily)}async toggleWebPrefKey(e){const t=this.state[e];await this.application.getPrefsService().setUserPrefValue(e,!t,!0),await this.setState({[e]:!t}),this.reloadFont(),e===c.WebPrefKey.EditorSpellcheck?(await this.setState({textareaUnloading:!0}),await this.setState({textareaUnloading:!1}),this.reloadFont()):e===c.WebPrefKey.EditorResizersEnabled&&!0===this.state[e]&&this.$timeout(()=>{this.leftPanelPuppet.flash(),this.rightPanelPuppet.flash()})}registerComponentHandler(){this.unregisterComponent=this.application.componentManager.registerHandler({identifier:"editor",areas:[c.ComponentArea.NoteTags,c.ComponentArea.EditorStack,c.ComponentArea.Editor],contextRequestHandler:e=>{var t;const n=this.state.editorComponent;if(e===(null==n?void 0:n.uuid)||e===(null===(t=this.state.tagsComponent)||void 0===t?void 0:t.uuid)||Object(c.Uuids)(this.state.stackComponents).includes(e))return this.note},focusHandler:(e,t)=>{e.isEditor()&&t&&this.closeAllMenus()},actionHandler:(e,t,n)=>{if(t===c.ComponentAction.SetSize){const t=(e,t)=>{const r="string"==typeof t.width?t.width:`${n.width}px`,i="string"==typeof t.height?t.height:`${n.height}px`;e.setAttribute("style",`width: ${r}; height: ${i};`)};if("container"===n.type&&e.area===c.ComponentArea.NoteTags){t(document.getElementById(ce),n)}}else if(t===c.ComponentAction.AssociateItem){if(n.item.content_type===c.ContentType.Tag){const e=this.application.findItem(n.item.uuid);this.addTag(e)}}else if(t===c.ComponentAction.DeassociateItem){const e=this.application.findItem(n.item.uuid);this.removeTag(e)}}})}reloadNoteTagsComponent(){var e;const[t]=this.application.componentManager.componentsForArea(c.ComponentArea.NoteTags);(null==t?void 0:t.uuid)!==(null===(e=this.state.tagsComponent)||void 0===e?void 0:e.uuid)&&this.setState({tagsComponent:(null==t?void 0:t.active)?t:void 0}),this.application.componentManager.contextItemDidChangeInArea(c.ComponentArea.NoteTags)}reloadStackComponents(){var e;if(this.setState({stackComponents:(e=this.application.componentManager.componentsForArea(c.ComponentArea.EditorStack).filter(e=>e.active),e.sort((e,t)=>e.name.toLowerCase()<t.name.toLowerCase()?-1:1))}),this.note)for(const e of this.state.stackComponents)e.active&&this.application.componentManager.setComponentHidden(e,!e.isExplicitlyEnabledForItem(this.note.uuid));this.application.componentManager.contextItemDidChangeInArea(c.ComponentArea.EditorStack)}stackComponentHidden(e){var t;return null===(t=this.application.componentManager)||void 0===t?void 0:t.isComponentHidden(e)}async toggleStackComponentForCurrentItem(e){this.application.componentManager.isComponentHidden(e)||!e.active?(this.application.componentManager.setComponentHidden(e,!1),await this.associateComponentWithCurrentNote(e),this.application.componentManager.contextItemDidChangeInArea(c.ComponentArea.EditorStack)):(this.application.componentManager.setComponentHidden(e,!0),await this.disassociateComponentWithCurrentNote(e)),this.application.sync()}async disassociateComponentWithCurrentNote(e){const t=this.note;return this.application.changeItem(e.uuid,e=>{const n=e;n.removeAssociatedItemId(t.uuid),n.disassociateWithItem(t.uuid)})}async associateComponentWithCurrentNote(e){const t=this.note;return this.application.changeItem(e.uuid,e=>{const n=e;n.removeDisassociatedItemId(t.uuid),n.associateWithItem(t.uuid)})}registerKeyboardShortcuts(){this.removeAltKeyObserver=this.application.getKeyboardService().addKeyObserver({modifiers:[y.Alt],onKeyDown:()=>{this.setState({altKeyDown:!0})},onKeyUp:()=>{this.setState({altKeyDown:!1})}}),this.removeTrashKeyObserver=this.application.getKeyboardService().addKeyObserver({key:g.Backspace,notElementIds:[ae,oe],modifiers:[y.Meta],onKeyDown:()=>{this.deleteNote(!1)}}),this.removeDeleteKeyObserver=this.application.getKeyboardService().addKeyObserver({key:g.Backspace,modifiers:[y.Meta,y.Shift,y.Alt],onKeyDown:e=>{e.preventDefault(),this.deleteNote(!0)}})}onSystemEditorLoad(){if(this.removeTabObserver)return;const e=document.getElementById(ae);this.removeTabObserver=this.application.getKeyboardService().addKeyObserver({element:e,key:g.Tab,onKeyDown:t=>{if(this.note.locked||t.shiftKey)return;if(t.preventDefault(),!document.execCommand("insertText",!1,"\t")){const t=e.selectionStart,n=e.selectionEnd,r=" ";e.value=e.value.substring(0,t)+r+e.value.substring(n),e.selectionStart=e.selectionEnd=t+4}this.editorValues.text=e.value,this.saveNote(!0)}}),i.a.element(e).one("$destroy",()=>{this.removeTabObserver(),this.removeTabObserver=void 0})}}le.$inject=["$timeout"];class Ae extends O{constructor(){super(),this.restrict="E",this.scope={editor:"=",application:"="},this.template=re.a,this.replace=!0,this.controller=le,this.controllerAs="self",this.bindToController=!0}}var fe=n(60),he=n.n(fe);function pe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class de extends M{constructor(e,t){super(t),pe(this,"$rootScope",void 0),pe(this,"rooms",[]),pe(this,"themesWithIcons",[]),pe(this,"showSyncResolution",!1),pe(this,"unregisterComponent",void 0),pe(this,"rootScopeListener1",void 0),pe(this,"rootScopeListener2",void 0),pe(this,"arbitraryStatusMessage",void 0),pe(this,"user",void 0),pe(this,"backupStatus",void 0),pe(this,"offline",!0),pe(this,"showAccountMenu",!1),pe(this,"didCheckForOffline",!1),pe(this,"queueExtReload",!1),pe(this,"reloadInProgress",!1),pe(this,"hasError",!1),pe(this,"isRefreshing",!1),pe(this,"lastSyncDate",void 0),pe(this,"newUpdateAvailable",!1),pe(this,"dockShortcuts",[]),pe(this,"roomShowState",{}),pe(this,"observerRemovers",[]),this.$rootScope=e,this.addRootScopeListeners(),this.toggleSyncResolutionMenu=this.toggleSyncResolutionMenu.bind(this),this.closeAccountMenu=this.closeAccountMenu.bind(this)}deinit(){for(const e of this.observerRemovers)e();this.observerRemovers.length=0,this.rooms.length=0,this.themesWithIcons.length=0,this.unregisterComponent(),this.unregisterComponent=void 0,this.rootScopeListener1(),this.rootScopeListener2(),this.rootScopeListener1=void 0,this.rootScopeListener2=void 0,this.closeAccountMenu=void 0,this.toggleSyncResolutionMenu=void 0,super.deinit()}$onInit(){super.$onInit(),this.application.getStatusService().addStatusObserver(e=>{this.$timeout(()=>{this.arbitraryStatusMessage=e})})}getInitialState(){return{hasPasscode:!1}}reloadUpgradeStatus(){this.application.checkForSecurityUpdate().then(e=>{this.setState({dataUpgradeAvailable:e})})}async onAppLaunch(){super.onAppLaunch(),this.reloadPasscodeStatus(),this.reloadUser(),this.reloadUpgradeStatus(),this.updateOfflineStatus(),this.findErrors(),this.streamItems(),this.registerComponentHandler()}reloadUser(){this.user=this.application.getUser()}async reloadPasscodeStatus(){const e=this.application.hasPasscode();this.setState({hasPasscode:e})}addRootScopeListeners(){this.rootScopeListener1=this.$rootScope.$on("reload-ext-data",()=>{this.reloadExtendedData()}),this.rootScopeListener2=this.$rootScope.$on("new-update-available",()=>{this.$timeout(()=>{this.onNewUpdateAvailable()})})}onAppStateEvent(e,t){e===k.b.EditorFocused?t.eventSource===k.c.UserInteraction&&(this.closeAllRooms(),this.closeAccountMenu()):e===k.b.BeganBackupDownload?this.backupStatus=this.application.getStatusService().addStatusFromString("Saving local backup..."):e===k.b.EndedBackupDownload&&(t.success?this.backupStatus=this.application.getStatusService().replaceStatusWithString(this.backupStatus,"Successfully saved backup."):this.backupStatus=this.application.getStatusService().replaceStatusWithString(this.backupStatus,"Unable to save local backup."),this.$timeout(()=>{this.backupStatus=this.application.getStatusService().removeStatus(this.backupStatus)},2e3))}async onAppKeyChange(){super.onAppKeyChange(),this.reloadPasscodeStatus()}onAppEvent(e){e===c.ApplicationEvent.KeyStatusChanged?this.reloadUpgradeStatus():e===c.ApplicationEvent.EnteredOutOfSync?this.setState({outOfSync:!0}):e===c.ApplicationEvent.ExitedOutOfSync?this.setState({outOfSync:!1}):e===c.ApplicationEvent.CompletedFullSync?(this.didCheckForOffline||(this.didCheckForOffline=!0,this.offline&&0===this.application.getNoteCount()&&(this.showAccountMenu=!0)),this.syncUpdated(),this.findErrors(),this.updateOfflineStatus()):e===c.ApplicationEvent.FailedSync?(this.findErrors(),this.updateOfflineStatus()):e!==c.ApplicationEvent.SignedIn&&e!==c.ApplicationEvent.SignedOut||this.reloadUser()}streamItems(){this.application.setDisplayOptions(c.ContentType.Theme,c.CollectionSort.Title,"asc",e=>e.package_info&&e.package_info.dock_icon),this.observerRemovers.push(this.application.streamItems(c.ContentType.Component,async()=>{const e=this.application.getItems(c.ContentType.Component);this.rooms=e.filter(e=>e.area===c.ComponentArea.Rooms&&!e.deleted),this.queueExtReload&&(this.queueExtReload=!1,this.reloadExtendedData())})),this.observerRemovers.push(this.application.streamItems(c.ContentType.Theme,async()=>{const e=this.application.getDisplayableItems(c.ContentType.Theme);this.themesWithIcons=e,this.reloadDockShortcuts()}))}registerComponentHandler(){this.unregisterComponent=this.application.componentManager.registerHandler({identifier:"room-bar",areas:[c.ComponentArea.Rooms,c.ComponentArea.Modal],actionHandler:(e,t,n)=>{t===c.ComponentAction.SetSize&&(Object(c.topLevelCompare)(e.getLastSize(),n)||this.application.changeItem(e.uuid,e=>{e.setLastSize(n)}))},focusHandler:(e,t)=>{e.isEditor()&&t&&(this.closeAllRooms(),this.closeAccountMenu())}})}reloadExtendedData(){if(this.reloadInProgress)return;this.reloadInProgress=!0;const e=this.rooms.find(e=>e.package_info.identifier===this.application.getNativeExtService().extManagerId);if(!e)return this.queueExtReload=!0,void(this.reloadInProgress=!1);this.selectRoom(e),this.$timeout(()=>{this.selectRoom(e),this.reloadInProgress=!1,this.$rootScope.$broadcast("ext-reload-complete")},2e3)}updateOfflineStatus(){this.offline=this.application.noAccount()}async openSecurityUpdate(){const e=window.onbeforeunload;try{window.onbeforeunload=()=>"The encryption upgrade is in progress. You may lose data if you quit the app. Are you sure you want to quit?",await this.application.performProtocolUpgrade()}finally{window.onbeforeunload=e}}findErrors(){this.hasError=this.application.getSyncStatus().hasError()}accountMenuPressed(){this.showAccountMenu=!this.showAccountMenu,this.closeAllRooms()}toggleSyncResolutionMenu(){this.showSyncResolution=!this.showSyncResolution}closeAccountMenu(){this.showAccountMenu=!1}lockApp(){this.application.lock()}refreshData(){this.isRefreshing=!0,this.application.sync({queueStrategy:c.SyncQueueStrategy.ForceSpawnNew,checkIntegrity:!0}).then(e=>{this.$timeout(()=>{this.isRefreshing=!1},200),e&&e.error?this.application.alertService.alert("There was an error syncing. Please try again. If all else fails, try signing out and signing back in."):this.syncUpdated()})}syncUpdated(){this.lastSyncDate=Object(a.a)(this.application.getLastSyncDate())}onNewUpdateAvailable(){this.newUpdateAvailable=!0}clickedNewUpdateAnnouncement(){this.newUpdateAvailable=!1,this.application.alertService.alert("A new update is ready to install. Please use the top-level 'Updates' menu to manage installation.")}reloadDockShortcuts(){const e=[];for(const t of this.themesWithIcons){const n=t.package_info.name,r=t.package_info.dock_icon;r&&e.push({name:n,component:t,icon:r})}this.dockShortcuts=e.sort((e,t)=>{const n=e.icon.type,r=t.icon.type;return n===r?0:"circle"===n&&"svg"===r?-1:"circle"===r&&"svg"===n?1:0})}initSvgForShortcut(e){const t="dock-svg-"+e.component.uuid,n=document.getElementById(t),r=new DOMParser,i=e.component.package_info.dock_icon.source,a=r.parseFromString(i,"image/svg+xml");n.appendChild(a.documentElement)}selectShortcut(e){this.application.componentManager.toggleComponent(e.component)}onRoomDismiss(e){this.roomShowState[e.uuid]=!1}closeAllRooms(){for(const e of this.rooms)this.roomShowState[e.uuid]=!1}async selectRoom(e){const t=()=>{this.$timeout(()=>{this.roomShowState[e.uuid]=!this.roomShowState[e.uuid]})};if(this.roomShowState[e.uuid])t();else{await this.application.privilegesService.actionRequiresPrivilege(c.ProtectedAction.ManageExtensions)?this.application.presentPrivilegesModal(c.ProtectedAction.ManageExtensions,t):t()}}clickOutsideAccountMenu(){this.application&&this.application.authenticationInProgress()||(this.showAccountMenu=!1)}}de.$inject=["$rootScope","$timeout"];class ge extends O{constructor(){super(),this.restrict="E",this.template=he.a,this.controller=de,this.replace=!0,this.controllerAs="ctrl",this.bindToController=!0,this.scope={application:"="}}}var ye=n(61),ve=n.n(ye);let me;function be(e,t,n,r,i){let a=n;const o=!r;return!(!t.isTrashTag&&e.trashed)&&(t.isSmartTag()&&(a=a||t.isArchiveTag||t.isTrashTag),!(e.archived&&!a||e.pinned&&!o)&&function(e,t){if(0===t.length)return!0;const n=e.safeTitle().toLowerCase(),r=e.safeText().toLowerCase(),i=t.toLowerCase(),a=function(e){const t=e.match(/"(.*?)"/);return t?t[1]:null}(i);if(a)return n.includes(a)||r.includes(a);if(function(e){return!!e.match(/\b[0-9a-f]{8}\b-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-\b[0-9a-f]{12}\b/)}(i))return e.uuid===i;const o=i.split(" "),s=o.every(e=>n.indexOf(e)>=0),c=o.every(e=>r.indexOf(e)>=0);return s||c}(e,i))}function Ie(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}!function(e){e.CreatedAt="created_at",e.UserUpdatedAt="userModifiedDate",e.Title="title",e.UpdatedAt="updated_at",e.ClientUpdatedAt="client_updated_at"}(me||(me={}));class we extends M{constructor(e){super(e),Ie(this,"panelPuppet",void 0),Ie(this,"reloadNotesPromise",void 0),Ie(this,"notesToDisplay",0),Ie(this,"pageSize",0),Ie(this,"searchSubmitted",!1),Ie(this,"newNoteKeyObserver",void 0),Ie(this,"nextNoteKeyObserver",void 0),Ie(this,"previousNoteKeyObserver",void 0),Ie(this,"searchKeyObserver",void 0),Ie(this,"noteFlags",{}),Ie(this,"unsubEditorChange",void 0),Ie(this,"removeObservers",[]),this.resetPagination()}$onInit(){super.$onInit(),this.panelPuppet={onReady:()=>this.reloadPanelWidth()},this.onWindowResize=this.onWindowResize.bind(this),this.onPanelResize=this.onPanelResize.bind(this),window.addEventListener("resize",this.onWindowResize,!0),this.registerKeyboardShortcuts()}onWindowResize(){this.resetPagination(!0)}deinit(){for(const e of this.removeObservers)e();this.removeObservers.length=0,this.panelPuppet.onReady=void 0,this.panelPuppet=void 0,window.removeEventListener("resize",this.onWindowResize,!0),this.onWindowResize=void 0,this.onPanelResize=void 0,this.newNoteKeyObserver(),this.nextNoteKeyObserver(),this.previousNoteKeyObserver(),this.searchKeyObserver(),this.newNoteKeyObserver=void 0,this.nextNoteKeyObserver=void 0,this.previousNoteKeyObserver=void 0,this.searchKeyObserver=void 0,super.deinit()}getState(){return this.state}async setNotesState(e){return this.setState(e)}getInitialState(){return{notes:[],renderedNotes:[],mutable:{showMenu:!1},noteFilter:{text:""}}}async onAppLaunch(){super.onAppLaunch(),this.streamNotesAndTags(),this.reloadPreferences()}onAppStateEvent(e,t){e===k.b.TagChanged?this.handleTagChange(this.application.getAppState().getSelectedTag()):e===k.b.ActiveEditorChanged?this.handleEditorChange():e===k.b.PreferencesChanged?this.reloadPreferences():e===k.b.EditorFocused&&this.setShowMenuFalse()}get activeEditorNote(){var e;return null===(e=this.appState.getActiveEditor())||void 0===e?void 0:e.note}get editorNotes(){return this.appState.getEditors().map(e=>e.note)}async onAppEvent(e){e===c.ApplicationEvent.SignedIn?(this.appState.closeAllEditors(),this.selectFirstNote()):e===c.ApplicationEvent.CompletedFullSync&&this.getMostValidNotes().then(e=>{0===e.length&&this.createPlaceholderNote()})}getPossiblyStaleNotes(){return this.getState().notes}async getMostValidNotes(){return await this.reloadNotesPromise,this.getPossiblyStaleNotes()}async createPlaceholderNote(){const e=this.application.getAppState().getSelectedTag();if(!e.isSmartTag()||e.isAllTag)return this.createNewNote()}streamNotesAndTags(){this.removeObservers.push(this.application.streamItems([c.ContentType.Note],async e=>{const t=e;for(const e of t)e.deleted||this.loadFlagsForNote(e);await this.reloadNotes();const n=this.activeEditorNote;if(n){(n.deleted||n.trashed)&&this.selectNextOrCreateNew()}else this.selectFirstNote()})),this.removeObservers.push(this.application.streamItems([c.ContentType.Tag],async e=>{var t;const n=e;this.reloadNotesDisplayOptions(),await this.reloadNotes(),Object(c.findInArray)(n,"uuid",null===(t=this.appState.selectedTag)||void 0===t?void 0:t.uuid)&&this.reloadPanelTitle()}))}async selectNote(e){this.appState.openEditor(e.uuid)}async createNewNote(){let e=`Note ${this.getState().notes.length+1}`;this.isFiltering()&&(e=this.getState().noteFilter.text),this.appState.createEditor(e)}async handleTagChange(e){this.resetScrollPosition(),this.setShowMenuFalse(),await this.setNoteFilterText(""),this.application.getDesktopService().searchText(),this.resetPagination();const t=this.application.isDatabaseLoaded();this.reloadNotesDisplayOptions(),await this.reloadNotes(),this.getState().notes.length>0?this.selectFirstNote():t&&(!e.isSmartTag()||e.isAllTag?this.createPlaceholderNote():this.activeEditorNote&&!this.getState().notes.includes(this.activeEditorNote)&&this.appState.closeActiveEditor())}resetScrollPosition(){const e=document.getElementById("notes-scrollable");e&&(e.scrollTop=0,e.scrollLeft=0)}async removeNoteFromList(e){const t=this.getState().notes;Object(c.removeFromArray)(t,e),await this.setNotesState({notes:t,renderedNotes:t.slice(0,this.notesToDisplay)})}async reloadNotes(){return this.reloadNotesPromise=this.performReloadNotes(),this.reloadNotesPromise}reloadNotesDisplayOptions(){const e=this.appState.selectedTag;this.application.setDisplayOptions(c.ContentType.Note,this.getState().sortBy,this.getState().sortReverse?"asc":"dsc",t=>(e.isSmartTag()?t.satisfiesPredicate(e.predicate):e.hasRelationshipWithItem(t))&&be(t,this.appState.selectedTag,this.getState().showArchived,this.getState().hidePinned,this.getState().noteFilter.text.toLowerCase()))}async performReloadNotes(){if(!this.appState.selectedTag)return;const e=this.application.getDisplayableItems(c.ContentType.Note);await this.setNotesState({notes:e,renderedNotes:e.slice(0,this.notesToDisplay)}),this.reloadPanelTitle()}setShowMenuFalse(){this.setNotesState({mutable:{...this.getState().mutable,showMenu:!1}})}async handleEditorChange(){const e=this.appState.getActiveEditor().note;e&&e.conflictOf&&this.application.changeAndSaveItem(e.uuid,e=>{e.conflictOf=void 0}),this.isFiltering()&&this.application.getDesktopService().searchText(this.getState().noteFilter.text)}async reloadPreferences(){const e={},t=this.getState().sortBy;let n=this.application.getPrefsService().getValue(c.WebPrefKey.SortNotesBy,me.CreatedAt);n!==me.UpdatedAt&&n!==me.ClientUpdatedAt||(n=me.UserUpdatedAt),e.sortBy=n,e.sortReverse=this.application.getPrefsService().getValue(c.WebPrefKey.SortNotesReverse,!1),e.showArchived=this.application.getPrefsService().getValue(c.WebPrefKey.NotesShowArchived,!1),e.hidePinned=this.application.getPrefsService().getValue(c.WebPrefKey.NotesHidePinned,!1),e.hideNotePreview=this.application.getPrefsService().getValue(c.WebPrefKey.NotesHideNotePreview,!1),e.hideDate=this.application.getPrefsService().getValue(c.WebPrefKey.NotesHideDate,!1);const r=this.getState(),i=e.sortBy!==r.sortBy||e.sortReverse!==r.sortReverse||e.hidePinned!==r.hidePinned||e.showArchived!==r.showArchived;await this.setNotesState({...e}),this.reloadPanelWidth(),i&&this.reloadNotesDisplayOptions(),await this.reloadNotes(),t&&t!==n&&this.selectFirstNote()}reloadPanelWidth(){const e=this.application.getPrefsService().getValue(c.WebPrefKey.NotesPanelWidth);e&&this.panelPuppet.ready&&(this.panelPuppet.setWidth(e),this.panelPuppet.isCollapsed()&&this.application.getAppState().panelDidResize("notes",this.panelPuppet.isCollapsed()))}onPanelResize(e,t,n,r){this.application.getPrefsService().setUserPrefValue(c.WebPrefKey.NotesPanelWidth,e,!0),this.application.getAppState().panelDidResize("notes",r)}paginate(){this.notesToDisplay+=this.pageSize,this.reloadNotes(),this.searchSubmitted&&this.application.getDesktopService().searchText(this.getState().noteFilter.text)}resetPagination(e=!1){const t=document.documentElement.clientHeight;this.pageSize=Math.ceil(t/51),0===this.pageSize&&(this.pageSize=20),e&&this.notesToDisplay>this.pageSize||(this.notesToDisplay=this.pageSize)}reloadPanelTitle(){let e;if(this.isFiltering()){e=`${this.getState().notes.length} search results`}else this.appState.selectedTag&&(e=`${this.appState.selectedTag.title}`);this.setNotesState({panelTitle:e})}optionsSubtitle(){let e="";return this.getState().sortBy===me.CreatedAt?e+=" Date Added":this.getState().sortBy===me.UserUpdatedAt?e+=" Date Modified":this.getState().sortBy===me.Title&&(e+=" Title"),this.getState().showArchived&&(e+=" | + Archived"),this.getState().hidePinned&&(e+=" | Pinned"),this.getState().sortReverse&&(e+=" | Reversed"),e}loadFlagsForNote(e){const t=[];e.pinned&&t.push({text:"Pinned",class:"info"}),e.archived&&t.push({text:"Archived",class:"warning"}),e.protected&&t.push({text:"Protected",class:"success"}),e.locked&&t.push({text:"Locked",class:"neutral"}),e.trashed&&t.push({text:"Deleted",class:"danger"}),e.conflictOf&&t.push({text:"Conflicted Copy",class:"danger"}),e.errorDecrypting&&(e.waitingForKey?t.push({text:"Waiting For Keys",class:"info"}):t.push({text:"Missing Keys",class:"danger"})),e.deleted&&t.push({text:"Deletion Pending Sync",class:"danger"}),this.noteFlags[e.uuid]=t}displayableNotes(){return this.getState().notes}getFirstNonProtectedNote(){const e=this.displayableNotes();let t=0,n=e[t];for(;n&&n.protected&&(t++,!(t>=e.length));)n=e[t];return n}selectFirstNote(){const e=this.getFirstNonProtectedNote();e&&this.selectNote(e)}selectNextNote(){const e=this.displayableNotes(),t=e.findIndex(e=>e.uuid===this.activeEditorNote.uuid);t+1<e.length&&this.selectNote(e[t+1])}selectNextOrCreateNew(){const e=this.getFirstNonProtectedNote();e?this.selectNote(e):this.appState.selectedTag&&this.appState.selectedTag.isSmartTag()?this.appState.closeActiveEditor():this.createPlaceholderNote()}selectPreviousNote(){const e=this.displayableNotes(),t=e.indexOf(this.activeEditorNote);return t-1>=0&&(this.selectNote(e[t-1]),!0)}isFiltering(){return this.getState().noteFilter.text&&this.getState().noteFilter.text.length>0}async setNoteFilterText(e){await this.setNotesState({noteFilter:{...this.getState().noteFilter,text:e}})}async clearFilterText(){await this.setNoteFilterText(""),this.onFilterEnter(),this.filterTextChanged(),this.resetPagination()}async filterTextChanged(){this.searchSubmitted&&(this.searchSubmitted=!1),this.reloadNotesDisplayOptions(),await this.reloadNotes()}onFilterEnter(){this.searchSubmitted=!0,this.application.getDesktopService().searchText(this.getState().noteFilter.text)}selectedMenuItem(){this.setShowMenuFalse()}toggleWebPrefKey(e){this.application.getPrefsService().setUserPrefValue(e,!this.state[e],!0)}selectedSortByCreated(){this.setSortBy(me.CreatedAt)}selectedSortByUpdated(){this.setSortBy(me.ClientUpdatedAt)}selectedSortByTitle(){this.setSortBy(me.Title)}toggleReverseSort(){this.selectedMenuItem(),this.application.getPrefsService().setUserPrefValue(c.WebPrefKey.SortNotesReverse,!this.getState().sortReverse,!0)}setSortBy(e){this.application.getPrefsService().setUserPrefValue(c.WebPrefKey.SortNotesBy,e,!0)}getSearchBar(){return document.getElementById("search-bar")}registerKeyboardShortcuts(){this.newNoteKeyObserver=this.application.getKeyboardService().addKeyObserver({key:"n",modifiers:[y.Meta,y.Ctrl],onKeyDown:e=>{e.preventDefault(),this.createNewNote()}}),this.nextNoteKeyObserver=this.application.getKeyboardService().addKeyObserver({key:g.Down,elements:[document.body,this.getSearchBar()],onKeyDown:e=>{const t=this.getSearchBar();t===document.activeElement&&t.blur(),this.selectNextNote()}}),this.previousNoteKeyObserver=this.application.getKeyboardService().addKeyObserver({key:g.Up,element:document.body,onKeyDown:e=>{this.selectPreviousNote()}}),this.searchKeyObserver=this.application.getKeyboardService().addKeyObserver({key:"f",modifiers:[y.Meta,y.Shift],onKeyDown:e=>{const t=this.getSearchBar();t&&t.focus()}})}}we.$inject=["$timeout"];class Ce extends O{constructor(){super(),this.template=ve.a,this.replace=!0,this.controller=we,this.controllerAs="self",this.bindToController=!0,this.scope={application:"="}}}var Be=n(62),Ee=n.n(Be);function _e(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class ke extends M{constructor(e){super(e),_e(this,"application",void 0),_e(this,"panelPuppet",void 0),_e(this,"unregisterComponent",void 0),_e(this,"component",void 0),_e(this,"editingOriginalName",void 0),_e(this,"formData",{}),_e(this,"titles",{}),_e(this,"removeTagsObserver",void 0),_e(this,"onPanelResize",(e,t,n,r)=>{this.application.getPrefsService().setUserPrefValue(c.WebPrefKey.TagsPanelWidth,e,!0),this.application.getAppState().panelDidResize("tags",r)}),this.panelPuppet={onReady:()=>this.loadPreferences()}}deinit(){this.removeTagsObserver(),this.removeTagsObserver=void 0,this.unregisterComponent(),this.unregisterComponent=void 0,super.deinit()}getInitialState(){return{tags:[],smartTags:[],noteCounts:{}}}getState(){return this.state}async setTagState(e){return this.setState(e)}async onAppStart(){super.onAppStart(),this.registerComponentHandler()}async onAppLaunch(){super.onAppLaunch(),this.loadPreferences(),this.beginStreamingItems();const e=this.application.getSmartTags();this.setTagState({smartTags:e}),this.selectTag(e[0])}onAppIncrementalSync(){super.onAppIncrementalSync(),this.reloadNoteCounts()}getMappedTags(){return this.application.getItems(c.ContentType.Tag).sort((e,t)=>e.title<t.title?-1:1)}beginStreamingItems(){this.removeTagsObserver=this.application.streamItems(c.ContentType.Tag,async e=>{if(await this.setTagState({tags:this.getMappedTags(),smartTags:this.application.getSmartTags()}),this.reloadTitles(e),this.reloadNoteCounts(),this.getState().selectedTag){const t=e.find(e=>e.uuid===this.getState().selectedTag.uuid);t&&(t.deleted?this.selectTag(this.getState().smartTags[0]):this.setTagState({selectedTag:t}))}})}reloadTitles(e){for(const t of e)this.titles[t.uuid]=t.title}onAppStateEvent(e,t){e===k.b.PreferencesChanged?this.loadPreferences():e===k.b.TagChanged&&this.setTagState({selectedTag:this.application.getAppState().getSelectedTag()})}async onAppEvent(e){super.onAppEvent(e),e===c.ApplicationEvent.LocalDataIncrementalLoad&&this.reloadNoteCounts()}reloadNoteCounts(){let e=[];this.getState().tags&&(e=e.concat(this.getState().tags)),this.getState().smartTags&&(e=e.concat(this.getState().smartTags));const t={};for(const n of e)if(n.isSmartTag()){if(n.isAllTag){const e=this.application.notesMatchingSmartTag(n).filter(e=>!e.archived&&!e.trashed);t[n.uuid]=e.length}}else{const e=this.application.referencesForItem(n,c.ContentType.Note).filter(e=>!e.archived&&!e.trashed);t[n.uuid]=e.length}this.setTagState({noteCounts:t})}loadPreferences(){if(!this.panelPuppet.ready)return;const e=this.application.getPrefsService().getValue(c.WebPrefKey.TagsPanelWidth);e&&(this.panelPuppet.setWidth(e),this.panelPuppet.isCollapsed()&&this.application.getAppState().panelDidResize("tags",this.panelPuppet.isCollapsed()))}registerComponentHandler(){this.unregisterComponent=this.application.componentManager.registerHandler({identifier:"tags",areas:[c.ComponentArea.TagsList],activationHandler:(e,t)=>{this.component=t},contextRequestHandler:()=>{},actionHandler:(e,t,n)=>{if(t===c.ComponentAction.SelectItem)if(n.item.content_type===c.ContentType.Tag){const e=this.application.findItem(n.item.uuid);e&&this.selectTag(e)}else n.item.content_type===c.ContentType.SmartTag&&this.application.createTemplateItem(c.ContentType.SmartTag,n.item.content).then(e=>{this.selectTag(e)});else t===c.ComponentAction.ClearSelection&&this.selectTag(this.getState().smartTags[0])}})}async selectTag(e){e.conflictOf&&this.application.changeAndSaveItem(e.uuid,e=>{e.conflictOf=void 0}),this.application.getAppState().setSelectedTag(e)}async clickedAddNewTag(){if(this.getState().editingTag)return;const e=await this.application.createTemplateItem(c.ContentType.Tag);this.setTagState({tags:[e].concat(this.getState().tags),previousTag:this.getState().selectedTag,selectedTag:e,editingTag:e,templateTag:e})}onTagTitleChange(e){this.setTagState({editingTag:e})}async saveTag(e,t){return e.target.blur(),this.getState().templateTag?this.saveNewTag():this.saveTagRename(t)}async saveTagRename(e){const t=this.titles[e.uuid]||"";if(0===t.length)return this.titles[e.uuid]=this.editingOriginalName,void(this.editingOriginalName=void 0);const n=this.application.findTagByTitle(t);n&&n.uuid!==e.uuid?this.application.alertService.alert("A tag with this name already exists."):(await this.application.changeAndSaveItem(e.uuid,e=>{e.title=t}),await this.setTagState({editingTag:void 0}))}async saveNewTag(){const e=this.getState().templateTag,t=this.titles[e.uuid]||"";if(0===t.length)return void await this.setTagState({templateTag:void 0});if(this.application.findTagByTitle(t))return void this.application.alertService.alert("A tag with this name already exists.");const n=await this.application.insertItem(e),r=await this.application.changeItem(n.uuid,e=>{e.title=t});await this.setTagState({templateTag:void 0,editingTag:void 0}),this.selectTag(r),await this.application.saveItem(r.uuid)}async selectedRenameTag(e){this.editingOriginalName=e.title,await this.setTagState({editingTag:e}),document.getElementById("tag-"+e.uuid).focus()}selectedDeleteTag(e){this.removeTag(e)}async removeTag(e){await Object(u.c)({text:"Are you sure you want to delete this tag? Note: deleting a tag will not delete its notes.",confirmButtonStyle:"danger"})&&(this.application.deleteItem(e),this.selectTag(this.getState().smartTags[0]))}}ke.$inject=["$timeout"];class Qe extends O{constructor(){super(),this.restrict="E",this.scope={application:"="},this.template=Ee.a,this.replace=!0,this.controller=ke,this.controllerAs="self",this.bindToController=!0}}var Se=n(63),xe=n.n(Se);function De(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Pe extends M{constructor(e,t){super(t),De(this,"$element",void 0),De(this,"processingTypes",[]),De(this,"application",void 0),De(this,"challenge",void 0),De(this,"cancelable",!1),this.$element=e}getState(){return this.state}$onInit(){super.$onInit();const e={},t=this.challenge.types;for(const n of t)e[n]={value:"",invalid:!1};let n;switch(this.challenge.reason){case c.ChallengeReason.ApplicationUnlock:case c.ChallengeReason.Migration:n=!0,this.cancelable=!1;break;case c.ChallengeReason.ProtocolUpgrade:case c.ChallengeReason.ResaveRootKey:n=!1,this.cancelable=!0}this.cancelable=!n,this.setState({types:t,values:e,processing:!1,forgotPasscode:!1,showForgotPasscodeLink:n,hasAccount:this.application.hasAccount()}),this.application.setChallengeCallbacks({challenge:this.challenge,onValidValue:e=>{this.getState().values[e.type].invalid=!1,Object(c.removeFromArray)(this.processingTypes,e.type),this.reloadProcessingStatus()},onInvalidValue:e=>{this.getState().values[e.type].invalid=!0,Object(c.removeFromArray)(this.processingTypes,e.type),this.reloadProcessingStatus()},onComplete:()=>{this.dismiss()}})}deinit(){this.application=void 0,this.challenge=void 0,super.deinit()}reloadProcessingStatus(){this.setState({processing:this.processingTypes.length>0})}get title(){return this.challenge.reason===c.ChallengeReason.Migration?"Storage Update":"Authentication Required"}promptForChallenge(e){return e===c.ChallengeType.LocalPasscode?this.challenge.reason===c.ChallengeReason.Migration?"Your application passcode is required to perform an upgrade of your local data storage structure.":"Enter your application passcode":"Enter your account password"}async destroyLocalData(){await Object(u.c)({text:$,confirmButtonStyle:"danger"})&&(await this.application.signOut(),this.dismiss())}cancel(){this.cancelable&&(this.application.cancelChallenge(this.challenge),this.dismiss())}onForgotPasscodeClick(){this.setState({forgotPasscode:!0})}onTextValueChange(e){const t=this.getState().values;t[e].invalid=!1,this.setState({values:t})}validate(){for(const e of this.getState().types){const t=this.getState().values[e];t&&0!==t.value.length||(this.getState().values[e].invalid=!0)}return 0===[].length}async submit(){if(!this.validate())return;await this.setState({processing:!0});const e=[];for(const t of Object.keys(this.getState().values)){const n=Number(t);if(this.getState().values[n].invalid)continue;const r=this.getState().values[n].value,i=new c.ChallengeValue(n,r);e.push(i)}this.processingTypes=e.map(e=>e.type),e.length>0?this.application.submitValuesForChallenge(this.challenge,e):this.setState({processing:!1})}dismiss(){const e=this.$element;e.scope().$destroy(),e.remove()}}Pe.$inject=["$element","$timeout"];class Me extends O{constructor(){super(),this.restrict="E",this.template=xe.a,this.controller=Pe,this.controllerAs="ctrl",this.bindToController=!0,this.scope={challenge:"=",application:"="}}}function Fe(e){return{restrict:"A",scope:{shouldFocus:"="},link:function(t,n){e(()=>{t.shouldFocus&&n[0].focus()})}}}function Oe(e){return{restrict:"A",replace:!1,link(t,n,r){let i=!1;function a(e){i=!1,r.isOpen&&e.stopPropagation()}function o(e){e.target.closest(".sk-modal")||i||(t.$apply(r.clickOutside),i=!0)}t.$on("$destroy",()=>{r.clickOutside=void 0,n.unbind("click",a),e.unbind("click",o)}),n.bind("click",a),e.bind("click",o)}}}function Re(e){return{restrict:"A",scope:{show:"=",delay:"@"},link:function(t,n){const r=t,a=()=>{r.hidePromise=e(o.bind(this,!1),s())},o=e=>{e?n.css({display:""}):n.css({display:"none"})},s=()=>{const e=parseInt(r.delay);return i.a.isNumber(e)?e:200};o(!1),t.$watch("show",(function(t){t?(r.hidePromise&&(e.cancel(r.hidePromise),r.hidePromise=null),o(!0)):a()}))}}}function Te(e){return{restrict:"A",link:function(t,n,r){n.ready((function(){t.$apply((function(){e(r.elemReady)(t)}))}))}}}Fe.$inject=["$timeout"],Oe.$inject=["$document"],Re.$inject=["$timeout"],Te.$inject=["$parse"];var je=n(50);var He=n(64),Ue=n.n(He);function Ne(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Le extends M{constructor(e,t){super(e),Ne(this,"appVersion",void 0),Ne(this,"syncStatus",void 0),Ne(this,"closeFunction",void 0),this.appVersion=t}getInitialState(){return{appVersion:"v"+(window.electronAppVersion||this.appVersion),passcodeAutoLockOptions:this.application.getLockService().getAutoLockIntervalOptions(),user:this.application.getUser(),formData:{mergeLocal:!0,ephemeral:!1},mutable:{}}}getState(){return this.state}async onAppKeyChange(){super.onAppKeyChange(),this.setState(this.refreshedCredentialState())}async onAppLaunch(){super.onAppLaunch(),this.setState(this.refreshedCredentialState()),this.loadHost(),this.reloadAutoLockInterval(),this.loadBackupsAvailability()}refreshedCredentialState(){return{user:this.application.getUser(),canAddPasscode:!this.application.isEphemeralSession(),hasPasscode:this.application.hasPasscode(),showPasscodeForm:!1}}$onInit(){super.$onInit(),this.initProps({closeFunction:this.closeFunction}),this.syncStatus=this.application.getSyncStatus()}close(){this.$timeout(()=>{this.props.closeFunction()})}async loadHost(){const e=await this.application.getHost();this.setState({server:e,formData:{...this.getState().formData,url:e}})}onHostInputChange(){const e=this.getState().formData.url;this.application.setHost(e)}async loadBackupsAvailability(){const e=!Object(a.f)(this.application.getUser()),t=this.application.hasPasscode(),n=e||t;this.setState({encryptionStatusString:e?"End-to-end encryption is enabled. Your data is encrypted on your device first, then synced to your private cloud.":t?"Encryption is enabled. Your data is encrypted using your passcode before it is saved to your device storage.":"Encryption is not enabled. Sign in, register, or add a passcode lock to enable encryption.",encryptionEnabled:n,mutable:{...this.getState().mutable,backupEncrypted:n}})}submitMfaForm(){this.login()}blurAuthFields(){const e=["email","password","password_conf"];for(const t of e){const e=document.getElementsByName(t)[0];e&&e.blur()}}submitAuthForm(){this.getState().formData.email&&this.getState().formData.user_password&&(this.blurAuthFields(),this.getState().formData.showLogin?this.login():this.register())}async setFormDataState(e){return this.setState({formData:{...this.getState().formData,...e}})}async login(){await this.setFormDataState({status:"Generating Login Keys...",authenticating:!0});const e=this.getState().formData,t=await this.application.signIn(e.email,e.user_password,e.strictSignin,e.ephemeral,e.mfa&&e.mfa.payload.mfa_key,e.userMfaCode,e.mergeLocal);if(!(!t||t.error))return await this.setFormDataState({authenticating:!1,user_password:void 0}),void this.close();const n=t?t.error:{message:"An unknown error occured."};"mfa-required"===n.tag||"mfa-invalid"===n.tag?await this.setFormDataState({showLogin:!1,mfa:n,status:void 0}):(await this.setFormDataState({showLogin:!0,mfa:void 0,status:void 0,user_password:void 0}),n.message&&this.application.alertService.alert(n.message)),await this.setFormDataState({authenticating:!1})}async register(){if(this.getState().formData.password_conf!==this.getState().formData.user_password)return void this.application.alertService.alert("The two passwords you entered do not match. Please try again.");await this.setFormDataState({confirmPassword:!1,status:"Generating Account Keys...",authenticating:!0});const e=await this.application.register(this.getState().formData.email,this.getState().formData.user_password,this.getState().formData.ephemeral,this.getState().formData.mergeLocal);if(!e||e.error){await this.setFormDataState({status:void 0});const t=e?e.error:{message:"An unknown error occured."};await this.setFormDataState({authenticating:!1}),this.application.alertService.alert(t.message)}else await this.setFormDataState({authenticating:!1}),this.close()}async mergeLocalChanged(){this.getState().formData.mergeLocal||await Object(u.c)({text:"Unchecking this option means any of the notes you have written while you were signed out will be deleted. Are you sure you want to discard these notes?",confirmButtonStyle:"danger"})&&this.setFormDataState({mergeLocal:!0})}openPasswordWizard(){this.close(),this.application.presentPasswordWizard(R.ChangePassword)}async openPrivilegesModal(){const e=()=>{this.application.presentPrivilegesManagementModal(),this.close()};await this.application.privilegesService.actionRequiresPrivilege(c.ProtectedAction.ManagePrivileges)?this.application.presentPrivilegesModal(c.ProtectedAction.ManagePrivileges,()=>{e()}):e()}async destroyLocalData(){await Object(u.c)({text:$,confirmButtonStyle:"danger"})&&this.application.signOut()}async submitImportPassword(){await this.performImport(this.getState().importData.data,this.getState().importData.password)}async readFile(e){return new Promise(t=>{const n=new FileReader;n.onload=e=>{try{const n=JSON.parse(e.target.result);t(n)}catch(e){this.application.alertService.alert("Unable to open file. Ensure it is a proper JSON file and try again.")}},n.readAsText(e)})}async importFileSelected(e){const t=async()=>{const t=e[0],n=await this.readFile(t);if(n)if(n.auth_params||n.keyParams){await this.setState({importData:{...this.getState().importData,requestPassword:!0,data:n}});const e=document.getElementById("import-password-request");e&&e.scrollIntoView(!1)}else await this.performImport(n,void 0)};await this.application.privilegesService.actionRequiresPrivilege(c.ProtectedAction.ManageBackups)?this.application.presentPrivilegesModal(c.ProtectedAction.ManageBackups,t):t()}async performImport(e,t){await this.setState({importData:{...this.getState().importData,loading:!0}});const n=await this.importJSONData(e,t);if(this.setState({importData:null}),n>0){const e=function(e){return`Import complete. ${e} items were not imported because there was an error decrypting them. Make sure the password is correct and try again.`}(n);this.application.alertService.alert(e)}else this.application.alertService.alert("Your data has been successfully imported.")}async importJSONData(e,t){const{errorCount:n}=await this.application.importData(e,t);return n}async downloadDataArchive(){this.application.getArchiveService().downloadBackup(this.getState().mutable.backupEncrypted)}notesAndTagsCount(){return this.application.getItems([c.ContentType.Note,c.ContentType.Tag]).length}encryptionStatusForNotes(){const e=this.notesAndTagsCount();return e+"/"+e+" notes and tags encrypted"}async reloadAutoLockInterval(){const e=await this.application.getLockService().getAutoLockInterval();this.setState({selectedAutoLockInterval:e})}async selectAutoLockInterval(e){const t=async()=>{await this.application.getLockService().setAutoLockInterval(e),this.reloadAutoLockInterval()};await this.application.privilegesService.actionRequiresPrivilege(c.ProtectedAction.ManagePasscode)?this.application.presentPrivilegesModal(c.ProtectedAction.ManagePasscode,()=>{t()}):t()}hidePasswordForm(){this.setFormDataState({showLogin:!1,showRegister:!1,user_password:void 0,password_conf:void 0})}hasPasscode(){return this.application.hasPasscode()}addPasscodeClicked(){this.setFormDataState({showPasscodeForm:!0})}submitPasscodeForm(){const e=this.getState().formData.passcode;e===this.getState().formData.confirmPasscode?(this.getState().formData.changingPasscode?this.application.changePasscode(e):this.application.setPasscode(e)).then(()=>{this.setFormDataState({passcode:void 0,confirmPasscode:void 0,showPasscodeForm:!1})}):this.application.alertService.alert("The two passcodes you entered do not match. Please try again.")}async changePasscodePressed(){const e=()=>{this.getState().formData.changingPasscode=!0,this.addPasscodeClicked()};await this.application.privilegesService.actionRequiresPrivilege(c.ProtectedAction.ManagePasscode)?this.application.presentPrivilegesModal(c.ProtectedAction.ManagePasscode,e):e()}async removePasscodePressed(){const e=async()=>{let e="Are you sure you want to remove your application passcode?";!Object(a.f)(await this.application.getUser())||(e+=" This will remove encryption from your local data."),await Object(u.c)({text:e,confirmButtonStyle:"danger"})&&this.application.removePasscode()};await this.application.privilegesService.actionRequiresPrivilege(c.ProtectedAction.ManagePasscode)?this.application.presentPrivilegesModal(c.ProtectedAction.ManagePasscode,e):e()}isDesktopApplication(){return Object(a.d)()}}Le.$inject=["$timeout","appVersion"];class Ke extends O{constructor(){super(),this.restrict="E",this.template=Ue.a,this.controller=Le,this.controllerAs="self",this.bindToController=!0,this.scope={closeFunction:"&",application:"="}}}var Ge=n(65),$e=n.n(Ge);function Ye(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Je extends M{constructor(e){super(e),Ye(this,"application",void 0),Ye(this,"item",void 0),Ye(this,"loadingExtensions",!0),this.state={extensions:[]}}$onInit(){super.$onInit(),this.initProps({item:this.item}),this.loadExtensions()}async loadExtensions(){const e=this.application.actionsManager.getExtensions().sort((e,t)=>e.name.toLowerCase()<t.name.toLowerCase()?-1:1),t=await Promise.all(e.map(e=>this.application.actionsManager.loadExtensionInContextOfItem(e,this.props.item)));0==t.length&&(this.loadingExtensions=!1),await this.setState({extensions:t})}async executeAction(e,t){if("nested"===e.verb){if(!e.subrows){const n=this.subRowsForAction(e,t);await this.updateAction(e,t,{subrows:n})}return}await this.updateAction(e,t,{running:!0});const n=await this.application.actionsManager.runAction(e,this.props.item,async()=>"");n.error?await this.updateAction(e,t,{error:!0}):(await this.updateAction(e,t,{running:!1}),this.handleActionResponse(e,n),await this.reloadExtension(t))}handleActionResponse(e,t){switch(e.verb){case"render":{const e=t.item;this.application.presentRevisionPreviewModal(e.uuid,e.content)}}}subRowsForAction(e,t){if(e.subactions)return e.subactions.map(e=>({onClick:()=>{this.executeAction(e,t)},label:e.label,subtitle:e.desc,spinnerClass:e.running?"info":void 0}))}async updateAction(e,t,n){const r=await this.application.changeItem(t.uuid,r=>{r.actions=t.actions.map(t=>t&&n&&t.verb===e.verb&&t.url===e.url?{...e,running:null==n?void 0:n.running,error:null==n?void 0:n.error,subrows:(null==n?void 0:n.subrows)||(null==t?void 0:t.subrows)}:t)});await this.updateExtension(r)}async updateExtension(e,t){const n=await this.application.changeItem(e.uuid,e=>{e.hidden=t&&t.hidden}),r=this.state.extensions.map(t=>e.uuid===t.uuid?n:t);await this.setState({extensions:r})}async reloadExtension(e){const t=await this.application.actionsManager.loadExtensionInContextOfItem(e,this.props.item),n=this.state.extensions.map(n=>e.uuid===n.uuid?t:n);this.setState({extensions:n})}}Je.$inject=["$timeout"];class Ve extends O{constructor(){super(),this.restrict="E",this.template=$e.a,this.replace=!0,this.controller=Je,this.controllerAs="self",this.bindToController=!0,this.scope={item:"=",application:"="}}}var ze=n(66),qe=n.n(ze);function We(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Xe{constructor(e){We(this,"$element",void 0),We(this,"componentUuid",void 0),We(this,"onDismiss",void 0),We(this,"application",void 0),We(this,"liveComponent",void 0),We(this,"component",void 0),this.$element=e}$onInit(){this.liveComponent=new c.LiveItem(this.componentUuid,this.application,e=>{this.component=e}),this.application.componentGroup.activateComponent(this.component)}$onDestroy(){this.application.componentGroup.deactivateComponent(this.component),this.liveComponent.deinit()}dismiss(){this.onDismiss&&this.onDismiss();const e=this.$element;e.scope().$destroy(),e.remove()}}Xe.$inject=["$element"];class Ze extends O{constructor(){super(),this.restrict="E",this.template=qe.a,this.controller=Xe,this.controllerAs="ctrl",this.bindToController=!0,this.scope={componentUuid:"=",onDismiss:"&",application:"="}}}var et=n(67),tt=n.n(et);function nt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class rt{constructor(e,t,n){nt(this,"onLoad",void 0),nt(this,"componentUuid",void 0),nt(this,"application",void 0),nt(this,"liveComponent",void 0),nt(this,"$rootScope",void 0),nt(this,"$timeout",void 0),nt(this,"componentValid",!0),nt(this,"cleanUpOn",void 0),nt(this,"unregisterComponentHandler",void 0),nt(this,"unregisterDesktopObserver",void 0),nt(this,"issueLoading",!1),nt(this,"reloading",!1),nt(this,"expired",!1),nt(this,"loading",!1),nt(this,"didAttemptReload",!1),nt(this,"error",void 0),nt(this,"loadTimeout",void 0),this.$rootScope=t,this.$timeout=n,this.cleanUpOn=e.$on("ext-reload-complete",()=>{this.reloadStatus(!1)}),this.onVisibilityChange=this.onVisibilityChange.bind(this)}$onDestroy(){this.cleanUpOn(),this.cleanUpOn=void 0,this.unregisterComponentHandler(),this.unregisterComponentHandler=void 0,this.unregisterDesktopObserver(),this.unregisterDesktopObserver=void 0,this.liveComponent.deinit(),this.liveComponent=void 0,this.application=void 0,this.onVisibilityChange=void 0,this.onLoad=void 0,document.removeEventListener("visibilitychange",this.onVisibilityChange)}$onInit(){this.liveComponent=new c.LiveItem(this.componentUuid,this.application),this.registerComponentHandlers(),this.registerPackageUpdateObserver()}get component(){var e;return null===(e=this.liveComponent)||void 0===e?void 0:e.item}onIframeInit(){this.$timeout(()=>{this.loadComponent()})}loadComponent(){if(!this.component)throw"Component view is missing component";if(!this.component.active)throw"Component view component must be active";const e=this.application.componentManager.iframeForComponent(this.componentUuid);e&&(this.loading=!0,this.loadTimeout&&this.$timeout.cancel(this.loadTimeout),this.loadTimeout=this.$timeout(()=>{this.handleIframeLoadTimeout()},4e3),e.onload=()=>{this.reloadStatus(),this.handleIframeLoad(e)})}registerPackageUpdateObserver(){this.unregisterDesktopObserver=this.application.getDesktopService().registerUpdateObserver(e=>{e.uuid===this.component.uuid&&e.active&&this.reloadIframe()})}registerComponentHandlers(){this.unregisterComponentHandler=this.application.componentManager.registerHandler({identifier:"component-view-"+Math.random(),areas:[this.component.area],actionHandler:(e,t,n)=>{t===c.ComponentAction.SetSize&&this.application.componentManager.handleSetSizeEvent(e,n)}})}reloadIframe(){this.$timeout(()=>{this.reloading=!0,this.$timeout(()=>{this.reloading=!1})})}onVisibilityChange(){"hidden"!==document.visibilityState&&this.issueLoading&&this.reloadIframe()}reloadStatus(e=!0){const t=this.component,n=t.offlineOnly&&!Object(a.d)(),r=Object(a.d)()?!t.local_url&&!t.hasValidHostedUrl():!t.hasValidHostedUrl();this.expired=t.valid_until&&t.valid_until<=new Date,this.application.componentManager.getReadonlyStateForComponent(t).lockReadonly||this.application.componentManager.setReadonlyStateForComponent(t,this.expired),this.componentValid=!n&&!r,this.componentValid||(this.loading=!1),this.error=n?"offline-restricted":r?"url-missing":void 0,this.expired&&e&&this.$rootScope.$broadcast("reload-ext-dat")}async handleIframeLoadTimeout(){this.loading&&(this.loading=!1,this.issueLoading=!0,this.didAttemptReload?document.addEventListener("visibilitychange",this.onVisibilityChange):(this.didAttemptReload=!0,this.reloadIframe()))}async handleIframeLoad(e){let t=!1;if(Object(a.d)())try{e.contentWindow.origin&&"null"!==e.contentWindow.origin||(t=!0)}catch(e){}this.$timeout.cancel(this.loadTimeout),await this.application.componentManager.registerComponentWindow(this.component,e.contentWindow);this.$timeout(()=>{this.loading=!1,this.issueLoading=!!t,this.onLoad&&this.onLoad(this.component)},7)}getUrl(){return this.application.componentManager.urlForComponent(this.component)}}rt.$inject=["$scope","$rootScope","$timeout"];class it extends O{constructor(){super(),this.restrict="E",this.template=tt.a,this.scope={componentUuid:"=",onLoad:"=?",application:"="},this.controller=rt,this.controllerAs="ctrl",this.bindToController=!0}}var at=n(68),ot=n.n(at);function st(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class ct extends M{constructor(e){super(e),st(this,"callback",void 0),st(this,"selectedEditorUuid",void 0),st(this,"currentItem",void 0),st(this,"application",void 0),this.state={isDesktop:Object(a.d)()}}isEditorSelected(e){return!!this.selectedEditorUuid&&this.selectedEditorUuid===e.uuid}isEditorDefault(e){var t;return(null===(t=this.state.defaultEditor)||void 0===t?void 0:t.uuid)===e.uuid}$onInit(){super.$onInit();const e=this.application.componentManager.componentsForArea(c.ComponentArea.Editor).sort((e,t)=>e.name.toLowerCase()<t.name.toLowerCase()?-1:1),t=e.filter(e=>e.isDefaultEditor())[0];this.setState({editors:e,defaultEditor:t})}selectComponent(e){e&&e.conflictOf&&this.application.changeAndSaveItem(e.uuid,e=>{e.conflictOf=void 0}),this.$timeout(()=>{this.callback()(e)})}toggleDefaultForEditor(e){this.state.defaultEditor===e?this.removeEditorDefault(e):this.makeEditorDefault(e)}offlineAvailableForComponent(e){return e.local_url&&this.state.isDesktop}makeEditorDefault(e){const t=this.application.componentManager.componentsForArea(c.ComponentArea.Editor).filter(e=>e.isDefaultEditor())[0];t&&this.application.changeItem(t.uuid,e=>{e.defaultEditor=!1}),this.application.changeAndSaveItem(e.uuid,e=>{e.defaultEditor=!0}),this.setState({defaultEditor:e})}removeEditorDefault(e){this.application.changeAndSaveItem(e.uuid,e=>{e.defaultEditor=!1}),this.setState({defaultEditor:null})}}ct.$inject=["$timeout"];class ut extends O{constructor(){super(),this.restrict="E",this.template=ot.a,this.controller=ct,this.controllerAs="self",this.bindToController=!0,this.scope={callback:"&",selectedEditorUuid:"=",currentItem:"=",application:"="}}}var lt=n(69),At=n.n(lt);function ft(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class ht{constructor(e){ft(this,"$element",void 0),ft(this,"type",void 0),ft(this,"title",void 0),ft(this,"message",void 0),ft(this,"callback",void 0),ft(this,"formData",{input:""}),this.$element=e}dismiss(){const e=this.$element;e.scope().$destroy(),e.remove()}submit(){this.callback(this.formData.input),this.dismiss()}}ht.$inject=["$element"];class pt extends O{constructor(){super(),this.restrict="E",this.template=At.a,this.controller=ht,this.controllerAs="ctrl",this.bindToController=!0,this.scope={type:"=",title:"=",message:"=",callback:"&"}}}var dt=n(70),gt=n.n(dt);function yt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class vt{constructor(){yt(this,"disabled",void 0),yt(this,"action",void 0),yt(this,"buttonAction",void 0)}onClick(e){this.disabled||(e.stopPropagation(),this.action())}clickAccessoryButton(e){this.disabled||(e.stopPropagation(),this.buttonAction())}}class mt extends O{constructor(){super(),this.restrict="E",this.transclude=!0,this.template=gt.a,this.controller=vt,this.controllerAs="ctrl",this.bindToController=!0,this.scope={action:"&",buttonAction:"&",buttonClass:"=",buttonText:"=",desc:"=",disabled:"=",circle:"=",circleAlign:"=",faded:"=",hasButton:"=",label:"=",spinnerClass:"=",stylekitClass:"=",subRows:"=",subtitle:"="}}}var bt,It,wt,Ct=n(71),Bt=n.n(Ct);function Et(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}!function(e){e.Right="right",e.Left="left"}(bt||(bt={})),function(e){e.Move="mousemove",e.Down="mousedown",e.Up="mouseup"}(It||(It={})),function(e){e.Hoverable="hoverable",e.AlwaysVisible="always-visible",e.Dragging="dragging",e.NoSelection="no-selection",e.Collapsed="collapsed",e.AnimateOpacity="animate-opacity"}(wt||(wt={}));class _t{constructor(e,t,n){Et(this,"alwaysVisible",void 0),Et(this,"collapsable",void 0),Et(this,"control",void 0),Et(this,"defaultWidth",void 0),Et(this,"hoverable",void 0),Et(this,"index",void 0),Et(this,"minWidth",void 0),Et(this,"onResizeFinish",void 0),Et(this,"panelId",void 0),Et(this,"property",void 0),Et(this,"$compile",void 0),Et(this,"$element",void 0),Et(this,"$timeout",void 0),Et(this,"panel",void 0),Et(this,"resizerColumn",void 0),Et(this,"currentMinWidth",0),Et(this,"pressed",!1),Et(this,"startWidth",0),Et(this,"lastDownX",0),Et(this,"collapsed",!1),Et(this,"lastWidth",0),Et(this,"startLeft",0),Et(this,"lastLeft",0),Et(this,"appFrame",void 0),Et(this,"widthBeforeLastDblClick",0),Et(this,"overlay",void 0),this.$compile=e,this.$element=t,this.$timeout=n,this.handleResize=Object(a.b)(this.handleResize.bind(this),250),this.onMouseMove=this.onMouseMove.bind(this),this.onMouseUp=this.onMouseUp.bind(this),this.onMouseDown=this.onMouseDown.bind(this)}$onInit(){this.configureDefaults(),this.reloadDefaultValues(),this.configureControl(),this.addDoubleClickHandler(),this.resizerColumn.addEventListener(It.Down,this.onMouseDown),document.addEventListener(It.Move,this.onMouseMove),document.addEventListener(It.Up,this.onMouseUp)}$onDestroy(){this.onResizeFinish=void 0,this.control=void 0,window.removeEventListener("resize",this.handleResize),document.removeEventListener(It.Move,this.onMouseMove),document.removeEventListener(It.Up,this.onMouseUp),this.resizerColumn.removeEventListener(It.Down,this.onMouseDown),this.handleResize=void 0,this.onMouseMove=void 0,this.onMouseUp=void 0,this.onMouseDown=void 0}configureControl(){this.control.setWidth=e=>{this.setWidth(e,!0)},this.control.setLeft=e=>{this.setLeft(e)},this.control.flash=()=>{this.flash()},this.control.isCollapsed=()=>this.isCollapsed(),this.control.ready=!0,this.control.onReady()}configureDefaults(){this.panel=document.getElementById(this.panelId),this.panel?(this.resizerColumn=this.$element[0],this.currentMinWidth=this.minWidth||this.resizerColumn.offsetWidth,this.pressed=!1,this.startWidth=this.panel.scrollWidth,this.lastDownX=0,this.collapsed=!1,this.lastWidth=this.startWidth,this.startLeft=this.panel.offsetLeft,this.lastLeft=this.startLeft,this.appFrame=void 0,this.widthBeforeLastDblClick=0,this.property===bt.Right&&this.configureRightPanel(),this.alwaysVisible&&this.resizerColumn.classList.add(wt.AlwaysVisible),this.hoverable&&this.resizerColumn.classList.add(wt.Hoverable)):console.error("Panel not found for",this.panelId)}configureRightPanel(){window.addEventListener("resize",this.handleResize)}handleResize(){this.reloadDefaultValues(),this.handleWidthEvent(),this.$timeout(()=>{this.finishSettingWidth()})}getParentRect(){return this.panel.parentNode.getBoundingClientRect()}reloadDefaultValues(){this.startWidth=this.isAtMaxWidth()?this.getParentRect().width:this.panel.scrollWidth,this.lastWidth=this.startWidth,this.appFrame=document.getElementById("app").getBoundingClientRect()}addDoubleClickHandler(){this.resizerColumn.ondblclick=()=>{this.$timeout(()=>{const e=this.isCollapsed();e?this.setWidth(this.widthBeforeLastDblClick||this.defaultWidth):(this.widthBeforeLastDblClick=this.lastWidth,this.setWidth(this.currentMinWidth)),this.finishSettingWidth();const t=!e;this.onResizeFinish()(this.lastWidth,this.lastLeft,this.isAtMaxWidth(),t)})}}onMouseDown(e){this.addInvisibleOverlay(),this.pressed=!0,this.lastDownX=e.clientX,this.startWidth=this.panel.scrollWidth,this.startLeft=this.panel.offsetLeft,this.panel.classList.add(wt.NoSelection),this.hoverable&&this.resizerColumn.classList.add(wt.Dragging)}onMouseUp(){if(this.removeInvisibleOverlay(),!this.pressed)return;this.pressed=!1,this.resizerColumn.classList.remove(wt.Dragging),this.panel.classList.remove(wt.NoSelection);const e=this.isAtMaxWidth();this.onResizeFinish&&this.onResizeFinish()(this.lastWidth,this.lastLeft,e,this.isCollapsed()),this.finishSettingWidth()}onMouseMove(e){this.pressed&&(e.preventDefault(),this.property&&this.property===bt.Left?this.handleLeftEvent(e):this.handleWidthEvent(e))}handleWidthEvent(e){let t;e?t=e.clientX:(t=0,this.lastDownX=0);const n=t-this.lastDownX,r=this.startWidth+n;this.setWidth(r,!1)}handleLeftEvent(e){const t=this.panel.getBoundingClientRect();let n=(e.clientX||t.x)-this.lastDownX,r=this.startLeft+n;r<0&&(r=0,n=-this.startLeft);const i=this.getParentRect();let a=this.startWidth-n;a<this.currentMinWidth&&(a=this.currentMinWidth),a>i.width&&(a=i.width),r+a>i.width&&(r=i.width-a),this.setLeft(r),this.setWidth(a,!1)}isAtMaxWidth(){return Math.round(this.lastWidth+this.lastLeft)===Math.round(this.getParentRect().width)}isCollapsed(){return this.lastWidth<=this.currentMinWidth}setWidth(e,t=!1){e<this.currentMinWidth&&(e=this.currentMinWidth);const n=this.getParentRect();e>n.width&&(e=n.width);const r=this.appFrame.width-this.panel.getBoundingClientRect().x;e>r&&(e=r),Math.round(e+this.lastLeft)===Math.round(n.width)?(this.panel.style.width=`calc(100% - ${this.lastLeft}px)`,this.panel.style.flexBasis=`calc(100% - ${this.lastLeft}px)`):(this.panel.style.flexBasis=e+"px",this.panel.style.width=e+"px"),this.lastWidth=e,t&&this.finishSettingWidth()}setLeft(e){this.panel.style.left=e+"px",this.lastLeft=e}finishSettingWidth(){this.collapsable&&(this.collapsed=this.isCollapsed(),this.collapsed?this.resizerColumn.classList.add(wt.Collapsed):this.resizerColumn.classList.remove(wt.Collapsed))}addInvisibleOverlay(){this.overlay||(this.overlay=this.$compile("<div id='resizer-overlay'></div>")(this),i.a.element(document.body).prepend(this.overlay))}removeInvisibleOverlay(){this.overlay&&(this.overlay.remove(),this.overlay=void 0)}flash(){this.resizerColumn.classList.add(wt.AnimateOpacity),this.$timeout(()=>{this.resizerColumn.classList.remove(wt.AnimateOpacity)},3e3)}}_t.$inject=["$compile","$element","$timeout"];class kt extends O{constructor(){super(),this.restrict="E",this.template=Bt.a,this.controller=_t,this.controllerAs="ctrl",this.bindToController=!0,this.scope={alwaysVisible:"=",collapsable:"=",control:"=",defaultWidth:"=",hoverable:"=",index:"=",minWidth:"=",onResizeFinish:"&",panelId:"=",property:"="}}}var Qt=n(72),St=n.n(Qt);function xt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Dt=1,Pt=2;class Mt extends M{constructor(e,t){super(t),xt(this,"$element",void 0),xt(this,"application",void 0),xt(this,"type",void 0),xt(this,"isContinuing",!1),this.$element=e,this.registerWindowUnloadStopper()}$onInit(){super.$onInit(),this.initProps({type:this.type,changePassword:this.type===R.ChangePassword,securityUpdate:this.type===R.AccountUpgrade}),this.setState({formData:{},continueTitle:"Continue",step:Dt,title:this.props.changePassword?"Change Password":"Account Update"})}$onDestroy(){super.$onDestroy(),window.onbeforeunload=null}registerWindowUnloadStopper(){window.onbeforeunload=()=>!0}resetContinueState(){this.setState({showSpinner:!1,continueTitle:"Continue"}),this.isContinuing=!1}async nextStep(){if(this.state.lockContinue||this.isContinuing)return;if(this.state.step===Pt)return void this.dismiss();this.isContinuing=!0,this.setState({showSpinner:!0,continueTitle:"Generating Keys..."}),await this.validateCurrentPassword()&&await this.processPasswordChange()?(this.isContinuing=!1,this.setState({showSpinner:!1,continueTitle:"Finish",step:Pt})):this.resetContinueState()}async setFormDataState(e){return this.setState({formData:{...this.state.formData,...e}})}async validateCurrentPassword(){var e;const t=this.state.formData.currentPassword,n=this.props.securityUpdate?t:this.state.formData.newPassword;if(!t||0===t.length)return this.application.alertService.alert("Please enter your current password."),!1;if(this.props.changePassword){if(!n||0===n.length)return this.application.alertService.alert("Please enter a new password."),!1;if(n!==this.state.formData.newPasswordConfirmation)return this.application.alertService.alert("Your new password does not match its confirmation."),this.state.formData.status=null,!1}if(!(null===(e=this.application.getUser())||void 0===e?void 0:e.email))return this.application.alertService.alert("We don't have your email stored. Please log out then log back in to fix this issue."),this.state.formData.status=null,!1;const r=await this.application.validateAccountPassword(this.state.formData.currentPassword);return r||this.application.alertService.alert("The current password you entered is not correct. Please try again."),r}async processPasswordChange(){this.setState({lockContinue:!0,processing:!0}),this.setFormDataState({status:"Processing encryption keys..."});const e=this.props.securityUpdate?this.state.formData.currentPassword:this.state.formData.newPassword,t=await this.application.changePassword(this.state.formData.currentPassword,e),n=!t||!t.error;return this.setFormDataState({statusError:!n,processing:n}),n?this.setState({lockContinue:!1,formData:{...this.state.formData,status:this.props.changePassword?"Successfully changed password.":"Successfully performed account update."}}):(this.application.alertService.alert(t.error.message?t.error.message:"There was an error changing your password. Please try again."),this.setFormDataState({status:"Unable to process your password. Please try again."})),n}dismiss(){if(this.state.lockContinue)this.application.alertService.alert("Cannot close window until pending tasks are complete.");else{const e=this.$element;e.scope().$destroy(),e.remove()}}}Mt.$inject=["$element","$timeout"];class Ft extends O{constructor(){super(),this.restrict="E",this.template=St.a,this.controller=Mt,this.controllerAs="ctrl",this.bindToController=!0,this.scope={type:"=",application:"="}}}var Ot=n(73),Rt=n.n(Ot);function Tt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class jt{constructor(e){Tt(this,"$element",void 0),Tt(this,"callback",void 0),this.$element=e}dismiss(){const e=this.$element;e.scope().$destroy(),e.remove()}accept(){this.callback(!0),this.dismiss()}deny(){this.callback(!1),this.dismiss()}}jt.$inject=["$element"];class Ht extends O{constructor(){super(),this.restrict="E",this.template=Rt.a,this.controller=jt,this.controllerAs="ctrl",this.bindToController=!0,this.scope={show:"=",component:"=",permissionsString:"=",callback:"="}}}var Ut=n(74),Nt=n.n(Ut);function Lt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Kt{constructor(e,t){Lt(this,"$element",void 0),Lt(this,"$timeout",void 0),Lt(this,"application",void 0),Lt(this,"action",void 0),Lt(this,"onSuccess",void 0),Lt(this,"onCancel",void 0),Lt(this,"authParameters",{}),Lt(this,"sessionLengthOptions",void 0),Lt(this,"selectedSessionLength",void 0),Lt(this,"requiredCredentials",void 0),Lt(this,"failedCredentials",void 0),this.$element=e,this.$timeout=t}$onInit(){this.sessionLengthOptions=this.application.privilegesService.getSessionLengthOptions(),this.application.privilegesService.getSelectedSessionLength().then(e=>{this.$timeout(()=>{this.selectedSessionLength=e})}),this.application.privilegesService.netCredentialsForAction(this.action).then(e=>{this.$timeout(()=>{this.requiredCredentials=e.sort()})})}selectSessionLength(e){this.selectedSessionLength=e}promptForCredential(e){return this.application.privilegesService.displayInfoForCredential(e).prompt}cancel(){this.dismiss(),this.onCancel&&this.onCancel()}isCredentialInFailureState(e){return!!this.failedCredentials&&null!=this.failedCredentials.find(t=>t===e)}validate(){const e=[];for(const t of this.requiredCredentials){const n=this.authParameters[t];n&&0!==n.length||e.push(t)}return this.failedCredentials=e,0===e.length}async submit(){if(!this.validate())return;const e=await this.application.privilegesService.authenticateAction(this.action,this.authParameters);this.$timeout(()=>{e.success?(this.application.privilegesService.setSessionLength(this.selectedSessionLength),this.onSuccess(),this.dismiss()):this.failedCredentials=e.failedCredentials})}dismiss(){const e=this.$element;e.scope().$destroy(),e.remove()}}Kt.$inject=["$element","$timeout"];class Gt extends O{constructor(){super(),this.restrict="E",this.template=Nt.a,this.controller=Kt,this.controllerAs="ctrl",this.bindToController=!0,this.scope={action:"=",onSuccess:"=",onCancel:"=",application:"="}}}var $t=n(75),Yt=n.n($t);function Jt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Vt extends M{constructor(e,t){super(e),Jt(this,"hasPasscode",!1),Jt(this,"hasAccount",!1),Jt(this,"$element",void 0),Jt(this,"application",void 0),Jt(this,"privileges",void 0),Jt(this,"availableActions",void 0),Jt(this,"availableCredentials",void 0),Jt(this,"sessionExpirey",void 0),Jt(this,"sessionExpired",!0),Jt(this,"credentialDisplayInfo",{}),Jt(this,"onCancel",void 0),this.$element=t}async onAppLaunch(){super.onAppLaunch(),this.hasPasscode=this.application.hasPasscode(),this.hasAccount=!this.application.noAccount(),this.reloadPrivileges()}displayInfoForCredential(e){const t=this.application.privilegesService.displayInfoForCredential(e);return e===c.PrivilegeCredential.LocalPasscode?t.availability=this.hasPasscode:e===c.PrivilegeCredential.AccountPassword?t.availability=this.hasAccount:t.availability=!0,t}displayInfoForAction(e){return this.application.privilegesService.displayInfoForAction(e).label}isCredentialRequiredForAction(e,t){return!!this.privileges&&this.privileges.isCredentialRequiredForAction(e,t)}async clearSession(){await this.application.privilegesService.clearSession(),this.reloadPrivileges()}async reloadPrivileges(){this.availableActions=this.application.privilegesService.getAvailableActions(),this.availableCredentials=this.application.privilegesService.getAvailableCredentials();const e=await this.application.privilegesService.getSessionExpirey();this.sessionExpirey=e.toLocaleString(),this.sessionExpired=new Date>=e;for(const e of this.availableCredentials)this.credentialDisplayInfo[e]=this.displayInfoForCredential(e);const t=await this.application.privilegesService.getPrivileges();this.$timeout(()=>{this.privileges=t})}checkboxValueChanged(e,t){this.application.changeAndSaveItem(this.privileges.uuid,n=>{n.toggleCredentialForAction(e,t)})}cancel(){this.dismiss(),this.onCancel&&this.onCancel()}dismiss(){const e=this.$element;e.scope().$destroy(),e.remove()}}Vt.$inject=["$timeout","$element"];class zt extends O{constructor(){super(),this.restrict="E",this.template=Yt.a,this.controller=Vt,this.controllerAs="ctrl",this.bindToController=!0,this.scope={application:"="}}}var qt=n(76),Wt=n.n(qt);function Xt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Zt{constructor(e,t){Xt(this,"$element",void 0),Xt(this,"$timeout",void 0),Xt(this,"uuid",void 0),Xt(this,"content",void 0),Xt(this,"application",void 0),Xt(this,"unregisterComponent",void 0),Xt(this,"note",void 0),Xt(this,"editor",void 0),this.$element=e,this.$timeout=t}$onInit(){this.configure()}$onDestroy(){this.unregisterComponent&&(this.unregisterComponent(),this.unregisterComponent=void 0)}get componentManager(){return this.application.componentManager}async configure(){this.note=await this.application.createTemplateItem(c.ContentType.Note,this.content);const e=this.application.findItem(this.uuid),t=this.componentManager.editorForNote(e);if(t){const e=await this.application.createTemplateItem(c.ContentType.Component,t.safeContent);this.componentManager.setReadonlyStateForComponent(e,!0,!0),this.unregisterComponent=this.componentManager.registerHandler({identifier:e.uuid,areas:[c.ComponentArea.Editor],contextRequestHandler:e=>{var t;if(e===(null===(t=this.editor)||void 0===t?void 0:t.uuid))return this.note},componentForSessionKeyHandler:e=>{if(e===this.componentManager.sessionKeyForComponent(this.editor))return this.editor}}),this.editor=e}}restore(e){const t=async()=>{if(e){const e=Object.assign({},this.content);e.title&&(e.title+=" (copy)"),await this.application.createManagedItem(c.ContentType.Note,e,!0)}else this.application.changeAndSaveItem(this.uuid,e=>{e.setContent(this.content)},!0,c.PayloadSource.RemoteActionRetrieved);this.dismiss()};e?t():this.application.alertService.confirm("Are you sure you want to replace the current note's contents with what you see in this preview?",void 0,void 0,void 0,t,void 0,!0)}dismiss(){const e=this.$element;e.scope().$destroy(),e.remove()}}Zt.$inject=["$element","$timeout"];class en extends O{constructor(){super(),this.restrict="E",this.template=Wt.a,this.controller=Zt,this.controllerAs="ctrl",this.bindToController=!0,this.scope={uuid:"=",content:"=",application:"="}}}var tn=n(77),nn=n.n(tn);function rn(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class an{constructor(e){rn(this,"$timeout",void 0),rn(this,"diskEnabled",!1),rn(this,"autoOptimize",!1),rn(this,"application",void 0),rn(this,"item",void 0),rn(this,"entries",void 0),rn(this,"history",void 0),this.$timeout=e}$onInit(){this.reloadHistory(),this.diskEnabled=this.application.historyManager.isDiskEnabled(),this.autoOptimize=this.application.historyManager.isAutoOptimizeEnabled()}reloadHistory(){const e=this.application.historyManager.historyForItem(this.item);this.entries=e.entries.slice(0).sort((e,t)=>e.payload.updated_at<t.payload.updated_at?1:-1),this.history=e}openRevision(e){this.application.presentRevisionPreviewModal(e.payload.uuid,e.payload.content)}classForRevision(e){const t=e.operationVector();return 0===t?"default":1===t?"success":-1===t?"danger":void 0}clearItemHistory(){this.application.alertService.confirm("Are you sure you want to delete the local session history for this note?",void 0,void 0,void 0,()=>{this.application.historyManager.clearHistoryForItem(this.item).then(()=>{this.$timeout(()=>{this.reloadHistory()})})},void 0,!0)}clearAllHistory(){this.application.alertService.confirm("Are you sure you want to delete the local session history for all notes?",void 0,void 0,void 0,()=>{this.application.historyManager.clearAllHistory().then(()=>{this.$timeout(()=>{this.reloadHistory()})})},void 0,!0)}toggleDiskSaving(){const e=()=>{this.application.historyManager.toggleDiskSaving().then(()=>{this.$timeout(()=>{this.diskEnabled=this.application.historyManager.isDiskEnabled()})})};this.application.historyManager.isDiskEnabled()?e():this.application.alertService.confirm("Are you sure you want to save history to disk? This will decrease general \n performance, especially as you type. You are advised to disable this feature \n if you experience any lagging.",void 0,void 0,void 0,e,void 0,!0)}toggleAutoOptimize(){this.application.historyManager.toggleAutoOptimize().then(()=>{this.$timeout(()=>{this.autoOptimize=this.application.historyManager.autoOptimize})})}}an.$inject=["$timeout"];class on extends O{constructor(){super(),this.restrict="E",this.template=nn.a,this.controller=an,this.controllerAs="ctrl",this.bindToController=!0,this.scope={item:"=",application:"="}}}var sn=n(78),cn=n.n(sn);function un(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class ln{constructor(e){un(this,"closeFunction",void 0),un(this,"application",void 0),un(this,"$timeout",void 0),un(this,"status",{}),this.$timeout=e}downloadBackup(e){this.application.getArchiveService().downloadBackup(e),this.status.backupFinished=!0}skipBackup(){this.status.backupFinished=!0}async performSyncResolution(){this.status.resolving=!0,await this.application.resolveOutOfSync(),this.$timeout(()=>{this.status.resolving=!1,this.status.attemptedResolution=!0,this.application.isOutOfSync()?this.status.fail=!0:this.status.success=!0})}close(){this.$timeout(()=>{this.closeFunction()})}}ln.$inject=["$timeout"];class An extends O{constructor(){super(),this.restrict="E",this.template=cn.a,this.controller=ln,this.controllerAs="ctrl",this.bindToController=!0,this.scope={closeFunction:"&",application:"="}}}function fn(e){return function(t){return e.trustAsResourceUrl(t)}}fn.$inject=["$sce"],i.a.module("app",["ngSanitize"]),i.a.module("app").config(o).constant("appVersion","3.5.0-alpha1"),i.a.module("app").directive("applicationGroupView",()=>new N).directive("applicationView",()=>new V).directive("editorGroupView",()=>new Z).directive("editorView",()=>new Ae).directive("tagsView",()=>new Qe).directive("notesView",()=>new Ce).directive("footerView",()=>new ge),i.a.module("app").directive("snAutofocus",["$timeout",Fe]).directive("clickOutside",["$document",Oe]).directive("delayHide",Re).directive("elemReady",Te).directive("fileChange",(function(){return{restrict:"A",scope:{handler:"&"},link:function(e,t){t.on("change",t=>{e.$apply(()=>{const n=t.target.files;e.handler({files:n})})})}}})).directive("infiniteScroll",[function(){return{link:function(e,t,n){const r=e,i=parseInt(n.threshold)||0,o=t[0];r.paginate=Object(a.b)(()=>{e.$apply(n.infiniteScroll)},10),r.onScroll=()=>{e.$eval(n.canLoad)&&o.scrollTop+o.offsetHeight>=o.scrollHeight-i&&r.paginate()},t.on("scroll",r.onScroll),e.$on("$destroy",()=>{t.off("scroll",r.onScroll)})}}}]).directive("lowercase",(function(){return{require:"ngModel",link:function(e,t,n,r){const i=e=>{void 0===e&&(e="");const t=e.toLowerCase();return t!==e&&(r.$setViewValue(t),r.$render()),t};r.$parsers.push(i),i(e[n.ngModel])}}})).directive("selectOnFocus",["$window",je.a]).directive("snEnter",(function(){return function(e,t,n){t.bind("keydown keypress",(function(t){13===t.which&&(e.$apply((function(){e.$eval(n.snEnter,{event:t})})),t.preventDefault())}))}})),i.a.module("app").directive("accountMenu",()=>new Ke).directive("actionsMenu",()=>new Ve).directive("challengeModal",()=>new Me).directive("componentModal",()=>new Ze).directive("componentView",()=>new it).directive("editorMenu",()=>new ut).directive("inputModal",()=>new pt).directive("menuRow",()=>new mt).directive("panelResizer",()=>new kt).directive("passwordWizard",()=>new Ft).directive("permissionsModal",()=>new Ht).directive("privilegesAuthModal",()=>new Gt).directive("privilegesManagementModal",()=>new zt).directive("revisionPreviewModal",()=>new en).directive("sessionHistoryMenu",()=>new on).directive("syncResolutionMenu",()=>new An),i.a.module("app").filter("trusted",["$sce",fn]),i.a.module("app").service("mainApplicationGroup",D),a.e&&Object.defineProperties(window,{application:{get:()=>i.a.element(document).injector().get("mainApplicationGroup").application}})}]);
//# sourceMappingURL=app.js.map