* wip: component viewer * feat: get component status from component viewer * feat: native components * fix: remove unused property * fix: remove unused func * chore(deps): snjs 2.29.0 * fix: import location * feat: native components * fix: remove unused func * feat: component viewer (#781) * wip: component viewer * feat: get component status from component viewer * fix: remove unused property * chore(deps): snjs 2.29.0 * fix: import location * chore: use cp instead of webpack copy * fix: types * chore: misc
1 line
577 KiB
JavaScript
1 line
577 KiB
JavaScript
!function(e){"use strict";var u,c,l,f,h,p,t,n=Object.prototype,d=n.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",o=r.toStringTag||"@@toStringTag",r="object"==typeof module,s=e.regeneratorRuntime;function g(e,t,n,r){var i,a,o,s,t=t&&t.prototype instanceof v?t:v,t=Object.create(t.prototype),r=new S(r||[]);return t._invoke=(i=e,a=n,o=r,s=c,function(e,t){if(s===f)throw new Error("Generator is already running");if(s===h){if("throw"===e)throw t;return R()}for(o.method=e,o.arg=t;;){var n=o.delegate;if(n){var r=function e(t,n){var r=t.iterator[n.method];if(r===u){if(n.delegate=null,"throw"===n.method){if(t.iterator.return&&(n.method="return",n.arg=u,e(t,n),"throw"===n.method))return p;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return p}r=m(r,t.iterator,n.arg);if("throw"===r.type)return n.method="throw",n.arg=r.arg,n.delegate=null,p;var r=r.arg;if(!r)return n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,p;{if(!r.done)return r;n[t.resultName]=r.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=u)}n.delegate=null;return p}(n,o);if(r){if(r===p)continue;return r}}if("next"===o.method)o.sent=o._sent=o.arg;else if("throw"===o.method){if(s===c)throw s=h,o.arg;o.dispatchException(o.arg)}else"return"===o.method&&o.abrupt("return",o.arg);s=f;r=m(i,a,o);if("normal"===r.type){if(s=o.done?h:l,r.arg!==p)return{value:r.arg,done:o.done}}else"throw"===r.type&&(s=h,o.method="throw",o.arg=r.arg)}}),t}function m(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}function v(){}function y(){}function b(){}function k(e){["next","throw","return"].forEach(function(t){e[t]=function(e){return this._invoke(t,e)}})}function w(o){var t;this._invoke=function(n,r){function e(){return new Promise(function(e,t){!function t(e,n,r,i){e=m(o[e],o,n);if("throw"!==e.type){var a=e.arg,n=a.value;return n&&"object"==typeof n&&d.call(n,"__await")?Promise.resolve(n.__await).then(function(e){t("next",e,r,i)},function(e){t("throw",e,r,i)}):Promise.resolve(n).then(function(e){a.value=e,r(a)},i)}i(e.arg)}(n,r,e,t)})}return t=t?t.then(e,e):e()}}function x(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 $(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(x,this),this.reset(!0)}function _(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,e=function e(){for(;++n<t.length;)if(d.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=u,e.done=!0,e};return e.next=e}}return{next:R}}function R(){return{value:u,done:!0}}s?r&&(module.exports=s):((s=e.regeneratorRuntime=r?module.exports:{}).wrap=g,c="suspendedStart",l="suspendedYield",f="executing",h="completed",p={},(e={})[i]=function(){return this},(r=(r=Object.getPrototypeOf)&&r(r(_([]))))&&r!==n&&d.call(r,i)&&(e=r),t=b.prototype=v.prototype=Object.create(e),(y.prototype=t.constructor=b).constructor=y,b[o]=y.displayName="GeneratorFunction",s.isGeneratorFunction=function(e){e="function"==typeof e&&e.constructor;return!!e&&(e===y||"GeneratorFunction"===(e.displayName||e.name))},s.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,o in e||(e[o]="GeneratorFunction")),e.prototype=Object.create(t),e},s.awrap=function(e){return{__await:e}},k(w.prototype),w.prototype[a]=function(){return this},s.AsyncIterator=w,s.async=function(e,t,n,r){var i=new w(g(e,t,n,r));return s.isGeneratorFunction(t)?i:i.next().then(function(e){return e.done?e.value:i.next()})},k(t),t[o]="Generator",t[i]=function(){return this},t.toString=function(){return"[object Generator]"},s.keys=function(n){var e,r=[];for(e in n)r.push(e);return r.reverse(),function e(){for(;r.length;){var t=r.pop();if(t in n)return e.value=t,e.done=!1,e}return e.done=!0,e}},s.values=_,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=u,this.done=!1,this.delegate=null,this.method="next",this.arg=u,this.tryEntries.forEach($),!e)for(var t in this)"t"===t.charAt(0)&&d.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=u)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(n){if(this.done)throw n;var r=this;function e(e,t){return a.type="throw",a.arg=n,r.next=e,t&&(r.method="next",r.arg=u),!!t}for(var t=this.tryEntries.length-1;0<=t;--t){var i=this.tryEntries[t],a=i.completion;if("root"===i.tryLoc)return e("end");if(i.tryLoc<=this.prev){var o=d.call(i,"catchLoc"),s=d.call(i,"finallyLoc");if(o&&s){if(this.prev<i.catchLoc)return e(i.catchLoc,!0);if(this.prev<i.finallyLoc)return e(i.finallyLoc)}else if(o){if(this.prev<i.catchLoc)return e(i.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return e(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;0<=n;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&d.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}var a=(i=i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc?null:i)?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,p):this.complete(a)},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),p},finish:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),$(n),p}},catch:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r,i=n.completion;return"throw"===i.type&&(r=i.arg,$(n)),r}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:_(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=u),p}})}(function(){return this}()||Function("return this")()),function(e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).SF=e()}(function(){return function r(i,a,o){function s(t,e){if(!a[t]){if(!i[t]){var n="function"==typeof require&&require;if(!e&&n)return n(t,!0);if(u)return u(t,!0);throw(n=new Error("Cannot find module '"+t+"'")).code="MODULE_NOT_FOUND",n}n=a[t]={exports:{}},i[t][0].call(n.exports,function(e){return s(i[t][1][e]||e)},n,n.exports,r,i,a,o)}return a[t].exports}for(var u="function"==typeof require&&require,e=0;e<o.length;e++)s(o[e]);return s}({1:[function(e,t,ie){!function(e){var u,c,r,A=A||function(s){function n(){}var e={},t=e.lib={},r=t.Base={extend:function(e){n.prototype=this;var t=new n;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),(t.init.prototype=t).$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},u=t.WordArray=r.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||a).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i<e;i++)t[r+i>>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535<n.length)for(i=0;i<e;i+=4)t[r+i>>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=s.ceil(t/4)},clone:function(){var e=r.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(4294967296*s.random()|0);return new u.init(t,e)}}),i=e.enc={},a=i.Hex={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++){var i=t[r>>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},o=i.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++)n.push(String.fromCharCode(t[r>>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},c=i.Utf8={stringify:function(e){try{return decodeURIComponent(escape(o.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return o.parse(unescape(encodeURIComponent(e)))}},l=t.BufferedBlockAlgorithm=r.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t=this._data,n=t.words,r=t.sigBytes,i=this.blockSize,a=r/(4*i),a=e?s.ceil(a):s.max((0|a)-this._minBufferSize,0),r=s.min(4*(e=a*i),r);if(e){for(var o=0;o<e;o+=i)this._doProcessBlock(n,o);o=n.splice(0,e),t.sigBytes-=r}return new u.init(o,r)},clone:function(){var e=r.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});t.Hasher=l.extend({cfg:r.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(e,t){return new n.init(t).finalize(e)}},_createHmacHelper:function(n){return function(e,t){return new f.HMAC.init(n,t).finalize(e)}}});var f=e.algo={};return e}(Math);u=A.lib.WordArray,A.enc.Base64={stringify:function(e){var t=e.words,n=e.sigBytes,r=this._map;e.clamp(),e=[];for(var i=0;i<n;i+=3)for(var a=(t[i>>>2]>>>24-i%4*8&255)<<16|(t[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|t[i+2>>>2]>>>24-(i+2)%4*8&255,o=0;o<4&&i+.75*o<n;o++)e.push(r.charAt(a>>>6*(3-o)&63));if(t=r.charAt(64))for(;e.length%4;)e.push(t);return e.join("")},parse:function(e){var t=e.length,n=this._map;!(a=n.charAt(64))||-1!=(a=e.indexOf(a))&&(t=a);for(var r,i,a=[],o=0,s=0;s<t;s++)s%4&&(r=n.indexOf(e.charAt(s-1))<<s%4*2,i=n.indexOf(e.charAt(s))>>>6-s%4*2,a[o>>>2]|=(r|i)<<24-o%4*8,o++);return u.create(a,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},function(a){function $(e,t,n,r,i,a,o){return((e=e+(t&n|~t&r)+i+o)<<a|e>>>32-a)+t}function S(e,t,n,r,i,a,o){return((e=e+(t&r|n&~r)+i+o)<<a|e>>>32-a)+t}function _(e,t,n,r,i,a,o){return((e=e+(t^n^r)+i+o)<<a|e>>>32-a)+t}function R(e,t,n,r,i,a,o){return((e=e+(n^(t|~r))+i+o)<<a|e>>>32-a)+t}for(var e=A,t=(r=e.lib).WordArray,n=r.Hasher,r=e.algo,I=[],i=0;i<64;i++)I[i]=4294967296*a.abs(a.sin(i+1))|0;r=r.MD5=n.extend({_doReset:function(){this._hash=new t.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,t){for(var n=0;n<16;n++){var r=e[i=t+n];e[i]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8)}var n=this._hash.words,i=e[t+0],r=e[t+1],a=e[t+2],o=e[t+3],s=e[t+4],u=e[t+5],c=e[t+6],l=e[t+7],f=e[t+8],h=e[t+9],p=e[t+10],d=e[t+11],g=e[t+12],m=e[t+13],v=e[t+14],y=e[t+15],b=$(b=n[0],x=n[1],w=n[2],k=n[3],i,7,I[0]),k=$(k,b,x,w,r,12,I[1]),w=$(w,k,b,x,a,17,I[2]),x=$(x,w,k,b,o,22,I[3]),b=$(b,x,w,k,s,7,I[4]),k=$(k,b,x,w,u,12,I[5]),w=$(w,k,b,x,c,17,I[6]),x=$(x,w,k,b,l,22,I[7]),b=$(b,x,w,k,f,7,I[8]),k=$(k,b,x,w,h,12,I[9]),w=$(w,k,b,x,p,17,I[10]),x=$(x,w,k,b,d,22,I[11]),b=$(b,x,w,k,g,7,I[12]),k=$(k,b,x,w,m,12,I[13]),w=$(w,k,b,x,v,17,I[14]),b=S(b,x=$(x,w,k,b,y,22,I[15]),w,k,r,5,I[16]),k=S(k,b,x,w,c,9,I[17]),w=S(w,k,b,x,d,14,I[18]),x=S(x,w,k,b,i,20,I[19]),b=S(b,x,w,k,u,5,I[20]),k=S(k,b,x,w,p,9,I[21]),w=S(w,k,b,x,y,14,I[22]),x=S(x,w,k,b,s,20,I[23]),b=S(b,x,w,k,h,5,I[24]),k=S(k,b,x,w,v,9,I[25]),w=S(w,k,b,x,o,14,I[26]),x=S(x,w,k,b,f,20,I[27]),b=S(b,x,w,k,m,5,I[28]),k=S(k,b,x,w,a,9,I[29]),w=S(w,k,b,x,l,14,I[30]),b=_(b,x=S(x,w,k,b,g,20,I[31]),w,k,u,4,I[32]),k=_(k,b,x,w,f,11,I[33]),w=_(w,k,b,x,d,16,I[34]),x=_(x,w,k,b,v,23,I[35]),b=_(b,x,w,k,r,4,I[36]),k=_(k,b,x,w,s,11,I[37]),w=_(w,k,b,x,l,16,I[38]),x=_(x,w,k,b,p,23,I[39]),b=_(b,x,w,k,m,4,I[40]),k=_(k,b,x,w,i,11,I[41]),w=_(w,k,b,x,o,16,I[42]),x=_(x,w,k,b,c,23,I[43]),b=_(b,x,w,k,h,4,I[44]),k=_(k,b,x,w,g,11,I[45]),w=_(w,k,b,x,y,16,I[46]),b=R(b,x=_(x,w,k,b,a,23,I[47]),w,k,i,6,I[48]),k=R(k,b,x,w,l,10,I[49]),w=R(w,k,b,x,v,15,I[50]),x=R(x,w,k,b,u,21,I[51]),b=R(b,x,w,k,g,6,I[52]),k=R(k,b,x,w,o,10,I[53]),w=R(w,k,b,x,p,15,I[54]),x=R(x,w,k,b,r,21,I[55]),b=R(b,x,w,k,f,6,I[56]),k=R(k,b,x,w,y,10,I[57]),w=R(w,k,b,x,c,15,I[58]),x=R(x,w,k,b,m,21,I[59]),b=R(b,x,w,k,s,6,I[60]),k=R(k,b,x,w,d,10,I[61]),w=R(w,k,b,x,a,15,I[62]),x=R(x,w,k,b,h,21,I[63]);n[0]=n[0]+b|0,n[1]=n[1]+x|0,n[2]=n[2]+w|0,n[3]=n[3]+k|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;t[r>>>5]|=128<<24-r%32;var i=a.floor(n/4294967296);for(t[15+(64+r>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),t[14+(64+r>>>9<<4)]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),e.sigBytes=4*(t.length+1),this._process(),t=(e=this._hash).words,n=0;n<4;n++)r=t[n],t[n]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8);return e},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e}}),e.MD5=n._createHelper(r),e.HmacMD5=n._createHmacHelper(r)}(Math),U=(N=A).lib,P=U.Base,c=U.WordArray,r=(U=N.algo).EvpKDF=P.extend({cfg:P.extend({keySize:4,hasher:U.MD5,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n=(o=this.cfg).hasher.create(),r=c.create(),i=r.words,a=o.keySize,o=o.iterations;i.length<a;){s&&n.update(s);var s=n.update(e).finalize(t);n.reset();for(var u=1;u<o;u++)s=n.finalize(s),n.reset();r.concat(s)}return r.sigBytes=4*a,r}}),N.EvpKDF=function(e,t,n){return r.create(n).compute(e,t)},A.lib.Cipher||function(){var e=(h=A).lib,t=e.Base,o=e.WordArray,n=e.BufferedBlockAlgorithm,r=h.enc.Base64,i=h.algo.EvpKDF,a=e.Cipher=n.extend({cfg:t.extend(),createEncryptor:function(e,t){return this.create(this._ENC_XFORM_MODE,e,t)},createDecryptor:function(e,t){return this.create(this._DEC_XFORM_MODE,e,t)},init:function(e,t,n){this.cfg=this.cfg.extend(n),this._xformMode=e,this._key=t,this.reset()},reset:function(){n.reset.call(this),this._doReset()},process:function(e){return this._append(e),this._process()},finalize:function(e){return e&&this._append(e),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(r){return{encrypt:function(e,t,n){return("string"==typeof t?p:f).encrypt(r,e,t,n)},decrypt:function(e,t,n){return("string"==typeof t?p:f).decrypt(r,e,t,n)}}}});e.StreamCipher=a.extend({_doFinalize:function(){return this._process(!0)},blockSize:1});function s(e,t,n){var r=this._iv;r?this._iv=void 0:r=this._prevBlock;for(var i=0;i<n;i++)e[t+i]^=r[i]}var u=h.mode={},c=(e.BlockCipherMode=t.extend({createEncryptor:function(e,t){return this.Encryptor.create(e,t)},createDecryptor:function(e,t){return this.Decryptor.create(e,t)},init:function(e,t){this._cipher=e,this._iv=t}})).extend();c.Encryptor=c.extend({processBlock:function(e,t){var n=this._cipher,r=n.blockSize;s.call(this,e,t,r),n.encryptBlock(e,t),this._prevBlock=e.slice(t,t+r)}}),c.Decryptor=c.extend({processBlock:function(e,t){var n=this._cipher,r=n.blockSize,i=e.slice(t,t+r);n.decryptBlock(e,t),s.call(this,e,t,r),this._prevBlock=i}}),u=u.CBC=c,c=(h.pad={}).Pkcs7={pad:function(e,t){for(var n=4*t,r=(n=n-e.sigBytes%n)<<24|n<<16|n<<8|n,i=[],a=0;a<n;a+=4)i.push(r);n=o.create(i,n),e.concat(n)},unpad:function(e){e.sigBytes-=255&e.words[e.sigBytes-1>>>2]}},e.BlockCipher=a.extend({cfg:a.cfg.extend({mode:u,padding:c}),reset:function(){a.reset.call(this);var e,t=(n=this.cfg).iv,n=n.mode;this._xformMode==this._ENC_XFORM_MODE?e=n.createEncryptor:(e=n.createDecryptor,this._minBufferSize=1),this._mode=e.call(n,this,t&&t.words)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e,t=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(t.pad(this._data,this.blockSize),e=this._process(!0)):(e=this._process(!0),t.unpad(e)),e},blockSize:4});var l=e.CipherParams=t.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),u=(h.format={}).OpenSSL={stringify:function(e){var t=e.ciphertext;return((e=e.salt)?o.create([1398893684,1701076831]).concat(e).concat(t):t).toString(r)},parse:function(e){var t,n=(e=r.parse(e)).words;return 1398893684==n[0]&&1701076831==n[1]&&(t=o.create(n.slice(2,4)),n.splice(0,4),e.sigBytes-=16),l.create({ciphertext:e,salt:t})}},f=e.SerializableCipher=t.extend({cfg:t.extend({format:u}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=e.createEncryptor(n,r);return t=i.finalize(t),i=i.cfg,l.create({ciphertext:t,key:n,iv:i.iv,algorithm:e,mode:i.mode,padding:i.padding,blockSize:e.blockSize,formatter:r.format})},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),e.createDecryptor(n,r).finalize(t.ciphertext)},_parse:function(e,t){return"string"==typeof e?t.parse(e,this):e}}),h=(h.kdf={}).OpenSSL={execute:function(e,t,n,r){return r=r||o.random(8),e=i.create({keySize:t+n}).compute(e,r),n=o.create(e.words.slice(t),4*n),e.sigBytes=4*t,l.create({key:e,iv:n,salt:r})}},p=e.PasswordBasedCipher=f.extend({cfg:f.cfg.extend({kdf:h}),encrypt:function(e,t,n,r){return n=(r=this.cfg.extend(r)).kdf.execute(n,e.keySize,e.ivSize),r.iv=n.iv,(e=f.encrypt.call(this,e,t,n.key,r)).mixIn(n),e},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),n=r.kdf.execute(n,e.keySize,e.ivSize,t.salt),r.iv=n.iv,f.decrypt.call(this,e,t,n.key,r)}})}(),function(){for(var e=A,t=e.lib.BlockCipher,n=e.algo,o=[],r=[],i=[],a=[],s=[],u=[],c=[],l=[],f=[],h=[],p=[],d=0;d<256;d++)p[d]=d<128?d<<1:d<<1^283;for(var g=0,m=0,d=0;d<256;d++){var v=m^m<<1^m<<2^m<<3^m<<4;o[g]=v=v>>>8^255&v^99;var y=p[r[v]=g],b=p[y],k=p[b],w=257*p[v]^16843008*v;i[g]=w<<24|w>>>8,a[g]=w<<16|w>>>16,s[g]=w<<8|w>>>24,u[g]=w,c[v]=(w=16843009*k^65537*b^257*y^16843008*g)<<24|w>>>8,l[v]=w<<16|w>>>16,f[v]=w<<8|w>>>24,h[v]=w,g?(g=y^p[p[p[k^y]]],m^=p[p[m]]):g=m=1}var x=[0,1,2,4,8,16,32,64,128,27,54],n=n.AES=t.extend({_doReset:function(){for(var e,t=(r=this._key).words,n=r.sigBytes/4,r=4*((this._nRounds=n+6)+1),i=this._keySchedule=[],a=0;a<r;a++)a<n?i[a]=t[a]:(e=i[a-1],a%n?6<n&&4==a%n&&(e=o[e>>>24]<<24|o[e>>>16&255]<<16|o[e>>>8&255]<<8|o[255&e]):(e=o[(e=e<<8|e>>>24)>>>24]<<24|o[e>>>16&255]<<16|o[e>>>8&255]<<8|o[255&e],e^=x[a/n|0]<<24),i[a]=i[a-n]^e);for(t=this._invKeySchedule=[],n=0;n<r;n++)a=r-n,e=n%4?i[a]:i[a-4],t[n]=n<4||a<=4?e:c[o[e>>>24]]^l[o[e>>>16&255]]^f[o[e>>>8&255]]^h[o[255&e]]},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,i,a,s,u,o)},decryptBlock:function(e,t){var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n,this._doCryptBlock(e,t,this._invKeySchedule,c,l,f,h,r),n=e[t+1],e[t+1]=e[t+3],e[t+3]=n},_doCryptBlock:function(e,t,n,r,i,a,o,s){for(var u=this._nRounds,c=e[t]^n[0],l=e[t+1]^n[1],f=e[t+2]^n[2],h=e[t+3]^n[3],p=4,d=1;d<u;d++)var g=r[c>>>24]^i[l>>>16&255]^a[f>>>8&255]^o[255&h]^n[p++],m=r[l>>>24]^i[f>>>16&255]^a[h>>>8&255]^o[255&c]^n[p++],v=r[f>>>24]^i[h>>>16&255]^a[c>>>8&255]^o[255&l]^n[p++],h=r[h>>>24]^i[c>>>16&255]^a[l>>>8&255]^o[255&f]^n[p++],c=g,l=m,f=v;g=(s[c>>>24]<<24|s[l>>>16&255]<<16|s[f>>>8&255]<<8|s[255&h])^n[p++],m=(s[l>>>24]<<24|s[f>>>16&255]<<16|s[h>>>8&255]<<8|s[255&c])^n[p++],v=(s[f>>>24]<<24|s[h>>>16&255]<<16|s[c>>>8&255]<<8|s[255&l])^n[p++],h=(s[h>>>24]<<24|s[c>>>16&255]<<16|s[l>>>8&255]<<8|s[255&f])^n[p++],e[t]=g,e[t+1]=m,e[t+2]=v,e[t+3]=h},keySize:8});e.AES=t._createHelper(n)}();var s,A=A||function(s){function n(){}var e={},t=e.lib={},r=t.Base={extend:function(e){n.prototype=this;var t=new n;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),(t.init.prototype=t).$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},u=t.WordArray=r.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||a).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i<e;i++)t[r+i>>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535<n.length)for(i=0;i<e;i+=4)t[r+i>>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=s.ceil(t/4)},clone:function(){var e=r.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(4294967296*s.random()|0);return new u.init(t,e)}}),i=e.enc={},a=i.Hex={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++){var i=t[r>>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},o=i.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++)n.push(String.fromCharCode(t[r>>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},c=i.Utf8={stringify:function(e){try{return decodeURIComponent(escape(o.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return o.parse(unescape(encodeURIComponent(e)))}},l=t.BufferedBlockAlgorithm=r.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t=this._data,n=t.words,r=t.sigBytes,i=this.blockSize,a=r/(4*i),a=e?s.ceil(a):s.max((0|a)-this._minBufferSize,0),r=s.min(4*(e=a*i),r);if(e){for(var o=0;o<e;o+=i)this._doProcessBlock(n,o);o=n.splice(0,e),t.sigBytes-=r}return new u.init(o,r)},clone:function(){var e=r.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});t.Hasher=l.extend({cfg:r.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(e,t){return new n.init(t).finalize(e)}},_createHmacHelper:function(n){return function(e,t){return new f.HMAC.init(n,t).finalize(e)}}});var f=e.algo={};return e}(Math);!function(i){function e(e){return 4294967296*(e-(0|e))|0}for(var t=A,n=(a=t.lib).WordArray,r=a.Hasher,a=t.algo,o=[],d=[],s=2,u=0;u<64;){e:{for(var c,l=i.sqrt(c=s),f=2;f<=l;f++)if(!(c%f)){c=!1;break e}c=!0}c&&(u<8&&(o[u]=e(i.pow(s,.5))),d[u]=e(i.pow(s,1/3)),u++),s++}var g=[],a=a.SHA256=r.extend({_doReset:function(){this._hash=new n.init(o.slice(0))},_doProcessBlock:function(e,t){for(var n,r,i=this._hash.words,a=i[0],o=i[1],s=i[2],u=i[3],c=i[4],l=i[5],f=i[6],h=i[7],p=0;p<64;p++)p<16?g[p]=0|e[t+p]:(n=g[p-15],r=g[p-2],g[p]=((n<<25|n>>>7)^(n<<14|n>>>18)^n>>>3)+g[p-7]+((r<<15|r>>>17)^(r<<13|r>>>19)^r>>>10)+g[p-16]),n=h+((c<<26|c>>>6)^(c<<21|c>>>11)^(c<<7|c>>>25))+(c&l^~c&f)+d[p]+g[p],r=((a<<30|a>>>2)^(a<<19|a>>>13)^(a<<10|a>>>22))+(a&o^a&s^o&s),h=f,f=l,l=c,c=u+n|0,u=s,s=o,o=a,a=n+r|0;i[0]=i[0]+a|0,i[1]=i[1]+o|0,i[2]=i[2]+s|0,i[3]=i[3]+u|0,i[4]=i[4]+c|0,i[5]=i[5]+l|0,i[6]=i[6]+f|0,i[7]=i[7]+h|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(64+r>>>9<<4)]=i.floor(n/4294967296),t[15+(64+r>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=r.clone.call(this);return e._hash=this._hash.clone(),e}});t.SHA256=r._createHelper(a),t.HmacSHA256=r._createHmacHelper(a)}(Math),s=A.enc.Utf8,A.algo.HMAC=A.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=s.parse(t));var n=e.blockSize,r=4*n;(t=t.sigBytes>r?e.finalize(t):t).clamp();for(var e=this._oKey=t.clone(),t=this._iKey=t.clone(),i=e.words,a=t.words,o=0;o<n;o++)i[o]^=1549556828,a[o]^=909522486;e.sigBytes=t.sigBytes=r,this.reset()},reset:function(){var e=this._hasher;e.reset(),e.update(this._iKey)},update:function(e){return this._hasher.update(e),this},finalize:function(e){var t=this._hasher;return e=t.finalize(e),t.reset(),t.finalize(this._oKey.clone().concat(e))}});var i,a,l,A=A||function(s){function n(){}var e={},t=e.lib={},r=t.Base={extend:function(e){n.prototype=this;var t=new n;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),(t.init.prototype=t).$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},u=t.WordArray=r.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||a).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i<e;i++)t[r+i>>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535<n.length)for(i=0;i<e;i+=4)t[r+i>>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=s.ceil(t/4)},clone:function(){var e=r.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(4294967296*s.random()|0);return new u.init(t,e)}}),i=e.enc={},a=i.Hex={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++){var i=t[r>>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},o=i.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++)n.push(String.fromCharCode(t[r>>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},c=i.Utf8={stringify:function(e){try{return decodeURIComponent(escape(o.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return o.parse(unescape(encodeURIComponent(e)))}},l=t.BufferedBlockAlgorithm=r.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t=this._data,n=t.words,r=t.sigBytes,i=this.blockSize,a=r/(4*i),a=e?s.ceil(a):s.max((0|a)-this._minBufferSize,0),r=s.min(4*(e=a*i),r);if(e){for(var o=0;o<e;o+=i)this._doProcessBlock(n,o);o=n.splice(0,e),t.sigBytes-=r}return new u.init(o,r)},clone:function(){var e=r.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});t.Hasher=l.extend({cfg:r.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(e,t){return new n.init(t).finalize(e)}},_createHmacHelper:function(n){return function(e,t){return new f.HMAC.init(n,t).finalize(e)}}});var f=e.algo={};return e}(Math);V=A,L=A.lib,i=L.Base,a=L.WordArray,(V=A.x64={}).Word=i.extend({init:function(e,t){this.high=e,this.low=t}}),V.WordArray=i.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:8*e.length},toX32:function(){for(var e=this.words,t=e.length,n=[],r=0;r<t;r++){var i=e[r];n.push(i.high),n.push(i.low)}return a.create(n,this.sigBytes)},clone:function(){for(var e=i.clone.call(this),t=e.words=this.words.slice(0),n=t.length,r=0;r<n;r++)t[r]=t[r].clone();return e}}),function(){function e(){return r.create.apply(r,arguments)}for(var t=A,n=t.lib.Hasher,r=(a=t.x64).Word,i=a.WordArray,a=t.algo,te=[e(1116352408,3609767458),e(1899447441,602891725),e(3049323471,3964484399),e(3921009573,2173295548),e(961987163,4081628472),e(1508970993,3053834265),e(2453635748,2937671579),e(2870763221,3664609560),e(3624381080,2734883394),e(310598401,1164996542),e(607225278,1323610764),e(1426881987,3590304994),e(1925078388,4068182383),e(2162078206,991336113),e(2614888103,633803317),e(3248222580,3479774868),e(3835390401,2666613458),e(4022224774,944711139),e(264347078,2341262773),e(604807628,2007800933),e(770255983,1495990901),e(1249150122,1856431235),e(1555081692,3175218132),e(1996064986,2198950837),e(2554220882,3999719339),e(2821834349,766784016),e(2952996808,2566594879),e(3210313671,3203337956),e(3336571891,1034457026),e(3584528711,2466948901),e(113926993,3758326383),e(338241895,168717936),e(666307205,1188179964),e(773529912,1546045734),e(1294757372,1522805485),e(1396182291,2643833823),e(1695183700,2343527390),e(1986661051,1014477480),e(2177026350,1206759142),e(2456956037,344077627),e(2730485921,1290863460),e(2820302411,3158454273),e(3259730800,3505952657),e(3345764771,106217008),e(3516065817,3606008344),e(3600352804,1432725776),e(4094571909,1467031594),e(275423344,851169720),e(430227734,3100823752),e(506948616,1363258195),e(659060556,3750685593),e(883997877,3785050280),e(958139571,3318307427),e(1322822218,3812723403),e(1537002063,2003034995),e(1747873779,3602036899),e(1955562222,1575990012),e(2024104815,1125592928),e(2227730452,2716904306),e(2361852424,442776044),e(2428436474,593698344),e(2756734187,3733110249),e(3204031479,2999351573),e(3329325298,3815920427),e(3391569614,3928383900),e(3515267271,566280711),e(3940187606,3454069534),e(4118630271,4000239992),e(116418474,1914138554),e(174292421,2731055270),e(289380356,3203993006),e(460393269,320620315),e(685471733,587496836),e(852142971,1086792851),e(1017036298,365543100),e(1126000580,2618297676),e(1288033470,3409855158),e(1501505948,4234509866),e(1607167915,987167468),e(1816402316,1246189591)],ne=[],o=0;o<80;o++)ne[o]=e();a=a.SHA512=n.extend({_doReset:function(){this._hash=new i.init([new r.init(1779033703,4089235720),new r.init(3144134277,2227873595),new r.init(1013904242,4271175723),new r.init(2773480762,1595750129),new r.init(1359893119,2917565137),new r.init(2600822924,725511199),new r.init(528734635,4215389547),new r.init(1541459225,327033209)])},_doProcessBlock:function(e,t){for(var n=(c=this._hash.words)[0],r=c[1],i=c[2],a=c[3],o=c[4],s=c[5],u=c[6],c=c[7],l=n.high,f=n.low,h=r.high,p=r.low,d=i.high,g=i.low,m=a.high,v=a.low,y=o.high,b=o.low,k=s.high,w=s.low,x=u.high,$=u.low,S=c.high,_=c.low,R=l,I=f,A=h,C=p,O=d,M=g,D=m,T=v,E=y,P=b,F=k,L=w,B=x,j=$,H=S,N=_,U=0;U<80;U++){var V,z=ne[U];U<16?(V=z.high=0|e[t+2*U],J=z.low=0|e[t+2*U+1]):(V=((J=(V=ne[U-15]).high)>>>1|(q=V.low)<<31)^(J>>>8|q<<24)^J>>>7,q=(q>>>1|J<<31)^(q>>>8|J<<24)^(q>>>7|J<<25),K=((J=(K=ne[U-2]).high)>>>19|(W=K.low)<<13)^(J<<3|W>>>29)^J>>>6,W=(W>>>19|J<<13)^(W<<3|J>>>29)^(W>>>6|J<<26),G=(J=ne[U-7]).high,ee=(Y=ne[U-16]).high,Y=Y.low,J=q+J.low,z.high=V=(V=(V=V+G+(J>>>0<q>>>0?1:0))+K+((J=J+W)>>>0<W>>>0?1:0))+ee+((J=J+Y)>>>0<Y>>>0?1:0),z.low=J);var q,K,W,J,G=E&F^~E&B,Y=P&L^~P&j,z=R&A^R&O^A&O,X=I&C^I&M^C&M,Z=(W=te[U]).high,Q=W.low,ee=H+((E>>>14|P<<18)^(E>>>18|P<<14)^(E<<23|P>>>9))+((W=N+((P>>>14|E<<18)^(P>>>18|E<<14)^(P<<23|E>>>9)))>>>0<N>>>0?1:0),H=B,N=j,B=F,j=L,F=E,L=P,E=D+(ee=(ee=(ee=ee+G+((W=W+Y)>>>0<Y>>>0?1:0))+Z+((W=W+Q)>>>0<Q>>>0?1:0))+V+((W=W+J)>>>0<J>>>0?1:0))+((P=T+W|0)>>>0<T>>>0?1:0)|0,D=O,T=M,O=A,M=C,A=R,C=I,R=ee+(z=(q=(R>>>28|I<<4)^(R<<30|I>>>2)^(R<<25|I>>>7))+z+((J=(K=(I>>>28|R<<4)^(I<<30|R>>>2)^(I<<25|R>>>7))+X)>>>0<K>>>0?1:0))+((I=W+J|0)>>>0<W>>>0?1:0)|0}f=n.low=f+I,n.high=l+R+(f>>>0<I>>>0?1:0),p=r.low=p+C,r.high=h+A+(p>>>0<C>>>0?1:0),g=i.low=g+M,i.high=d+O+(g>>>0<M>>>0?1:0),v=a.low=v+T,a.high=m+D+(v>>>0<T>>>0?1:0),b=o.low=b+P,o.high=y+E+(b>>>0<P>>>0?1:0),w=s.low=w+L,s.high=k+F+(w>>>0<L>>>0?1:0),$=u.low=$+j,u.high=x+B+($>>>0<j>>>0?1:0),_=c.low=_+N,c.high=S+H+(_>>>0<N>>>0?1:0)},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[30+(128+r>>>10<<5)]=Math.floor(n/4294967296),t[31+(128+r>>>10<<5)]=n,e.sigBytes=4*t.length,this._process(),this._hash.toX32()},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e},blockSize:32}),t.SHA512=n._createHelper(a),t.HmacSHA512=n._createHmacHelper(a)}(),l=A.enc.Utf8,A.algo.HMAC=A.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=l.parse(t));var n=e.blockSize,r=4*n;(t=t.sigBytes>r?e.finalize(t):t).clamp();for(var e=this._oKey=t.clone(),t=this._iKey=t.clone(),i=e.words,a=t.words,o=0;o<n;o++)i[o]^=1549556828,a[o]^=909522486;e.sigBytes=t.sigBytes=r,this.reset()},reset:function(){var e=this._hasher;e.reset(),e.update(this._iKey)},update:function(e){return this._hasher.update(e),this},finalize:function(e){var t=this._hasher;return e=t.finalize(e),t.reset(),t.finalize(this._oKey.clone().concat(e))}});var t,n,f,h,m,v,o,A=A||function(s){function n(){}var e={},t=e.lib={},r=t.Base={extend:function(e){n.prototype=this;var t=new n;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),(t.init.prototype=t).$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},u=t.WordArray=r.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||a).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i<e;i++)t[r+i>>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535<n.length)for(i=0;i<e;i+=4)t[r+i>>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=s.ceil(t/4)},clone:function(){var e=r.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(4294967296*s.random()|0);return new u.init(t,e)}}),i=e.enc={},a=i.Hex={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++){var i=t[r>>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},o=i.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++)n.push(String.fromCharCode(t[r>>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},c=i.Utf8={stringify:function(e){try{return decodeURIComponent(escape(o.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return o.parse(unescape(encodeURIComponent(e)))}},l=t.BufferedBlockAlgorithm=r.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t=this._data,n=t.words,r=t.sigBytes,i=this.blockSize,a=r/(4*i),a=e?s.ceil(a):s.max((0|a)-this._minBufferSize,0),r=s.min(4*(e=a*i),r);if(e){for(var o=0;o<e;o+=i)this._doProcessBlock(n,o);o=n.splice(0,e),t.sigBytes-=r}return new u.init(o,r)},clone:function(){var e=r.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});t.Hasher=l.extend({cfg:r.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(e,t){return new n.init(t).finalize(e)}},_createHmacHelper:function(n){return function(e,t){return new f.HMAC.init(n,t).finalize(e)}}});var f=e.algo={};return e}(Math);t=(P=(q=A).lib).WordArray,n=P.Hasher,f=[],P=q.algo.SHA1=n.extend({_doReset:function(){this._hash=new t.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var n,r=this._hash.words,i=r[0],a=r[1],o=r[2],s=r[3],u=r[4],c=0;c<80;c++)c<16?f[c]=0|e[t+c]:(n=f[c-3]^f[c-8]^f[c-14]^f[c-16],f[c]=n<<1|n>>>31),n=(i<<5|i>>>27)+u+f[c],n=c<20?n+(1518500249+(a&o|~a&s)):c<40?n+(1859775393+(a^o^s)):c<60?n+((a&o|a&s|o&s)-1894007588):n+((a^o^s)-899497514),u=s,s=o,o=a<<30|a>>>2,a=i,i=n;r[0]=r[0]+i|0,r[1]=r[1]+a|0,r[2]=r[2]+o|0,r[3]=r[3]+s|0,r[4]=r[4]+u|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(64+r>>>9<<4)]=Math.floor(n/4294967296),t[15+(64+r>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e}}),q.SHA1=n._createHelper(P),q.HmacSHA1=n._createHmacHelper(P),h=A.enc.Utf8,A.algo.HMAC=A.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=h.parse(t));var n=e.blockSize,r=4*n;(t=t.sigBytes>r?e.finalize(t):t).clamp();for(var e=this._oKey=t.clone(),t=this._iKey=t.clone(),i=e.words,a=t.words,o=0;o<n;o++)i[o]^=1549556828,a[o]^=909522486;e.sigBytes=t.sigBytes=r,this.reset()},reset:function(){var e=this._hasher;e.reset(),e.update(this._iKey)},update:function(e){return this._hasher.update(e),this},finalize:function(e){var t=this._hasher;return e=t.finalize(e),t.reset(),t.finalize(this._oKey.clone().concat(e))}}),N=(U=A).lib,L=N.Base,m=N.WordArray,v=(N=U.algo).HMAC,o=N.PBKDF2=L.extend({cfg:L.extend({keySize:4,hasher:N.SHA1,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n=this.cfg,r=v.create(n.hasher,e),i=m.create(),a=m.create([1]),o=i.words,s=a.words,u=n.keySize,n=n.iterations;o.length<u;){var c=r.update(t).finalize(a);r.reset();for(var l=c.words,f=l.length,h=c,p=1;p<n;p++){h=r.finalize(h),r.reset();for(var d=h.words,g=0;g<f;g++)l[g]^=d[g]}i.concat(c),s[0]++}return i.sigBytes=4*u,i}}),U.PBKDF2=function(e,t,n){return o.create(n).compute(e,t)};var p,d,g,A=A||function(s){function n(){}var e={},t=e.lib={},r=t.Base={extend:function(e){n.prototype=this;var t=new n;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),(t.init.prototype=t).$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},u=t.WordArray=r.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||a).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i<e;i++)t[r+i>>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535<n.length)for(i=0;i<e;i+=4)t[r+i>>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=s.ceil(t/4)},clone:function(){var e=r.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(4294967296*s.random()|0);return new u.init(t,e)}}),i=e.enc={},a=i.Hex={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++){var i=t[r>>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},o=i.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++)n.push(String.fromCharCode(t[r>>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},c=i.Utf8={stringify:function(e){try{return decodeURIComponent(escape(o.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return o.parse(unescape(encodeURIComponent(e)))}},l=t.BufferedBlockAlgorithm=r.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t=this._data,n=t.words,r=t.sigBytes,i=this.blockSize,a=r/(4*i),a=e?s.ceil(a):s.max((0|a)-this._minBufferSize,0),r=s.min(4*(e=a*i),r);if(e){for(var o=0;o<e;o+=i)this._doProcessBlock(n,o);o=n.splice(0,e),t.sigBytes-=r}return new u.init(o,r)},clone:function(){var e=r.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});t.Hasher=l.extend({cfg:r.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(e,t){return new n.init(t).finalize(e)}},_createHmacHelper:function(n){return function(e,t){return new f.HMAC.init(n,t).finalize(e)}}});var f=e.algo={};return e}(Math);function y(e,t){return!t||"object"!==x(t)&&"function"!=typeof t?function(e){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(e):t}function b(e){return(b=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function k(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&&w(e,t)}function w(e,t){return(w=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function E(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(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)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function x(e){return(x="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,t,n,r,i,a,o){try{var s=e[a](o),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,i)}function S(s){return function(){var e=this,o=arguments;return new Promise(function(t,n){var r=s.apply(e,o);function i(e){$(r,t,n,i,a,"next",e)}function a(e){$(r,t,n,i,a,"throw",e)}i(void 0)})}}function C(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}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)}}function O(e,t,n){return t&&R(e.prototype,t),n&&R(e,n),e}p=(q=(V=A).lib).WordArray,d=q.Hasher,g=[],q=V.algo.SHA1=d.extend({_doReset:function(){this._hash=new p.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var n,r=this._hash.words,i=r[0],a=r[1],o=r[2],s=r[3],u=r[4],c=0;c<80;c++)c<16?g[c]=0|e[t+c]:(n=g[c-3]^g[c-8]^g[c-14]^g[c-16],g[c]=n<<1|n>>>31),n=(i<<5|i>>>27)+u+g[c],n=c<20?n+(1518500249+(a&o|~a&s)):c<40?n+(1859775393+(a^o^s)):c<60?n+((a&o|a&s|o&s)-1894007588):n+((a^o^s)-899497514),u=s,s=o,o=a<<30|a>>>2,a=i,i=n;r[0]=r[0]+i|0,r[1]=r[1]+a|0,r[2]=r[2]+o|0,r[3]=r[3]+s|0,r[4]=r[4]+u|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(64+r>>>9<<4)]=Math.floor(n/4294967296),t[15+(64+r>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=d.clone.call(this);return e._hash=this._hash.clone(),e}}),V.SHA1=d._createHelper(q),V.HmacSHA1=d._createHmacHelper(q),Object.defineProperty(ie,"__esModule",{value:!0}),ie.StandardFile=ie.SFItemTransformer=ie.SFCryptoWeb=ie.SFCryptoJS=ie.SFAbstractCrypto=ie.SFItemHistoryEntry=ie.SFItemHistory=ie.SFHistorySession=ie.SFPrivileges=ie.SFPredicate=ie.SFItemParams=ie.SFItem=ie.SFSyncManager=ie.SFStorageManager=ie.SFSingletonManager=ie.SFSessionHistoryManager=ie.SFPrivilegesManager=ie.SFModelManager=ie.SFMigrationManager=ie.SFHttpManager=ie.SFAuthManager=ie.SFAlertManager=void 0;var I=function(){function e(){C(this,e)}var t,n;return O(e,[{key:"alert",value:(n=S(regeneratorRuntime.mark(function e(n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(e,t){window.alert(n.text),e()}));case 1:case"end":return e.stop()}},e)})),function(e){return n.apply(this,arguments)})},{key:"confirm",value:(t=S(regeneratorRuntime.mark(function e(n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(e,t){(window.confirm(n.text)?e:t)()}));case 1:case"end":return e.stop()}},e)})),function(e){return t.apply(this,arguments)})}]),e}();ie.SFAlertManager=I;var M=function(){function m(e,t,n,r){C(this,m),m.DidSignOutEvent="DidSignOutEvent",m.WillSignInEvent="WillSignInEvent",m.DidSignInEvent="DidSignInEvent",this.httpManager=t,this.storageManager=e,this.alertManager=n||new I,this.$timeout=r||setTimeout.bind(window),this.eventHandlers=[]}var a,o,s,r,e,t,n,i,u,c;return O(m,[{key:"addEventHandler",value:function(e){return this.eventHandlers.push(e),e}},{key:"removeEventHandler",value:function(e){_.pull(this.eventHandlers,e)}},{key:"notifyEvent",value:function(e,t){var n=!0,r=!1,i=void 0;try{for(var a,o=this.eventHandlers[Symbol.iterator]();!(n=(a=o.next()).done);n=!0)(0,a.value)(e,t||{})}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}}},{key:"saveKeys",value:(c=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this._keys=t,e.next=3,this.storageManager.setItem("mk",t.mk);case 3:return e.next=5,this.storageManager.setItem("ak",t.ak);case 5:case"end":return e.stop()}},e,this)})),function(e){return c.apply(this,arguments)})},{key:"signout",value:(u=S(regeneratorRuntime.mark(function e(t){var n=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._keys=null,this._authParams=null,t)return e.abrupt("return",this.storageManager.clearAllData().then(function(){n.notifyEvent(m.DidSignOutEvent)}));e.next=6;break;case 6:this.notifyEvent(m.DidSignOutEvent);case 7:case"end":return e.stop()}},e,this)})),function(e){return u.apply(this,arguments)})},{key:"keys",value:(i=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._keys){e.next=11;break}return e.next=3,this.storageManager.getItem("mk");case 3:if(t=e.sent){e.next=6;break}return e.abrupt("return",null);case 6:return e.t0=t,e.next=9,this.storageManager.getItem("ak");case 9:e.t1=e.sent,this._keys={mk:e.t0,ak:e.t1};case 11:return e.abrupt("return",this._keys);case 12:case"end":return e.stop()}},e,this)})),function(){return i.apply(this,arguments)})},{key:"getAuthParams",value:(n=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._authParams){e.next=5;break}return e.next=3,this.storageManager.getItem("auth_params");case 3:t=e.sent,this._authParams=JSON.parse(t);case 5:if(this._authParams&&!this._authParams.version)return e.next=8,this.defaultProtocolVersion();e.next=9;break;case 8:this._authParams.version=e.sent;case 9:return e.abrupt("return",this._authParams);case 10:case"end":return e.stop()}},e,this)})),function(){return n.apply(this,arguments)})},{key:"defaultProtocolVersion",value:(t=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.keys();case 2:if((t=e.sent)&&t.ak)return e.abrupt("return","002");e.next=7;break;case 7:return e.abrupt("return","001");case 8:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})},{key:"protocolVersion",value:(e=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getAuthParams();case 2:if((t=e.sent)&&t.version)return e.abrupt("return",t.version);e.next=5;break;case 5:return e.abrupt("return",this.defaultProtocolVersion());case 6:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})},{key:"getAuthParamsForEmail",value:(r=S(regeneratorRuntime.mark(function e(n,t,r){var i,a=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return(i=_.merge({email:t},r)).api=T.getApiVersion(),e.abrupt("return",new Promise(function(t,e){a.httpManager.getAbsolute(n+"/auth/params",i,function(e){t(e)},function(e){console.error("Error getting auth params",e),"object"!==x(e)&&(e={error:{message:"A server error occurred while trying to sign in. Please try again."}}),t(e)})}));case 3:case"end":return e.stop()}},e)})),function(e,t,n){return r.apply(this,arguments)})},{key:"lock",value:function(){this.locked=!0}},{key:"unlock",value:function(){this.locked=!1}},{key:"isLocked",value:function(){return 1==this.locked}},{key:"unlockAndResolve",value:function(e,t){this.unlock(),e(t)}},{key:"login",value:(s=S(regeneratorRuntime.mark(function e(l,f,h,p,d){var g=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(){var n=S(regeneratorRuntime.mark(function e(n,t){var r,i,a,o,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,g.keys();case 2:if(null!=e.sent)return n({error:{message:"Cannot log in because already signed in."}}),e.abrupt("return");e.next=6;break;case 6:if(g.isLocked())return n({error:{message:"Login already in progress."}}),e.abrupt("return");e.next=9;break;case 9:return g.lock(),g.notifyEvent(m.WillSignInEvent),e.next=13,g.getAuthParamsForEmail(l,f,d);case 13:if((r=e.sent).identifier=f,r.error)return g.unlockAndResolve(n,r),e.abrupt("return");e.next=18;break;case 18:if(r&&r.pw_cost){e.next=21;break}return g.unlockAndResolve(n,{error:{message:"Invalid email or password."}}),e.abrupt("return");case 21:if(SFJS.supportedVersions().includes(r.version)){e.next=25;break}return i=SFJS.isVersionNewerThanLibraryVersion(r.version)?"This version of the application does not support your newer account type. Please upgrade to the latest version of Standard Notes to sign in.":"The protocol version associated with your account is outdated and no longer supported by this application. Please visit standardnotes.org/help/security for more information.",g.unlockAndResolve(n,{error:{message:i}}),e.abrupt("return");case 25:if(SFJS.isProtocolVersionOutdated(r.version))return o="The encryption version for your account, ".concat(r.version,", is outdated and requires upgrade. You may proceed with login, but are advised to perform a security update using the web or desktop application. Please visit standardnotes.org/help/security for more information."),a=!1,e.next=30,g.alertManager.confirm({title:"Update Needed",text:o,confirmButtonText:"Sign In"}).catch(function(){g.unlockAndResolve(n,{error:{}}),a=!0});e.next=32;break;case 30:if(a)return e.abrupt("return");e.next=32;break;case 32:if(SFJS.supportsPasswordDerivationCost(r.pw_cost)){e.next=36;break}return g.unlockAndResolve(n,{error:{message:"Your account was created on a platform with higher security capabilities than this browser supports. If we attempted to generate your login keys here, it would take hours. Please use a browser with more up to date security capabilities, like Google Chrome or Firefox, to log in."}}),e.abrupt("return");case 36:if(o=SFJS.costMinimumForVersion(r.version),r.pw_cost<o)return g.unlockAndResolve(n,{error:{message:"Unable to login due to insecure password parameters. Please visit standardnotes.org/help/security for more information."}}),e.abrupt("return");e.next=41;break;case 41:if(!p){e.next=47;break}if(u=SFJS.version(),r.version!==u)return c="Strict sign in refused server sign in parameters. The latest security version is ".concat(u,", but your account is reported to have version ").concat(r.version,". If you'd like to proceed with sign in anyway, please disable strict sign in and try again."),g.unlockAndResolve(n,{error:{message:c}}),e.abrupt("return");e.next=47;break;case 47:return e.next=49,SFJS.crypto.computeEncryptionKeysForUser(h,r);case 49:s=e.sent,u=l+"/auth/sign_in",(c=_.merge({password:s.pw,email:f},d)).api=T.getApiVersion(),g.httpManager.postAbsolute(u,c,function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,g.handleAuthResponse(t,f,l,r,s);case 2:g.notifyEvent(m.DidSignInEvent),g.$timeout(function(){return g.unlockAndResolve(n,t)});case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),function(e){console.error("Error logging in",e),"object"!==x(e)&&(e={error:{message:"A server error occurred while trying to sign in. Please try again."}}),g.$timeout(function(){return g.unlockAndResolve(n,e)})});case 54:case"end":return e.stop()}},e)}));return function(e,t){return n.apply(this,arguments)}}()));case 1:case"end":return e.stop()}},e)})),function(e,t,n,r,i){return s.apply(this,arguments)})},{key:"register",value:function(s,u,c){var l=this;return new Promise(function(){var n=S(regeneratorRuntime.mark(function e(n,t){var r,i,a,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(l.isLocked())return n({error:{message:"Register already in progress."}}),e.abrupt("return");e.next=3;break;case 3:if(c.length<8)return a="Your password must be at least ".concat(8," characters in length. For your security, please choose a longer password or, ideally, a passphrase, and try again."),n({error:{message:a}}),e.abrupt("return");e.next=8;break;case 8:return l.lock(),e.next=11,SFJS.crypto.generateInitialKeysAndAuthParamsForUser(u,c);case 11:o=e.sent,r=o.keys,i=o.authParams,a=s+"/auth",(o=_.merge({password:r.pw,email:u},i)).api=T.getApiVersion(),l.httpManager.postAbsolute(a,o,function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.handleAuthResponse(t,u,s,i,r);case 2:l.unlockAndResolve(n,t);case 3:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),function(e){console.error("Registration error",e),"object"!==x(e)&&(e={error:{message:"A server error occurred while trying to register. Please try again."}}),l.unlockAndResolve(n,e)});case 18:case"end":return e.stop()}},e)}));return function(e,t){return n.apply(this,arguments)}}())}},{key:"changePassword",value:(o=S(regeneratorRuntime.mark(function e(a,o,s,u,c){var l=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(){var n=S(regeneratorRuntime.mark(function e(n,t){var r,i;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(l.isLocked())return n({error:{message:"Change password already in progress."}}),e.abrupt("return");e.next=3;break;case 3:l.lock(),i=u.pw,r=a+"/auth/change_pw",(i=_.merge({new_password:i,current_password:s},c)).api=T.getApiVersion(),l.httpManager.postAuthenticatedAbsolute(r,i,function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.handleAuthResponse(t,o,null,c,u);case 2:l.unlockAndResolve(n,t);case 3:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),function(e){"object"!==x(e)&&(e={error:{message:"Something went wrong while changing your password. Your password was not changed. Please try again."}}),l.unlockAndResolve(n,e)});case 9:case"end":return e.stop()}},e)}));return function(e,t){return n.apply(this,arguments)}}()));case 1:case"end":return e.stop()}},e)})),function(e,t,n,r,i){return o.apply(this,arguments)})},{key:"handleAuthResponse",value:(a=S(regeneratorRuntime.mark(function e(t,n,r,i,a){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r)return e.next=3,this.storageManager.setItem("server",r);e.next=3;break;case 3:return this._authParams=i,e.next=6,this.storageManager.setItem("auth_params",JSON.stringify(i));case 6:return e.next=8,this.storageManager.setItem("jwt",t.token);case 8:return e.abrupt("return",this.saveKeys(a));case 9:case"end":return e.stop()}},e,this)})),function(e,t,n,r,i){return a.apply(this,arguments)})}]),m}();ie.SFAuthManager=M;var D="undefined"!=typeof window?window:void 0!==e?e:null,T=function(){function n(e,t){C(this,n),this.$timeout=e||setTimeout.bind(D)}var a,i,o,s,u,t;return O(n,null,[{key:"getApiVersion",value:function(){return"20190520"}}]),O(n,[{key:"setJWTRequestHandler",value:function(e){this.jwtRequestHandler=e}},{key:"setAuthHeadersForRequest",value:(t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.jwtRequestHandler();case 2:(n=e.sent)&&t.setRequestHeader("Authorization","Bearer "+n);case 4:case"end":return e.stop()}},e,this)})),function(e){return t.apply(this,arguments)})},{key:"postAbsolute",value:(u=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.httpRequest("post",t,n,r,i));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return u.apply(this,arguments)})},{key:"postAuthenticatedAbsolute",value:(s=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.httpRequest("post",t,n,r,i,!0));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return s.apply(this,arguments)})},{key:"patchAbsolute",value:(o=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.httpRequest("patch",t,n,r,i));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return o.apply(this,arguments)})},{key:"getAbsolute",value:(i=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.httpRequest("get",t,n,r,i));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return i.apply(this,arguments)})},{key:"httpRequest",value:(a=S(regeneratorRuntime.mark(function e(i,a,o,s,u){var c,l=this,t=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return c=5<t.length&&void 0!==t[5]&&t[5],e.abrupt("return",new Promise(function(){var n=S(regeneratorRuntime.mark(function e(t,n){var r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if((r=new XMLHttpRequest).onreadystatechange=function(){if(4==r.readyState){var e=r.responseText;if(e)try{e=JSON.parse(e)}catch(e){}200<=r.status&&r.status<=299?l.$timeout(function(){s(e),t(e)}):(console.error("Request error:",e),l.$timeout(function(){u(e,r.status),n(e)}))}},"get"==i&&0<Object.keys(o).length&&(a=l.urlForUrlAndParams(a,o)),r.open(i,a,!0),r.setRequestHeader("Content-type","application/json"),c)return e.next=8,l.setAuthHeadersForRequest(r);e.next=8;break;case 8:"post"==i||"patch"==i?r.send(JSON.stringify(o)):r.send();case 9:case"end":return e.stop()}},e)}));return function(e,t){return n.apply(this,arguments)}}()));case 2:case"end":return e.stop()}},e)})),function(e,t,n,r,i){return a.apply(this,arguments)})},{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}}]),n}();ie.SFHttpManager=T;var P=function(){function r(e,t,n,f){var h=this;C(this,r),this.modelManager=e,this.syncManager=t,this.storageManager=n,this.completionHandlers=[],this.loadMigrations();var p=!1,d=f.addEventHandler(function(e){e==M.DidSignInEvent&&(p=!0)});this.receivedLocalDataEvent=t.initialDataLoaded(),this.syncManager.addEventHandler(function(){var n=S(regeneratorRuntime.mark(function e(t,n){var r,i,a,o,s,u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(i="sync:completed"==t,!(r="local-data-loaded"==t)&&!i){e.next=40;break}if(r?h.receivedLocalDataEvent=!0:i&&(h.receivedSyncCompletedEvent=!0),!h.receivedLocalDataEvent||!h.receivedSyncCompletedEvent){e.next=40;break}if(p)return p=!1,f.removeEventHandler(d),e.next=10,h.getCompletedMigrations();e.next=39;break;case 10:c=e.sent.slice(),o=!(a=!0),s=void 0,e.prev=14,u=c[Symbol.iterator]();case 16:if(a=(c=u.next()).done){e.next=25;break}return l=c.value,e.next=20,h.migrationForEncodedName(l);case 20:e.sent.runOnlyOnce||_.pull(h._completed,l);case 22:a=!0,e.next=16;break;case 25:e.next=31;break;case 27:e.prev=27,e.t0=e.catch(14),o=!0,s=e.t0;case 31:e.prev=31,e.prev=32,a||null==u.return||u.return();case 34:if(e.prev=34,o)throw s;e.next=37;break;case 37:return e.finish(34);case 38:return e.finish(31);case 39:h.runPendingMigrations();case 40:case"end":return e.stop()}},e,null,[[14,27,31,39],[32,,34,38]])}));return function(e,t){return n.apply(this,arguments)}}())}var n,t,e,i,a,o,s,u;return O(r,[{key:"addCompletionHandler",value:function(e){this.completionHandlers.push(e)}},{key:"removeCompletionHandler",value:function(e){_.pull(this.completionHandlers,e)}},{key:"migrationForEncodedName",value:(u=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.decode(t);case 2:return n=e.sent,e.abrupt("return",this.migrations.find(function(e){return e.name==n}));case 4:case"end":return e.stop()}},e,this)})),function(e){return u.apply(this,arguments)})},{key:"loadMigrations",value:function(){this.migrations=this.registeredMigrations()}},{key:"registeredMigrations",value:function(){}},{key:"runPendingMigrations",value:(s=S(regeneratorRuntime.mark(function e(){var t,n,r,i,a,o,s,u,c,l,f,h,p,d,g,m,v,y,b,k,w,x,$,S,_,R,I;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPendingMigrations();case 2:for(t=e.sent,r=!(n=!0),i=void 0,e.prev=6,a=t[Symbol.iterator]();!(n=(o=a.next()).done);n=!0)(s=o.value).items=[];e.next=14;break;case 10:e.prev=10,e.t0=e.catch(6),r=!0,i=e.t0;case 14:e.prev=14,e.prev=15,n||null==a.return||a.return();case 17:if(e.prev=17,r)throw i;e.next=20;break;case 20:return e.finish(17);case 21:return e.finish(14);case 22:c=!(u=!0),l=void 0,e.prev=25,f=this.modelManager.allNondummyItems[Symbol.iterator]();case 27:if(u=(x=f.next()).done){e.next=51;break}for(h=x.value,d=!(p=!0),g=void 0,e.prev=32,m=t[Symbol.iterator]();!(p=(v=m.next()).done);p=!0)s=v.value,h.content_type==s.content_type&&s.items.push(h);e.next=40;break;case 36:e.prev=36,e.t1=e.catch(32),d=!0,g=e.t1;case 40:e.prev=40,e.prev=41,p||null==m.return||m.return();case 43:if(e.prev=43,d)throw g;e.next=46;break;case 46:return e.finish(43);case 47:return e.finish(40);case 48:u=!0,e.next=27;break;case 51:e.next=57;break;case 53:e.prev=53,e.t2=e.catch(25),c=!0,l=e.t2;case 57:e.prev=57,e.prev=58,u||null==f.return||f.return();case 60:if(e.prev=60,c)throw l;e.next=63;break;case 63:return e.finish(60);case 64:return e.finish(57);case 65:b=!(y=!0),k=void 0,e.prev=68,w=t[Symbol.iterator]();case 70:if(y=(x=w.next()).done){e.next=81;break}if((s=x.value).items&&0<s.items.length||s.customHandler)return e.next=75,this.runMigration(s,s.items);e.next=77;break;case 75:e.next=78;break;case 77:this.markMigrationCompleted(s);case 78:y=!0,e.next=70;break;case 81:e.next=87;break;case 83:e.prev=83,e.t3=e.catch(68),b=!0,k=e.t3;case 87:e.prev=87,e.prev=88,y||null==w.return||w.return();case 90:if(e.prev=90,b)throw k;e.next=93;break;case 93:return e.finish(90);case 94:return e.finish(87);case 95:for(S=!($=!0),_=void 0,e.prev=98,R=this.completionHandlers[Symbol.iterator]();!($=(I=R.next()).done);$=!0)(0,I.value)();e.next=106;break;case 102:e.prev=102,e.t4=e.catch(98),S=!0,_=e.t4;case 106:e.prev=106,e.prev=107,$||null==R.return||R.return();case 109:if(e.prev=109,S)throw _;e.next=112;break;case 112:return e.finish(109);case 113:return e.finish(106);case 114:case"end":return e.stop()}},e,this,[[6,10,14,22],[15,,17,21],[25,53,57,65],[32,36,40,48],[41,,43,47],[58,,60,64],[68,83,87,95],[88,,90,94],[98,102,106,114],[107,,109,113]])})),function(){return s.apply(this,arguments)})},{key:"encode",value:(o=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.btoa(t));case 1:case"end":return e.stop()}},e)})),function(e){return o.apply(this,arguments)})},{key:"decode",value:(a=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.atob(t));case 1:case"end":return e.stop()}},e)})),function(e){return a.apply(this,arguments)})},{key:"getCompletedMigrations",value:(i=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._completed){e.next=5;break}return e.next=3,this.storageManager.getItem("migrations");case 3:t=e.sent,this._completed=t?JSON.parse(t):[];case 5:return e.abrupt("return",this._completed);case 6:case"end":return e.stop()}},e,this)})),function(){return i.apply(this,arguments)})},{key:"getPendingMigrations",value:(e=S(regeneratorRuntime.mark(function e(){var t,n,r,i,a,o,s,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getCompletedMigrations();case 2:t=e.sent,n=[],i=!(r=!0),a=void 0,e.prev=7,o=this.migrations[Symbol.iterator]();case 9:if(r=(s=o.next()).done){e.next=22;break}return u=s.value,e.t0=t,e.next=14,this.encode(u.name);case 14:if(e.t1=e.sent,e.t2=e.t0.indexOf.call(e.t0,e.t1),e.t3=-1,e.t2!=e.t3){e.next=19;break}n.push(u);case 19:r=!0,e.next=9;break;case 22:e.next=28;break;case 24:e.prev=24,e.t4=e.catch(7),i=!0,a=e.t4;case 28:e.prev=28,e.prev=29,r||null==o.return||o.return();case 31:if(e.prev=31,i)throw a;e.next=34;break;case 34:return e.finish(31);case 35:return e.finish(28);case 36:return e.abrupt("return",n);case 37:case"end":return e.stop()}},e,this,[[7,24,28,36],[29,,31,35]])})),function(){return e.apply(this,arguments)})},{key:"markMigrationCompleted",value:(t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getCompletedMigrations();case 2:return n=e.sent,e.t0=n,e.next=6,this.encode(t.name);case 6:e.t1=e.sent,e.t0.push.call(e.t0,e.t1),this.storageManager.setItem("migrations",JSON.stringify(n)),t.running=!1;case 10:case"end":return e.stop()}},e,this)})),function(e){return t.apply(this,arguments)})},{key:"runMigration",value:(n=S(regeneratorRuntime.mark(function e(t,n){var r=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t.running)return e.abrupt("return");e.next=2;break;case 2:if(console.log("Running migration:",t.name),t.running=!0,t.customHandler)return e.abrupt("return",t.customHandler().then(function(){r.markMigrationCompleted(t)}));e.next=8;break;case 8:return e.abrupt("return",t.handler(n).then(function(){r.markMigrationCompleted(t)}));case 9:case"end":return e.stop()}},e)})),function(e,t){return n.apply(this,arguments)})}]),r}();ie.SFMigrationManager=P;var F=function(){function R(e){C(this,R),R.MappingSourceRemoteRetrieved="MappingSourceRemoteRetrieved",R.MappingSourceRemoteSaved="MappingSourceRemoteSaved",R.MappingSourceLocalSaved="MappingSourceLocalSaved",R.MappingSourceLocalRetrieved="MappingSourceLocalRetrieved",R.MappingSourceLocalDirtied="MappingSourceLocalDirtied",R.MappingSourceComponentRetrieved="MappingSourceComponentRetrieved",R.MappingSourceDesktopInstalled="MappingSourceDesktopInstalled",R.MappingSourceRemoteActionRetrieved="MappingSourceRemoteActionRetrieved",R.MappingSourceFileImport="MappingSourceFileImport",R.isMappingSourceRetrieved=function(e){return[R.MappingSourceRemoteRetrieved,R.MappingSourceComponentRetrieved,R.MappingSourceRemoteActionRetrieved].includes(e)},this.$timeout=e||setTimeout.bind(window),this.itemSyncObservers=[],this.items=[],this.itemsHash={},this.missedReferences={},this.uuidChangeObservers=[]}var e,i,r,t,n,a,o,s,u,c,l,f;return O(R,[{key:"handleSignout",value:function(){this.items.length=0,this.itemsHash={},this.missedReferences={}}},{key:"addModelUuidChangeObserver",value:function(e,t){this.uuidChangeObservers.push({id:e,callback:t})}},{key:"notifyObserversOfUuidChange",value:function(e,t){var n=!0,r=!1,i=void 0;try{for(var a,o=this.uuidChangeObservers[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;try{s.callback(e,t)}catch(e){console.error("Notify observers of uuid change exception:",e)}}}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}}},{key:"alternateUUIDForItem",value:(f=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.createItem(t),e.next=3,SFJS.crypto.generateUUID();case 3:for(n.uuid=e.sent,n.informReferencesOfUUIDChange(t.uuid,n.uuid),this.informModelsOfUUIDChangeForItem(n,t.uuid,n.uuid),i=!(r=!0),a=void 0,e.prev=9,o=t.referencingObjects[Symbol.iterator]();!(r=(s=o.next()).done);r=!0)(s=s.value).setIsNoLongerBeingReferencedBy(t),t.setIsNoLongerBeingReferencedBy(s),s.addItemAsRelationship(n);e.next=17;break;case 13:e.prev=13,e.t0=e.catch(9),i=!0,a=e.t0;case 17:e.prev=17,e.prev=18,r||null==o.return||o.return();case 20:if(e.prev=20,i)throw a;e.next=23;break;case 23:return e.finish(20);case 24:return e.finish(17);case 25:return this.setItemsDirty(t.referencingObjects,!0),this.resolveReferencesForItem(n),this.loggingEnabled&&console.log(t.uuid,"--\x3e",n.uuid),t.deleted=!0,t.content.references=[],this.setItemDirty(t,!1,!1,R.MappingSourceLocalSaved),e.next=33,this.mapResponseItemsToLocalModels([t],R.MappingSourceLocalSaved);case 33:return this.addItem(n),this.setItemDirty(n,!0,!0,R.MappingSourceLocalSaved),this.notifyObserversOfUuidChange(t,n),e.abrupt("return",n);case 37:case"end":return e.stop()}},e,this,[[9,13,17,25],[18,,20,24]])})),function(e){return f.apply(this,arguments)})},{key:"informModelsOfUUIDChangeForItem",value:function(e,t,n){var r=!0,i=!1,a=void 0;try{for(var o,s=this.items[Symbol.iterator]();!(r=(o=s.next()).done);r=!0)o.value.potentialItemOfInterestHasChangedItsUUID(e,t,n)}catch(e){i=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}}},{key:"didSyncModelsOffline",value:function(e){this.notifySyncObserversOfModels(e,R.MappingSourceLocalSaved)}},{key:"mapResponseItemsToLocalModels",value:(l=S(regeneratorRuntime.mark(function e(t,n,r){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mapResponseItemsToLocalModelsWithOptions({items:t,source:n,sourceKey:r}));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n){return l.apply(this,arguments)})},{key:"mapResponseItemsToLocalModelsOmittingFields",value:(c=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mapResponseItemsToLocalModelsWithOptions({items:t,omitFields:n,source:r,sourceKey:i}));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return c.apply(this,arguments)})},{key:"mapResponseItemsToLocalModelsWithOptions",value:(u=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c,l,f,h,p,d,g,m,v,y,b,k,w,x,$,S,_,R,I,A,C,O,M,D,T;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:f=t.items,n=t.omitFields,r=t.source,i=t.sourceKey,t.options,a=[],o=[],s=[],c=!(u=!0),l=void 0,e.prev=5,f=f[Symbol.iterator]();case 7:if(u=(p=f.next()).done){e.next=58;break}if(h=p.value){e.next=11;break}return e.abrupt("continue",55);case 11:if(p=!h.content&&!h.errorDecrypting,!(!h.content_type||!h.uuid)&&!p||h.deleted){e.next=16;break}return console.error("Server response item is corrupt:",h),e.abrupt("continue",55);case 16:if(!Array.isArray(n)){e.next=36;break}for(g=!(d=!0),m=void 0,e.prev=20,v=n[Symbol.iterator]();!(d=(y=v.next()).done);d=!0)y=y.value,delete h[y];e.next=28;break;case 24:e.prev=24,e.t0=e.catch(20),g=!0,m=e.t0;case 28:e.prev=28,e.prev=29,d||null==v.return||v.return();case 31:if(e.prev=31,g)throw m;e.next=34;break;case 34:return e.finish(31);case 35:return e.finish(28);case 36:if((b=this.findItem(h.uuid))&&(b.updateFromJSON(h),b.dummy=!1),I=h.content_type||b&&b.content_type,this.acceptableContentTypes&&!this.acceptableContentTypes.includes(I))return e.abrupt("continue",55);e.next=42;break;case 42:if(k=!1,1!=h.deleted){e.next=50;break}if(!h.dirty){e.next=48;break}k=!0,e.next=50;break;case 48:return b&&(a.push(b),s.push(b),this.removeItemLocally(b)),e.abrupt("continue",55);case 50:b=b||this.createItem(h),this.addItem(b,k),b.errorDecrypting||s.push(b),a.push(b),o.push(h);case 55:u=!0,e.next=7;break;case 58:e.next=64;break;case 60:e.prev=60,e.t1=e.catch(5),c=!0,l=e.t1;case 64:e.prev=64,e.prev=65,u||null==f.return||f.return();case 67:if(e.prev=67,c)throw l;e.next=70;break;case 70:return e.finish(67);case 71:return e.finish(64);case 72:for(x=!(w=!0),$=void 0,e.prev=75,S=o.entries()[Symbol.iterator]();!(w=(R=S.next()).done);w=!0)_=E(R.value,2),R=_[0],_=_[1],R=a[R],_.content&&this.resolveReferencesForItem(R),R.didFinishSyncing();e.next=83;break;case 79:e.prev=79,e.t2=e.catch(75),x=!0,$=e.t2;case 83:e.prev=83,e.prev=84,w||null==S.return||S.return();case 86:if(e.prev=86,x)throw $;e.next=89;break;case 89:return e.finish(86);case 90:return e.finish(83);case 91:for(I=this.popMissedReferenceStructsForObjects(o),C=!(A=!0),O=void 0,e.prev=95,M=function(){var t=T.value,e=a.find(function(e){return e.uuid==t.reference_uuid});e&&t.for_item.addItemAsRelationship(e)},D=I[Symbol.iterator]();!(A=(T=D.next()).done);A=!0)M();e.next=104;break;case 100:e.prev=100,e.t3=e.catch(95),C=!0,O=e.t3;case 104:e.prev=104,e.prev=105,A||null==D.return||D.return();case 107:if(e.prev=107,C)throw O;e.next=110;break;case 110:return e.finish(107);case 111:return e.finish(104);case 112:return e.next=114,this.notifySyncObserversOfModels(s,r,i);case 114:return e.abrupt("return",a);case 115:case"end":return e.stop()}},e,this,[[5,60,64,72],[20,24,28,36],[29,,31,35],[65,,67,71],[75,79,83,91],[84,,86,90],[95,100,104,112],[105,,107,111]])})),function(e){return u.apply(this,arguments)})},{key:"missedReferenceBuildKey",value:function(e,t){return"".concat(e,":").concat(t)}},{key:"popMissedReferenceStructsForObjects",value:function(e){if(!e||0==e.length)return[];for(var t=[],n=[],r=e.map(function(e){return e.uuid}),i=r[0].length,a=0,o=Object.keys(this.missedReferences);a<o.length;a++){var s=o[a];r.includes(s.substring(0,i))&&(t.push(this.missedReferences[s]),n.push(s))}for(var u=0,c=n;u<c.length;u++){var l=c[u];delete this.missedReferences[l]}return t}},{key:"resolveReferencesForItem",value:function(e){var t=1<arguments.length&&void 0!==arguments[1]&&arguments[1];if(!e.errorDecrypting){var n=e.contentObject;if(e.updateLocalRelationships(),n.references){var r=n.references.slice().map(function(e){return e.uuid}),i=this.findItems(r,!0),a=!0,o=!1,n=void 0;try{for(var s,u=i.entries()[Symbol.iterator]();!(a=(s=u.next()).done);a=!0){var c,l,f,h=E(s.value,2),p=h[0],d=h[1];d?(e.addItemAsRelationship(d),t&&this.setItemDirty(d,!0)):(c=r[p],l=this.missedReferenceBuildKey(c,e.uuid),this.missedReferences[l]||(f={reference_uuid:c,for_item:e},this.missedReferences[l]=f))}}catch(e){o=!0,n=e}finally{try{a||null==u.return||u.return()}finally{if(o)throw n}}}}}},{key:"notifySyncObserversOfModels",value:(s=S(regeneratorRuntime.mark(function e(l,f,h){var t,n,r,i,a,p,d=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:a=this.itemSyncObservers.sort(function(e,t){return e.priority<t.priority?-1:1}),n=!(t=!0),r=void 0,e.prev=4,i=regeneratorRuntime.mark(function e(){var t,n,r,i,a,o,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(t=p.value,n=t.types.includes("*")?l:l.filter(function(e){return t.types.includes(e.content_type)}),r=[],i=[],o=!(a=!0),s=void 0,e.prev=6,u=n[Symbol.iterator]();!(a=(c=u.next()).done);a=!0)((c=c.value).deleted?i:r).push(c);e.next=14;break;case 10:e.prev=10,e.t0=e.catch(6),o=!0,s=e.t0;case 14:e.prev=14,e.prev=15,a||null==u.return||u.return();case 17:if(e.prev=17,o)throw s;e.next=20;break;case 20:return e.finish(17);case 21:return e.finish(14);case 22:if(0<n.length)return e.next=25,d._callSyncObserverCallbackWithTimeout(t,n,r,i,f,h);e.next=25;break;case 25:case"end":return e.stop()}},e,null,[[6,10,14,22],[15,,17,21]])}),a=a[Symbol.iterator]();case 7:if(t=(p=a.next()).done){e.next=12;break}return e.delegateYield(i(),"t0",9);case 9:t=!0,e.next=7;break;case 12:e.next=18;break;case 14:e.prev=14,e.t1=e.catch(4),n=!0,r=e.t1;case 18:e.prev=18,e.prev=19,t||null==a.return||a.return();case 21:if(e.prev=21,n)throw r;e.next=24;break;case 24:return e.finish(21);case 25:return e.finish(18);case 26:case"end":return e.stop()}},e,this,[[4,14,18,26],[19,,21,25]])})),function(e,t,n){return s.apply(this,arguments)})},{key:"_callSyncObserverCallbackWithTimeout",value:(o=S(regeneratorRuntime.mark(function e(n,r,i,a,o,s){var u=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(e,t){u.$timeout(function(){try{n.callback(r,i,a,o,s)}catch(e){console.error("Sync observer exception",e)}finally{e()}})}));case 1:case"end":return e.stop()}},e)})),function(e,t,n,r,i,a){return o.apply(this,arguments)})},{key:"setItemDirty",value:function(e){this.setItemsDirty([e],!(1<arguments.length&&void 0!==arguments[1])||arguments[1],2<arguments.length?arguments[2]:void 0,3<arguments.length?arguments[3]:void 0,4<arguments.length?arguments[4]:void 0)}},{key:"setItemsDirty",value:function(e){var t=!(1<arguments.length&&void 0!==arguments[1])||arguments[1],n=2<arguments.length?arguments[2]:void 0,r=3<arguments.length?arguments[3]:void 0,i=4<arguments.length?arguments[4]:void 0,a=!0,o=!1,s=void 0;try{for(var u,c=e[Symbol.iterator]();!(a=(u=c.next()).done);a=!0)u.value.setDirty(t,n)}catch(e){o=!0,s=e}finally{try{a||null==c.return||c.return()}finally{if(o)throw s}}this.notifySyncObserversOfModels(e,r||R.MappingSourceLocalDirtied,i)}},{key:"createItem",value:function(e){return new(R.ContentTypeClassMapping&&R.ContentTypeClassMapping[e.content_type]||K)(e)}},{key:"createDuplicateItemFromResponseItem",value:(a=S(regeneratorRuntime.mark(function e(t){var n,r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("function"==typeof t.setDirty)return console.error("Attempting to create conflicted copy of non-response item."),e.abrupt("return",null);e.next=3;break;case 3:return n=JSON.parse(JSON.stringify(t)),e.next=6,SFJS.crypto.generateUUID();case 6:return n.uuid=e.sent,r=this.createItem(n),e.abrupt("return",r);case 9:case"end":return e.stop()}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"duplicateItemAndAddAsConflict",value:function(e){return this.duplicateItemWithCustomContentAndAddAsConflict({content:e.content,duplicateOf:e})}},{key:"duplicateItemWithCustomContentAndAddAsConflict",value:function(e){var t=e.content,e=e.duplicateOf,t=this.duplicateItemWithCustomContent({content:t,duplicateOf:e});return this.addDuplicatedItemAsConflict({duplicate:t,duplicateOf:e}),t}},{key:"addDuplicatedItemAsConflict",value:function(e){var t=e.duplicate,e=e.duplicateOf;this.addDuplicatedItem(t,e),t.content.conflict_of=e.uuid}},{key:"duplicateItemWithCustomContent",value:function(e){var t=e.content,e=e.duplicateOf,t=new e.constructor({content:t});return t.created_at=e.created_at,t.content_type||(t.content_type=e.content_type),t}},{key:"duplicateItemAndAdd",value:function(e){var t=this.duplicateItemWithoutAdding(e);return this.addDuplicatedItem(t,e),t}},{key:"duplicateItemWithoutAdding",value:function(e){var t=new e.constructor({content:e.content});return t.created_at=e.created_at,t.content_type||(t.content_type=e.content_type),t}},{key:"addDuplicatedItem",value:function(e,t){this.addItem(e);var n=!0,r=!1,i=void 0;try{for(var a,o=t.referencingObjects[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;s.addItemAsRelationship(e),this.setItemDirty(s,!0)}}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}this.resolveReferencesForItem(e),this.setItemDirty(e,!0)}},{key:"addItem",value:function(e){this.addItems([e],1<arguments.length&&void 0!==arguments[1]&&arguments[1])}},{key:"addItems",value:function(e){var t=this;e.forEach(function(e){t.itemsHash[e.uuid]||(t.itemsHash[e.uuid]=e,t.items.push(e))})}},{key:"addItemSyncObserver",value:function(e,t,n){this.addItemSyncObserverWithPriority({id:e,types:t,callback:n,priority:1})}},{key:"addItemSyncObserverWithPriority",value:function(e){var t=e.id,n=e.priority,r=e.types,e=e.callback;Array.isArray(r)||(r=[r]),this.itemSyncObservers.push({id:t,types:r,priority:n,callback:e})}},{key:"removeItemSyncObserver",value:function(e){_.remove(this.itemSyncObservers,_.find(this.itemSyncObservers,{id:e}))}},{key:"getDirtyItems",value:function(){return this.items.filter(function(e){return 1==e.dirty&&!e.dummy&&(!e.errorDecrypting||e.deleted)})}},{key:"clearDirtyItems",value:function(e){var t=!0,n=!1,r=void 0;try{for(var i,a=e[Symbol.iterator]();!(t=(i=a.next()).done);t=!0)i.value.setDirty(!1)}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}}},{key:"removeAndDirtyAllRelationshipsForItem",value:function(e){if(!e.errorDecrypting){var t=!0,n=!1,r=void 0;try{for(var i,a=e.content.references[Symbol.iterator]();!(t=(i=a.next()).done);t=!0){var o=i.value,s=this.findItem(o.uuid);s&&(e.removeItemAsRelationship(s),s.hasRelationshipWithItem(e)&&(s.removeItemAsRelationship(e),this.setItemDirty(s,!0)))}}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}}var u=!0,n=!1,r=void 0;try{for(var c,l=e.referencingObjects[Symbol.iterator]();!(u=(c=l.next()).done);u=!0){var f=c.value;f.removeItemAsRelationship(e),this.setItemDirty(f,!0)}}catch(e){n=!0,r=e}finally{try{u||null==l.return||l.return()}finally{if(n)throw r}}e.referencingObjects=[]}},{key:"setAllItemsDirty",value:function(){var e=this.allItems;this.setItemsDirty(e,!0)}},{key:"setItemToBeDeleted",value:function(e){e.deleted=!0,e.dummy||this.setItemDirty(e,!0),this.removeAndDirtyAllRelationshipsForItem(e)}},{key:"removeItemLocally",value:(n=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:_.remove(this.items,{uuid:t.uuid}),delete this.itemsHash[t.uuid],t.isBeingRemovedLocally();case 3:case"end":return e.stop()}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"allItemsMatchingTypes",value:function(t){return this.allItems.filter(function(e){return(_.includes(t,e.content_type)||_.includes(t,"*"))&&!e.dummy})}},{key:"invalidItems",value:function(){return this.allItems.filter(function(e){return e.errorDecrypting})}},{key:"validItemsForContentType",value:function(t){return this.allItems.filter(function(e){return e.content_type==t&&!e.errorDecrypting})}},{key:"findItem",value:function(e){return this.itemsHash[e]}},{key:"findItems",value:function(e){var t=1<arguments.length&&void 0!==arguments[1]&&arguments[1],n=[],r=!0,i=!1,a=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var u=o.value,c=this.itemsHash[u];(c||t)&&n.push(c)}}catch(e){i=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}return n}},{key:"itemsMatchingPredicate",value:function(e){return this.itemsMatchingPredicates([e])}},{key:"itemsMatchingPredicates",value:function(e){return this.filterItemsWithPredicates(this.allItems,e)}},{key:"filterItemsWithPredicates",value:function(e,s){return e.filter(function(e){var t=!0,n=!1,r=void 0;try{for(var i,a=s[Symbol.iterator]();!(t=(i=a.next()).done);t=!0){var o=i.value;if(!e.satisfiesPredicate(o))return!1}}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}return!0})}},{key:"importItems",value:(t=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c,l,f,h,p,d,g,m,v,y,b,k,w,x,$,S,_;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:n=[],r={},a=!(i=!0),o=void 0,e.prev=5,s=t[Symbol.iterator]();case 7:if(i=(u=s.next()).done){e.next=18;break}if(c=u.value,l=this.findItem(c.uuid)){e.next=13;break}return r[c.uuid]={},e.abrupt("continue",15);case 13:g=this.duplicateItemWithoutAdding(l),r[c.uuid]={frozenValue:g,itemRef:l};case 15:i=!0,e.next=7;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(5),a=!0,o=e.t0;case 24:e.prev=24,e.prev=25,i||null==s.return||s.return();case 27:if(e.prev=27,a)throw o;e.next=30;break;case 30:return e.finish(27);case 31:return e.finish(24);case 32:h=!(f=!0),p=void 0,e.prev=35,d=t[Symbol.iterator]();case 37:if(f=(g=d.next()).done){e.next=52;break}if(m=g.value,b=r[m.uuid],v=b.frozenValue,y=b.itemRef,v&&!y.errorDecrypting)return e.next=43,this.createDuplicateItemFromResponseItem(m);e.next=47;break;case 43:b=e.sent,m.deleted||v.isItemContentEqualWith(b)||(this.addDuplicatedItemAsConflict({duplicate:b,duplicateOf:y}),n.push(b)),e.next=49;break;case 47:n.push(m),y&&y.errorDecrypting&&(y.errorDecrypting=!1);case 49:f=!0,e.next=37;break;case 52:e.next=58;break;case 54:e.prev=54,e.t1=e.catch(35),h=!0,p=e.t1;case 58:e.prev=58,e.prev=59,f||null==d.return||d.return();case 61:if(e.prev=61,h)throw p;e.next=64;break;case 64:return e.finish(61);case 65:return e.finish(58);case 66:return e.next=68,this.mapResponseItemsToLocalModels(n,R.MappingSourceFileImport);case 68:for(k=e.sent,x=!(w=!0),$=void 0,e.prev=72,S=k[Symbol.iterator]();!(w=(_=S.next()).done);w=!0)_=_.value,this.setItemDirty(_,!0,!1),_.deleted=!1;e.next=80;break;case 76:e.prev=76,e.t2=e.catch(72),x=!0,$=e.t2;case 80:e.prev=80,e.prev=81,w||null==S.return||S.return();case 83:if(e.prev=83,x)throw $;e.next=86;break;case 86:return e.finish(83);case 87:return e.finish(80);case 88:return e.abrupt("return",k);case 89:case"end":return e.stop()}},e,this,[[5,20,24,32],[25,,27,31],[35,54,58,66],[59,,61,65],[72,76,80,88],[81,,83,87]])})),function(e){return t.apply(this,arguments)})},{key:"getAllItemsJSONData",value:(r=S(regeneratorRuntime.mark(function e(t,n,r){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.getJSONDataForItems(this.allItems,t,n,r));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n){return r.apply(this,arguments)})},{key:"getJSONDataForItems",value:(i=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all(t.map(function(e){return new W(e,n,r).paramsForExportFile()})).then(function(e){if(i&&0==e.length)return null;e={items:e};return n&&(e.auth_params=r),JSON.stringify(e,null,2)}));case 1:case"end":return e.stop()}},e)})),function(e,t,n,r){return i.apply(this,arguments)})},{key:"computeDataIntegrityHash",value:(e=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,t=this.allNondummyItems.sort(function(e,t){return t.updated_at-e.updated_at}),t=t.map(function(e){return e.updatedAtTimestamp()}),t=t.join(","),e.next=6,SFJS.crypto.sha256(t);case 6:return t=e.sent,e.abrupt("return",t);case 10:return e.prev=10,e.t0=e.catch(0),console.error("Error computing data integrity hash",e.t0),e.abrupt("return",null);case 14:case"end":return e.stop()}},e,this,[[0,10]])})),function(){return e.apply(this,arguments)})},{key:"allItems",get:function(){return this.items.slice()}},{key:"allNondummyItems",get:function(){return this.items.filter(function(e){return!e.dummy})}}]),R}();ie.SFModelManager=F;var L=function(){function c(e,t,n){C(this,c),this.modelManager=e,this.syncManager=t,this.singletonManager=n,this.loadPrivileges(),c.CredentialAccountPassword="CredentialAccountPassword",c.CredentialLocalPasscode="CredentialLocalPasscode",c.ActionManageExtensions="ActionManageExtensions",c.ActionManageBackups="ActionManageBackups",c.ActionViewProtectedNotes="ActionViewProtectedNotes",c.ActionManagePrivileges="ActionManagePrivileges",c.ActionManagePasscode="ActionManagePasscode",c.ActionDeleteNote="ActionDeleteNote",c.SessionExpiresAtKey="SessionExpiresAtKey",c.SessionLengthKey="SessionLengthKey",c.SessionLengthNone=0,c.SessionLengthFiveMinutes=300,c.SessionLengthOneHour=3600,c.SessionLengthOneWeek=604800,this.availableActions=[c.ActionViewProtectedNotes,c.ActionDeleteNote,c.ActionManagePasscode,c.ActionManageBackups,c.ActionManageExtensions,c.ActionManagePrivileges],this.availableCredentials=[c.CredentialAccountPassword,c.CredentialLocalPasscode],this.sessionLengths=[c.SessionLengthNone,c.SessionLengthFiveMinutes,c.SessionLengthOneHour,c.SessionLengthOneWeek,c.SessionLengthIndefinite]}var n,r,e,t,i,a,o,s,u,l,f,h;return O(c,[{key:"setDelegate",value:function(e){this.delegate=e}},{key:"getAvailableActions",value:function(){return this.availableActions}},{key:"getAvailableCredentials",value:function(){return this.availableCredentials}},{key:"netCredentialsForAction",value:(h=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPrivileges();case 2:e.t0=t,s=e.sent.getCredentialsForAction(e.t0),n=[],i=!(r=!0),a=void 0,e.prev=8,o=s[Symbol.iterator]();case 10:if(r=(s=o.next()).done){e.next=27;break}if((u=s.value)==c.CredentialAccountPassword)return e.next=15,this.delegate.isOffline();e.next=19;break;case 15:e.sent||n.push(u),e.next=24;break;case 19:if(u==c.CredentialLocalPasscode)return e.next=22,this.delegate.hasLocalPasscode();e.next=24;break;case 22:e.sent&&n.push(u);case 24:r=!0,e.next=10;break;case 27:e.next=33;break;case 29:e.prev=29,e.t1=e.catch(8),i=!0,a=e.t1;case 33:e.prev=33,e.prev=34,r||null==o.return||o.return();case 36:if(e.prev=36,i)throw a;e.next=39;break;case 39:return e.finish(36);case 40:return e.finish(33);case 41:return e.abrupt("return",n);case 42:case"end":return e.stop()}},e,this,[[8,29,33,41],[34,,36,40]])})),function(e){return h.apply(this,arguments)})},{key:"loadPrivileges",value:(f=S(regeneratorRuntime.mark(function e(){var a=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.loadPromise)return e.abrupt("return",this.loadPromise);e.next=2;break;case 2:return this.loadPromise=new Promise(function(r,e){var i=G.contentType(),t=new J("content_type","=",i);a.singletonManager.registerSingleton([t],function(e){a.privileges=e,r(e)},function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n=new G({content_type:i}),SFJS.crypto.generateUUIDSync){e.next=4;break}return e.next=4,n.initUUID();case 4:a.modelManager.addItem(n),a.modelManager.setItemDirty(n,!0),a.syncManager.sync(),t(n),r(n);case 9:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}())}),e.abrupt("return",this.loadPromise);case 4:case"end":return e.stop()}},e,this)})),function(){return f.apply(this,arguments)})},{key:"getPrivileges",value:(l=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.privileges)return e.abrupt("return",this.privileges);e.next=4;break;case 4:return e.abrupt("return",this.loadPrivileges());case 5:case"end":return e.stop()}},e,this)})),function(){return l.apply(this,arguments)})},{key:"displayInfoForCredential",value:function(e){var t={};return t[c.CredentialAccountPassword]={label:"Account Password",prompt:"Please enter your account password."},t[c.CredentialLocalPasscode]={label:"Local Passcode",prompt:"Please enter your local passcode."},t[e]}},{key:"displayInfoForAction",value:function(e){var t={};return t[c.ActionManageExtensions]={label:"Manage Extensions"},t[c.ActionManageBackups]={label:"Download/Import Backups"},t[c.ActionViewProtectedNotes]={label:"View Protected Notes"},t[c.ActionManagePrivileges]={label:"Manage Privileges"},t[c.ActionManagePasscode]={label:"Manage Passcode"},t[c.ActionDeleteNote]={label:"Delete Notes"},t[e]}},{key:"getSessionLengthOptions",value:function(){return[{value:c.SessionLengthNone,label:"Don't Remember"},{value:c.SessionLengthFiveMinutes,label:"5 Minutes"},{value:c.SessionLengthOneHour,label:"1 Hour"},{value:c.SessionLengthOneWeek,label:"1 Week"}]}},{key:"setSessionLength",value:(u=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=function(e){var t=new Date;return t.setSeconds(t.getSeconds()+e),t}(t),e.abrupt("return",Promise.all([this.delegate.saveToStorage(c.SessionExpiresAtKey,JSON.stringify(n)),this.delegate.saveToStorage(c.SessionLengthKey,JSON.stringify(t))]));case 3:case"end":return e.stop()}},e,this)})),function(e){return u.apply(this,arguments)})},{key:"clearSession",value:(s=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.setSessionLength(c.SessionLengthNone));case 1:case"end":return e.stop()}},e,this)})),function(){return s.apply(this,arguments)})},{key:"getSelectedSessionLength",value:(o=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.delegate.getFromStorage(c.SessionLengthKey);case 2:if(t=e.sent)return e.abrupt("return",JSON.parse(t));e.next=7;break;case 7:return e.abrupt("return",c.SessionLengthNone);case 8:case"end":return e.stop()}},e,this)})),function(){return o.apply(this,arguments)})},{key:"getSessionExpirey",value:(a=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.delegate.getFromStorage(c.SessionExpiresAtKey);case 2:if(t=e.sent)return e.abrupt("return",new Date(JSON.parse(t)));e.next=7;break;case 7:return e.abrupt("return",new Date);case 8:case"end":return e.stop()}},e,this)})),function(){return a.apply(this,arguments)})},{key:"actionHasPrivilegesConfigured",value:(i=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.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",0<e.t0);case 4:case"end":return e.stop()}},e,this)})),function(e){return i.apply(this,arguments)})},{key:"actionRequiresPrivilege",value:(t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getSessionExpirey();case 2:if(e.sent>new Date)return e.abrupt("return",!1);e.next=5;break;case 5:return e.next=7,this.netCredentialsForAction(t);case 7:return n=e.sent,e.abrupt("return",0<n.length);case 9:case"end":return e.stop()}},e,this)})),function(e){return t.apply(this,arguments)})},{key:"savePrivileges",value:(e=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPrivileges();case 2:t=e.sent,this.modelManager.setItemDirty(t,!0),this.syncManager.sync();case 5:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})},{key:"authenticateAction",value:(r=S(regeneratorRuntime.mark(function e(t,n){var r,i,a,o,s,u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.netCredentialsForAction(t);case 2:c=e.sent,r=[],i=[],o=!(a=!0),s=void 0,e.prev=7,u=c[Symbol.iterator]();case 9:if(a=(c=u.next()).done){e.next=18;break}return l=c.value,e.next=13,this._verifyAuthenticationParameters(l,n[l]);case 13:(e.sent?r:i).push(l);case 15:a=!0,e.next=9;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(7),o=!0,s=e.t0;case 24:e.prev=24,e.prev=25,a||null==u.return||u.return();case 27:if(e.prev=27,o)throw s;e.next=30;break;case 30:return e.finish(27);case 31:return e.finish(24);case 32:return e.abrupt("return",{success:0==i.length,successfulCredentials:r,failedCredentials:i});case 33:case"end":return e.stop()}},e,this,[[7,20,24,32],[25,,27,31]])})),function(e,t){return r.apply(this,arguments)})},{key:"_verifyAuthenticationParameters",value:(n=S(regeneratorRuntime.mark(function e(t,n){var r,i,a=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.delegate.verifyAccountPassword(t));case 1:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),i=function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.delegate.verifyLocalPasscode(t));case 1:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),t==c.CredentialAccountPassword)return e.abrupt("return",r(n));e.next=6;break;case 6:if(t==c.CredentialLocalPasscode)return e.abrupt("return",i(n));e.next=8;break;case 8:case"end":return e.stop()}},e)})),function(e,t){return n.apply(this,arguments)})}]),c}();ie.SFPrivilegesManager=L;var B="sessionHistory_persist",j="sessionHistory_revisions",H="sessionHistory_autoOptimize",N=function(){function a(e,t,n,r,i){var l=this;C(this,a),this.modelManager=e,this.storageManager=t,this.$timeout=i||setTimeout.bind(window),this.keyRequestHandler=n,this.loadFromDisk().then(function(){l.modelManager.addItemSyncObserver("session-history",r,function(e,t,n,r,i){if(r!==F.MappingSourceLocalDirtied){var a=!0,o=!1,r=void 0;try{for(var s,u=e[Symbol.iterator]();!(a=(s=u.next()).done);a=!0){var c=s.value;try{l.addHistoryEntryForItem(c)}catch(e){console.log("Caught exception while trying to add item history entry",e)}}}catch(e){o=!0,r=e}finally{try{a||null==u.return||u.return()}finally{if(o)throw r}}}})})}var e,t,n,r,i,o,s;return O(a,[{key:"encryptionParams",value:(s=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.keyRequestHandler());case 1:case"end":return e.stop()}},e,this)})),function(){return s.apply(this,arguments)})},{key:"addHistoryEntryForItem",value:function(e){var t=this,n={uuid:e.uuid,content_type:e.content_type,updated_at:e.updated_at,content:e.getContentCopy()},n=this.historySession.addEntryForItem(n);this.autoOptimize&&this.historySession.optimizeHistoryForItem(e),n&&this.diskEnabled&&(this.diskTimeout&&(this.$timeout.hasOwnProperty("cancel")?this.$timeout.cancel(this.diskTimeout):clearTimeout(this.diskTimeout)),this.diskTimeout=this.$timeout(function(){t.saveToDisk()},2e3))}},{key:"historyForItem",value:function(e){return this.historySession.historyForItem(e)}},{key:"clearHistoryForItem",value:(o=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.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 o.apply(this,arguments)})},{key:"clearAllHistory",value:(i=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.historySession.clearAllHistory(),e.abrupt("return",this.storageManager.removeItem(j));case 2:case"end":return e.stop()}},e,this)})),function(){return i.apply(this,arguments)})},{key:"toggleDiskSaving",value:(r=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.diskEnabled=!this.diskEnabled,!this.diskEnabled){e.next=6;break}this.storageManager.setItem(B,JSON.stringify(!0)),this.saveToDisk(),e.next=8;break;case 6:return this.storageManager.setItem(B,JSON.stringify(!1)),e.abrupt("return",this.storageManager.removeItem(j));case 8:case"end":return e.stop()}},e,this)})),function(){return r.apply(this,arguments)})},{key:"saveToDisk",value:(n=S(regeneratorRuntime.mark(function e(){var t,n=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.diskEnabled){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,this.encryptionParams();case 4:t=e.sent,new W(this.historySession,t.keys,t.auth_params).paramsForSync().then(function(e){n.storageManager.setItem(j,JSON.stringify(e))});case 7:case"end":return e.stop()}},e,this)})),function(){return n.apply(this,arguments)})},{key:"loadFromDisk",value:(t=S(regeneratorRuntime.mark(function e(){var t,n,r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageManager.getItem(B);case 2:return(n=e.sent)&&(this.diskEnabled=JSON.parse(n)),e.next=6,this.storageManager.getItem(j);case 6:if(t=e.sent)return t=JSON.parse(t),e.next=11,this.encryptionParams();e.next=18;break;case 11:return n=e.sent,e.next=14,SFJS.itemTransformer.decryptItem(t,n.keys);case 14:r=new Y(t),this.historySession=r,e.next=19;break;case 18:this.historySession=new Y;case 19:return e.next=21,this.storageManager.getItem(H);case 21:r=e.sent,this.autoOptimize=!r||JSON.parse(r);case 23:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})},{key:"toggleAutoOptimize",value:(e=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:this.autoOptimize=!this.autoOptimize,this.autoOptimize?this.storageManager.setItem(H,JSON.stringify(!0)):this.storageManager.setItem(H,JSON.stringify(!1));case 2:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})}]),a}();ie.SFSessionHistoryManager=N;var U=function(){function t(a,e){var u=this;C(this,t),this.syncManager=e,this.modelManager=a,this.singletonHandlers=[],a.addItemSyncObserverWithPriority({id:"sf-singleton-manager",types:"*",priority:-1,callback:function(e,t,n,r,i){r!==F.MappingSourceLocalDirtied&&u.resolveSingletons(a.allNondummyItems,null,!0)}}),e.addEventHandler(function(e,t){"local-data-loaded"==e?(u.resolveSingletons(a.allNondummyItems,null,!0),u.initialDataLoaded=!0):"sync:completed"==e&&u.initialDataLoaded&&u.resolveSingletons(t.retrievedItems,t.savedItems)}),a.addModelUuidChangeObserver("singleton-manager",function(e,t){var n=!0,r=!1,i=void 0;try{for(var a,o=u.singletonHandlers[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;s.singleton&&J.ItemSatisfiesPredicates(t,s.predicates)&&(s.singleton=null,u.resolveSingletons([t]))}}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}})}return O(t,[{key:"registerSingleton",value:function(e,t,n){this.singletonHandlers.push({predicates:e,resolutionCallback:t,createBlock:n})}},{key:"resolveSingletons",value:function(f,h,p){var d=this;f=f||[],h=h||[];var e=!0,t=!1,n=void 0;try{for(var g,r=this.singletonHandlers[Symbol.iterator]();!(e=(g=r.next()).done);e=!0)!function(){function e(){t.createBlock&&(t.pendingCreateBlockCallback=!0,t.createBlock(function(e){t.singleton=e,t.pendingCreateBlockCallback=!1,t.resolutionCallback&&t.resolutionCallback(e)}))}var t=g.value,n=t.predicates.slice(),r=d.modelManager.filterItemsWithPredicates(f,n),i=d.modelManager.filterItemsWithPredicates(h,n).length;if(0<r.length||0<i){var a=d.modelManager.itemsMatchingPredicates(n);if(2<=a.length){var o=a.sort(function(e,t){return!e.errorDecrypting&&(t.errorDecrypting||e.created_at<t.created_at)?-1:1}),r=o[0],i=o.slice(1,o.length),s=!0,n=!1,o=void 0;try{for(var u,c=i[Symbol.iterator]();!(s=(u=c.next()).done);s=!0){var l=u.value;d.modelManager.setItemToBeDeleted(l)}}catch(e){n=!0,o=e}finally{try{s||null==c.return||c.return()}finally{if(n)throw o}}d.syncManager.sync(),t.singleton=r,t.resolutionCallback&&t.resolutionCallback(r)}else 1==a.length&&((a=a[0]).errorDecrypting?(d.modelManager.setItemToBeDeleted(a),e()):t.singleton&&t.singleton===a||(t.singleton=a,t.resolutionCallback&&t.resolutionCallback(a)))}else t.singleton||p||t.pendingCreateBlockCallback||e()}()}catch(e){t=!0,n=e}finally{try{e||null==r.return||r.return()}finally{if(t)throw n}}}}]),t}();ie.SFSingletonManager=U;var V=function(){function e(){C(this,e)}var t,n,r,i,a,o,s,u,c,l;return O(e,[{key:"setItem",value:(l=S(regeneratorRuntime.mark(function e(t,n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(e,t){return l.apply(this,arguments)})},{key:"getItem",value:(c=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(e){return c.apply(this,arguments)})},{key:"removeItem",value:(u=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(e){return u.apply(this,arguments)})},{key:"clear",value:(s=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(){return s.apply(this,arguments)})},{key:"getAllModels",value:(o=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(){return o.apply(this,arguments)})},{key:"saveModel",value:(a=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.saveModels([t]));case 1:case"end":return e.stop()}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"saveModels",value:(i=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(e){return i.apply(this,arguments)})},{key:"deleteModel",value:(r=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.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:"clearAllModels",value:(n=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(){return n.apply(this,arguments)})},{key:"clearAllData",value:(t=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all([this.clear(),this.clearAllModels()]));case 1:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})}]),e}();ie.SFStorageManager=V;var z,q=function(){function I(e,t,n,r,i){C(this,I),I.KeyRequestLoadLocal="KeyRequestLoadLocal",I.KeyRequestSaveLocal="KeyRequestSaveLocal",I.KeyRequestLoadSaveAccount="KeyRequestLoadSaveAccount",this.httpManager=n,this.modelManager=e,this.storageManager=t,this.$interval=i||setInterval.bind(window),this.$timeout=r||setTimeout.bind(window),this.syncStatus={},this.syncStatusObservers=[],this.eventHandlers=[],this.PerSyncItemUploadLimit=150,this.ServerItemDownloadLimit=150,this.MajorDataChangeThreshold=15,this.MaxDiscordanceBeforeOutOfSync=5,this.syncDiscordance=0,this.outOfSync=!1}var e,t,n,r,i,a,o,s,u,c,l,f,h,p,d,g,m,v,y,b,k,w,x;return O(I,[{key:"handleServerIntegrityHash",value:(x=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t&&0!=t.length){e.next=2;break}return e.abrupt("return",!0);case 2:return e.next=4,this.modelManager.computeDataIntegrityHash();case 4:if(n=e.sent){e.next=7;break}return e.abrupt("return",!0);case 7:if(n!==t)return this.syncDiscordance++,this.syncDiscordance>=this.MaxDiscordanceBeforeOutOfSync&&(this.outOfSync||(this.outOfSync=!0,this.notifyEvent("enter-out-of-sync"))),e.abrupt("return",!1);e.next=13;break;case 13:return this.outOfSync&&(this.outOfSync=!1,this.notifyEvent("exit-out-of-sync")),this.syncDiscordance=0,e.abrupt("return",!0);case 16:case"end":return e.stop()}},e,this)})),function(e){return x.apply(this,arguments)})},{key:"isOutOfSync",value:function(){return this.outOfSync}},{key:"getServerURL",value:(w=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageManager.getItem("server");case 2:if(e.t0=e.sent,e.t0){e.next=5;break}e.t0=window._default_sf_server;case 5:return e.abrupt("return",e.t0);case 6:case"end":return e.stop()}},e,this)})),function(){return w.apply(this,arguments)})},{key:"getSyncURL",value:(k=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getServerURL();case 2:return e.t0=e.sent,e.abrupt("return",e.t0+"/items/sync");case 4:case"end":return e.stop()}},e,this)})),function(){return k.apply(this,arguments)})},{key:"registerSyncStatusObserver",value:function(e){e={key:new Date,callback:e};return this.syncStatusObservers.push(e),e}},{key:"removeSyncStatusObserver",value:function(e){_.pull(this.syncStatusObservers,e)}},{key:"syncStatusDidChange",value:function(){var t=this;this.syncStatusObservers.forEach(function(e){e.callback(t.syncStatus)})}},{key:"addEventHandler",value:function(e){return this.eventHandlers.push(e),e}},{key:"removeEventHandler",value:function(e){_.pull(this.eventHandlers,e)}},{key:"notifyEvent",value:function(e,t){var n=!0,r=!1,i=void 0;try{for(var a,o=this.eventHandlers[Symbol.iterator]();!(n=(a=o.next()).done);n=!0)(0,a.value)(e,t||{})}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}}},{key:"setKeyRequestHandler",value:function(e){this.keyRequestHandler=e}},{key:"getActiveKeyInfo",value:(b=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.keyRequestHandler(t));case 1:case"end":return e.stop()}},e,this)})),function(e){return b.apply(this,arguments)})},{key:"initialDataLoaded",value:function(){return!0===this._initialDataLoaded}},{key:"_sortLocalItems",value:function(e){var o=this;return e.sort(function(e,t){var n=new Date(t.updated_at)-new Date(e.updated_at),r=o.contentTypeLoadPriority,i=0,a=0;return r&&(i=r.indexOf(e.content_type),a=r.indexOf(t.content_type),-1==i&&(i=r.length),-1==a&&(a=r.length)),i==a?n:i<a?-1:1})}},{key:"loadLocalItems",value:(y=S(regeneratorRuntime.mark(function e(){var u,c,t,l=this,n=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(u=(t=0<n.length&&void 0!==n[0]?n[0]:{}).incrementalCallback,c=t.batchSize,(t=t.options)&&t.simulateHighLatency)return t=t.simulatedLatency||1e3,e.next=5,this._awaitSleep(t);e.next=5;break;case 5:if(this.loadLocalDataPromise)return e.abrupt("return",this.loadLocalDataPromise);e.next=7;break;case 7:return c=c||100,this.loadLocalDataPromise=this.storageManager.getAllModels().then(function(r){var i=(r=(r=l._sortLocalItems(r)).filter(function(e){var t=l.modelManager.findItem(e.uuid);return!t||new Date(e.dirtiedDate)>t.dirtiedDate})).length,a=0,o=[],s=function(){var e=S(regeneratorRuntime.mark(function e(){var t,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.slice(a,a+c),e.next=3,l.handleItemsResponse(t,null,F.MappingSourceLocalRetrieved,I.KeyRequestLoadLocal);case 3:if(n=e.sent,o.push(n),(a+=t.length)<i)return e.abrupt("return",new Promise(function(e,t){l.$timeout(function(){l.notifyEvent("local-data-incremental-load"),u&&u(a,i),s().then(e)})}));e.next=10;break;case 10:l._initialDataLoaded=!0,l.notifyEvent("local-data-loaded");case 12:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}();return s()}),e.abrupt("return",this.loadLocalDataPromise);case 10:case"end":return e.stop()}},e,this)})),function(){return y.apply(this,arguments)})},{key:"writeItemsToLocalStorage",value:(v=S(regeneratorRuntime.mark(function e(h,p){var d=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(0==h.length)return e.abrupt("return");e.next=2;break;case 2:return e.abrupt("return",new Promise(function(){var n=S(regeneratorRuntime.mark(function e(t,n){var r,i,a,o,s,u,c,l,f;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(r=[],i=[],o=!(a=!0),s=void 0,e.prev=4,u=h[Symbol.iterator]();!(a=(c=u.next()).done);a=!0)(!0!==(c=c.value).deleted||c.dirty?r:i).push(c);e.next=12;break;case 8:e.prev=8,e.t0=e.catch(4),o=!0,s=e.t0;case 12:e.prev=12,e.prev=13,a||null==u.return||u.return();case 15:if(e.prev=15,o)throw s;e.next=18;break;case 18:return e.finish(15);case 19:return e.finish(12);case 20:if(0<i.length)return e.next=23,Promise.all(i.map(function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",d.storageManager.deleteModel(t));case 1:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()));e.next=23;break;case 23:return e.next=25,d.getActiveKeyInfo(I.KeyRequestSaveLocal);case 25:if(l=e.sent,0<r.length)return e.next=29,Promise.all(r.map(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=new W(t,l.keys,l.auth_params),e.next=3,n.paramsForLocalStorage();case 3:return n=e.sent,p&&delete n.dirty,e.abrupt("return",n);case 6:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}())).catch(function(e){return n(e)});e.next=33;break;case 29:return f=e.sent,e.next=32,d.storageManager.saveModels(f).catch(function(e){console.error("Error writing items",e),d.syncStatus.localError=e,d.syncStatusDidChange(),n()});case 32:d.syncStatus.localError&&(d.syncStatus.localError=null,d.syncStatusDidChange());case 33:t();case 34:case"end":return e.stop()}},e,null,[[4,8,12,20],[13,,15,19]])}));return function(e,t){return n.apply(this,arguments)}}()));case 3:case"end":return e.stop()}},e)})),function(e,t){return v.apply(this,arguments)})},{key:"syncOffline",value:(m=S(regeneratorRuntime.mark(function e(s){var t,n,r,i,a,u=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(n=!(t=!0),r=void 0,e.prev=3,i=s[Symbol.iterator]();!(t=(a=i.next()).done);t=!0)a.value.updated_at=new Date;e.next=11;break;case 7:e.prev=7,e.t0=e.catch(3),n=!0,r=e.t0;case 11:e.prev=11,e.prev=12,t||null==i.return||i.return();case 14:if(e.prev=14,n)throw r;e.next=17;break;case 17:return e.finish(14);case 18:return e.finish(11);case 19:return e.abrupt("return",this.writeItemsToLocalStorage(s,!0).then(function(e){var t=!0,n=!1,r=void 0;try{for(var i,a=s[Symbol.iterator]();!(t=(i=a.next()).done);t=!0){var o=i.value;o.deleted&&u.modelManager.removeItemLocally(o)}}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}return u.modelManager.clearDirtyItems(s),u.modelManager.didSyncModelsOffline(s),u.notifyEvent("sync:completed",{savedItems:s}),{saved_items:s}}));case 20:case"end":return e.stop()}},e,this,[[3,7,11,19],[12,,14,18]])})),function(e){return m.apply(this,arguments)})},{key:"markAllItemsDirtyAndSaveOffline",value:(g=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c,l,f,h;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!t){e.next=28;break}o=this.modelManager.allNondummyItems.filter(function(e){return!e.errorDecrypting}).slice(),r=!(n=!0),i=void 0,e.prev=5,a=o[Symbol.iterator]();case 7:if(n=(o=a.next()).done){e.next=14;break}return o=o.value,e.next=11,this.modelManager.alternateUUIDForItem(o);case 11:n=!0,e.next=7;break;case 14:e.next=20;break;case 16:e.prev=16,e.t0=e.catch(5),r=!0,i=e.t0;case 20:e.prev=20,e.prev=21,n||null==a.return||a.return();case 23:if(e.prev=23,r)throw i;e.next=26;break;case 26:return e.finish(23);case 27:return e.finish(20);case 28:for(s=this.modelManager.allNondummyItems,c=!(u=!0),l=void 0,e.prev=32,f=s[Symbol.iterator]();!(u=(h=f.next()).done);u=!0)h.value.setDirty(!0);e.next=40;break;case 36:e.prev=36,e.t1=e.catch(32),c=!0,l=e.t1;case 40:e.prev=40,e.prev=41,u||null==f.return||f.return();case 43:if(e.prev=43,c)throw l;e.next=46;break;case 46:return e.finish(43);case 47:return e.finish(40);case 48:return e.abrupt("return",this.writeItemsToLocalStorage(s,!1));case 49:case"end":return e.stop()}},e,this,[[5,16,20,28],[21,,23,27],[32,36,40,48],[41,,43,47]])})),function(e){return g.apply(this,arguments)})},{key:"setSyncToken",value:(d=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this._syncToken=t,e.next=3,this.storageManager.setItem("syncToken",t);case 3:case"end":return e.stop()}},e,this)})),function(e){return d.apply(this,arguments)})},{key:"getSyncToken",value:(p=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._syncToken){e.next=4;break}return e.next=3,this.storageManager.getItem("syncToken");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 p.apply(this,arguments)})},{key:"setCursorToken",value:(h=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._cursorToken=t)return e.next=4,this.storageManager.setItem("cursorToken",t);e.next=6;break;case 4:e.next=8;break;case 6:return e.next=8,this.storageManager.removeItem("cursorToken");case 8:case"end":return e.stop()}},e,this)})),function(e){return h.apply(this,arguments)})},{key:"getCursorToken",value:(f=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._cursorToken){e.next=4;break}return e.next=3,this.storageManager.getItem("cursorToken");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 f.apply(this,arguments)})},{key:"clearQueuedCallbacks",value:function(){this._queuedCallbacks=[]}},{key:"callQueuedCallbacks",value:function(e){var t=this.queuedCallbacks;if(t.length){var n=!0,r=!1,i=void 0;try{for(var a,o=t[Symbol.iterator]();!(n=(a=o.next()).done);n=!0)(0,a.value)(e)}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}this.clearQueuedCallbacks()}}},{key:"beginCheckingIfSyncIsTakingTooLong",value:function(){this.syncStatus.checker&&this.stopCheckingIfSyncIsTakingTooLong(),this.syncStatus.checker=this.$interval(function(){5<(new Date-this.syncStatus.syncStart)/1e3&&(this.notifyEvent("sync:taking-too-long"),this.stopCheckingIfSyncIsTakingTooLong())}.bind(this),500)}},{key:"stopCheckingIfSyncIsTakingTooLong",value:function(){this.$interval.hasOwnProperty("cancel")?this.$interval.cancel(this.syncStatus.checker):clearInterval(this.syncStatus.checker),this.syncStatus.checker=null}},{key:"lockSyncing",value:function(){this.syncLocked=!0}},{key:"unlockSyncing",value:function(){this.syncLocked=!1}},{key:"sync",value:(l=S(regeneratorRuntime.mark(function e(){var v,y=this,t=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(v=0<t.length&&void 0!==t[0]?t[0]:{},this.syncLocked)return console.log("Sync Locked, Returning;"),e.abrupt("return");e.next=4;break;case 4:return e.abrupt("return",new Promise(function(){var n=S(regeneratorRuntime.mark(function e(n,t){var r,i,a,o,s,u,c,l,f,h,p,d,g,m;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return v=v||{},r=y.modelManager.getDirtyItems(),i=r.filter(function(e){return!y.lastDirtyItemsSave||e.dirtiedDate>y.lastDirtyItemsSave}),e.next=5,y.getActiveKeyInfo(I.KeyRequestLoadSaveAccount);case 5:if(a=e.sent,o=y.syncStatus.syncOpInProgress,s=y.initialDataLoaded(),o||!s)return y.performSyncAgainOnCompletion=!0,y.lastDirtyItemsSave=new Date,e.next=13,y.writeItemsToLocalStorage(i,!1);e.next=16;break;case 13:return o&&(y.queuedCallbacks.push(n),y.loggingEnabled&&console.warn("Attempting to sync while existing sync is in progress.")),s||(y.loggingEnabled&&console.warn("(1) Attempting to perform online sync before local data has loaded"),n()),e.abrupt("return");case 16:if(y.syncStatus.syncOpInProgress=!0,a.offline)return e.abrupt("return",y.syncOffline(r).then(function(e){y.syncStatus.syncOpInProgress=!1,n(e)}).catch(function(e){y.notifyEvent("sync-exception",e)}));e.next=19;break;case 19:if(y.initialDataLoaded()){e.next=22;break}return console.error("Attempting to perform online sync before local data has loaded"),e.abrupt("return");case 22:return y.loggingEnabled&&console.log("Syncing online user."),u=y.syncStatus.needsMoreSync,y.syncStatus.syncStart=new Date,y.beginCheckingIfSyncIsTakingTooLong(),c=y.PerSyncItemUploadLimit,(l=r.slice(0,c)).length<r.length?y.syncStatus.needsMoreSync=!0:y.syncStatus.needsMoreSync=!1,u||(y.syncStatus.total=r.length,y.syncStatus.current=0),y.syncStatus.current>y.syncStatus.total&&(y.syncStatus.total=y.syncStatus.current),y.syncStatusDidChange(),e.next=34,y.writeItemsToLocalStorage(i,!1);case 34:return y.lastDirtyItemsSave=new Date,v.onPreSyncSave&&v.onPreSyncSave(),y.allRetreivedItems||(y.allRetreivedItems=[]),y.allSavedItems||(y.allSavedItems=[]),(f={}).limit=y.ServerItemDownloadLimit,v.performIntegrityCheck&&(f.compute_integrity=!0),e.prev=41,e.next=44,Promise.all(l.map(function(e){e=new W(e,a.keys,a.auth_params);return e.additionalFields=v.additionalFields,e.paramsForSync()})).then(function(e){f.items=e});case 44:e.next=49;break;case 46:e.prev=46,e.t0=e.catch(41),y.notifyEvent("sync-exception",e.t0);case 49:for(p=!(h=!0),d=void 0,e.prev=52,g=l[Symbol.iterator]();!(h=(m=g.next()).done);h=!0)m.value.dirtyCount=0;e.next=60;break;case 56:e.prev=56,e.t1=e.catch(52),p=!0,d=e.t1;case 60:e.prev=60,e.prev=61,h||null==g.return||g.return();case 63:if(e.prev=63,p)throw d;e.next=66;break;case 66:return e.finish(63);case 67:return e.finish(60);case 68:return e.next=70,y.getSyncToken();case 70:return f.sync_token=e.sent,e.next=73,y.getCursorToken();case 73:return f.cursor_token=e.sent,f.api=T.getApiVersion(),y.loggingEnabled&&console.log("Syncing with params",f),e.prev=76,e.t2=y.httpManager,e.next=80,y.getSyncURL();case 80:e.t3=e.sent,e.t4=f,e.t5=function(e){y.handleSyncSuccess(l,e,v).then(function(){n(e)}).catch(function(t){console.log("Caught sync success exception:",t),y.handleSyncError(t,null,r).then(function(e){y.notifyEvent("sync-exception",t),n(e)})})},e.t6=function(e,t){y.handleSyncError(e,t,r).then(function(e){n(e)})},e.t2.postAuthenticatedAbsolute.call(e.t2,e.t3,e.t4,e.t5,e.t6),e.next=90;break;case 87:e.prev=87,e.t7=e.catch(76),console.log("Sync exception caught:",e.t7);case 90:case"end":return e.stop()}},e,null,[[41,46],[52,56,60,68],[61,,63,67],[76,87]])}));return function(e,t){return n.apply(this,arguments)}}()));case 5:case"end":return e.stop()}},e,this)})),function(){return l.apply(this,arguments)})},{key:"_awaitSleep",value:(c=S(regeneratorRuntime.mark(function e(n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return console.warn("Simulating high latency sync request",n),e.abrupt("return",new Promise(function(e,t){setTimeout(function(){e()},n)}));case 2:case"end":return e.stop()}},e)})),function(e){return c.apply(this,arguments)})},{key:"handleSyncSuccess",value:(u=S(regeneratorRuntime.mark(function e(t,n,r){var i,a,o,s,u,c,l,f,h,p,d,g,m,v,y=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r.simulateHighLatency)return p=r.simulatedLatency||1e3,e.next=4,this._awaitSleep(p);e.next=4;break;case 4:for(this.syncStatus.error=null,this.loggingEnabled&&console.log("Sync response",n),i=this.allSavedItems.map(function(e){return e.uuid}),a=n.saved_items.map(function(e){return e.uuid}),n.retrieved_items=n.retrieved_items.filter(function(e){var t=i.includes(e.uuid),n=a.includes(e.uuid);if(t||n)return!1;e=y.modelManager.findItem(e.uuid);return!e||!e.dirty}),o=[],u=!(s=!0),c=void 0,e.prev=13,l=t[Symbol.iterator]();!(s=(f=l.next()).done);s=!0)0==(f=f.value).dirtyCount&&o.push(f);e.next=21;break;case 17:e.prev=17,e.t0=e.catch(13),u=!0,c=e.t0;case 21:e.prev=21,e.prev=22,s||null==l.return||l.return();case 24:if(e.prev=24,u)throw c;e.next=27;break;case 27:return e.finish(24);case 28:return e.finish(21);case 29:return this.modelManager.clearDirtyItems(o),e.next=32,this.handleItemsResponse(n.retrieved_items,null,F.MappingSourceRemoteRetrieved,I.KeyRequestLoadSaveAccount);case 32:return h=e.sent,this.allRetreivedItems=this.allRetreivedItems.concat(h),this.syncStatus.retrievedCount=this.allRetreivedItems.length,p=["content","auth_hash"],e.next=38,this.handleItemsResponse(n.saved_items,p,F.MappingSourceRemoteSaved,I.KeyRequestLoadSaveAccount);case 38:return d=e.sent,this.allSavedItems=this.allSavedItems.concat(d),g=n.unsaved,e.next=43,this.deprecated_handleUnsavedItemsResponse(g);case 43:return e.next=45,this.handleConflictsResponse(n.conflicts);case 45:if(m=e.sent,v=m&&0<m.length,m)return e.next=50,this.writeItemsToLocalStorage(m,!1);e.next=50;break;case 50:return e.next=52,this.writeItemsToLocalStorage(d,!1);case 52:return e.next=54,this.writeItemsToLocalStorage(h,!1);case 54:if(n.integrity_hash&&!n.cursor_token)return e.next=57,this.handleServerIntegrityHash(n.integrity_hash);e.next=59;break;case 57:e.sent||this.syncDiscordance<this.MaxDiscordanceBeforeOutOfSync&&(this.performSyncAgainOnCompletion=!0);case 59:return this.syncStatus.syncOpInProgress=!1,this.syncStatus.current+=t.length,this.syncStatusDidChange(),this.setSyncToken(n.sync_token),this.setCursorToken(n.cursor_token),this.stopCheckingIfSyncIsTakingTooLong(),e.next=67,this.getCursorToken();case 67:if(e.sent||this.syncStatus.needsMoreSync)return e.abrupt("return",new Promise(function(e,t){setTimeout(function(){this.sync(r).then(e)}.bind(y),10)}));e.next=72;break;case 72:if(v)return this.performSyncAgainOnCompletion=!1,e.abrupt("return",new Promise(function(e,t){setTimeout(function(){y.sync(r).then(e)},10)}));e.next=77;break;case 77:return this.syncStatus.retrievedCount=0,this.syncStatus.current=0,this.syncStatus.total=0,this.syncStatusDidChange(),(this.allRetreivedItems.length>=this.majorDataChangeThreshold||d.length>=this.majorDataChangeThreshold||g&&g.length>=this.majorDataChangeThreshold||m&&m.length>=this.majorDataChangeThreshold)&&this.notifyEvent("major-data-change"),this.callQueuedCallbacks(n),this.notifyEvent("sync:completed",{retrievedItems:this.allRetreivedItems,savedItems:this.allSavedItems}),this.allRetreivedItems=[],this.allSavedItems=[],this.performSyncAgainOnCompletion&&(this.performSyncAgainOnCompletion=!1,setTimeout(function(){y.sync(r)},10)),e.abrupt("return",n);case 88:case"end":return e.stop()}},e,this,[[13,17,21,29],[22,,24,28]])})),function(e,t,n){return u.apply(this,arguments)})},{key:"handleSyncError",value:(s=S(regeneratorRuntime.mark(function e(t,n,r){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return console.log("Sync error: ",t),401==n&&this.notifyEvent("sync-session-invalid"),t?"string"==typeof t&&(t={error:{message:t}}):t={error:{message:"Could not connect to server."}},this.syncStatus.syncOpInProgress=!1,this.syncStatus.error=t.error,this.syncStatusDidChange(),this.writeItemsToLocalStorage(r,!1),this.modelManager.didSyncModelsOffline(r),this.stopCheckingIfSyncIsTakingTooLong(),this.notifyEvent("sync:error",t.error),this.callQueuedCallbacks({error:"Sync error"}),e.abrupt("return",t);case 12:case"end":return e.stop()}},e,this)})),function(e,t,n){return s.apply(this,arguments)})},{key:"handleItemsResponse",value:(o=S(regeneratorRuntime.mark(function e(t,n,r,i){var a,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getActiveKeyInfo(i);case 2:return o=e.sent.keys,e.next=5,SFJS.itemTransformer.decryptMultipleItems(t,o);case 5:return e.next=7,this.modelManager.mapResponseItemsToLocalModelsOmittingFields(t,n,r);case 7:return a=e.sent,0<(o=a.filter(function(e){var t=e.errorDecryptingValueChanged;return e.errorDecryptingValueChanged=!1,t})).length&&this.writeItemsToLocalStorage(o,!1),e.abrupt("return",a);case 11:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return o.apply(this,arguments)})},{key:"refreshErroredItems",value:(a=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(0<(t=this.modelManager.allNondummyItems.filter(function(e){return 1==e.errorDecrypting})).length)return e.abrupt("return",this.handleItemsResponse(t,null,F.MappingSourceLocalRetrieved,I.KeyRequestLoadSaveAccount));e.next=3;break;case 3:case"end":return e.stop()}},e,this)})),function(){return a.apply(this,arguments)})},{key:"handleConflictsResponse",value:(i=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c,l,f,h,p,d,g,m,v,y,b,k,w,x,$,S,_,R;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t&&0!=t.length){e.next=2;break}return e.abrupt("return");case 2:this.loggingEnabled&&console.log("Handle Conflicted Items:",t),n={},i=!(r=!0),a=void 0,e.prev=7,o=t[Symbol.iterator]();case 9:if(r=(s=o.next()).done){e.next=21;break}if(c=s.value,u=c.server_item||c.unsaved_item,c=this.modelManager.findItem(u.uuid)){e.next=16;break}return n[u.uuid]={},e.abrupt("continue",18);case 16:g=c.getContentCopy(),n[u.uuid]={frozenContent:g,itemRef:c};case 18:r=!0,e.next=9;break;case 21:e.next=27;break;case 23:e.prev=23,e.t0=e.catch(7),i=!0,a=e.t0;case 27:e.prev=27,e.prev=28,r||null==o.return||o.return();case 30:if(e.prev=30,i)throw a;e.next=33;break;case 33:return e.finish(30);case 34:return e.finish(27);case 35:l=[],h=!(f=!0),p=void 0,e.prev=39,d=t[Symbol.iterator]();case 41:if(f=(g=d.next()).done){e.next=91;break}return m=g.value,v=m.server_item||m.unsaved_item,e.t1=SFJS.itemTransformer,e.t2=[v],e.next=48,this.getActiveKeyInfo(I.KeyRequestLoadSaveAccount);case 48:return e.t3=e.sent.keys,e.next=51,e.t1.decryptMultipleItems.call(e.t1,e.t2,e.t3);case 51:if(w=n[v.uuid],y=w.frozenContent,b=w.itemRef){e.next=54;break}return e.abrupt("continue",88);case 54:if(l.push(b),"uuid_conflict"===m.type)return e.next=58,this.modelManager.alternateUUIDForItem(b);e.next=62;break;case 58:_=e.sent,l.push(_),e.next=88;break;case 62:if("sync_conflict"===m.type)return e.next=65,this.modelManager.createDuplicateItemFromResponseItem(v);e.next=86;break;case 65:if(k=e.sent,S=this.modelManager.duplicateItemWithCustomContent({content:y,duplicateOf:b}),w=!S.isItemContentEqualWith(k),_=!b.isItemContentEqualWith(k),S=$=x=R=!1,v.deleted||b.deleted?S=!0:w?(new Date-b.client_updated_at)/1e3<20?x=$=!0:S=R=!0:_?(_=!K.AreItemContentsEqual({leftContent:b.content,rightContent:k.content,keysToIgnore:b.keysToIgnoreWhenCheckingContentEquality().concat(["references"]),appDataKeysToIgnore:b.appDataKeysToIgnoreWhenCheckingContentEquality()}),!_?$=!0:S=R=!0):S=!0,R)return e.next=77,this.modelManager.duplicateItemWithCustomContentAndAddAsConflict({content:y,duplicateOf:b});e.next=79;break;case 77:R=e.sent,l.push(R);case 79:if(x&&(this.modelManager.addDuplicatedItemAsConflict({duplicate:k,duplicateOf:b}),l.push(k)),S)return e.next=83,this.modelManager.mapResponseItemsToLocalModelsOmittingFields([v],null,F.MappingSourceRemoteRetrieved);e.next=83;break;case 83:$&&(b.updated_at=k.updated_at,b.setDirty(!0)),e.next=88;break;case 86:return console.error("Unsupported conflict type",m.type),e.abrupt("continue",88);case 88:f=!0,e.next=41;break;case 91:e.next=97;break;case 93:e.prev=93,e.t4=e.catch(39),h=!0,p=e.t4;case 97:e.prev=97,e.prev=98,f||null==d.return||d.return();case 100:if(e.prev=100,h)throw p;e.next=103;break;case 103:return e.finish(100);case 104:return e.finish(97);case 105:return e.abrupt("return",l);case 106:case"end":return e.stop()}},e,this,[[7,23,27,35],[28,,30,34],[39,93,97,105],[98,,100,104]])})),function(e){return i.apply(this,arguments)})},{key:"deprecated_handleUnsavedItemsResponse",value:(r=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t&&0!=t.length){e.next=2;break}return e.abrupt("return");case 2:this.loggingEnabled&&console.log("Handle Unsaved Items:",t),r=!(n=!0),i=void 0,e.prev=6,a=t[Symbol.iterator]();case 8:if(n=(l=a.next()).done){e.next=35;break}return o=l.value,s=o.item,e.t0=SFJS.itemTransformer,e.t1=[s],e.next=15,this.getActiveKeyInfo(I.KeyRequestLoadSaveAccount);case 15:return e.t2=e.sent.keys,e.next=18,e.t0.decryptMultipleItems.call(e.t0,e.t1,e.t2);case 18:if(u=this.modelManager.findItem(s.uuid)){e.next=21;break}return e.abrupt("continue",32);case 21:if("uuid_conflict"===(c=o.error).tag)return e.next=25,this.modelManager.alternateUUIDForItem(u);e.next=27;break;case 25:e.next=32;break;case 27:if("sync_conflict"===c.tag)return e.next=30,this.modelManager.createDuplicateItemFromResponseItem(s);e.next=32;break;case 30:l=e.sent,s.deleted||u.isItemContentEqualWith(l)||this.modelManager.addDuplicatedItemAsConflict({duplicate:l,duplicateOf:u});case 32:n=!0,e.next=8;break;case 35:e.next=41;break;case 37:e.prev=37,e.t3=e.catch(6),r=!0,i=e.t3;case 41:e.prev=41,e.prev=42,n||null==a.return||a.return();case 44:if(e.prev=44,r)throw i;e.next=47;break;case 47:return e.finish(44);case 48:return e.finish(41);case 49:case"end":return e.stop()}},e,this,[[6,37,41,49],[42,,44,48]])})),function(e){return r.apply(this,arguments)})},{key:"stateless_downloadAllItems",value:function(){var a=this,o=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return new Promise(function(){var n=S(regeneratorRuntime.mark(function e(i,n){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t={limit:o.limit||500,sync_token:o.syncToken,cursor_token:o.cursorToken,content_type:o.contentType,event:o.event,api:T.getApiVersion()},e.prev=1,e.t0=a.httpManager,e.next=5,a.getSyncURL();case 5:e.t1=e.sent,e.t2=t,e.t3=function(){var t=S(regeneratorRuntime.mark(function e(t){var n,r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return o.retrievedItems||(o.retrievedItems=[]),n=t.retrieved_items,e.next=4,a.getActiveKeyInfo(I.KeyRequestLoadSaveAccount);case 4:return r=e.sent.keys,e.next=7,SFJS.itemTransformer.decryptMultipleItems(n,r);case 7:o.retrievedItems=o.retrievedItems.concat(n.map(function(e){return a.modelManager.createItem(e)})),o.syncToken=t.sync_token,o.cursorToken=t.cursor_token,o.cursorToken?a.stateless_downloadAllItems(o).then(i):i(o.retrievedItems);case 11:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),e.t4=function(e,t){n(e)},e.t0.postAuthenticatedAbsolute.call(e.t0,e.t1,e.t2,e.t3,e.t4),e.next=16;break;case 12:e.prev=12,e.t5=e.catch(1),console.log("Download all items exception caught:",e.t5),n(e.t5);case 16:case"end":return e.stop()}},e,null,[[1,12]])}));return function(e,t){return n.apply(this,arguments)}}())}},{key:"resolveOutOfSync",value:(n=S(regeneratorRuntime.mark(function e(){var l=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.stateless_downloadAllItems({event:"resolve-out-of-sync"}).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:n=[],i=!(r=!0),a=void 0,e.prev=4,o=t[Symbol.iterator]();case 6:if(r=(s=o.next()).done){e.next=18;break}if(u=s.value,!(c=l.modelManager.findItem(u.uuid))){e.next=14;break}if(!u.isItemContentEqualWith(c))return e.next=14,l.modelManager.duplicateItemAndAddAsConflict(c);e.next=14;break;case 14:n.push(u);case 15:r=!0,e.next=6;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(4),i=!0,a=e.t0;case 24:e.prev=24,e.prev=25,r||null==o.return||o.return();case 27:if(e.prev=27,i)throw a;e.next=30;break;case 30:return e.finish(27);case 31:return e.finish(24);case 32:return e.next=34,l.modelManager.mapResponseItemsToLocalModelsWithOptions({items:n,source:F.MappingSourceRemoteRetrieved});case 34:return e.next=36,l.writeItemsToLocalStorage(l.modelManager.allNondummyItems);case 36:return e.abrupt("return",l.sync({performIntegrityCheck:!0}));case 37:case"end":return e.stop()}},e,null,[[4,20,24,32],[25,,27,31]])}));return function(e){return t.apply(this,arguments)}}()));case 1:case"end":return e.stop()}},e,this)})),function(){return n.apply(this,arguments)})},{key:"handleSignout",value:(t=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.outOfSync=!1,this.loadLocalDataPromise=null,this.performSyncAgainOnCompletion=!1,this.syncStatus.syncOpInProgress=!1,this._queuedCallbacks=[],this.syncStatus={},e.abrupt("return",this.clearSyncToken());case 7:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})},{key:"clearSyncToken",value:(e=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this._syncToken=null,this._cursorToken=null,e.abrupt("return",this.storageManager.removeItem("syncToken"));case 3:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})},{key:"__setLocalDataNotLoaded",value:function(){this.loadLocalDataPromise=null,this._initialDataLoaded=!1}},{key:"queuedCallbacks",get:function(){return this._queuedCallbacks||(this._queuedCallbacks=[]),this._queuedCallbacks}}]),I}();ie.SFSyncManager=q;var K=function(){function a(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};C(this,a),this.content={},this.referencingObjects=[],this.updateFromJSON(e),this.uuid||"undefined"!=typeof SFJS&&SFJS.crypto.generateUUIDSync&&(this.uuid=SFJS.crypto.generateUUIDSync()),"object"!==x(this.content)||this.content.references||(this.content.references=[])}var e;return O(a,[{key:"initUUID",value:(e=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.uuid){e.next=4;break}return e.next=3,SFJS.crypto.generateUUID();case 3:this.uuid=e.sent;case 4:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})},{key:"updateFromJSON",value:function(e){if(e){this.deleted=e.deleted,this.uuid=e.uuid,this.enc_item_key=e.enc_item_key,this.auth_hash=e.auth_hash,this.auth_params=e.auth_params;for(var t=0,n=["errorDecrypting","dirty","dirtyCount","dirtiedDate","dummy"];t<n.length;t++){var r=n[t];void 0!==e[r]&&(this[r]=e[r])}if(this.dirtiedDate&&"string"==typeof this.dirtiedDate&&(this.dirtiedDate=new Date(this.dirtiedDate)),this.content_type||(this.content_type=e.content_type),e.errorDecrypting)this.content=e.content;else try{var i="string"==typeof e.content?JSON.parse(e.content):e.content;a.deepMerge(this.contentObject,i)}catch(e){console.log("Error while updating item from json",e)}e.created_at&&(this.created_at=e.created_at),e.updated_at&&(this.updated_at=e.updated_at),this.created_at?this.created_at=new Date(this.created_at):this.created_at=new Date,this.updated_at?this.updated_at=new Date(this.updated_at):this.updated_at=new Date(0),this._client_updated_at=null,e.content?this.mapContentToLocalProperties(this.contentObject):1==e.deleted&&this.handleDeletedContent()}}},{key:"mapContentToLocalProperties",value:function(e){}},{key:"createContentJSONFromProperties",value:function(){var e=this.structureParams();return a.deepMerge(this.contentObject,e),e}},{key:"structureParams",value:function(){return this.getContentCopy()}},{key:"handleDeletedContent",value:function(){}},{key:"setDirty",value:function(e,t){this.dirty=e,this.dirtyCount||(this.dirtyCount=0),e?this.dirtyCount++:this.dirtyCount=0,this.dirtiedDate=new Date,e&&t?this.client_updated_at=new Date:this.hasRawClientUpdatedAtValue()||(this.client_updated_at=new Date(this.updated_at))}},{key:"updateLocalRelationships",value:function(){}},{key:"addItemAsRelationship",value:function(e){var t;e.setIsBeingReferencedBy(this),this.hasRelationshipWithItem(e)||((t=this.content.references||[]).push({uuid:e.uuid,content_type:e.content_type}),this.content.references=t)}},{key:"removeItemAsRelationship",value:function(e){e.setIsNoLongerBeingReferencedBy(this),this.removeReferenceWithUuid(e.uuid)}},{key:"setIsBeingReferencedBy",value:function(e){_.find(this.referencingObjects,{uuid:e.uuid})||this.referencingObjects.push(e)}},{key:"setIsNoLongerBeingReferencedBy",value:function(e){_.remove(this.referencingObjects,{uuid:e.uuid}),this.hasRelationshipWithItem(e)&&(this.removeReferenceWithUuid(e.uuid),this.setDirty(!0))}},{key:"removeReferenceWithUuid",value:function(t){var e=(e=this.content.references||[]).filter(function(e){return e.uuid!=t});this.content.references=e}},{key:"hasRelationshipWithItem",value:function(t){return null!=this.content.references.find(function(e){return e.uuid==t.uuid})}},{key:"isBeingRemovedLocally",value:function(){}},{key:"didFinishSyncing",value:function(){}},{key:"informReferencesOfUUIDChange",value:function(e,t){}},{key:"potentialItemOfInterestHasChangedItsUUID",value:function(e,t,n){if(!this.errorDecrypting){var r=!0,i=!1,a=void 0;try{for(var o,s=this.content.references[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var u=o.value;u.uuid==t&&(u.uuid=n,this.setDirty(!0))}}catch(e){i=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}}}},{key:"doNotEncrypt",value:function(){return!1}},{key:"setDomainDataItem",value:function(e,t,n){var r;n?this.errorDecrypting||(this.content.appData||(this.content.appData={}),(r=(r=this.content.appData[n])||{})[e]=t,this.content.appData[n]=r):console.error("SFItem.AppDomain needs to be set.")}},{key:"getDomainDataItem",value:function(e,t){if(t){if(!this.errorDecrypting){this.content.appData||(this.content.appData={});t=this.content.appData[t];return t?t[e]:null}}else console.error("SFItem.AppDomain needs to be set.")}},{key:"setAppDataItem",value:function(e,t){this.setDomainDataItem(e,t,a.AppDomain)}},{key:"getAppDataItem",value:function(e){return this.getDomainDataItem(e,a.AppDomain)}},{key:"hasRawClientUpdatedAtValue",value:function(){return null!=this.getAppDataItem("client_updated_at")}},{key:"keysToIgnoreWhenCheckingContentEquality",value:function(){return[]}},{key:"appDataKeysToIgnoreWhenCheckingContentEquality",value:function(){return["client_updated_at"]}},{key:"getContentCopy",value:function(){return JSON.parse(JSON.stringify(this.content))}},{key:"isItemContentEqualWith",value:function(e){return a.AreItemContentsEqual({leftContent:this.content,rightContent:e.content,keysToIgnore:this.keysToIgnoreWhenCheckingContentEquality(),appDataKeysToIgnore:this.appDataKeysToIgnoreWhenCheckingContentEquality()})}},{key:"satisfiesPredicate",value:function(e){return J.ItemSatisfiesPredicate(this,e)}},{key:"createdAtString",value:function(){return this.dateToLocalizedString(this.created_at)}},{key:"updatedAtString",value:function(){return this.dateToLocalizedString(this.client_updated_at)}},{key:"updatedAtTimestamp",value:function(){return this.updated_at.getTime()}},{key:"dateToLocalizedString",value:function(e){var t;return"undefined"!=typeof Intl&&Intl.DateTimeFormat?(z||(t=navigator.languages&&navigator.languages.length?navigator.languages[0]:navigator.language,z=new Intl.DateTimeFormat(t,{year:"numeric",month:"short",day:"2-digit",weekday:"long",hour:"2-digit",minute:"2-digit"})),z.format(e)):e.toDateString()+" "+e.toLocaleTimeString()}},{key:"contentObject",get:function(){if(this.errorDecrypting)return this.content;if(!this.content)return this.content={},this.content;if(null!==this.content&&"object"===x(this.content))return this.content;try{var e=JSON.parse(this.content);return this.content=e,this.content}catch(e){return console.log("Error parsing json",e,this),this.content={},this.content}}},{key:"pinned",get:function(){return this.getAppDataItem("pinned")}},{key:"archived",get:function(){return this.getAppDataItem("archived")}},{key:"locked",get:function(){return this.getAppDataItem("locked")}},{key:"displayName",get:function(){return"Item"}},{key:"client_updated_at",get:function(){var e;return this._client_updated_at||(e=this.getAppDataItem("client_updated_at"),this._client_updated_at=e?new Date(e):new Date(this.updated_at)),this._client_updated_at},set:function(e){this._client_updated_at=e,this.setAppDataItem("client_updated_at",e)}}],[{key:"deepMerge",value:function(e,t){return _.mergeWith(e,t,function(e,t){if(_.isArray(e))return t}),e}},{key:"AreItemContentsEqual",value:function(e){var t=e.leftContent,n=e.rightContent,r=e.keysToIgnore,i=e.appDataKeysToIgnore,e=function(e,t){if(!e)return e;var n=!0,r=!1,i=void 0;try{for(var a,o=t[Symbol.iterator]();!(n=(a=o.next()).done);n=!0)delete e[a.value]}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}return e};return(t=JSON.parse(JSON.stringify(t))).appData&&e(t.appData[a.AppDomain],i),t=e(t,r),(n=JSON.parse(JSON.stringify(n))).appData&&e(n.appData[a.AppDomain],i),n=e(n,r),JSON.stringify(t)===JSON.stringify(n)}}]),a}();ie.SFItem=K;var W=function(){function r(e,t,n){if(C(this,r),this.item=e,this.keys=t,this.auth_params=n,this.keys&&!this.auth_params)throw"SFItemParams.auth_params must be supplied if supplying keys.";if(this.auth_params&&!this.auth_params.version)throw"SFItemParams.auth_params is missing version"}var e,t,n,i,a;return O(r,[{key:"paramsForExportFile",value:(a=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.forExportFile=!0,t)return e.abrupt("return",this.__params());e.next=5;break;case 5:return e.next=7,this.__params();case 7:return n=e.sent,e.abrupt("return",_.omit(n,["deleted"]));case 9:case"end":return e.stop()}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"paramsForExtension",value:(i=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.paramsForExportFile());case 1:case"end":return e.stop()}},e,this)})),function(){return i.apply(this,arguments)})},{key:"paramsForLocalStorage",value:(n=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.additionalFields=["dirty","dirtiedDate","errorDecrypting"],this.forExportFile=!0,e.abrupt("return",this.__params());case 3:case"end":return e.stop()}},e,this)})),function(){return n.apply(this,arguments)})},{key:"paramsForSync",value:(t=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.__params());case 1:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})},{key:"__params",value:(e=S(regeneratorRuntime.mark(function e(){var t,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t={uuid:this.item.uuid,content_type:this.item.content_type,deleted:this.item.deleted,created_at:this.item.created_at,updated_at:this.item.updated_at},this.item.errorDecrypting){e.next=23;break}if(n=this.item.doNotEncrypt()&&!this.forExportFile,this.keys&&!n)return e.next=6,SFJS.itemTransformer.encryptItem(this.item,this.keys,this.auth_params);e.next=11;break;case 6:n=e.sent,_.merge(t,n),"001"!==this.auth_params.version&&(t.auth_hash=null),e.next=21;break;case 11:if(!this.forExportFile){e.next=15;break}e.t0=this.item.createContentJSONFromProperties(),e.next=19;break;case 15:return e.next=17,SFJS.crypto.base64(JSON.stringify(this.item.createContentJSONFromProperties()));case 17:e.t1=e.sent,e.t0="000"+e.t1;case 19:t.content=e.t0,this.forExportFile||(t.enc_item_key=null,t.auth_hash=null);case 21:e.next=26;break;case 23:t.content=this.item.content,t.enc_item_key=this.item.enc_item_key,t.auth_hash=this.item.auth_hash;case 26:return this.additionalFields&&_.merge(t,_.pick(this.item,this.additionalFields)),e.abrupt("return",t);case 28:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})}]),r}();ie.SFItemParams=W;var J=function(){function p(e,t,n){C(this,p),this.keypath=e,this.operator=t,this.value=n,p.IsRecursiveOperator(this.operator)&&(this.value=this.value.map(p.fromArray))}return O(p,null,[{key:"fromArray",value:function(e){return new p(e[0],e[1],e[2])}},{key:"ObjectSatisfiesPredicate",value:function(e,t){if(Array.isArray(t)&&(t=this.fromArray(t)),p.IsRecursiveOperator(t.operator)){if("and"===t.operator){var n=!0,r=!1,i=void 0;try{for(var a,o=t.value[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;if(!this.ObjectSatisfiesPredicate(e,s))return!1}}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}return!0}if("or"===t.operator){var u=!0,c=!1,l=void 0;try{for(var f,h=t.value[Symbol.iterator]();!(u=(f=h.next()).done);u=!0){s=f.value;if(this.ObjectSatisfiesPredicate(e,s))return!0}}catch(e){c=!0,l=e}finally{try{u||null==h.return||h.return()}finally{if(c)throw l}}return!1}}i=t.value;"string"==typeof i&&i.includes(".ago")&&(i=this.DateFromString(i));c=t.keypath.split(".").reduce(function(e,t){return e&&e[t]},e),l=[!1,"",null,void 0,NaN];return null==c?"!="==t.operator?!l.includes(t.value):l.includes(t.value):"="==t.operator?Array.isArray(c)?JSON.stringify(c)==JSON.stringify(i):c==i:"!="==t.operator?Array.isArray(c)?JSON.stringify(c)!=JSON.stringify(i):c!==i:"<"==t.operator?c<i:">"==t.operator?i<c:"<="==t.operator?c<=i:">="==t.operator?i<=c:"startsWith"==t.operator?c.startsWith(i):"in"==t.operator?-1!=i.indexOf(c):"includes"==t.operator?this.resolveIncludesPredicate(c,i):"matches"==t.operator&&new RegExp(i).test(c)}},{key:"resolveIncludesPredicate",value:function(e,t){if("string"==typeof t)return e.includes(t);var n=Array.isArray(t)?p.fromArray(t):t,r=!0,i=!1,t=void 0;try{for(var a,o=e[Symbol.iterator]();!(r=(a=o.next()).done);r=!0){var s=a.value;if(this.ObjectSatisfiesPredicate(s,n))return!0}}catch(e){i=!0,t=e}finally{try{r||null==o.return||o.return()}finally{if(i)throw t}}return!1}},{key:"ItemSatisfiesPredicate",value:function(e,t){return Array.isArray(t)&&(t=p.fromArray(t)),this.ObjectSatisfiesPredicate(e,t)}},{key:"ItemSatisfiesPredicates",value:function(e,t){var n=!0,r=!1,i=void 0;try{for(var a,o=t[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;if(!this.ItemSatisfiesPredicate(e,s))return!1}}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}return!0}},{key:"DateFromString",value:function(e){var t=e.split("."),n=t[1],e=new Date,t=parseInt(t[0]);return"days"==n?e.setDate(e.getDate()-t):"hours"==n&&e.setHours(e.getHours()-t),e}},{key:"IsRecursiveOperator",value:function(e){return["and","or"].includes(e)}}]),p}();ie.SFPredicate=J;var G=function(){function t(e){return C(this,t),(e=y(this,b(t).call(this,e))).content.desktopPrivileges||(e.content.desktopPrivileges={}),e}return k(t,K),O(t,null,[{key:"contentType",value:function(){return"SN|Privileges"}}]),O(t,[{key:"setCredentialsForAction",value:function(e,t){this.content.desktopPrivileges[e]=t}},{key:"getCredentialsForAction",value:function(e){return this.content.desktopPrivileges[e]||[]}},{key:"toggleCredentialForAction",value:function(e,t){this.isCredentialRequiredForAction(e,t)?this.removeCredentialForAction(e,t):this.addCredentialForAction(e,t)}},{key:"removeCredentialForAction",value:function(e,t){_.pull(this.content.desktopPrivileges[e],t)}},{key:"addCredentialForAction",value:function(e,t){var n=this.getCredentialsForAction(e);n.push(t),this.setCredentialsForAction(e,n)}},{key:"isCredentialRequiredForAction",value:function(e,t){return this.getCredentialsForAction(e).includes(t)}}]),t}();ie.SFPrivileges=G;var Y=function(){function t(e){var n;return C(this,t),(n=y(this,b(t).call(this,e))).content.itemUUIDToItemHistoryMapping||(n.content.itemUUIDToItemHistoryMapping={}),Object.keys(n.content.itemUUIDToItemHistoryMapping).forEach(function(e){var t=n.content.itemUUIDToItemHistoryMapping[e];n.content.itemUUIDToItemHistoryMapping[e]=new X(t)}),n}return k(t,K),O(t,[{key:"addEntryForItem",value:function(e){return this.historyForItem(e).addHistoryEntryForItem(e)}},{key:"historyForItem",value:function(e){return this.content.itemUUIDToItemHistoryMapping[e.uuid]||(this.content.itemUUIDToItemHistoryMapping[e.uuid]=new X)}},{key:"clearItemHistory",value:function(e){this.historyForItem(e).clear()}},{key:"clearAllHistory",value:function(){this.content.itemUUIDToItemHistoryMapping={}}},{key:"optimizeHistoryForItem",value:function(e){e=this.historyForItem(e);e.entries.length>t.LargeItemEntryAmountThreshold&&e.optimize()}}]),t}();(ie.SFHistorySession=Y).LargeItemEntryAmountThreshold=60;var X=function(){function u(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};if(C(this,u),this.entries||(this.entries=[]),e.entries){var t=!0,n=!1,r=void 0;try{for(var i,a=e.entries[Symbol.iterator]();!(t=(i=a.next()).done);t=!0){var o=i.value,s=this.createEntryForItem(o.item);s.setPreviousEntry(this.getLastEntry()),this.entries.push(s)}}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}}}return O(u,[{key:"createEntryForItem",value:function(e){return new(u.HistoryEntryClassMapping&&u.HistoryEntryClassMapping[e.content_type]||Z)(e)}},{key:"getLastEntry",value:function(){return this.entries[this.entries.length-1]}},{key:"addHistoryEntryForItem",value:function(e){var t=this.createEntryForItem(e),e=this.getLastEntry();if(t.setPreviousEntry(e),!t.isSameAsEntry(e))return this.entries.push(t),t}},{key:"clear",value:function(){this.entries.length=0}},{key:"optimize",value:function(){function r(e){return e.deltaSize()>u.LargeEntryDeltaThreshold}function i(e,t,n){n?o.push(e):-1!==(t=o.indexOf(e))&&o.splice(t,1),n&&r(e)&&-1==e.operationVector()&&((t=a.entries[t-1])&&o.push(t))}var a=this,o=[];this.entries.forEach(function(e,t){var n;0==t||t==a.entries.length-1?i(e,t,!0):(n=r(e),i(e,t,n))}),this.entries=this.entries.filter(function(e,t){return-1!==o.indexOf(e)})}}]),u}();(ie.SFItemHistory=X).LargeEntryDeltaThreshold=15;var Z=function(){function t(e){C(this,t),this.item=K.deepMerge({},e),this.defaultContentKeyToDiffOn="text",this.textCharDiffLength=0,"string"==typeof this.item.updated_at&&(this.item.updated_at=new Date(this.item.updated_at))}return O(t,[{key:"setPreviousEntry",value:function(e){this.hasPreviousEntry=null!=e,this.item.content[this.defaultContentKeyToDiffOn]&&(this.textCharDiffLength=e?this.item.content[this.defaultContentKeyToDiffOn].length-e.item.content[this.defaultContentKeyToDiffOn].length:this.item.content[this.defaultContentKeyToDiffOn].length)}},{key:"operationVector",value:function(){return null!=this.textCharDiffLength?this.hasPreviousEntry&&0!=this.textCharDiffLength?this.textCharDiffLength<0?-1:1:0:1}},{key:"deltaSize",value:function(){return null!=this.textCharDiffLength?Math.abs(this.textCharDiffLength):1}},{key:"isSameAsEntry",value:function(e){if(!e)return!1;var t=new K(this.item),e=new K(e.item);return t.isItemContentEqualWith(e)}}]),t}();ie.SFItemHistoryEntry=Z;var D="undefined"!=typeof window?window:void 0!==e?e:null,Q=function(){function e(){C(this,e),this.DefaultPBKDF2Length=768}var n,r,t,i,a,o,s,u,c,l,f,h,p,d,g;return O(e,[{key:"generateUUIDSync",value:function(){var e=D.crypto||D.msCrypto;if(e){var n=new Uint32Array(4);e.getRandomValues(n);var r=-1;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=n[++r>>3]>>r%8*4&15;return("x"==e?t:3&t|8).toString(16)})}var i=(new Date).getTime();return D.performance&&"function"==typeof D.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)})}},{key:"generateUUID",value:(g=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.generateUUIDSync());case 1:case"end":return e.stop()}},e,this)})),function(){return g.apply(this,arguments)})},{key:"timingSafeEqual",value: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}},{key:"decryptText",value:(d=S(regeneratorRuntime.mark(function e(){var t,n,r,i,a,o,s,u,c=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t=(s=0<c.length&&void 0!==c[0]?c[0]:{}).ciphertextToAuth,n=s.contentCiphertext,r=s.encryptionKey,i=s.iv,a=s.authHash,o=s.authKey,(1<c.length?c[1]:void 0)&&!a)return console.error("Auth hash is required."),e.abrupt("return");e.next=5;break;case 5:if(a)return e.next=8,this.hmac256(t,o);e.next=12;break;case 8:if(u=e.sent,!1===this.timingSafeEqual(a,u))return console.error("Auth hash does not match, returning null."),e.abrupt("return",null);e.next=12;break;case 12:return s=A.enc.Hex.parse(r),u=A.enc.Hex.parse(i||""),u=A.AES.decrypt(n,s,{iv:u,mode:A.mode.CBC,padding:A.pad.Pkcs7}),e.abrupt("return",u.toString(A.enc.Utf8));case 16:case"end":return e.stop()}},e,this)})),function(){return d.apply(this,arguments)})},{key:"encryptText",value:(p=S(regeneratorRuntime.mark(function e(t,n,r){var i,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=A.enc.Hex.parse(n),a=A.enc.Hex.parse(r||""),a=A.AES.encrypt(t,i,{iv:a,mode:A.mode.CBC,padding:A.pad.Pkcs7}),e.abrupt("return",a.toString());case 4:case"end":return e.stop()}},e)})),function(e,t,n){return p.apply(this,arguments)})},{key:"generateRandomKey",value:(h=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",A.lib.WordArray.random(t/8).toString());case 1:case"end":return e.stop()}},e)})),function(e){return h.apply(this,arguments)})},{key:"generateItemEncryptionKey",value:(f=S(regeneratorRuntime.mark(function e(){var t,n,r,i;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=512,n=1,e.next=4,this.generateRandomKey(t);case 4:return r=e.sent,e.next=7,this.generateRandomKey(t);case 7:return i=e.sent,e.abrupt("return",this.pbkdf2(i,r,n,t));case 9:case"end":return e.stop()}},e,this)})),function(){return f.apply(this,arguments)})},{key:"firstHalfOfKey",value:(l=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.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 l.apply(this,arguments)})},{key:"secondHalfOfKey",value:(c=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.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:"base64",value:(u=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",D.btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/g,function(e,t){return String.fromCharCode("0x"+t)})));case 1:case"end":return e.stop()}},e)})),function(e){return u.apply(this,arguments)})},{key:"base64Decode",value:(s=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",D.atob(t));case 1:case"end":return e.stop()}},e)})),function(e){return s.apply(this,arguments)})},{key:"sha256",value:(o=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",A.SHA256(t).toString());case 1:case"end":return e.stop()}},e)})),function(e){return o.apply(this,arguments)})},{key:"hmac256",value:(a=S(regeneratorRuntime.mark(function e(t,n){var r,i;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=A.enc.Hex.parse(n),r=A.enc.Utf8.parse(t),i=A.HmacSHA256(r,i).toString(),e.abrupt("return",i);case 4:case"end":return e.stop()}},e)})),function(e,t){return a.apply(this,arguments)})},{key:"generateSalt",value:(i=S(regeneratorRuntime.mark(function e(t,n,r,i){var a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.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,r){return i.apply(this,arguments)})},{key:"generateSymmetricKeyPair",value:(t=S(regeneratorRuntime.mark(function e(){var t,n,r,i,a=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=(t=0<a.length&&void 0!==a[0]?a[0]:{}).password,i=t.pw_salt,n=t.pw_cost,e.next=3,this.pbkdf2(r,i,n,this.DefaultPBKDF2Length);case 3:return t=e.sent,r=t.length,i=r/3,n=t.slice(0,i),r=t.slice(i,2*i),i=t.slice(2*i,3*i),e.abrupt("return",[n,r,i]);case 10:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})},{key:"computeEncryptionKeysForUser",value:(r=S(regeneratorRuntime.mark(function e(t,n){var r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("003"!=n.version){e.next=9;break}if(n.identifier){e.next=4;break}return console.error("authParams is missing identifier."),e.abrupt("return");case 4:return e.next=6,this.generateSalt(n.identifier,n.version,n.pw_cost,n.pw_nonce);case 6:r=e.sent,e.next=10;break;case 9:r=n.pw_salt;case 10:return e.abrupt("return",this.generateSymmetricKeyPair({password:t,pw_salt:r,pw_cost:n.pw_cost}).then(function(e){return{pw:e[0],mk:e[1],ak:e[2]}}));case 11:case"end":return e.stop()}},e,this)})),function(e,t){return r.apply(this,arguments)})},{key:"generateInitialKeysAndAuthParamsForUser",value:(n=S(regeneratorRuntime.mark(function e(t,n){var r,i,a,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.SFJS.version,i=this.SFJS.defaultPasswordGenerationCost,e.next=4,this.generateRandomKey(256);case 4:return a=e.sent,e.next=7,this.generateSalt(t,r,i,a);case 7:return o=e.sent,e.abrupt("return",this.generateSymmetricKeyPair({password:n,pw_salt:o,pw_cost:i}).then(function(e){return{keys:{pw:e[0],mk:e[1],ak:e[2]},authParams:{pw_nonce:a,pw_cost:i,identifier:t,version:r}}}));case 9:case"end":return e.stop()}},e,this)})),function(e,t){return n.apply(this,arguments)})}]),e}();ie.SFAbstractCrypto=Q;var ee=function(){function e(){return C(this,e),y(this,b(e).apply(this,arguments))}var i;return k(e,Q),O(e,[{key:"pbkdf2",value:(i=S(regeneratorRuntime.mark(function e(t,n,r,i){var a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return a={keySize:i/32,hasher:A.algo.SHA512,iterations:r},e.abrupt("return",A.PBKDF2(t,n,a).toString());case 2:case"end":return e.stop()}},e)})),function(e,t,n,r){return i.apply(this,arguments)})}]),e}();ie.SFCryptoJS=ee;var te=(D="undefined"!=typeof window?window:void 0!==e?e:null).crypto?D.crypto.subtle:null,ne=function(){function e(){return C(this,e),y(this,b(e).apply(this,arguments))}var t,n,r,i,a,o,s,u,c,l,f,h,p,d;return k(e,Q),O(e,[{key:"pbkdf2",value:(d=S(regeneratorRuntime.mark(function e(t,n,r,i){var a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.webCryptoImportKey(t,"PBKDF2",["deriveBits"]);case 2:if(a=e.sent){e.next=6;break}return console.log("Key is null, unable to continue"),e.abrupt("return",null);case 6:return e.abrupt("return",this.webCryptoDeriveBits(a,n,r,i));case 7:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return d.apply(this,arguments)})},{key:"generateRandomKey",value:(p=S(regeneratorRuntime.mark(function e(t){var r=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",te.generateKey({name:"AES-CBC",length:t},!0,["encrypt","decrypt"]).then(function(e){return te.exportKey("raw",e).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,r.arrayBufferToHexString(new Uint8Array(t));case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()).catch(function(e){console.error("Error exporting key",e)})}).catch(function(e){console.error("Error generating key",e)}));case 2:case"end":return e.stop()}},e)})),function(e){return p.apply(this,arguments)})},{key:"generateItemEncryptionKey",value:(h=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all([this.generateRandomKey(256),this.generateRandomKey(256)]).then(function(e){return e.join("")}));case 2:case"end":return e.stop()}},e,this)})),function(){return h.apply(this,arguments)})},{key:"encryptText",value:(f=S(regeneratorRuntime.mark(function e(t,n,r){var i,a,o,s=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r)return e.next=3,this.hexStringToArrayBuffer(r);e.next=6;break;case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=new ArrayBuffer(16);case 7:return i=e.t0,i={name:"AES-CBC",iv:i},e.next=11,this.hexStringToArrayBuffer(n);case 11:return o=e.sent,e.next=14,this.webCryptoImportKey(o,i.name,["encrypt"]);case 14:return a=e.sent,e.next=17,this.stringToArrayBuffer(t);case 17:return o=e.sent,e.abrupt("return",crypto.subtle.encrypt(i,a,o).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.arrayBufferToBase64(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()));case 19:case"end":return e.stop()}},e,this)})),function(e,t,n){return f.apply(this,arguments)})},{key:"decryptText",value:(l=S(regeneratorRuntime.mark(function e(){var t,n,r,i,a,o,s,u,c,l,f=this,h=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t=(s=0<h.length&&void 0!==h[0]?h[0]:{}).ciphertextToAuth,n=s.contentCiphertext,r=s.encryptionKey,i=s.iv,a=s.authHash,o=s.authKey,(1<h.length?h[1]:void 0)&&!a)return console.error("Auth hash is required."),e.abrupt("return");e.next=5;break;case 5:if(a)return e.next=8,this.hmac256(t,o);e.next=12;break;case 8:if(s=e.sent,!1===this.timingSafeEqual(a,s))return console.error("Auth hash does not match, returning null. ".concat(a," != ").concat(s)),e.abrupt("return",null);e.next=12;break;case 12:if(i)return e.next=15,this.hexStringToArrayBuffer(i);e.next=18;break;case 15:e.t0=e.sent,e.next=19;break;case 18:e.t0=new ArrayBuffer(16);case 19:return u=e.t0,u={name:"AES-CBC",iv:u},e.next=23,this.hexStringToArrayBuffer(r);case 23:return l=e.sent,e.next=26,this.webCryptoImportKey(l,u.name,["decrypt"]);case 26:return c=e.sent,e.next=29,this.base64ToArrayBuffer(n);case 29:return l=e.sent,e.abrupt("return",crypto.subtle.decrypt(u,c,l).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,f.arrayBufferToString(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()).catch(function(e){console.error("Error decrypting:",e)}));case 31:case"end":return e.stop()}},e,this)})),function(){return l.apply(this,arguments)})},{key:"hmac256",value:(c=S(regeneratorRuntime.mark(function e(t,n){var r,i,a=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.hexStringToArrayBuffer(n);case 2:return i=e.sent,e.next=5,this.webCryptoImportKey(i,"HMAC",["sign"],{name:"SHA-256"});case 5:return r=e.sent,e.next=8,this.stringToArrayBuffer(t);case 8:return i=e.sent,e.abrupt("return",crypto.subtle.sign({name:"HMAC"},r,i).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,a.arrayBufferToHexString(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()).catch(function(e){console.error("Error computing hmac",e)}));case 10:case"end":return e.stop()}},e,this)})),function(e,t){return c.apply(this,arguments)})},{key:"webCryptoImportKey",value:(u=S(regeneratorRuntime.mark(function e(t,n,r,i){var a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("string"==typeof t)return e.next=3,this.stringToArrayBuffer(t);e.next=6;break;case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=t;case 7:return a=e.t0,e.abrupt("return",te.importKey("raw",a,{name:n,hash:i},!1,r).then(function(e){return e}).catch(function(e){return console.error(e),null}));case 9:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return u.apply(this,arguments)})},{key:"webCryptoDeriveBits",value:(s=S(regeneratorRuntime.mark(function e(t,n,r,i){var a,o=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.stringToArrayBuffer(n);case 2:return e.t0=e.sent,e.t1=r,e.t2={name:"SHA-512"},a={name:"PBKDF2",salt:e.t0,iterations:e.t1,hash:e.t2},e.abrupt("return",te.deriveBits(a,t,i).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.arrayBufferToHexString(new Uint8Array(t));case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()).catch(function(e){return console.error(e),null}));case 7:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return s.apply(this,arguments)})},{key:"stringToArrayBuffer",value:(o=S(regeneratorRuntime.mark(function e(i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(t,e){var n=new Blob([i]),r=new FileReader;r.onload=function(e){t(e.target.result)},r.readAsArrayBuffer(n)}));case 1:case"end":return e.stop()}},e)})),function(e){return o.apply(this,arguments)})},{key:"arrayBufferToString",value:(a=S(regeneratorRuntime.mark(function e(i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(t,e){var n=new Blob([i]),r=new FileReader;r.onload=function(e){t(e.target.result)},r.readAsText(n)}));case 1:case"end":return e.stop()}},e)})),function(e){return a.apply(this,arguments)})},{key:"arrayBufferToHexString",value:(i=S(regeneratorRuntime.mark(function e(t){var n,r,i,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(n=new Uint8Array(t),r="",a=0;a<n.byteLength;a++)(i=n[a].toString(16)).length<2&&(i="0"+i),r+=i;return e.abrupt("return",r);case 4:case"end":return e.stop()}},e)})),function(e){return i.apply(this,arguments)})},{key:"hexStringToArrayBuffer",value:(r=S(regeneratorRuntime.mark(function e(t){var n,r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(n=[],r=0;r<t.length;r+=2)n.push(parseInt(t.substr(r,2),16));return e.abrupt("return",new Uint8Array(n));case 2:case"end":return e.stop()}},e)})),function(e){return r.apply(this,arguments)})},{key:"base64ToArrayBuffer",value:(n=S(regeneratorRuntime.mark(function e(t){var n,r,i,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.base64Decode(t);case 2:for(n=e.sent,r=n.length,i=new Uint8Array(r),a=0;a<r;a++)i[a]=n.charCodeAt(a);return e.abrupt("return",i.buffer);case 7:case"end":return e.stop()}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"arrayBufferToBase64",value:(t=S(regeneratorRuntime.mark(function e(i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(t,e){var n=new Blob([i],{type:"application/octet-binary"}),r=new FileReader;r.onload=function(e){e=e.target.result;t(e.substr(e.indexOf(",")+1))},r.readAsDataURL(n)}));case 1:case"end":return e.stop()}},e)})),function(e){return t.apply(this,arguments)})}]),e}();ie.SFCryptoWeb=ne;var re=function(){function t(e){C(this,t),this.crypto=e}var r,n,i,a;return O(t,[{key:"_private_encryptString",value:(a=S(regeneratorRuntime.mark(function e(t,n,r,i,a){var o,s,u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("001"===a.version)return e.next=3,this.crypto.encryptText(t,n,null);e.next=7;break;case 3:s=e.sent,o=a.version+s,e.next=21;break;case 7:return e.next=9,this.crypto.generateRandomKey(128);case 9:return u=e.sent,e.next=12,this.crypto.encryptText(t,n,u);case 12:return s=e.sent,l=[a.version,i,u,s].join(":"),e.next=16,this.crypto.hmac256(l,r);case 16:return c=e.sent,e.next=19,this.crypto.base64(JSON.stringify(a));case 19:l=e.sent,o=[a.version,c,i,u,s,l].join(":");case 21:return e.abrupt("return",o);case 22:case"end":return e.stop()}},e,this)})),function(e,t,n,r,i){return a.apply(this,arguments)})},{key:"encryptItem",value:(i=S(regeneratorRuntime.mark(function e(t,n,r){var i,a,o,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i={},e.next=3,this.crypto.generateItemEncryptionKey();case 3:if(a=e.sent,"001"===r.version)return e.next=7,this.crypto.encryptText(a,n.mk,null);e.next=10;break;case 7:i.enc_item_key=e.sent,e.next=13;break;case 10:return e.next=12,this._private_encryptString(a,n.mk,n.ak,t.uuid,r);case 12:i.enc_item_key=e.sent;case 13:return e.next=15,this.crypto.firstHalfOfKey(a);case 15:return o=e.sent,e.next=18,this.crypto.secondHalfOfKey(a);case 18:return s=e.sent,e.next=21,this._private_encryptString(JSON.stringify(t.createContentJSONFromProperties()),o,s,t.uuid,r);case 21:if(u=e.sent,"001"===r.version)return e.next=25,this.crypto.hmac256(u,s);e.next=27;break;case 25:c=e.sent,i.auth_hash=c;case 27:return i.content=u,e.abrupt("return",i);case 29:case"end":return e.stop()}},e,this)})),function(e,t,n){return i.apply(this,arguments)})},{key:"encryptionComponentsFromString",value:function(e,t,n){var r=e.substring(0,3);if("001"===r)return{contentCiphertext:e.substring(3,e.length),encryptionVersion:r,ciphertextToAuth:e,iv:null,authHash:null,encryptionKey:t,authKey:n};e=e.split(":");return{encryptionVersion:e[0],authHash:e[1],uuid:e[2],iv:e[3],contentCiphertext:e[4],authParams:e[5],ciphertextToAuth:[e[0],e[2],e[3],e[4]].join(":"),encryptionKey:t,authKey:n}}},{key:"decryptItem",value:(n=S(regeneratorRuntime.mark(function e(t,n){var r,i,a,o,s,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("string"!=typeof t.content)return e.abrupt("return");e.next=2;break;case 2:if(t.content.startsWith("000"))return e.prev=3,e.t0=JSON,e.next=7,this.crypto.base64Decode(t.content.substring(3,t.content.length));e.next=14;break;case 7:e.t1=e.sent,t.content=e.t0.parse.call(e.t0,e.t1),e.next=13;break;case 11:e.prev=11,e.t2=e.catch(3);case 13:return e.abrupt("return");case 14:if(t.enc_item_key){e.next=17;break}return console.log("Missing item encryption key, skipping decryption."),e.abrupt("return");case 17:if(i=t.enc_item_key,r=!0,i.startsWith("002")||i.startsWith("003")||(i="001"+i,r=!1),(i=this.encryptionComponentsFromString(i,n.mk,n.ak)).uuid&&i.uuid!==t.uuid)return console.error("Item key params UUID does not match item UUID"),t.errorDecrypting||(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!0,e.abrupt("return");e.next=26;break;case 26:return e.next=28,this.crypto.decryptText(i,r);case 28:if(a=e.sent){e.next=34;break}return console.log("Error decrypting item",t),t.errorDecrypting||(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!0,e.abrupt("return");case 34:return e.next=36,this.crypto.firstHalfOfKey(a);case 36:return o=e.sent,e.next=39,this.crypto.secondHalfOfKey(a);case 39:return u=e.sent,s=this.encryptionComponentsFromString(t.content,o,u),e.prev=41,e.t3=JSON,e.next=45,this.crypto.base64Decode(s.authParams);case 45:e.t4=e.sent,t.auth_params=e.t3.parse.call(e.t3,e.t4),e.next=51;break;case 49:e.prev=49,e.t5=e.catch(41);case 51:if(s.uuid&&s.uuid!==t.uuid)return t.errorDecrypting||(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!0,e.abrupt("return");e.next=55;break;case 55:return s.authHash||(s.authHash=t.auth_hash),e.next=58,this.crypto.decryptText(s,!0);case 58:(u=e.sent)?(1==t.errorDecrypting&&(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!1,t.content=u):(t.errorDecrypting||(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!0);case 60:case"end":return e.stop()}},e,this,[[3,11],[41,49]])})),function(e,t){return n.apply(this,arguments)})},{key:"decryptMultipleItems",value:(r=S(regeneratorRuntime.mark(function e(t,n,r){var i,a=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}return e.abrupt("return");case 2:if(1==t.deleted&&null==t.content)return e.abrupt("return");e.next=4;break;case 4:if("string"==typeof t.content||t.content instanceof String)return e.prev=6,e.next=9,a.decryptItem(t,n);e.next=19;break;case 9:e.next=19;break;case 11:if(e.prev=11,e.t0=e.catch(6),t.errorDecrypting||(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!0,r)throw e.t0;e.next=17;break;case 17:return console.error("Error decrypting item",t,e.t0),e.abrupt("return");case 19:case"end":return e.stop()}},e,null,[[6,11]])}));return function(e){return t.apply(this,arguments)}}(),e.abrupt("return",Promise.all(t.map(function(e){return i(e)})));case 2:case"end":return e.stop()}},e)})),function(e,t,n){return r.apply(this,arguments)})}]),t}();ie.SFItemTransformer=re;D="undefined"!=typeof window?window:void 0!==e?e:null,e=function(){function t(e){C(this,t),D&&(!("undefined"!=typeof document&&document.documentMode||/Edge/.test(navigator.userAgent))&&D.crypto&&D.crypto.subtle?this.crypto=new ne:this.crypto=new ee),e&&(this.crypto=e),this.itemTransformer=new re(this.crypto),this.crypto.SFJS={version:this.version(),defaultPasswordGenerationCost:this.defaultPasswordGenerationCost()}}return O(t,[{key:"version",value:function(){return"003"}},{key:"supportsPasswordDerivationCost",value:function(e){return!(5e3<e)||this.crypto instanceof ne}},{key:"supportedVersions",value:function(){return["001","002","003"]}},{key:"isVersionNewerThanLibraryVersion",value:function(e){var t=this.version();return parseInt(e)>parseInt(t)}},{key:"isProtocolVersionOutdated",value:function(e){e={"001":Date.parse("2018-01-01"),"002":Date.parse("2020-01-01")}[e];return!!e&&new Date>e}},{key:"costMinimumForVersion",value:function(e){return{"001":3e3,"002":3e3,"003":11e4}[e]}},{key:"defaultPasswordGenerationCost",value:function(){return this.costMinimumForVersion(this.version())}}]),t}();if(ie.StandardFile=e,D)try{D.StandardFile=e,D.SFJS=new e,D.SFCryptoWeb=ne,D.SFCryptoJS=ee,D.SFItemTransformer=re,D.SFModelManager=F,D.SFItem=K,D.SFItemParams=W,D.SFHttpManager=T,D.SFStorageManager=V,D.SFSyncManager=q,D.SFAuthManager=M,D.SFMigrationManager=P,D.SFAlertManager=I,D.SFPredicate=J,D.SFHistorySession=Y,D.SFSessionHistoryManager=N,D.SFItemHistory=X,D.SFItemHistoryEntry=Z,D.SFPrivilegesManager=L,D.SFPrivileges=G,D.SFSingletonManager=U}catch(e){console.log("Exception while exporting window variables",e)}}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1])(1)}),function(){function v(e,t){return e.set(t[0],t[1]),e}function y(e,t){return e.add(t),e}function n(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 l(e,t){return!(null==e||!e.length)&&-1<u(e,t,0)}function a(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 c(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}function b(e,t,n){for(var r=-1,i=null==e?0:e.length;++r<i;)n=t(n,e[r],r,e);return n}function i(e,t,n){var r=e.length;for(n+=-1;++n<r;)if(t(e[n],n,e))return n;return-1}function u(e,t,n){if(t==t)e:{--n;for(var r=e.length;++n<r;)if(e[n]===t){e=n;break e}e=-1}else e=i(e,o,n);return e}function o(e){return e!=e}function d(e,t){return e.has(t)}function k(e){var n=-1,r=Array(e.size);return e.forEach(function(e,t){r[++n]=[t,e]}),r}function e(t){var n=Object;return function(e){return t(n(e))}}function w(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}function r(){}function t(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])}}function s(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])}}function f(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])}}function g(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new f;++t<n;)this.add(e[t])}function x(e){this.size=(this.__data__=new s(e)).size}function h(e,t){var n=ln(e),r=!n&&cn(e),i=!n&&!r&&fn(e),a=!n&&!r&&!i&&hn(e);if(n=n||r||i||a){for(var r=e.length,o=String,s=-1,u=Array(r);++s<r;)u[s]=o(s);r=u}else r=[];var c,o=r.length;for(c in e)!t&&!mt.call(e,c)||n&&("length"==c||i&&("offset"==c||"parent"==c)||a&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||ee(c,o))||r.push(c);return r}function m(e,t,n){(n===je||he(e[t],n))&&(n!==je||t in e)||S(e,t,n)}function $(e,t,n){var r=e[t];mt.call(e,t)&&he(r,n)&&(n!==je||t in e)||S(e,t,n)}function p(e,t){for(var n=e.length;n--;)if(he(e[n][0],t))return n;return-1}function S(e,t,n){"__proto__"==t&&Ct?Ct(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function _(n,r,i,e,t,a){var o,s,u,c,l,f=1&r,h=2&r,p=4&r;if((o=i?t?i(n,e,t,a):i(n):o)!==je)return o;if(!ve(n))return n;if(e=ln(n)){if(l=(d=n).length,g=d.constructor(l),l&&"string"==typeof d[0]&&mt.call(d,"index")&&(g.index=d.index,g.input=d.input),o=g,!f)return N(n,o)}else{var d=Qt(n),g="[object Function]"==d||"[object GeneratorFunction]"==d;if(fn(n))return B(n,f);if("[object Object]"==d||"[object Arguments]"==d||g&&!t){if(o=h||g?{}:Z(n),!f)return h?(c=s=n,c=(u=o)&&U(c,Oe(c),u),U(s,Zt(s),c)):(s=u=n,c=(c=o)&&U(s,Ce(s),c),U(u,Xt(u),c))}else{if(!tt[d])return t?n:{};o=function(e,t,n,r){var i=e.constructor;switch(t){case"[object ArrayBuffer]":return j(e);case"[object Boolean]":case"[object Date]":return new i(+e);case"[object DataView]":return t=r?j(e.buffer):e.buffer,new e.constructor(t,e.byteOffset,e.byteLength);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return H(e,r);case"[object Map]":return b(t=r?n(k(e),1):k(e),v,new e.constructor);case"[object Number]":case"[object String]":return new i(e);case"[object RegExp]":return(t=new e.constructor(e.source,Je.exec(e))).lastIndex=e.lastIndex,t;case"[object Set]":return b(t=r?n(w(e),1):w(e),y,new e.constructor);case"[object Symbol]":return zt?Object(zt.call(e)):{}}}(n,d,_,f)}}if(t=(a=a||new x).get(n))return t;a.set(n,o);var h=p?h?J:W:h?Oe:Ce,m=e?je:h(n);return function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););}(m||n,function(e,t){m&&(e=n[t=e]),$(o,t,_(e,r,i,t,n,a))}),o}function R(e,t){for(var n=0,r=(t=L(t,e)).length;null!=e&&n<r;)e=e[ae(t[n++])];return n&&n==r?e:je}function I(e,t,n){return t=t(e),ln(e)?t:c(t,n(e))}function A(e){if(null==e)e=e===je?"[object Undefined]":"[object Null]";else if(At&&At in Object(e)){var t=mt.call(e,At),n=e[At];try{e[At]=je;var r=!0}catch(e){}var i=yt.call(e);r&&(t?e[At]=n:delete e[At]),e=i}else e=yt.call(e);return e}function C(e){return ye(e)&&"[object Arguments]"==A(e)}function O(e,t,n,r,i){if(e===t)t=!0;else if(null==e||null==t||!ye(e)&&!ye(t))t=e!=e&&t!=t;else e:{var a=ln(e),o=ln(t),s=a?"[object Array]":Qt(e),u=o?"[object Array]":Qt(t),c="[object Object]"==(s="[object Arguments]"==s?"[object Object]":s),o="[object Object]"==(u="[object Arguments]"==u?"[object Object]":u);if((u=s==u)&&fn(e)){if(!fn(t)){t=!1;break e}c=!(a=!0)}if(u&&!c)i=i||new x,t=a||hn(e)?q(e,t,n,r,O,i):function(e,t,n,r,i,a,o){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)break;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":if(e.byteLength!=t.byteLength||!a(new wt(e),new wt(t)))break;return!0;case"[object Boolean]":case"[object Date]":case"[object Number]":return he(+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 s=k;case"[object Set]":if(s=s||w,e.size!=t.size&&!(1&r))break;return(n=o.get(e))?n==t:(r|=2,o.set(e,t),t=q(s(e),s(t),r,i,a,o),o.delete(e),t);case"[object Symbol]":if(zt)return zt.call(e)==zt.call(t)}return!1}(e,t,s,n,r,O,i);else if(1&n||(a=c&&mt.call(e,"__wrapped__"),s=o&&mt.call(t,"__wrapped__"),!a&&!s))if(u)t:if(i=i||new x,a=1&n,s=W(e),o=s.length,u=W(t).length,o==u||a){for(c=o;c--;){var l=s[c];if(!(a?l in t:mt.call(t,l))){t=!1;break t}}if((u=i.get(e))&&i.get(t))t=u==t;else{u=!0,i.set(e,t),i.set(t,e);for(var f=a;++c<o;){var h,p=e[l=s[c]],d=t[l];if((h=r?a?r(d,p,l,t,e,i):r(p,d,l,e,t,i):h)===je?p!==d&&!O(p,d,n,r,i):!h){u=!1;break}f=f||"constructor"==l}u&&!f&&((n=e.constructor)!=(r=t.constructor)&&"constructor"in e&&"constructor"in t&&!("function"==typeof n&&n instanceof n&&"function"==typeof r&&r instanceof r)&&(u=!1)),i.delete(e),i.delete(t),t=u}}else t=!1;else t=!1;else t=O(e=a?e.value():e,t=s?t.value():t,n,r,i=i||new x)}return t}function M(e){return"function"==typeof e?e:null==e?Te:"object"==typeof e?ln(e)?(r=e[0],i=e[1],te(r)&&i==i&&!ve(i)?re(ae(r),i):function(e){var t=Ie(e,r);return t===je&&t===i?Ae(e,r):O(i,t,3)}):1==(n=function(e){for(var t=Ce(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,i==i&&!ve(i)]}return t}(t=e)).length&&n[0][2]?re(n[0][0],n[0][1]):function(e){return e===t||function(e,t){var n=t.length,r=n;if(null==e)return!r;for(e=Object(e);n--;)if((i=t[n])[2]?i[1]!==e[i[0]]:!(i[0]in e))return!1;for(;++n<r;){var i,a=(i=t[n])[0],o=e[a],s=i[1];if(i[2]){if(o===je&&!(a in e))return!1}else if(i=new x,void 0!==je||!O(s,o,3,void 0,i))return!1}return!0}(e,n)}:Fe(e);var t,n,r,i}function D(l,f,h,p,d){l!==f&&Gt(f,function(e,t){var n,r,i,a,o,s,u,c;ve(e)?(n=d=d||new x,r=l[t],i=f[t],(c=n.get(i))||((a=(c=p?p(r,i,t+"",l,f,n):je)===je)&&(s=!(o=ln(i))&&fn(i),u=!o&&!s&&hn(i),c=i,o||s||u?c=ln(r)?r:de(r)?N(r):s?B(i,!(a=!1)):u?H(i,!(a=!1)):[]:be(i)||cn(i)?cn(c=r)?c=_e(r):(!ve(r)||h&&ge(r))&&(c=Z(i)):a=!1),a&&(n.set(i,c),D(c,i,h,p,n),n.delete(i))),m(l,t,c)):(n=p?p(l[t],e,t+"",l,f,d):je,m(l,t,n=n===je?e:n))},Oe)}function T(n,e){return function(e,t,n){for(var r=-1,i=t.length,a={};++r<i;){var o=t[r],s=R(e,o);if(n(s,o)){var u=a,o=L(o,e);if(ve(u))for(var o=L(o,u),c=-1,l=o.length,f=l-1;null!=u&&++c<l;){var h,p=ae(o[c]),d=s;c!=f&&(h=u[p],(d=je)===je&&(d=ve(h)?h:ee(o[c+1])?[]:{})),$(u,p,d),u=u[p]}}}return a}(n,e,function(e,t){return Ae(n,t)})}function E(e){return on(ie(e,void 0,Te),e+"")}function P(e){if("string"==typeof e)return e;if(ln(e))return a(e,P)+"";if(we(e))return qt?qt.call(e):"";var t=e+"";return"0"==t&&1/e==-He?"-0":t}function F(e,t){if((t=L(t,e)).length<2)n=e;else{var n,r=0,i=-1,a=-1,o=(n=t).length;for((i=o<i?o:i)<0&&(i+=o),o=i<(r=r<0?o<-r?0:o+r:r)?0:i-r>>>0,r>>>=0,i=Array(o);++a<o;)i[a]=n[a+r];n=R(e,i)}null==(e=n)||delete e[ae(ce(t))]}function L(e,t){return ln(e)?e:te(e,t)?[e]:sn(Re(e))}function B(e,t){if(t)return e.slice();t=e.length,t=xt?xt(t):new e.constructor(t);return e.copy(t),t}function j(e){var t=new e.constructor(e.byteLength);return new wt(t).set(new wt(e)),t}function H(e,t){return new e.constructor(t?j(e.buffer):e.buffer,e.byteOffset,e.length)}function N(e,t){var n=-1,r=e.length;for(t=t||Array(r);++n<r;)t[n]=e[n];return t}function U(e,t,n){var r=!n;n=n||{};for(var i=-1,a=t.length;++i<a;){var o=t[i];(r?S:$)(n,o,je===je?e[o]:je)}return n}function V(c){return E(function(e,t){var n,r,i,a=-1,o=t.length,s=1<o?t[o-1]:je,u=2<o?t[2]:je,s=3<c.length&&"function"==typeof s?(o--,s):je;(i=u)&&(i=t[0],n=t[1],i=!!ve(u)&&(!!("number"==(r=typeof n)?pe(u)&&ee(n,u.length):"string"==r&&n in u)&&he(u[n],i)));for(i&&(s=o<3?je:s,o=1),e=Object(e);++a<o;)(u=t[a])&&c(e,u,a,s);return e})}function z(e){return be(e)?je:e}function q(e,t,n,r,i,a){var o=1&n,s=e.length;if(s!=(u=t.length)&&!(o&&s<u))return!1;if((u=a.get(e))&&a.get(t))return u==t;var u=-1,c=!0,l=2&n?new g:je;for(a.set(e,t),a.set(t,e);++u<s;){var f,h=e[u],p=t[u];if((f=r?o?r(p,h,u,t,e,a):r(h,p,u,e,t,a):f)!==je){if(f)continue;c=!1;break}if(l){if(!function(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return 1}(t,function(e,t){return!d(l,t)&&(h===e||i(h,e,n,r,a))&&l.push(t)})){c=!1;break}}else if(h!==p&&!i(h,p,n,r,a)){c=!1;break}}return a.delete(e),a.delete(t),c}function K(e){return on(ie(e,je,ue),e+"")}function W(e){return I(e,Ce,Xt)}function J(e){return I(e,Oe,Zt)}function G(e,t){var n=(n=r.iteratee||Ee)===Ee?M:n;return arguments.length?n(e,t):n}function Y(e,t){var n=e.__data__,e=typeof t;return("string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t)?n["string"==typeof t?"string":"hash"]:n.map}function X(e,t){t=null==e?je:e[t];return!ve(t)||vt&&vt in t||!(ge(t)?kt:Xe).test(oe(t))?je:t}function Z(e){return"function"!=typeof e.constructor||ne(e)?{}:Kt($t(e))}function Q(e){return ln(e)||cn(e)||!!(It&&e&&e[It])}function ee(e,t){return!!(t=null==t?9007199254740991:t)&&("number"==typeof e||Qe.test(e))&&-1<e&&0==e%1&&e<t}function te(e,t){if(!ln(e)){var n=typeof e;return"number"==n||"symbol"==n||"boolean"==n||null==e||we(e)||Ve.test(e)||!Ue.test(e)||null!=t&&e in Object(t)}}function ne(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||pt)}function re(t,n){return function(e){return null!=e&&e[t]===n&&(n!==je||t in Object(e))}}function ie(i,a,o){return a=Tt(a===je?i.length-1:a,0),function(){for(var e=arguments,t=-1,n=Tt(e.length-a,0),r=Array(n);++t<n;)r[t]=e[a+t];for(t=-1,n=Array(a+1);++t<a;)n[t]=e[t];return n[a]=o(r),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)}(i,this,n)}}function ae(e){if("string"==typeof e||we(e))return e;var t=e+"";return"0"==t&&1/e==-He?"-0":t}function oe(e){if(null==e)return"";try{return gt.call(e)}catch(e){}return e+""}function se(e,t,n){var r=null==e?0:e.length;return r?((n=null==n?0:$e(n))<0&&(n=Tt(r+n,0)),i(e,G(t,3),n)):-1}function ue(e){return null!=e&&e.length?function e(t,n,r,i,a){var o=-1,s=t.length;for(r=r||Q,a=a||[];++o<s;){var u=t[o];0<n&&r(u)?1<n?e(u,n-1,r,i,a):c(a,u):i||(a[a.length]=u)}return a}(e,1):[]}function ce(e){var t=null==e?0:e.length;return t?e[t-1]:je}function le(e,t){if(e&&e.length&&t&&t.length){var n,r=u,i=-1,a=(n=t).length;for(e===n&&(n=N(n));++i<a;)for(var o=0,s=n[i];-1<(o=r(e,s,o,void 0));)e!=e&&Rt.call(e,o,1),Rt.call(e,o,1);n=e}else n=e;return n}function fe(r,i){function a(){var e=arguments,t=i?i.apply(this,e):e[0],n=a.cache;return n.has(t)?n.get(t):(e=r.apply(this,e),a.cache=n.set(t,e)||n,e)}if("function"!=typeof r||null!=i&&"function"!=typeof i)throw new TypeError("Expected a function");return a.cache=new(fe.Cache||f),a}function he(e,t){return e===t||e!=e&&t!=t}function pe(e){return null!=e&&me(e.length)&&!ge(e)}function de(e){return ye(e)&&pe(e)}function ge(e){return!!ve(e)&&("[object Function]"==(e=A(e))||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e)}function me(e){return"number"==typeof e&&-1<e&&0==e%1&&e<=9007199254740991}function ve(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ye(e){return null!=e&&"object"==typeof e}function be(e){return!(!ye(e)||"[object Object]"!=A(e))&&(null===(e=$t(e))||"function"==typeof(e=mt.call(e,"constructor")&&e.constructor)&&e instanceof e&>.call(e)==bt)}function ke(e){return"string"==typeof e||!ln(e)&&ye(e)&&"[object String]"==A(e)}function we(e){return"symbol"==typeof e||ye(e)&&"[object Symbol]"==A(e)}function xe(e){return e?(e=Se(e))===He||e===-He?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function $e(e){var t=(e=xe(e))%1;return e==e?t?e-t:e:0}function Se(e){if("number"==typeof e)return e;if(we(e))return Ne;if("string"!=typeof(e=ve(e)?ve(e="function"==typeof e.valueOf?e.valueOf():e)?e+"":e:e))return 0===e?e:+e;e=e.replace(Ke,"");var t=Ye.test(e);return t||Ze.test(e)?rt(e.slice(2),t?2:8):Ge.test(e)?Ne:+e}function _e(e){return U(e,Oe(e))}function Re(e){return null==e?"":P(e)}function Ie(e,t,n){return(e=null==e?je:R(e,t))===je?n:e}function Ae(e,t){if(n=null!=e){for(var n,r=L(t,n=e),i=-1,a=r.length,o=!1;++i<a;){var s=ae(r[i]);if(!(o=null!=n&&null!=n&&s in Object(n)))break;n=n[s]}n=o||++i!=a?o:!!(a=null==n?0:n.length)&&me(a)&&ee(s,a)&&(ln(n)||cn(n))}return n}function Ce(e){if(pe(e))e=h(e);else if(ne(e)){var t,n=[];for(t in Object(e))mt.call(e,t)&&"constructor"!=t&&n.push(t);e=n}else e=Dt(e);return e}function Oe(e){if(pe(e))e=h(e,!0);else if(ve(e)){var t,n=ne(e),r=[];for(t in e)("constructor"!=t||!n&&mt.call(e,t))&&r.push(t);e=r}else{if(t=[],null!=e)for(n in Object(e))t.push(n);e=t}return e}function Me(e){return null==e?[]:a(Ce(t=e),function(e){return t[e]});var t}function De(e){return function(){return e}}function Te(e){return e}function Ee(e){return M("function"==typeof e?e:_(e,1))}function Pe(){}function Fe(e){return te(e)?(n=ae(e),function(e){return null==e?je:e[n]}):(t=e,function(e){return R(e,t)});var t,n}function Le(){return[]}function Be(){return!1}var je,He=1/0,Ne=NaN,Ue=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Ve=/^\w*$/,ze=/^\./,qe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ke=/^\s+|\s+$/g,We=/\\(\\)?/g,Je=/\w*$/,Ge=/^[-+]0x[0-9a-f]+$/i,Ye=/^0b[01]+$/i,Xe=/^\[object .+?Constructor\]$/,Ze=/^0o[0-7]+$/i,Qe=/^(?:0|[1-9]\d*)$/,et={};et["[object Float32Array]"]=et["[object Float64Array]"]=et["[object Int8Array]"]=et["[object Int16Array]"]=et["[object Int32Array]"]=et["[object Uint8Array]"]=et["[object Uint8ClampedArray]"]=et["[object Uint16Array]"]=et["[object Uint32Array]"]=!0,et["[object Arguments]"]=et["[object Array]"]=et["[object ArrayBuffer]"]=et["[object Boolean]"]=et["[object DataView]"]=et["[object Date]"]=et["[object Error]"]=et["[object Function]"]=et["[object Map]"]=et["[object Number]"]=et["[object Object]"]=et["[object RegExp]"]=et["[object Set]"]=et["[object String]"]=et["[object WeakMap]"]=!1;var tt={};tt["[object Arguments]"]=tt["[object Array]"]=tt["[object ArrayBuffer]"]=tt["[object DataView]"]=tt["[object Boolean]"]=tt["[object Date]"]=tt["[object Float32Array]"]=tt["[object Float64Array]"]=tt["[object Int8Array]"]=tt["[object Int16Array]"]=tt["[object Int32Array]"]=tt["[object Map]"]=tt["[object Number]"]=tt["[object Object]"]=tt["[object RegExp]"]=tt["[object Set]"]=tt["[object String]"]=tt["[object Symbol]"]=tt["[object Uint8Array]"]=tt["[object Uint8ClampedArray]"]=tt["[object Uint16Array]"]=tt["[object Uint32Array]"]=!0,tt["[object Error]"]=tt["[object Function]"]=tt["[object WeakMap]"]=!1;var nt,rt=parseInt,it="object"==typeof global&&global&&global.Object===Object&&global,at="object"==typeof self&&self&&self.Object===Object&&self,ot=it||at||Function("return this")(),st="object"==typeof exports&&exports&&!exports.nodeType&&exports,ut=st&&"object"==typeof module&&module&&!module.nodeType&&module,ct=ut&&ut.exports===st,lt=ct&&it.process;e:{try{nt=lt&<.binding&<.binding("util");break e}catch(v){}nt=void 0}var ft=nt&&nt.isTypedArray,ht=Array.prototype,pt=Object.prototype,dt=ot["__core-js_shared__"],gt=Function.prototype.toString,mt=pt.hasOwnProperty,vt=(at=/[^.]+$/.exec(dt&&dt.keys&&dt.keys.IE_PROTO||""))?"Symbol(src)_1."+at:"",yt=pt.toString,bt=gt.call(Object),kt=RegExp("^"+gt.call(mt).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),it=ct?ot.Buffer:je,dt=ot.Symbol,wt=ot.Uint8Array,xt=it?it.a:je,$t=e(Object.getPrototypeOf),St=Object.create,_t=pt.propertyIsEnumerable,Rt=ht.splice,It=dt?dt.isConcatSpreadable:je,At=dt?dt.toStringTag:je,Ct=function(){try{var e=X(Object,"defineProperty");return e({},"",{}),e}catch(e){}}(),Ot=Math.floor,Mt=Object.getOwnPropertySymbols,at=it?it.isBuffer:je,Dt=e(Object.keys),Tt=Math.max,Et=Math.min,Pt=Date.now,ct=X(ot,"DataView"),Ft=X(ot,"Map"),ht=X(ot,"Promise"),Lt=X(ot,"Set"),it=X(ot,"WeakMap"),Bt=X(Object,"create"),jt=oe(ct),Ht=oe(Ft),Nt=oe(ht),Ut=oe(Lt),Vt=oe(it),dt=dt?dt.prototype:je,zt=dt?dt.valueOf:je,qt=dt?dt.toString:je,Kt=function(e){return ve(e)?St?St(e):(Wt.prototype=e,e=new Wt,Wt.prototype=je,e):{}};function Wt(){}t.prototype.clear=function(){this.__data__=Bt?Bt(null):{},this.size=0},t.prototype.delete=function(e){return e=this.has(e)&&delete this.__data__[e],this.size-=e?1:0,e},t.prototype.get=function(e){var t=this.__data__;return Bt?"__lodash_hash_undefined__"===(e=t[e])?je:e:mt.call(t,e)?t[e]:je},t.prototype.has=function(e){var t=this.__data__;return Bt?t[e]!==je:mt.call(t,e)},t.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Bt&&t===je?"__lodash_hash_undefined__":t,this},s.prototype.clear=function(){this.__data__=[],this.size=0},s.prototype.delete=function(e){var t=this.__data__;return!((e=p(t,e))<0||(e==t.length-1?t.pop():Rt.call(t,e,1),--this.size,0))},s.prototype.get=function(e){var t=this.__data__;return(e=p(t,e))<0?je:t[e][1]},s.prototype.has=function(e){return-1<p(this.__data__,e)},s.prototype.set=function(e,t){var n=this.__data__,r=p(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},f.prototype.clear=function(){this.size=0,this.__data__={hash:new t,map:new(Ft||s),string:new t}},f.prototype.delete=function(e){return e=Y(this,e).delete(e),this.size-=e?1:0,e},f.prototype.get=function(e){return Y(this,e).get(e)},f.prototype.has=function(e){return Y(this,e).has(e)},f.prototype.set=function(e,t){var n=Y(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},g.prototype.add=g.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},g.prototype.has=function(e){return this.__data__.has(e)},x.prototype.clear=function(){this.__data__=new s,this.size=0},x.prototype.delete=function(e){var t=this.__data__;return e=t.delete(e),this.size=t.size,e},x.prototype.get=function(e){return this.__data__.get(e)},x.prototype.has=function(e){return this.__data__.has(e)},x.prototype.set=function(e,t){var n=this.__data__;if(n instanceof s){var r=n.__data__;if(!Ft||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new f(r)}return n.set(e,t),this.size=n.size,this};var Jt=function(e,t){if(null==e)return e;if(!pe(e))return r=t,(n=e)&&Gt(n,r,Ce);for(var n,r,i=e.length,a=-1,o=Object(e);++a<i&&!1!==t(o[a],a,o););return e},Gt=function(e,t,n){for(var r=-1,i=Object(e),a=(n=n(e)).length;a--;){var o=n[++r];if(!1===t(i[o],o,i))break}return e},dt=Ct?function(e,t){return Ct(e,"toString",{configurable:!0,enumerable:!1,value:De(t),writable:!0})}:Te,Yt=Lt&&1/w(new Lt([,-0]))[1]==He?function(e){return new Lt(e)}:Pe,Xt=Mt?function(t){return null==t?[]:(t=Object(t),n(Mt(t),function(e){return _t.call(t,e)}))}:Le,Zt=Mt?function(e){for(var t=[];e;)c(t,Xt(e)),e=$t(e);return t}:Le,Qt=A;(ct&&"[object DataView]"!=Qt(new ct(new ArrayBuffer(1)))||Ft&&"[object Map]"!=Qt(new Ft)||ht&&"[object Promise]"!=Qt(ht.resolve())||Lt&&"[object Set]"!=Qt(new Lt)||it&&"[object WeakMap]"!=Qt(new it))&&(Qt=function(e){var t=A(e);if(e=(e="[object Object]"==t?e.constructor:je)?oe(e):"")switch(e){case jt:return"[object DataView]";case Ht:return"[object Map]";case Nt:return"[object Promise]";case Ut:return"[object Set]";case Vt:return"[object WeakMap]"}return t});var en,tn,nn,rn,an,on=(nn=dt,function(){var e=Pt(),t=16-(e-an);if(an=e,0<t){if(800<=++rn)return arguments[0]}else rn=0;return nn.apply(je,arguments)}),sn=(ct=an=rn=0,tn=(ct=fe(ct=function(e){var i=[];return ze.test(e)&&i.push(""),e.replace(qe,function(e,t,n,r){i.push(n?r.replace(We,"$1"):t||e)}),i},function(e){return 500===tn.size&&tn.clear(),e})).cache,ct),ht=E(le),it=(en=se,function(e,t,n){var r,i=Object(e);return pe(e)||(r=G(t,3),e=Ce(e),t=function(e){return r(i[e],e,i)}),-1<(t=en(e,t,n))?i[r?e[t]:t]:je});fe.Cache=f;var un,cn=C(function(){return arguments}())?C:function(e){return ye(e)&&mt.call(e,"callee")&&!_t.call(e,"callee")},ln=Array.isArray,fn=at||Be,hn=ft?(un=ft,function(e){return un(e)}):function(e){return ye(e)&&me(e.length)&&!!et[A(e)]},dt=V(function(e,t,n){D(e,t,n)}),ct=V(function(e,t,n,r){D(e,t,n,r)}),at=K(function(t,e){var n={};if(null==t)return n;var r=!1;e=a(e,function(e){return e=L(e,t),r=r||1<e.length,e}),U(t,J(t),n),r&&(n=_(n,7,z));for(var i=e.length;i--;)F(n,e[i]);return n}),ft=K(function(e,t){return null==e?{}:T(e,t)});r.constant=De,r.filter=function(e,t){return(ln(e)?n:function(e,r){var i=[];return Jt(e,function(e,t,n){r(e,t,n)&&i.push(e)}),i})(e,G(t,3))},r.flatten=ue,r.iteratee=Ee,r.keys=Ce,r.keysIn=Oe,r.map=function(e,t){return(ln(e)?a:function(e,r){var i=-1,a=pe(e)?Array(e.length):[];return Jt(e,function(e,t,n){a[++i]=r(e,t,n)}),a})(e,G(t,3))},r.memoize=fe,r.merge=dt,r.mergeWith=ct,r.omit=at,r.pick=ft,r.property=Fe,r.pull=ht,r.pullAll=le,r.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,i=[],a=e.length;for(t=G(t,3);++r<a;){var o=e[r];t(o,r,e)&&(n.push(o),i.push(r))}for(a=(r=e?i.length:0)-1;r--;){var s,o=i[r];r!=a&&o===s||(ee(s=o)?Rt.call(e,o,1):F(e,o))}return n},r.toPlainObject=_e,r.uniq=function(e){if(e&&e.length)e:{var t=-1,n=l,r=e.length,i=!0,a=[],o=a;if(200<=r){if(n=Yt(e)){e=w(n);break e}i=!1,n=d,o=new g}else o=a;t:for(;++t<r;){var s=u=e[t],u=0!==u?u:0;if(i&&s==s){for(var c=o.length;c--;)if(o[c]===s)continue t;a.push(u)}else n(o,s,void 0)||(o!==a&&o.push(s),a.push(u))}e=a}else e=[];return e},r.values=Me,r.cloneDeep=function(e){return _(e,5)},r.eq=he,r.find=it,r.findIndex=se,r.get=Ie,r.hasIn=Ae,r.identity=Te,r.includes=function(e,t,n,r){return e=pe(e)?e:Me(e),n=n&&!r?$e(n):0,r=e.length,n<0&&(n=Tt(r+n,0)),ke(e)?n<=r&&-1<e.indexOf(t,n):!!r&&-1<u(e,t,n)},r.isArguments=cn,r.isArray=ln,r.isArrayLike=pe,r.isArrayLikeObject=de,r.isBuffer=fn,r.isFunction=ge,r.isLength=me,r.isObject=ve,r.isObjectLike=ye,r.isPlainObject=be,r.isString=ke,r.isSymbol=we,r.isTypedArray=hn,r.last=ce,r.stubArray=Le,r.stubFalse=Be,r.noop=Pe,r.sortedIndexBy=function(e,t,n){t=(n=G(n,2))(t);for(var r=0,i=null==e?0:e.length,a=t!=t,o=null===t,s=we(t),u=t===je;r<i;){var c=Ot((r+i)/2),l=n(e[c]),f=l!==je,h=null===l,p=l==l,d=we(l);(a?p:u?p&&f:o?p&&f&&!h:s?p&&f&&!h&&!d:!h&&!d&&l<t)?r=c+1:i=c}return Et(i,4294967294)},r.toFinite=xe,r.toInteger=$e,r.toNumber=Se,r.toString=Re,r.VERSION="4.17.4","function"==typeof define&&"object"==typeof define.amd&&define.amd?(ot._=r,define(function(){return r})):ut?((ut.exports=r)._=r,st._=r):ot._=r}.call(this),function(de){"use strict";var l={objectMaxDepth:5,urlErrorParamsEnabled:!0};function e(e){if(!$e(e))return l;I(e.objectMaxDepth)&&(l.objectMaxDepth=u(e.objectMaxDepth)?e.objectMaxDepth:NaN),I(e.urlErrorParamsEnabled)&&Ce(e.urlErrorParamsEnabled)&&(l.urlErrorParamsEnabled=e.urlErrorParamsEnabled)}function u(e){return O(e)&&0<e}function $(o,s){s=s||Error;var u="https://errors.angularjs.org/1.8.0/",e=u.replace(".","\\.")+"[\\s\\S]*",c=new RegExp(e,"g");return function(){var e,t,n=arguments[0],r=arguments[1],i="["+(o?o+":":"")+n+"] ",a=Pe(arguments,2).map(function(e){return Xe(e,l.objectMaxDepth)});if(i+=r.replace(/\{\d+\}/g,function(e){var t=+e.slice(1,-1);return t<a.length?a[t].replace(c,""):e}),i+="\n"+u+(o?o+"/":"")+n,l.urlErrorParamsEnabled)for(t=0,e="?";t<a.length;t++,e="&")i+=e+"p"+t+"="+encodeURIComponent(a[t]);return new s(i)}}var ge,t,m,a=/^\/(.+)\/([a-z]*)$/,f="validity",z=Object.prototype.hasOwnProperty,S=function(e){return Se(e)?e.toLowerCase():e},c=function(e){return Se(e)?e.toUpperCase():e},o=[].slice,r=[].splice,n=[].push,v=Object.prototype.toString,h=Object.getPrototypeOf,p=$("ng"),b=de.angular||(de.angular={}),i=0;function E(e){if(null!=e&&!T(e)){if(_e(e)||Se(e)||ge&&e instanceof ge)return 1;var t="length"in Object(e)&&e.length;return O(t)&&(0<=t&&t-1 in e||"function"==typeof e.item)}}function me(e,t,n){if(e)if(Ie(e))for(i in e)"prototype"!==i&&"length"!==i&&"name"!==i&&e.hasOwnProperty(i)&&t.call(n,e[i],i,e);else if(_e(e)||E(e))for(var r="object"!=typeof e,i=0,a=e.length;i<a;i++)(r||i in e)&&t.call(n,e[i],i,e);else if(e.forEach&&e.forEach!==me)e.forEach(t,n,e);else if(_(e))for(i in e)t.call(n,e[i],i,e);else if("function"==typeof e.hasOwnProperty)for(i in e)e.hasOwnProperty(i)&&t.call(n,e[i],i,e);else for(i in e)z.call(e,i)&&t.call(n,e[i],i,e);return e}function s(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 y(n){return function(e,t){n(t,e)}}function A(){return++i}function d(e,t){t?e.$$hashKey=t:delete e.$$hashKey}function g(e,t,n){for(var r=e.$$hashKey,i=0,a=t.length;i<a;++i){var o=t[i];if($e(o)||Ie(o))for(var s=Object.keys(o),u=0,c=s.length;u<c;u++){var l=s[u],f=o[l];n&&$e(f)?M(f)?e[l]=new Date(f.valueOf()):D(f)?e[l]=new RegExp(f):f.nodeName?e[l]=f.cloneNode(!0):B(f)?e[l]=f.clone():"__proto__"!==l&&($e(e[l])||(e[l]=_e(f)?[]:{}),g(e[l],[f],!0)):e[l]=f}}return d(e,r),e}function ve(e){return g(e,o.call(arguments,1),!1)}function k(e){return g(e,o.call(arguments,1),!0)}function w(e){return parseInt(e,10)}var ye=de.document.documentMode,C=Number.isNaN||function(e){return e!=e};function be(e,t){return ve(Object.create(e),t)}function ke(){}function we(e){return e}function R(e){return function(){return e}}function x(e){return Ie(e.toString)&&e.toString!==v}function xe(e){return void 0===e}function I(e){return void 0!==e}function $e(e){return null!==e&&"object"==typeof e}function _(e){return null!==e&&"object"==typeof e&&!h(e)}function Se(e){return"string"==typeof e}function O(e){return"number"==typeof e}function M(e){return"[object Date]"===v.call(e)}function _e(e){return Array.isArray(e)||e instanceof Array}function Re(e){switch(v.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return 1;default:return e instanceof Error}}function Ie(e){return"function"==typeof e}function D(e){return"[object RegExp]"===v.call(e)}function T(e){return e&&e.window===e}function Ae(e){return e&&e.$evalAsync&&e.$watch}function Ce(e){return"boolean"==typeof e}function P(e){return e&&Ie(e.then)}ke.$inject=[],we.$inject=[];var F=/^\[object (?:Uint8|Uint8Clamped|Uint16|Uint32|Int8|Int16|Int32|Float32|Float64)Array]$/;var Oe=function(e){return Se(e)?e.trim():e},L=function(e){return e.replace(/([-()[\]{}+?*.$^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")};function B(e){return!(!e||!(e.nodeName||e.prop&&e.attr&&e.find))}function Me(e){return S(e.nodeName||e[0]&&e[0].nodeName)}function j(e,t){return-1!==Array.prototype.indexOf.call(e,t)}function De(e,t){t=e.indexOf(t);return 0<=t&&e.splice(t,1),t}function H(e,n,t){var r,i=[],a=[];if(t=u(t)?t:NaN,n){if((r=n)&&O(r.length)&&F.test(v.call(r))||"[object ArrayBuffer]"===v.call(n))throw p("cpta","Can't copy! TypedArray destination cannot be mutated.");if(e===n)throw p("cpi","Can't copy! Source and destination are identical.");return _e(n)?n.length=0:me(n,function(e,t){"$$hashKey"!==t&&delete n[t]}),i.push(e),a.push(n),o(e,n,t)}return s(e,t);function o(e,t,n){if(--n<0)return"...";var r,i=t.$$hashKey;if(_e(e))for(var a=0,o=e.length;a<o;a++)t.push(s(e[a],n));else if(_(e))for(r in e)t[r]=s(e[r],n);else if(e&&"function"==typeof e.hasOwnProperty)for(r in e)e.hasOwnProperty(r)&&(t[r]=s(e[r],n));else for(r in e)z.call(e,r)&&(t[r]=s(e[r],n));return d(t,i),t}function s(e,t){if(!$e(e))return e;var n=i.indexOf(e);if(-1!==n)return a[n];if(T(e)||Ae(e))throw p("cpws","Can't copy! Making copies of Window or Scope instances is not supported.");var r=!1,n=function(e){switch(v.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(s(e.buffer),e.byteOffset,e.length);case"[object ArrayBuffer]":if(e.slice)return e.slice(0);var t=new ArrayBuffer(e.byteLength);return new Uint8Array(t).set(new Uint8Array(e)),t;case"[object Boolean]":case"[object Number]":case"[object String]":case"[object Date]":return new e.constructor(e.valueOf());case"[object RegExp]":t=new RegExp(e.source,e.toString().match(/[^/]*$/)[0]);return t.lastIndex=e.lastIndex,t;case"[object Blob]":return new e.constructor([e],{type:e.type})}if(Ie(e.cloneNode))return e.cloneNode(!0)}(e);return void 0===n&&(n=_e(e)?[]:Object.create(h(e)),r=!0),i.push(e),a.push(n),r?o(e,n,t):n}}function Te(e,t){return e===t||e!=e&&t!=t}function Ee(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(!_e(e)){if(M(e))return!!M(t)&&Te(e.getTime(),t.getTime());if(D(e))return!!D(t)&&e.toString()===t.toString();if(Ae(e)||Ae(t)||T(e)||T(t)||_e(t)||M(t)||D(t))return!1;for(r in i=Ue(),e)if("$"!==r.charAt(0)&&!Ie(e[r])){if(!Ee(e[r],t[r]))return!1;i[r]=!0}for(r in t)if(!(r in i)&&"$"!==r.charAt(0)&&I(t[r])&&!Ie(t[r]))return!1;return!0}if(!_e(t))return!1;if((n=e.length)===t.length){for(r=0;r<n;r++)if(!Ee(e[r],t[r]))return!1;return!0}}return!1}var N=function(){var e;return I(N.rules)||((e=de.document.querySelector("[ng-csp]")||de.document.querySelector("[data-ng-csp]"))?(e=e.getAttribute("ng-csp")||e.getAttribute("data-ng-csp"),N.rules={noUnsafeEval:!e||-1!==e.indexOf("no-unsafe-eval"),noInlineStyle:!e||-1!==e.indexOf("no-inline-style")}):N.rules={noUnsafeEval:function(){try{return new Function(""),!1}catch(e){return!0}}(),noInlineStyle:!1}),N.rules},U=function(){if(I(U.name_))return U.name_;for(var e,t,n,r=ne.length,i=0;i<r;++i)if(t=ne[i],e=de.document.querySelector("["+t.replace(":","\\:")+"jq]")){n=e.getAttribute(t+"jq");break}return U.name_=n};function V(e,t,n){return e.concat(o.call(t,n))}function Pe(e,t){return o.call(e,t||0)}function Fe(e,t){var n=2<arguments.length?Pe(arguments,2):[];return!Ie(t)||t instanceof RegExp?t:n.length?function(){return arguments.length?t.apply(e,V(n,arguments,0)):t.apply(e,n)}:function(){return arguments.length?t.apply(e,arguments):t.call(e)}}function q(e,t){var n=t;return"string"==typeof e&&"$"===e.charAt(0)&&"$"===e.charAt(1)?n=void 0:T(t)?n="$WINDOW":t&&de.document===t?n="$DOCUMENT":Ae(t)&&(n="$SCOPE"),n}function K(e,t){if(!xe(e))return O(t)||(t=t?2:null),JSON.stringify(e,q,t)}function W(e){return Se(e)?JSON.parse(e):e}var J=/:/g;function G(e,t){e=e.replace(J,"");e=Date.parse("Jan 01, 1970 00:00:00 "+e)/6e4;return C(e)?t:e}function Y(e,t){return(e=new Date(e.getTime())).setMinutes(e.getMinutes()+t),e}function X(e,t,n){n=n?-1:1;var r=e.getTimezoneOffset();return Y(e,n*(G(t,r)-r))}function Le(e){e=ge(e).clone().empty();var t=ge("<div></div>").append(e).html();try{return e[0].nodeType===qe?S(t):t.match(/^(<[^>]+>)/)[1].replace(/^<([\w-]+)/,function(e,t){return"<"+S(t)})}catch(e){return S(t)}}function Z(e){try{return decodeURIComponent(e)}catch(e){}}function Q(e){var i={};return me((e||"").split("&"),function(e){var t,n,r;e&&(n=e=e.replace(/\+/g,"%20"),-1!==(t=e.indexOf("="))&&(n=e.substring(0,t),r=e.substring(t+1)),I(n=Z(n))&&(r=!I(r)||Z(r),z.call(i,n)?_e(i[n])?i[n].push(r):i[n]=[i[n],r]:i[n]=r))}),i}function ee(e){return te(e,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function te(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 ne=["ng-","data-ng-","ng:","x-ng-"];var re,ie,ae=(re=de.document,!(ie=re.currentScript)||(ie instanceof de.HTMLScriptElement||ie instanceof de.SVGScriptElement)&&[(ie=ie.attributes).getNamedItem("src"),ie.getNamedItem("href"),ie.getNamedItem("xlink:href")].every(function(e){if(!e)return!0;if(!e.value)return!1;var t=re.createElement("a");if(t.href=e.value,re.location.origin===t.origin)return!0;switch(t.protocol){case"http:":case"https:":case"ftp:":case"blob:":case"file:":case"data:":return!0;default:return!1}}));function oe(n,e){var r,i,t={};me(ne,function(e){e+="app";!r&&n.hasAttribute&&n.hasAttribute(e)&&(i=(r=n).getAttribute(e))}),me(ne,function(e){var t,e=e+"app";!r&&(t=n.querySelector("["+e.replace(":","\\:")+"]"))&&(i=(r=t).getAttribute(e))}),r&&(ae?(t.strictDi=null!==function(e,t){for(var n,r=ne.length,i=0;i<r;++i)if(n=ne[i]+t,Se(n=e.getAttribute(n)))return n;return null}(r,"strict-di"),e(r,i?[i]:[],t)):de.console.error("AngularJS: disabling automatic bootstrap. <script> protocol indicates an extension, document.location.href does not match."))}function se(t,n,r){r=ve({strictDi:!1},r=!$e(r)?{}:r);function i(){if((t=ge(t)).injector()){var e=t[0]===de.document?"document":Le(t);throw p("btstrpd","App already bootstrapped with this element '{0}'",e.replace(/</,"<").replace(/>/,">"))}return(n=n||[]).unshift(["$provide",function(e){e.value("$rootElement",t)}]),r.debugInfoEnabled&&n.push(["$compileProvider",function(e){e.debugInfoEnabled(!0)}]),n.unshift("ng"),(e=un(n,r.strictDi)).invoke(["$rootScope","$rootElement","$compile","$injector",function(e,t,n,r){e.$apply(function(){t.data("$injector",r),n(t)(e)})}]),e}var e=/^NG_ENABLE_DEBUG_INFO!/,a=/^NG_DEFER_BOOTSTRAP!/;if(de&&e.test(de.name)&&(r.debugInfoEnabled=!0,de.name=de.name.replace(e,"")),de&&!a.test(de.name))return i();de.name=de.name.replace(a,""),b.resumeBootstrap=function(e){return me(e,function(e){n.push(e)}),i()},Ie(b.resumeDeferredBootstrap)&&b.resumeDeferredBootstrap()}function ue(){de.name="NG_ENABLE_DEBUG_INFO!"+de.name,de.location.reload()}function ce(e){e=b.element(e).injector();if(!e)throw p("test","no injector found for element argument to getTestability");return e.get("$$testability")}var le=/[A-Z]/g;function Be(e,n){return n=n||"_",e.replace(le,function(e,t){return(t?n:"")+e.toLowerCase()})}var fe=!1;function he(){kt.legacyXHTMLReplacement=!0}function je(e,t,n){if(!e)throw p("areq","Argument '{0}' is {1}",t||"?",n||"required");return e}function pe(e,t,n){return je(Ie(e=n&&_e(e)?e[e.length-1]:e),t,"not a function, got "+(e&&"object"==typeof e?e.constructor.name||"Object":typeof e)),e}function He(e,t){if("hasOwnProperty"===e)throw p("badname","hasOwnProperty is not a valid {0} name",t)}function Ne(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||ge(o.call(e,0,i))).push(n);return t||e}function Ue(){return Object.create(null)}function Ve(e){if(null==e)return"";switch(typeof e){case"string":break;case"number":e=""+e;break;default:e=!x(e)||_e(e)||M(e)?K(e):e.toString()}return e}var ze=1,qe=3,Ke=8,We=9,Je=11;function Ge(e){var f=$("$injector"),h=$("ng");function t(e,t,n){return e[t]||(e[t]=n())}e=t(e,"angular",Object);return e.$$minErr=e.$$minErr||$,t(e,"module",function(){var e={};return function(s,u,c){var l={};return function(e,t){if("hasOwnProperty"===e)throw h("badname","hasOwnProperty is not a valid {0} name",t)}(s,"module"),u&&e.hasOwnProperty(s)&&(e[s]=null),t(e,s,function(){if(!u)throw f("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.",s);var a=[],e=[],t=[],n=r("$injector","invoke","push",e),o={_invokeQueue:a,_configBlocks:e,_runBlocks:t,info:function(e){if(I(e)){if(!$e(e))throw h("aobj","Argument '{0}' must be an object","value");return l=e,this}return l},requires:u,name:s,provider:i("$provide","provider"),factory:i("$provide","factory"),service:i("$provide","service"),value:r("$provide","value"),constant:r("$provide","constant","unshift"),decorator:i("$provide","decorator",e),animation:i("$animateProvider","register"),filter:i("$filterProvider","register"),controller:i("$controllerProvider","register"),directive:i("$compileProvider","directive"),component:i("$compileProvider","component"),config:n,run:function(e){return t.push(e),this}};return c&&n(c),o;function r(e,t,n,r){return r=r||a,function(){return r[n||"push"]([e,t,arguments]),o}}function i(n,r,i){return i=i||a,function(e,t){return t&&Ie(t)&&(t.$$moduleName=s),i.push([n,r,arguments]),o}}})}})}function Ye(e,t){if(_e(e)){t=t||[];for(var n=0,r=e.length;n<r;n++)t[n]=e[n]}else if($e(e))for(var i in t=t||{},e)"$"===i.charAt(0)&&"$"===i.charAt(1)||(t[i]=e[i]);return t||e}function Xe(e,t){return"function"==typeof e?e.toString().replace(/ \{[\s\S]*$/,""):xe(e)?"undefined":"string"!=typeof e?(n=e,r=[],u(t=t)&&(n=b.copy(n,null,t)),JSON.stringify(n,function(e,t){if($e(t=q(e,t))){if(0<=r.indexOf(t))return"...";r.push(t)}return t})):e;var n,r}var Ze={full:"1.8.0",major:1,minor:8,dot:0,codeName:"nested-vaccination"};kt.expando="ng339";var Qe=kt.cache={},et=1;kt._data=function(e){return this.cache[e[this.expando]]||{}};var tt=/-([a-z])/g,nt=/^-ms-/,rt={mouseleave:"mouseout",mouseenter:"mouseover"},it=$("jqLite");function at(e,t){return t.toUpperCase()}function ot(e){return e.replace(tt,at)}var st=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,ut=/<|&#?\w+;/,ct=/<([\w:-]+)/,lt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,ft={thead:["table"],col:["colgroup","table"],tr:["tbody","table"],td:["tr","tbody","table"]};ft.tbody=ft.tfoot=ft.colgroup=ft.caption=ft.thead,ft.th=ft.td;var ht,pt={option:[1,'<select multiple="multiple">',"</select>"],_default:[0,"",""]};for(ht in ft){var dt=ft[ht],gt=dt.slice().reverse();pt[ht]=[gt.length,"<"+gt.join("><")+">","</"+dt.join("></")+">"]}function mt(e){return!ut.test(e)}function vt(e){e=e.nodeType;return e===ze||!e||e===We}function yt(e,t){var n,r,i,a=t.createDocumentFragment(),o=[];if(mt(e))o.push(t.createTextNode(e));else{if(n=a.appendChild(t.createElement("div")),t=(ct.exec(e)||["",""])[1].toLowerCase(),e=kt.legacyXHTMLReplacement?e.replace(lt,"<$1></$2>"):e,ye<10)for(r=pt[t]||pt._default,n.innerHTML=r[1]+e+r[2],i=r[0];i--;)n=n.firstChild;else{for(i=(r=ft[t]||[]).length;-1<--i;)n.appendChild(de.document.createElement(r[i])),n=n.firstChild;n.innerHTML=e}o=V(o,n.childNodes),(n=a.firstChild).textContent=""}return a.textContent="",a.innerHTML="",me(o,function(e){a.appendChild(e)}),a}pt.optgroup=pt.option;var bt=de.Node.prototype.contains||function(e){return!!(16&this.compareDocumentPosition(e))};function kt(e){if(e instanceof kt)return e;var t,n,r;if(Se(e)&&(e=Oe(e),r=!0),!(this instanceof kt)){if(r&&"<"!==e.charAt(0))throw it("nosel","Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element");return new kt(e)}r?Dt(this,(t=e,n=n||de.document,(r=st.exec(t))?[n.createElement(r[1])]:(r=yt(t,n))?r.childNodes:[])):Ie(e)?Lt(e):Dt(this,e)}function wt(e){return e.cloneNode(!0)}function xt(e,t){!t&&vt(e)&&ge.cleanData([e]),e.querySelectorAll&&ge.cleanData(e.querySelectorAll("*"))}function $t(e){for(var t in e)return;return 1}function St(e){var t=e.ng339,n=t&&Qe[t],r=n&&n.events,n=n&&n.data;n&&!$t(n)||r&&!$t(r)||(delete Qe[t],e.ng339=void 0)}function _t(n,e,r,t){if(I(t))throw it("offargs","jqLite#off() does not support the `selector` argument");var t=It(n),i=t&&t.events,a=t&&t.handle;if(a){if(e){var o=function(e){var t=i[e];I(r)&&De(t||[],r),I(r)&&t&&0<t.length||(n.removeEventListener(e,a),delete i[e])};me(e.split(" "),function(e){o(e),rt[e]&&o(rt[e])})}else for(e in i)"$destroy"!==e&&n.removeEventListener(e,a),delete i[e];St(n)}}function Rt(e,t){var n=e.ng339,n=n&&Qe[n];n&&(t?delete n.data[t]:n.data={},St(e))}function It(e,t){var n=e.ng339,r=n&&Qe[n];return t&&!r&&(e.ng339=n=++et,r=Qe[n]={events:{},data:{},handle:void 0}),r}function At(e,t,n){if(vt(e)){var r,i=I(n),a=!i&&t&&!$e(t),o=!t,e=It(e,!a),s=e&&e.data;if(i)s[ot(t)]=n;else{if(o)return s;if(a)return s&&s[ot(t)];for(r in t)s[ot(r)]=t[r]}}}function Ct(e,t){return!!e.getAttribute&&-1<(" "+(e.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+t+" ")}function Ot(e,t){var n,r;t&&e.setAttribute&&(n=(" "+(e.getAttribute("class")||"")+" ").replace(/[\n\t]/g," "),r=n,me(t.split(" "),function(e){e=Oe(e),r=r.replace(" "+e+" "," ")}),r!==n&&e.setAttribute("class",Oe(r)))}function Mt(e,t){var n,r;t&&e.setAttribute&&(n=(" "+(e.getAttribute("class")||"")+" ").replace(/[\n\t]/g," "),r=n,me(t.split(" "),function(e){e=Oe(e),-1===r.indexOf(" "+e+" ")&&(r+=e+" ")}),r!==n&&e.setAttribute("class",Oe(r)))}function Dt(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 Tt(e,t){return Et(e,"$"+(t||"ngController")+"Controller")}function Et(e,t,n){e.nodeType===We&&(e=e.documentElement);for(var r=_e(t)?t:[t];e;){for(var i=0,a=r.length;i<a;i++)if(I(n=ge.data(e,r[i])))return n;e=e.parentNode||e.nodeType===Je&&e.host}}function Pt(e){for(xt(e,!0);e.firstChild;)e.removeChild(e.firstChild)}function Ft(e,t){t||xt(e);t=e.parentNode;t&&t.removeChild(e)}function Lt(e){function t(){de.document.removeEventListener("DOMContentLoaded",t),de.removeEventListener("load",t),e()}"complete"===de.document.readyState?de.setTimeout(e):(de.document.addEventListener("DOMContentLoaded",t),de.addEventListener("load",t))}var Bt=kt.prototype={ready:Lt,toString:function(){var t=[];return me(this,function(e){t.push(""+e)}),"["+t.join(", ")+"]"},eq:function(e){return ge(0<=e?this[e]:this[this.length+e])},length:0,push:n,sort:[].sort,splice:[].splice},jt={};me("multiple,selected,checked,disabled,readOnly,required,open".split(","),function(e){jt[S(e)]=e});var Ht={};me("input,select,option,textarea,button,form,details".split(","),function(e){Ht[e]=!0});var Nt={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern",ngStep:"step"};function Ut(e,t){t=jt[t.toLowerCase()];return t&&Ht[Me(e)]&&t}function Vt(e,t){if(xe(t)){var n=e.nodeType;return n===ze||n===qe?e.textContent:""}e.textContent=t}function zt(s,u){function e(e,t){e.isDefaultPrevented=function(){return e.defaultPrevented};var n,r=u[t||e.type],i=r?r.length:0;if(i){xe(e.immediatePropagationStopped)&&(n=e.stopImmediatePropagation,e.stopImmediatePropagation=function(){e.immediatePropagationStopped=!0,e.stopPropagation&&e.stopPropagation(),n&&n.call(e)}),e.isImmediatePropagationStopped=function(){return!0===e.immediatePropagationStopped};var a=r.specialHandlerWrapper||qt;1<i&&(r=Ye(r));for(var o=0;o<i;o++)e.isImmediatePropagationStopped()||a(s,e,r[o])}}return e.elem=s,e}function qt(e,t,n){n.call(e,t)}function Kt(e,t,n){var r=t.relatedTarget;r&&(r===e||bt.call(e,r))||n.call(e,t)}function Wt(){this.$get=function(){return ve(kt,{hasClass:function(e,t){return Ct(e=e.attr?e[0]:e,t)},addClass:function(e,t){return Mt(e=e.attr?e[0]:e,t)},removeClass:function(e,t){return Ot(e=e.attr?e[0]:e,t)}})}}function Jt(e,t){var n=e&&e.$$hashKey;if(n)return n="function"==typeof n?e.$$hashKey():n;var r=typeof e;return n="function"==r||"object"==r&&null!==e?e.$$hashKey=r+":"+(t||A)():r+":"+e}me({data:At,removeData:Rt,hasData:function(e){for(var t in Qe[e.ng339])return!0;return!1},cleanData:function(e){for(var t=0,n=e.length;t<n;t++)Rt(e[t]),_t(e[t])}},function(e,t){kt[t]=e}),me({data:At,inheritedData:Et,scope:function(e){return ge.data(e,"$scope")||Et(e.parentNode||e,["$isolateScope","$scope"])},isolateScope:function(e){return ge.data(e,"$isolateScope")||ge.data(e,"$isolateScopeNoTemplate")},controller:Tt,injector:function(e){return Et(e,"$injector")},removeAttr:function(e,t){e.removeAttribute(t)},hasClass:Ct,css:function(e,t,n){if(t=ot(t.replace(nt,"ms-")),!I(n))return e.style[t];e.style[t]=n},attr:function(e,t,n){var r=e.nodeType;if(r!==qe&&2!==r&&r!==Ke&&e.getAttribute){var i=S(t),a=jt[i];if(!I(n))return r=e.getAttribute(t),null===(r=a&&null!==r?i:r)?void 0:r;null===n||!1===n&&a?e.removeAttribute(t):e.setAttribute(t,a?i:n)}},prop:function(e,t,n){if(!I(n))return e[t];e[t]=n},text:(Vt.$dv="",Vt),val:function(e,t){if(xe(t)){if(e.multiple&&"select"===Me(e)){var n=[];return me(e.options,function(e){e.selected&&n.push(e.value||e.text)}),n}return e.value}e.value=t},html:function(e,t){if(xe(t))return e.innerHTML;xt(e,!0),e.innerHTML=t},empty:Pt},function(c,e){kt.prototype[e]=function(e,t){var n,r,i=this.length;if(c!==Pt&&xe(2===c.length&&c!==Ct&&c!==Tt?e:t)){if($e(e)){for(n=0;n<i;n++)if(c===At)c(this[n],e);else for(r in e)c(this[n],r,e[r]);return this}for(var a=xe(u=c.$dv)?Math.min(i,1):i,o=0;o<a;o++)var s=c(this[o],e,t),u=u?u+s:s;return u}for(n=0;n<i;n++)c(this[n],e,t);return this}}),me({removeData:Rt,on:function(i,e,a,t){if(I(t))throw it("onargs","jqLite#on() does not support the `selector` or `eventData` parameters");if(vt(i))for(var t=It(i,!0),o=t.events,s=(s=t.handle)||(t.handle=zt(i,o)),n=0<=e.indexOf(" ")?e.split(" "):[e],r=n.length,u=function(e,t,n){var r=o[e];r||((r=o[e]=[]).specialHandlerWrapper=t,"$destroy"===e||n||i.addEventListener(e,s)),r.push(a)};r--;)e=n[r],rt[e]?(u(rt[e],Kt),u(e,void 0,!0)):u(e)},off:_t,one:function(t,n,r){(t=ge(t)).on(n,function e(){t.off(n,r),t.off(n,e)}),t.on(n,r)},replaceWith:function(t,e){var n,r=t.parentNode;xt(t),me(new kt(e),function(e){n?r.insertBefore(e,n.nextSibling):r.replaceChild(e,t),n=e})},children:function(e){var t=[];return me(e.childNodes,function(e){e.nodeType===ze&&t.push(e)}),t},contents:function(e){return e.contentDocument||e.childNodes||[]},append:function(e,t){var n=e.nodeType;if(n===ze||n===Je)for(var r=0,i=(t=new kt(t)).length;r<i;r++){var a=t[r];e.appendChild(a)}},prepend:function(t,e){var n;t.nodeType===ze&&(n=t.firstChild,me(new kt(e),function(e){t.insertBefore(e,n)}))},wrap:function(e,t){var n;n=e,e=ge(t).eq(0).clone()[0],(t=n.parentNode)&&t.replaceChild(e,n),e.appendChild(n)},remove:Ft,detach:function(e){Ft(e,!0)},after:function(e,t){var n=e,r=e.parentNode;if(r)for(var i=0,a=(t=new kt(t)).length;i<a;i++){var o=t[i];r.insertBefore(o,n.nextSibling),n=o}},addClass:Mt,removeClass:Ot,toggleClass:function(n,e,r){e&&me(e.split(" "),function(e){var t=r;((t=xe(r)?!Ct(n,e):t)?Mt:Ot)(n,e)})},parent:function(e){e=e.parentNode;return e&&e.nodeType!==Je?e:null},next:function(e){return e.nextElementSibling},find:function(e,t){return e.getElementsByTagName?e.getElementsByTagName(t):[]},clone:wt,triggerHandler:function(t,e,n){var r,i,a=e.type||e,o=It(t),o=o&&o.events,o=o&&o[a];o&&(r={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return!0===this.defaultPrevented},stopImmediatePropagation:function(){this.immediatePropagationStopped=!0},isImmediatePropagationStopped:function(){return!0===this.immediatePropagationStopped},stopPropagation:ke,type:a,target:t},e.type&&(r=ve(r,e)),o=Ye(o),i=n?[r].concat(n):[r],me(o,function(e){r.isImmediatePropagationStopped()||e.apply(t,i)}))}},function(o,e){kt.prototype[e]=function(e,t,n){for(var r,i=0,a=this.length;i<a;i++)xe(r)?I(r=o(this[i],e,t,n))&&(r=ge(r)):Dt(r,o(this[i],e,t,n));return I(r)?r:this}}),kt.prototype.bind=kt.prototype.on,kt.prototype.unbind=kt.prototype.off;var Gt=Object.create(null);function Yt(){this._keys=[],this._values=[],this._lastKey=NaN,this._lastIndex=-1}Yt.prototype={_idx:function(e){return e!==this._lastKey&&(this._lastKey=e,this._lastIndex=this._keys.indexOf(e)),this._lastIndex},_transformKey:function(e){return C(e)?Gt:e},get:function(e){e=this._transformKey(e);e=this._idx(e);if(-1!==e)return this._values[e]},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);e=this._idx(e);return-1!==e&&(this._keys.splice(e,1),this._values.splice(e,1),this._lastKey=NaN,this._lastIndex=-1,!0)}};var Xt=Yt,Zt=[function(){this.$get=[function(){return Xt}]}],Qt=/^([^(]+?)=>/,en=/^[^(]*\(\s*([^)]*)\)/m,tn=/,/,nn=/^\s*(_?)(\S+?)\1\s*$/,rn=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,an=$("$injector");function on(e){return Function.prototype.toString.call(e)}function sn(e){e=on(e).replace(rn,"");return e.match(Qt)||e.match(en)}function un(e,c){c=!0===c;var a={},o="Provider",s=[],i=new Xt,l={$provide:{provider:r(h),factory:r(p),service:r(function(e,t){return p(e,["$injector",function(e){return e.instantiate(t)}])}),value:r(function(e,t){return p(e,R(t),!1)}),constant:r(function(e,t){He(e,"constant"),l[e]=t,n[e]=t}),decorator:function(e,t){var n=u.get(e+o),r=n.$get;n.$get=function(){var e=f.invoke(r,n);return f.invoke(t,null,{$delegate:e})}}}},u=l.$injector=g(l,function(e,t){throw b.isString(t)&&s.push(t),an("unpr","Unknown provider: {0}",s.join(" <- "))}),n={},t=g(n,function(e,t){t=u.get(e+o,t);return f.invoke(t.$get,t,void 0,e)}),f=t;l["$injector"+o]={$get:R(t)},f.modules=u.modules=Ue();e=d(e);return(f=t.get("$injector")).strictDi=c,me(e,function(e){e&&f.invoke(e)}),f.loadNewModules=function(e){me(d(e),function(e){e&&f.invoke(e)})},f;function r(n){return function(e,t){if(!$e(e))return n(e,t);me(e,y(n))}}function h(e,t){if(He(e,"service"),!(t=Ie(t)||_e(t)?u.instantiate(t):t).$get)throw an("pget","Provider '{0}' must define $get factory method.",e);return l[e+o]=t}function p(e,t,n){return h(e,{$get:!1!==n?(r=e,i=t,function(){var e=f.invoke(i,this);if(xe(e))throw an("undef","Provider '{0}' must return a value from $get factory method.",r);return e}):t});var r,i}function d(e){je(xe(e)||_e(e),"modulesToLoad","not an array");var n,r=[];return me(e,function(t){if(!i.get(t)){i.set(t,!0);try{Se(t)?(n=m(t),f.modules[t]=n,r=r.concat(d(n.requires)).concat(n._runBlocks),e(n._invokeQueue),e(n._configBlocks)):Ie(t)||_e(t)?r.push(u.invoke(t)):pe(t,"module")}catch(e){throw _e(t)&&(t=t[t.length-1]),e.message&&e.stack&&-1===e.stack.indexOf(e.message)&&(e=e.message+"\n"+e.stack),an("modulerr","Failed to instantiate module {0} due to:\n{1}",t,e.stack||e.message||e)}}function e(e){for(var t=0,n=e.length;t<n;t++){var r=e[t],i=u.get(r[0]);i[r[1]].apply(i,r[2])}}}),r}function g(n,r){function u(t,e){if(n.hasOwnProperty(t)){if(n[t]===a)throw an("cdep","Circular dependency found: {0}",t+" <- "+s.join(" <- "));return n[t]}try{return s.unshift(t),n[t]=a,n[t]=r(t,e),n[t]}catch(e){throw n[t]===a&&delete n[t],e}finally{s.shift()}}function i(e,t,n){for(var r=[],i=un.$$annotate(e,c,n),a=0,o=i.length;a<o;a++){var s=i[a];if("string"!=typeof s)throw an("itkn","Incorrect injection token! Expected service name as string, got {0}",s);r.push(t&&t.hasOwnProperty(s)?t[s]:u(s,n))}return r}return{invoke:function(e,t,n,r){return"string"==typeof n&&(r=n,n=null),r=i(e,n,r),function(e){if(!ye&&"function"==typeof e){var t=e.$$ngIsClass;return t=!Ce(t)?e.$$ngIsClass=/^class\b/.test(on(e)):t}}(e=_e(e)?e[e.length-1]:e)?(r.unshift(null),new(Function.prototype.bind.apply(e,r))):e.apply(t,r)},instantiate:function(e,t,n){var r=_e(e)?e[e.length-1]:e;return(n=i(e,t,n)).unshift(null),new(Function.prototype.bind.apply(r,n))},get:u,annotate:un.$$annotate,has:function(e){return l.hasOwnProperty(e+o)||n.hasOwnProperty(e)}}}}function cn(){var e=!0;this.disableAutoScrolling=function(){e=!1},this.$get=["$window","$location","$rootScope",function(r,i,a){var o=r.document;function s(e){var t,n;e?(e.scrollIntoView(),(n=(Ie(n=u.yOffset)?n=n():B(n)?(t=n[0],n="fixed"!==r.getComputedStyle(t).position?0:t.getBoundingClientRect().bottom):O(n)||(n=0),n))&&(e=e.getBoundingClientRect().top,r.scrollBy(0,e-n))):r.scrollTo(0,0)}function u(e){var t,n,r;(e=Se(e)?e:O(e)?e.toString():i.hash())?(t=o.getElementById(e))?s(t):(n=o.getElementsByName(e),r=null,Array.prototype.some.call(n,function(e){if("a"===Me(e))return r=e,!0}),(t=r)?s(t):"top"===e&&s(null)):s(null)}return e&&a.$watch(function(){return i.hash()},function(e,t){var n;e===t&&""===e||(e=function(){a.$evalAsync(u)},"complete"===(n=n||de).document.readyState?n.setTimeout(e):ge(n).on("load",e))}),u}]}un.$$annotate=function(e,t,n){var r;if("function"==typeof e){if(!(r=e.$inject)){if(r=[],e.length){if(t)throw Se(n)&&n||(n=e.name||((t=sn(t=e))?"function("+(t[1]||"").replace(/[\s\r\n]+/," ")+")":"fn")),an("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",n);me(sn(e)[1].split(tn),function(e){e.replace(nn,function(e,t,n){r.push(n)})})}e.$inject=r}}else _e(e)?(pe(e[n=e.length-1],"fn"),r=e.slice(0,n)):pe(e,"fn",!0);return r};var ln=$("$animate"),fn=1,hn="ng-animate";function pn(e,t){return e||t?e?t?(e=_e(e)?e.join(" "):e)+" "+(t=_e(t)?t.join(" "):t):e:t:""}function dn(e){return $e(e)?e:{}}function gn(){this.$get=ke}function mn(){var c=new Xt,l=[];this.$get=["$$AnimateRunner","$rootScope",function(a,o){return{enabled:ke,on:ke,off:ke,pin:ke,push:function(e,t,n,r){r&&r(),(n=n||{}).from&&e.css(n.from),n.to&&e.css(n.to),(n.addClass||n.removeClass)&&(i=e,r=n.addClass,e=n.removeClass,n=c.get(i)||{},r=s(n,r,!0),e=s(n,e,!1),(r||e)&&(c.set(i,n),l.push(i),1===l.length&&o.$$postDigest(u)));var i=new a;return i.complete(),i}};function s(t,e,n){var r=!1;return e&&me(e=Se(e)?e.split(" "):_e(e)?e:[],function(e){e&&(r=!0,t[e]=n)}),r}function u(){me(l,function(e){var n,r,i,t=c.get(e);t&&(n=function(e){Se(e)&&(e=e.split(" "));var t=Ue();return me(e,function(e){e.length&&(t[e]=!0)}),t}(e.attr("class")),i=r="",me(t,function(e,t){e!==!!n[t]&&(e?r+=(r.length?" ":"")+t:i+=(i.length?" ":"")+t)}),me(e,function(e){r&&Mt(e,r),i&&Ot(e,i)}),c.delete(e))}),l.length=0}}]}function vn(){this.$get=["$$rAF",function(t){var n=[];function r(e){n.push(e),1<n.length||t(function(){for(var e=0;e<n.length;e++)n[e]();n=[]})}return function(){var t=!1;return r(function(){t=!0}),function(e){t?e():r(e)}}}]}function yn(){this.$get=["$q","$sniffer","$$animateAsyncRun","$$isDocumentHidden","$timeout",function(t,e,n,r,i){function a(e){this.setHost(e);var t=n();this._doneCallbacks=[],this._tick=function(e){r()?i(e,0,!1):t(e)},this._state=0}return a.chain=function(e,n){var r=0;!function t(){if(r===e.length)return void n(!0);e[r](function(e){!1!==e?(r++,t()):n(!1)})}()},a.all=function(t,n){var r=0,i=!0;function a(e){i=i&&e,++r===t.length&&n(i)}me(t,function(e){e.done(a)})},a.prototype={setHost:function(e){this.host=e||{}},done:function(e){2===this._state?e():this._doneCallbacks.push(e)},progress:ke,getPromise:function(){var e;return this.promise||((e=this).promise=t(function(t,n){e.done(function(e){(!1===e?n:t)()})})),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(t){2!==this._state&&(me(this._doneCallbacks,function(e){e(t)}),this._doneCallbacks.length=0,this._state=2)}},a}]}function bn(){this.$get=["$$rAF","$q","$$AnimateRunner",function(o,e,s){return function(e,t){var n=t||{};(n=!n.$$prepared?H(n):n).cleanupStyles&&(n.from=n.to=null),n.from&&(e.css(n.from),n.from=null);var r,i=new s;return{start:a,end:a};function a(){return o(function(){!function(){n.addClass&&(e.addClass(n.addClass),n.addClass=null);n.removeClass&&(e.removeClass(n.removeClass),n.removeClass=null);n.to&&(e.css(n.to),n.to=null)}(),r||i.complete(),r=!0}),i}}}]}var kn=["$provide",function(r){var i=this,t=null,n=null;this.$$registeredAnimations=Object.create(null),this.register=function(e,t){if(e&&"."!==e.charAt(0))throw ln("notcsel","Expecting class selector starting with '.' got '{0}'.",e);var n=e+"-animation";i.$$registeredAnimations[e.substr(1)]=n,r.factory(n,t)},this.customFilter=function(e){return n=1===arguments.length?Ie(e)?e:null:n},this.classNameFilter=function(e){if(1===arguments.length&&((t=e instanceof RegExp?e:null)&&new RegExp("[(\\s|\\/)]"+hn+"[(\\s|\\/)]").test(t.toString())))throw t=null,ln("nongcls",'$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the "{0}" CSS class.',hn);return t},this.$get=["$$animateQueue",function(a){function i(e,t,n){var r;n&&(!(r=function(e){for(var t=0;t<e.length;t++){var n=e[t];if(n.nodeType===fn)return n}}(n))||r.parentNode||r.previousElementSibling||(n=null)),n?n.after(e):t.prepend(e)}return{on:a.on,off:a.off,pin:a.pin,enabled:a.enabled,cancel:function(e){e.cancel&&e.cancel()},enter:function(e,t,n,r){return t=t&&ge(t),n=n&&ge(n),i(e,t=t||n.parent(),n),a.push(e,"enter",dn(r))},move:function(e,t,n,r){return t=t&&ge(t),n=n&&ge(n),i(e,t=t||n.parent(),n),a.push(e,"move",dn(r))},leave:function(e,t){return a.push(e,"leave",dn(t),function(){e.remove()})},addClass:function(e,t,n){return(n=dn(n)).addClass=pn(n.addclass,t),a.push(e,"addClass",n)},removeClass:function(e,t,n){return(n=dn(n)).removeClass=pn(n.removeClass,t),a.push(e,"removeClass",n)},setClass:function(e,t,n,r){return(r=dn(r)).addClass=pn(r.addClass,t),r.removeClass=pn(r.removeClass,n),a.push(e,"setClass",r)},animate:function(e,t,n,r,i){return(i=dn(i)).from=i.from?ve(i.from,t):t,i.to=i.to?ve(i.to,n):n,i.tempClasses=pn(i.tempClasses,r=r||"ng-inline-animate"),a.push(e,"animate",i)}}}]}];function wn(a,e,t,o,n){var s=this,u=a.location,c=a.history,i=a.setTimeout,r=a.clearTimeout,l={},f=n(t);s.isMock=!1,s.$$completeOutstandingRequest=f.completeTask,s.$$incOutstandingRequestCount=f.incTaskCount,s.notifyWhenNoOutstandingRequests=f.notifyWhenNoPendingTasks;var h,p,d=u.href,g=e.find("base"),m=null,v=o.history?function(){try{return c.state}catch(e){}}:ke;x(),s.url=function(e,t,n){if(xe(n)&&(n=null),u!==a.location&&(u=a.location),c!==a.history&&(c=a.history),e){var r=p===n;if(e=wi(e).href,d===e&&(!o.history||r))return s;var i=d&&br(d)===br(e);return d=e,p=n,!o.history||i&&r?(i||(m=e),t?u.replace(e):i?u.hash=-1===(i=(r=e).indexOf("#"))?"":r.substr(i):u.href=e,u.href!==e&&(m=e)):(c[t?"replaceState":"pushState"](n,"",e),x()),m=m&&e,s}return(m||u.href).replace(/#$/,"")},s.state=function(){return h};var y=[],b=!1;function k(){m=null,$()}var w=null;function x(){Ee(h=xe(h=v())?null:h,w)&&(h=w),p=w=h}function $(){var e=p;x(),d===s.url()&&e===h||(d=s.url(),p=h,me(y,function(e){e(s.url(),h)}))}s.onUrlChange=function(e){return b||(o.history&&ge(a).on("popstate",k),ge(a).on("hashchange",k),b=!0),y.push(e),e},s.$$applicationDestroyed=function(){ge(a).off("hashchange popstate",k)},s.$$checkUrlChange=$,s.baseHref=function(){var e=g.attr("href");return e?e.replace(/^(https?:)?\/\/[^/]*/,""):""},s.defer=function(e,t,n){var r;return t=t||0,n=n||f.DEFAULT_TASK_TYPE,f.incTaskCount(n),r=i(function(){delete l[r],f.completeTask(e,n)},t),l[r]=n,r},s.defer.cancel=function(e){if(l.hasOwnProperty(e)){var t=l[e];return delete l[e],r(e),f.completeTask(ke,t),!0}return!1}}function xn(){this.$get=["$window","$log","$sniffer","$document","$$taskTrackerFactory",function(e,t,n,r,i){return new wn(e,r,t,n,i)}]}function $n(){this.$get=function(){var f={};function e(e,t){if(e in f)throw $("$cacheFactory")("iid","CacheId '{0}' is already taken!",e);var n=0,r=ve({},t,{id:e}),i=Ue(),a=t&&t.capacity||Number.MAX_VALUE,o=Ue(),s=null,u=null;return f[e]={put:function(e,t){if(!xe(t))return a<Number.MAX_VALUE&&c(o[e]||(o[e]={key:e})),e in i||n++,i[e]=t,a<n&&this.remove(u.key),t},get:function(e){if(a<Number.MAX_VALUE){var t=o[e];if(!t)return;c(t)}return i[e]},remove:function(e){if(a<Number.MAX_VALUE){var t=o[e];if(!t)return;t===s&&(s=t.p),t===u&&(u=t.n),l(t.n,t.p),delete o[e]}e in i&&(delete i[e],n--)},removeAll:function(){i=Ue(),n=0,o=Ue(),s=u=null},destroy:function(){o=r=i=null,delete f[e]},info:function(){return ve({},r,{size:n})}};function c(e){e!==s&&(u?u===e&&(u=e.n):u=e,l(e.n,e.p),l(e,s),(s=e).n=null)}function l(e,t){e!==t&&(e&&(e.p=t),t&&(t.n=e))}}return e.info=function(){var n={};return me(f,function(e,t){n[t]=e.info()}),n},e.get=function(e){return f[e]},e}}function Sn(){this.$get=["$cacheFactory",function(e){return e("templates")}]}var _n=$("$compile");var Rn=new function(){};function In(n,t){var L={},B="Directive",j=/^\s*directive:\s*([\w-]+)\s+(.*)$/,H=/(([\w-]+)(?::([^;]+))?;?)/,N=function(e){for(var t={},n=e.split(","),r=0;r<n.length;r++)t[n[r]]=!0;return t}("ngSrc,ngSrcset,src,srcset"),f=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,U=/^(on[a-z]+|formaction)$/,s=Ue();function p(e,r,i){var a=/^([@&]|[=<](\*?))(\??)\s*([\w$]*)$/,o=Ue();return me(e,function(e,t){if((e=e.trim())in s)o[t]=s[e];else{var n=e.match(a);if(!n)throw _n("iscp","Invalid {3} for directive '{0}'. Definition: {... {1}: '{2}' ...}",r,t,e,i?"controller bindings definition":"isolate scope definition");o[t]={mode:n[1][0],collection:"*"===n[2],optional:"?"===n[3],attrName:n[4]||t},n[4]&&(s[e]=o[t])}}),o}this.directive=function e(u,t){return je(u,"name"),He(u,"directive"),Se(u)?(function(e){var t=e.charAt(0);if(!t||t!==S(t))throw _n("baddir","Directive/Component name '{0}' is invalid. The first character must be a lowercase letter",e);if(e!==e.trim())throw _n("baddir","Directive/Component name '{0}' is invalid. The name should not contain leading or trailing whitespaces",e)}(u),je(t,"directiveFactory"),L.hasOwnProperty(u)||(L[u]=[],n.factory(u+B,["$injector","$exceptionHandler",function(a,o){var s=[];return me(L[u],function(e,t){try{var n=a.invoke(e);Ie(n)?n={compile:R(n)}:!n.compile&&n.link&&(n.compile=R(n.link)),n.priority=n.priority||0,n.index=t,n.name=n.name||u,n.require=(!_e(i=(r=n).require||r.controller&&r.name)&&$e(i)&&me(i,function(e,t){var n=e.match(f);e.substring(n[0].length)||(i[t]=n[0]+t)}),i),n.restrict=function(e,t){if(e&&(!Se(e)||!/[EACM]/.test(e)))throw _n("badrestrict","Restrict property '{0}' of directive '{1}' is invalid",e,t);return e||"EA"}(n.restrict,u),n.$$moduleName=e.$$moduleName,s.push(n)}catch(e){o(e)}var r,i}),s}])),L[u].push(t)):me(u,y(e)),this},this.component=function e(t,i){if(!Se(t))return me(t,y(Fe(this,e))),this;var a=i.controller||function(){};function n(r){function e(n){return Ie(n)||_e(n)?function(e,t){return r.invoke(n,this,{$element:e,$attrs:t})}:n}var t=i.template||i.templateUrl?i.template:"",n={controller:a,controllerAs:function(e,t){if(t&&Se(t))return t;if(Se(e)){e=Pn.exec(e);if(e)return e[3]}}(i.controller)||i.controllerAs||"$ctrl",template:e(t),templateUrl:e(i.templateUrl),transclude:i.transclude,scope:{},bindToController:i.bindings||{},restrict:"E",require:i.require};return me(i,function(e,t){"$"===t.charAt(0)&&(n[t]=e)}),n}return me(i,function(e,t){"$"===t.charAt(0)&&(n[t]=e,Ie(a)&&(a[t]=e))}),n.$inject=["$injector"],this.directive(t,n)},this.aHrefSanitizationWhitelist=function(e){return I(e)?(t.aHrefSanitizationWhitelist(e),this):t.aHrefSanitizationWhitelist()},this.imgSrcSanitizationWhitelist=function(e){return I(e)?(t.imgSrcSanitizationWhitelist(e),this):t.imgSrcSanitizationWhitelist()};var i=!0,l=!(this.debugInfoEnabled=function(e){return I(e)?(i=e,this):i});this.strictComponentBindingsEnabled=function(e){return I(e)?(l=e,this):l};var h=10;this.onChangesTtl=function(e){return arguments.length?(h=e,this):h};var d=!0;this.commentDirectivesEnabled=function(e){return arguments.length?(d=e,this):d};var g=!0;this.cssClassDirectivesEnabled=function(e){return arguments.length?(g=e,this):g};var V=Ue();function e(t,e){me(e,function(e){V[e.toLowerCase()]=t})}this.addPropertySecurityContext=function(e,t,n){var r=e.toLowerCase()+"|"+t.toLowerCase();if(r in V&&V[r]!==n)throw _n("ctxoverride","Property context '{0}.{1}' already set to '{2}', cannot override to '{3}'.",e,t,V[r],n);return V[r]=n,this},e(ri.HTML,["iframe|srcdoc","*|innerHTML","*|outerHTML"]),e(ri.CSS,["*|style"]),e(ri.URL,["area|href","area|ping","a|href","a|ping","blockquote|cite","body|background","del|cite","input|src","ins|cite","q|cite"]),e(ri.MEDIA_URL,["audio|src","img|src","img|srcset","source|src","source|srcset","track|src","video|src","video|poster"]),e(ri.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(_,R,q,K,I,W,A,C,r){var a,s=/^\w/,u=de.document.createElement("div"),O=d,M=g,e=h;function o(){try{if(!--e)throw a=void 0,_n("infchng","{0} $onChanges() iterations reached. Aborting!\n",h);A.$apply(function(){for(var e=0,t=a.length;e<t;++e)try{a[e]()}catch(e){q(e)}a=void 0})}finally{e++}}function c(e,t){if(!e)return e;if(!Se(e))throw _n("srcset",'Can\'t pass trusted values to `{0}`: "{1}"',t,e.toString());for(var n="",t=Oe(e),e=/\s/.test(t)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,r=t.split(e),i=Math.floor(r.length/2),a=0;a<i;a++){var o=2*a;n+=C.getTrustedMediaUrl(Oe(r[o])),n+=" "+Oe(r[1+o])}e=Oe(r[2*a]).split(/\s/);return n+=C.getTrustedMediaUrl(Oe(e[0])),2===e.length&&(n+=" "+Oe(e[1])),n}function J(e,t){if(t)for(var n,r=Object.keys(t),i=0,a=r.length;i<a;i++)this[n=r[i]]=t[n];else this.$attr={};this.$$element=e}function G(e,t){try{e.addClass(t)}catch(e){}}J.prototype={$normalize:Mn,$addClass:function(e){e&&0<e.length&&r.addClass(this.$$element,e)},$removeClass:function(e){e&&0<e.length&&r.removeClass(this.$$element,e)},$updateClass:function(e,t){var n=Dn(e,t);n&&n.length&&r.addClass(this.$$element,n);e=Dn(t,e);e&&e.length&&r.removeClass(this.$$element,e)},$set:function(e,t,n,r){var i=Ut(this.$$element[0],e),a=Nt[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=Be(e,"-")),"img"===Me(this.$$element)&&"srcset"===e&&(this[e]=t=c(t,"$set('srcset', value)")),!1!==n&&(null===t||xe(t)?this.$$element.removeAttr(r):s.test(r)?i&&!1===t?this.$$element.removeAttr(r):this.$$element.attr(r,t):function(e,t,n){u.innerHTML="<span "+t+">";var r=u.firstChild.attributes,t=r[0];r.removeNamedItem(t.name),t.value=n,e.attributes.setNamedItem(t)}(this.$$element[0],r,t));r=this.$$observers;r&&me(r[o],function(e){try{e(t)}catch(e){q(e)}})},$observe:function(e,t){var n=this,r=n.$$observers||(n.$$observers=Ue()),i=r[e]||(r[e]=[]);return i.push(t),A.$evalAsync(function(){i.$$inter||!n.hasOwnProperty(e)||xe(n[e])||t(n[e])}),function(){De(i,t)}}};var t=R.startSymbol(),n=R.endSymbol(),Y="{{"===t&&"}}"===n?we:function(e){return e.replace(/\{\{/g,t).replace(/}}/g,n)},D=/^ng(Attr|Prop|On)([A-Z].*)$/,T=/^(.+)Start$/;return X.$$addBindingInfo=i?function(e,t){var n=e.data("$binding")||[];_e(t)?n=n.concat(t):n.push(t),e.data("$binding",n)}:ke,X.$$addBindingClass=i?function(e){G(e,"ng-binding")}:ke,X.$$addScopeInfo=i?function(e,t,n,r){e.data(n?r?"$isolateScopeNoTemplate":"$isolateScope":"$scope",t)}:ke,X.$$addScopeClass=i?function(e,t){G(e,t?"ng-isolate-scope":"ng-scope")}:ke,X.$$createComment=function(e,t){var n="";return i&&(n=" "+(e||"")+": ",t&&(n+=t+" ")),de.document.createComment(n)},X;function X(s,e,t,n,u){var c=Z(s=!(s instanceof ge)?ge(s):s,e,s,t,n,u);X.$$addScopeClass(s);var l=null;return function(e,t,n){if(!s)throw _n("multilink","This element has already been linked.");je(e,"scope"),u&&u.needsNewScope&&(e=e.$parent.$new());var r,i=(n=n||{}).parentBoundTranscludeFn,a=n.transcludeControllers,n=n.futureParentElement;if(i&&i.$$boundTransclude&&(i=i.$$boundTransclude),r="html"!==(l=l||function(e){e=e&&e[0];return e&&"foreignobject"!==Me(e)&&v.call(e).match(/SVG/)?"svg":"html"}(n))?ge(ce(l,ge("<div></div>").append(s).html())):t?Bt.clone.call(s):s,a)for(var o in a)r.data("$"+o+"Controller",a[o].instance);return X.$$addScopeInfo(r,e),t&&t(r,e),c&&c(e,r,r,i),t||(s=c=null),r}}function Z(e,d,t,n,r,i){for(var a,o,s,u,g,m=[],c=_e(e)||e instanceof ge,l=0;l<e.length;l++)s=new J,11===ye&&function(e,t,n){var r,i=e[t],a=i.parentNode;if(i.nodeType===qe)for(;(r=a?i.nextSibling:e[t+1])&&r.nodeType===qe;)i.nodeValue=i.nodeValue+r.nodeValue,r.parentNode&&r.parentNode.removeChild(r),n&&r===e[t+1]&&e.splice(t+1,1)}(e,l,c),(a=(a=ee(e[l],[],s,0===l?n:void 0,r)).length?ie(a,e[l],s,d,t,null,[],[],i):null)&&a.scope&&X.$$addScopeClass(s.$$element),s=a&&a.terminal||!(o=e[l].childNodes)||!o.length?null:Z(o,a?(a.transcludeOnThisElement||!a.templateOnThisElement)&&a.transclude:d),(a||s)&&(m.push(l,a,s),u=!0,g=g||a),i=null;return u?function(e,t,n,r){var i,a,o,s,u,c,l,f,h;if(g){var p=t.length;for(h=new Array(p),u=0;u<m.length;u+=3)l=m[u],h[l]=t[l]}else h=t;for(u=0,c=m.length;u<c;)o=h[m[u++]],i=m[u++],a=m[u++],i?(i.scope?(s=e.$new(),X.$$addScopeInfo(ge(o),s)):s=e,f=i.transcludeOnThisElement?Q(e,i.transclude,r):!i.templateOnThisElement&&r?r:!r&&d?Q(e,d):null,i(a,s,o,n,f)):a&&a(e,o.childNodes,void 0,r)}:null}function Q(a,o,s){function e(e,t,n,r,i){return e||((e=a.$new(!1,i)).$$transcluded=!0),o(e,t,{parentBoundTranscludeFn:s,transcludeControllers:n,futureParentElement:r})}var t,n=e.$$slots=Ue();for(t in o.$$slots)o.$$slots[t]?n[t]=Q(a,o.$$slots[t],s):n[t]=null;return e}function ee(e,t,n,r,i){var a,o,s,u,c,l=e.nodeType,f=n.$attr;switch(l){case ze:E(t,Mn(u=Me(e)),"E",r,i);for(var h=e.attributes,p=0,d=h&&h.length;p<d;p++){var g,m,v,y=!1,b=!1,k=!1,w=!1,x=!1,$=(m=h[p]).name,S=m.value;(g=(v=Mn($.toLowerCase())).match(D))?(k="Attr"===g[1],w="Prop"===g[1],x="On"===g[1],$=$.replace(Cn,"").toLowerCase().substr(4+g[1].length).replace(/_(.)/g,function(e,t){return t.toUpperCase()})):(g=v.match(T))&&function(e){if(L.hasOwnProperty(e))for(var t=_.get(e+B),n=0,r=t.length;n<r;n++)if(t[n].multiElement)return!0;return!1}(g[1])&&(b=(y=$).substr(0,$.length-5)+"end",$=$.substr(0,$.length-6)),w||x?(n[v]=S,f[v]=m.name,w?function(e,t,n,a){if(U.test(a))throw _n("nodomevents","Property bindings for HTML DOM event properties are disallowed");var r=Me(e),e=function(e,t){t=t.toLowerCase();return V[e+"|"+t]||V["*|"+t]}(r,a),o=we;"srcset"!==a||"img"!==r&&"source"!==r?e&&(o=C.getTrusted.bind(C,e)):o=F;t.push({priority:100,compile:function(e,t){var r=I(t[n]),i=I(t[n],function(e){return C.valueOf(e)});return{pre:function(t,n){function e(){var e=r(t);n[0][a]=o(e)}e(),t.$watch(i,e)}}}})}(e,t,v,$):t.push(Ja(I,A,q,v,$,!1))):(f[v=Mn($.toLowerCase())]=$,!k&&n.hasOwnProperty(v)||(n[v]=S,Ut(e,v)&&(n[v]=!0)),function(e,t,a,o,n){var r=Me(e),s=function(e,t){if("srcdoc"===t)return C.HTML;return"src"===t||"ngSrc"===t?-1===["img","video","audio","source","track"].indexOf(e)?C.RESOURCE_URL:C.MEDIA_URL:"xlinkHref"===t?"image"===e?C.MEDIA_URL:"a"===e?C.URL:C.RESOURCE_URL:"form"===e&&"action"===t||"base"===e&&"href"===t||"link"===e&&"href"===t?C.RESOURCE_URL:"a"!==e||"href"!==t&&"ngHref"!==t?void 0:C.URL}(r,o),i=!n,u=N[o]||n,c=R(a,i,s,u);if(c){if("multiple"===o&&"select"===r)throw _n("selmulti","Binding to the 'multiple' attribute is not supported. Element: {0}",Le(e));if(U.test(o))throw _n("nodomevents","Interpolations for HTML DOM event attributes are disallowed");t.push({priority:100,compile:function(){return{pre:function(e,t,n){var r=n.$$observers||(n.$$observers=Ue()),i=n[o];i!==a&&(c=i&&R(i,!0,s,u),a=i),c&&(n[o]=c(e),(r[o]||(r[o]=[])).$$inter=!0,(n.$$observers&&n.$$observers[o].$$scope||e).$watch(c,function(e,t){"class"===o&&e!==t?n.$updateClass(e,t):n.$set(o,e)}))}}}})}}(e,t,S,v,k),E(t,v,"A",r,i,y,b))}if("input"===u&&"hidden"===e.getAttribute("type")&&e.setAttribute("autocomplete","off"),!M)break;if(Se(o=$e(o=e.className)?o.animVal:o)&&""!==o)for(;a=H.exec(o);)E(t,v=Mn(a[2]),"C",r,i)&&(n[v]=Oe(a[3])),o=o.substr(a.index+a[0].length);break;case qe:s=t,u=e.nodeValue,(c=R(u,!0))&&s.push({priority:0,compile:function(e){var e=e.parent(),r=!!e.length;return r&&X.$$addBindingClass(e),function(e,t){var n=t.parent();r||X.$$addBindingClass(n),X.$$addBindingInfo(n,c.expressions),e.$watch(c,function(e){t[0].nodeValue=e})}}});break;case Ke:if(!O)break;!function(e,t,n,r,i){try{var a,o=j.exec(e.nodeValue);o&&(a=Mn(o[1]),E(t,a,"M",r,i)&&(n[a]=Oe(o[2])))}catch(e){}}(e,t,n,r,i)}return t.sort(P),t}function te(e,t,n){var r=[],i=0;if(t&&e.hasAttribute&&e.hasAttribute(t)){do{if(!e)throw _n("uterdir","Unterminated attribute, found '{0}' but no matching '{1}' found.",t,n)}while(e.nodeType===ze&&(e.hasAttribute(t)&&i++,e.hasAttribute(n)&&i--),r.push(e),e=e.nextSibling,0<i)}else r.push(e);return ge(r)}function ne(a,o,s){return function(e,t,n,r,i){return t=te(t[0],o,s),a(e,t,n,r,i)}}function re(e,t,n,r,i,a){var o;return e?X(t,n,r,i,a):function(){return o||(o=X(t,n,r,i,a),t=n=a=null),o.apply(this,arguments)}}function ie(e,k,w,t,n,r,x,$,i){i=i||{};for(var a,o,s=-Number.MAX_VALUE,S=i.newScopeDirective,_=i.controllerDirectives,R=i.newIsolateScopeDirective,I=i.templateDirective,u=i.nonTlbTranscludeDirective,c=!1,l=!1,A=i.hasElementTranscludeDirective,f=w.$$element=ge(k),h=r,p=t,d=!1,g=!1,m=0,v=e.length;m<v;m++){var y,b=(y=e[m]).$$start,C=y.$$end;if(b&&(f=te(k,b,C)),P=void 0,s>y.priority)break;if((o=y.scope)&&(y.templateUrl||($e(o)?(ue("new/isolated scope",R||S,y,f),R=y):ue("new/isolated scope",R,y,f)),S=S||y),a=y.name,!d&&(y.replace&&(y.templateUrl||y.template)||y.transclude&&!y.$$tlb)){for(var O,M=m+1;O=e[M++];)if(O.transclude&&!O.$$tlb||O.replace&&(O.templateUrl||O.template)){g=!0;break}d=!0}if(!y.templateUrl&&y.controller&&(_=_||Ue(),ue("'"+a+"' controller",_[a],y,f),_[a]=y),o=y.transclude)if(c=!0,y.$$tlb||(ue("transclusion",u,y,f),u=y),"element"===o)A=!0,s=y.priority,P=f,f=w.$$element=ge(X.$$createComment(a,w[a])),k=f[0],le(n,Pe(P),k),p=re(g,P,t,s,h&&h.name,{nonTlbTranscludeDirective:u});else{var D=Ue();if($e(o)){var T,E,P=de.document.createDocumentFragment(),F=Ue(),L=Ue();for(T in me(o,function(e,t){var n="?"===e.charAt(0);e=n?e.substring(1):e,F[e]=t,D[t]=null,L[t]=n}),me(f.contents(),function(e){var t=F[Mn(Me(e))];t?(L[t]=!0,D[t]=D[t]||de.document.createDocumentFragment(),D[t].appendChild(e)):P.appendChild(e)}),me(L,function(e,t){if(!e)throw _n("reqslot","Required transclusion slot `{0}` was not filled.",t)}),D)D[T]&&(E=ge(D[T].childNodes),D[T]=re(g,E,t));P=ge(P.childNodes)}else P=ge(wt(k)).contents();f.empty(),(p=re(g,P,t,void 0,void 0,{needsNewScope:y.$$isolateScope||y.$$newScope})).$$slots=D}if(y.template)if(l=!0,ue("template",I,y,f),o=Ie((I=y).template)?y.template(f,w):y.template,o=Y(o),y.replace){if(h=y,P=mt(o)?[]:Tn(ce(y.templateNamespace,Oe(o))),k=P[0],1!==P.length||k.nodeType!==ze)throw _n("tplrt","Template for directive '{0}' must have exactly one root element. {1}",a,"");le(n,f,k);var B={$attr:{}},j=ee(k,[],B),H=e.splice(m+1,e.length-(m+1));(R||S)&&oe(j,R,S),e=e.concat(j).concat(H),se(w,B),v=e.length}else f.html(o);if(y.templateUrl)l=!0,ue("template",I,y,f),(I=y).replace&&(h=y),z=function(l,f,h,p,d,g,m,v){var y,b,k=[],w=f[0],x=l.shift(),$=be(x,{templateUrl:null,transclude:null,replace:null,$$originalDirective:x}),S=Ie(x.templateUrl)?x.templateUrl(f,h):x.templateUrl,_=x.templateNamespace;return f.empty(),K(S).then(function(e){var n,t;if(e=Y(e),x.replace){if(r=mt(e)?[]:Tn(ce(_,Oe(e))),n=r[0],1!==r.length||n.nodeType!==ze)throw _n("tplrt","Template for directive '{0}' must have exactly one root element. {1}",x.name,S);t={$attr:{}},le(p,f,n);var r=ee(n,[],t);$e(x.scope)&&oe(r,!0),l=r.concat(l),se(h,t)}else n=w,f.html(e);for(l.unshift($),y=ie(l,n,h,d,f,x,g,m,v),me(p,function(e,t){e===n&&(p[t]=f[0])}),b=Z(f[0].childNodes,d);k.length;){var i,a=k.shift(),o=k.shift(),s=k.shift(),u=k.shift(),c=f[0];a.$$destroyed||(o!==w&&(i=o.className,v.hasElementTranscludeDirective&&x.replace||(c=wt(n)),le(s,ge(o),c),G(ge(c),i)),u=y.transcludeOnThisElement?Q(a,y.transclude,u):u,y(b,a,c,p,u))}k=null}).catch(function(e){Re(e)&&q(e)}),function(e,t,n,r,i){var a=i;t.$$destroyed||(k?k.push(t,n,r,a):(y.transcludeOnThisElement&&(a=Q(t,y.transclude,i)),y(b,t,n,r,a)))}}(e.splice(m,e.length-m),f,w,n,c&&p,x,$,{controllerDirectives:_,newScopeDirective:S!==y&&S,newIsolateScopeDirective:R,templateDirective:I,nonTlbTranscludeDirective:u}),v=e.length;else if(y.compile)try{var N=y.compile(f,w,p),U=y.$$originalDirective||y;Ie(N)?V(null,Fe(U,N),b,C):N&&V(Fe(U,N.pre),Fe(U,N.post),b,C)}catch(e){q(e,Le(f))}y.terminal&&(z.terminal=!0,s=Math.max(s,y.priority))}return z.scope=S&&!0===S.scope,z.transcludeOnThisElement=c,z.templateOnThisElement=l,z.transclude=p,i.hasElementTranscludeDirective=A,z;function V(e,t,n,r){e&&((e=n?ne(e,n,r):e).require=y.require,e.directiveName=a,R!==y&&!y.$$isolateScope||(e=fe(e,{isolateScope:!0})),x.push(e)),t&&((t=n?ne(t,n,r):t).require=y.require,t.directiveName=a,R!==y&&!y.$$isolateScope||(t=fe(t,{isolateScope:!0})),$.push(t))}function z(e,t,n,r,o){var i,a,s,u,c,l,f,h,p,d,g;for(g in k===n?h=(p=w).$$element:p=new J(h=ge(n),w),c=t,R?u=t.$new(!0):S&&(c=t.$parent),o&&((f=function(e,t,n,r){var i;Ae(e)||(r=n,n=t,t=e,e=void 0);A&&(i=l);n=n||(A?h.parent():h);{if(!r)return o(e,t,i,n,b);var a=o.$$slots[r];if(a)return a(e,t,i,n,b);if(xe(a))throw _n("noslot",'No parent directive that requires a transclusion with slot name "{0}". Element: {1}',r,Le(h))}}).$$boundTransclude=o,f.isSlotFilled=function(e){return!!o.$$slots[e]}),_&&(l=function(e,t,n,r,i,a,o){var s,u=Ue();for(s in r){var c=r[s],l={$scope:c===o||c.$$isolateScope?i:a,$element:e,$attrs:t,$transclude:n},f=c.controller;"@"===f&&(f=t[c.name]);l=W(f,l,!0,c.controllerAs);u[c.name]=l,e.data("$"+c.name+"Controller",l.instance)}return u}(h,p,f,_,u,t,R)),R&&(X.$$addScopeInfo(h,u,!0,!(I&&(I===R||I===R.$$originalDirective))),X.$$addScopeClass(h,!0),u.$$isolateBindings=R.$$isolateBindings,(d=pe(t,p,u,u.$$isolateBindings,R)).removeWatches&&u.$on("$destroy",d.removeWatches)),l){var m=_[g],v=l[g],y=m.$$bindings.bindToController;v.instance=v(),h.data("$"+m.name+"Controller",v.instance),v.bindingInfo=pe(c,p,v.instance,y,m)}for(me(_,function(e,t){var n=e.require;e.bindToController&&!_e(n)&&$e(n)&&ve(l[t].instance,ae(t,n,h,l))}),me(l,function(e){var t=e.instance;if(Ie(t.$onChanges))try{t.$onChanges(e.bindingInfo.initialChanges)}catch(e){q(e)}if(Ie(t.$onInit))try{t.$onInit()}catch(e){q(e)}Ie(t.$doCheck)&&(c.$watch(function(){t.$doCheck()}),t.$doCheck()),Ie(t.$onDestroy)&&c.$on("$destroy",function(){t.$onDestroy()})}),i=0,a=x.length;i<a;i++)he(s=x[i],s.isolateScope?u:t,h,p,s.require&&ae(s.directiveName,s.require,h,l),f);var b=t;for(R&&(R.template||null===R.templateUrl)&&(b=u),e&&e(b,n.childNodes,void 0,o),i=$.length-1;0<=i;i--)he(s=$[i],s.isolateScope?u:t,h,p,s.require&&ae(s.directiveName,s.require,h,l),f);me(l,function(e){e=e.instance;Ie(e.$postLink)&&e.$postLink()})}}function ae(n,e,r,i){if(Se(e)){var a,t=e.match(f),o=e.substring(t[0].length),s=t[1]||t[3],u="?"===t[2];if("^^"===s?r=r.parent():a=(a=i&&i[o])&&a.instance,a||(t="$"+o+"Controller",a="^^"===s&&r[0]&&r[0].nodeType===We?null:s?r.inheritedData(t):r.data(t)),!a&&!u)throw _n("ctreq","Controller '{0}', required by directive '{1}', can't be found!",o,n)}else if(_e(e)){a=[];for(var c=0,l=e.length;c<l;c++)a[c]=ae(n,e[c],r,i)}else $e(e)&&(a={},me(e,function(e,t){a[t]=ae(n,e,r,i)}));return a||null}function oe(e,t,n){for(var r=0,i=e.length;r<i;r++)e[r]=be(e[r],{$$isolateScope:t,$$newScope:n})}function E(e,t,n,r,i,a,o){if(t!==i){var s=null;if(L.hasOwnProperty(t))for(var u=_.get(t+B),c=0,l=u.length;c<l;c++){var f,h=u[c];(xe(r)||r>h.priority)&&-1!==h.restrict.indexOf(n)&&((h=a?be(h,{$$start:a,$$end:o}):h).$$bindings||(f=h.$$bindings=function(e,t){var n={isolateScope:null,bindToController:null};if($e(e.scope)&&(!0===e.bindToController?(n.bindToController=p(e.scope,t,!0),n.isolateScope={}):n.isolateScope=p(e.scope,t,!1)),$e(e.bindToController)&&(n.bindToController=p(e.bindToController,t,!0)),n.bindToController&&!e.controller)throw _n("noctrl","Cannot bind to controller without directive '{0}'s controller.",t);return n}(h,h.name),$e(f.isolateScope)&&(h.$$isolateBindings=f.isolateScope)),e.push(h),s=h)}return s}}function se(n,r){var i=r.$attr,a=n.$attr;me(n,function(e,t){"$"!==t.charAt(0)&&(r[t]&&r[t]!==e&&(e.length?e+=("style"===t?";":" ")+r[t]:e=r[t]),n.$set(t,e,!0,i[t]))}),me(r,function(e,t){n.hasOwnProperty(t)||"$"===t.charAt(0)||(n[t]=e,"class"!==t&&"style"!==t&&(a[t]=i[t]))})}function P(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 ue(e,t,n,r){function i(e){return e?" (module: "+e+")":""}if(t)throw _n("multidir","Multiple directives [{0}{1}, {2}{3}] asking for {4} on: {5}",t.name,i(t.$$moduleName),n.name,i(n.$$moduleName),e,Le(r))}function ce(e,t){switch(e=S(e||"html")){case"svg":case"math":var n=de.document.createElement("div");return n.innerHTML="<"+e+">"+t+"</"+e+">",n.childNodes[0].childNodes;default:return t}}function F(e){return c(C.valueOf(e),"ng-prop-srcset")}function le(e,t,n){var r,i=t[0],a=t.length,o=i.parentNode;if(e)for(f=0,r=e.length;f<r;f++)if(e[f]===i){e[f++]=n;for(var s=f,u=s+a-1,c=e.length;s<c;s++,u++)u<c?e[s]=e[u]:delete e[s];e.length-=a-1,e.context===i&&(e.context=n);break}o&&o.replaceChild(n,i);for(var l=de.document.createDocumentFragment(),f=0;f<a;f++)l.appendChild(t[f]);for(ge.hasData(i)&&(ge.data(n,ge.data(i)),ge(i).off("$destroy")),ge.cleanData(l.querySelectorAll("*")),f=1;f<a;f++)delete t[f];t[0]=n,t.length=1}function fe(e,t){return ve(function(){return e.apply(null,arguments)},e,t)}function he(e,t,n,r,i,a){try{e(t,n,r,i,a)}catch(e){q(e,Le(n))}}function b(e,t){if(l)throw _n("missingattr","Attribute '{0}' of '{1}' is non-optional and must be set!",e,t)}function pe(h,p,d,e,g){var r,m=[],v={};function y(e,t,n){Ie(d.$onChanges)&&!Te(t,n)&&(a||(h.$$postDigest(o),a=[]),r||(r={},a.push(i)),r[e]&&(n=r[e].previousValue),r[e]=new An(n,t))}function i(){d.$onChanges(r),r=void 0}return me(e,function(e,n){var t,r=e.attrName,i=e.optional;switch(e.mode){case"@":i||z.call(p,r)||(b(r,g.name),d[n]=p[r]=void 0),t=p.$observe(r,function(e){var t;(Se(e)||Ce(e))&&(t=d[n],y(n,e,t),d[n]=e)}),p.$$observers[r].$$scope=h,Se(u=p[r])?d[n]=R(u)(h):Ce(u)&&(d[n]=u),v[n]=new An(Rn,d[n]),m.push(t);break;case"=":if(!z.call(p,r)){if(i)break;b(r,g.name),p[r]=void 0}if(i&&!p[r])break;var a,o=(a=I(p[r])).literal?Ee:Te,s=a.assign||function(){throw u=d[n]=a(h),_n("nonassign","Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",p[r],r,g.name)},u=d[n]=a(h),c=function(e){return o(e,d[n])||(o(e,u)?s(h,e=d[n]):d[n]=e),u=e};c.$stateful=!0,t=e.collection?h.$watchCollection(p[r],c):h.$watch(I(p[r],c),null,a.literal),m.push(t);break;case"<":if(!z.call(p,r)){if(i)break;b(r,g.name),p[r]=void 0}if(i&&!p[r])break;var l=(a=I(p[r])).literal,f=d[n]=a(h);v[n]=new An(Rn,d[n]),t=h[e.collection?"$watchCollection":"$watch"](a,function(e,t){if(t===e){if(t===f||l&&Ee(t,f))return;t=f}y(n,e,t),d[n]=e}),m.push(t);break;case"&":if(i||z.call(p,r)||b(r,g.name),(a=p.hasOwnProperty(r)?I(p[r]):ke)===ke&&i)break;d[n]=function(e){return a(h,e)}}}),{initialChanges:v,removeWatches:m.length&&function(){for(var e=0,t=m.length;e<t;++e)m[e]()}}}}]}function An(e,t){this.previousValue=e,this.currentValue=t}In.$inject=["$provide","$$sanitizeUriProvider"],An.prototype.isFirstChange=function(){return this.previousValue===Rn};var Cn=/^((?:x|data)[:\-_])/i,On=/[:\-_]+(.)/g;function Mn(e){return e.replace(Cn,"").replace(On,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+=(0<n.length?" ":"")+o}return n}function Tn(e){var t=(e=ge(e)).length;if(t<=1)return e;for(;t--;){var n=e[t];(n.nodeType===Ke||n.nodeType===qe&&""===n.nodeValue.trim())&&r.call(e,t,1)}return e}var En=$("$controller"),Pn=/^(\S+)(\s+as\s+([\w$]+))?$/;function Fn(){var c={};this.has=function(e){return c.hasOwnProperty(e)},this.register=function(e,t){He(e,"controller"),$e(e)?ve(c,e):c[e]=t},this.$get=["$injector",function(s){return function(t,n,e,r){var i,a;if(e=!0===e,r&&Se(r)&&(a=r),Se(t)){if(!(r=t.match(Pn)))throw En("ctrlfmt","Badly formed controller string '{0}'. Must match `__name__ as __id__` or `__name__`.",t);if(i=r[1],a=a||r[3],!(t=c.hasOwnProperty(i)?c[i]: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&&Ie(e)?Fe(a,e):e}(n.$scope,i,!0)))throw En("ctrlreg","The controller with the name '{0}' is not registered.",i);pe(t,i,!0)}if(e){var e=(_e(t)?t[t.length-1]:t).prototype,o=Object.create(e||null);return a&&u(n,a,o,i||t.name),ve(function(){var e=s.invoke(t,o,n,i);return e!==o&&($e(e)||Ie(e))&&(o=e,a&&u(n,a,o,i||t.name)),o},{instance:o,identifier:a})}return o=s.instantiate(t,n,i),a&&u(n,a,o,i||t.name),o};function u(e,t,n,r){if(!e||!$e(e.$scope))throw $("$controller")("noscp","Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",r,t);e.$scope[t]=n}}]}function Ln(){this.$get=["$window",function(e){return ge(e.document)}]}function Bn(){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 jn(){this.$get=["$log",function(n){return function(e,t){n.error.apply(n,arguments)}}]}function Hn(){this.$get=["$document",function(t){return function(e){return e?!e.nodeType&&e instanceof ge&&(e=e[0]):e=t[0].body,e.offsetWidth+1}}]}var Nn="application/json",Un={"Content-Type":Nn+";charset=utf-8"},Vn=/^\[|^\{(?!\{)/,zn={"[":/]$/,"{":/}$/},qn=/^\)]\}',?\n/,Kn=$("$http");function Wn(e){return $e(e)?M(e)?e.toISOString():K(e):e}function Jn(){this.$get=function(){return function(e){if(!e)return"";var n=[];return s(e,function(e,t){null===e||xe(e)||Ie(e)||(_e(e)?me(e,function(e){n.push(te(t)+"="+te(Wn(e)))}):n.push(te(t)+"="+te(Wn(e))))}),n.join("&")}}}function Gn(){this.$get=function(){return function(e){if(!e)return"";var t=[];return function n(e,r,i){_e(e)?me(e,function(e,t){n(e,r+"["+($e(e)?t:"")+"]")}):$e(e)&&!M(e)?s(e,function(e,t){n(e,r+(i?"":"[")+t+(i?"":"]"))}):(Ie(e)&&(e=e()),t.push(te(r)+"="+(null==e?"":te(Wn(e)))))}(e,"",!0),t.join("&")}}}function Yn(t,e){if(Se(t)){var n=t.replace(qn,"").trim();if(n){var r=e("Content-Type"),i=r&&0===r.indexOf(Nn);if(i||(r=(e=n).match(Vn))&&zn[r[0]].test(e))try{t=W(n)}catch(e){if(!i)return t;throw Kn("baddata",'Data must be a valid JSON object. Received: "{0}". Parse error: "{1}"',t,e)}}}return t}function Xn(e){var t,n=Ue();function r(e,t){e&&(n[e]=n[e]?n[e]+", "+t:t)}return Se(e)?me(e.split("\n"),function(e){t=e.indexOf(":"),r(S(Oe(e.substr(0,t))),Oe(e.substr(t+1)))}):$e(e)&&me(e,function(e,t){r(S(t),Oe(e))}),n}function Zn(t){var n;return function(e){if(n=n||Xn(t),e){e=n[S(e)];return e=void 0===e?null:e}return n}}function Qn(t,n,r,e){return Ie(e)?e(t,n,r):(me(e,function(e){t=e(t,n,r)}),t)}function er(e){return 200<=e&&e<300}function tr(){var w=this.defaults={transformResponse:[Yn],transformRequest:[function(e){return $e(e)&&"[object File]"!==v.call(e)&&"[object Blob]"!==v.call(e)&&"[object FormData]"!==v.call(e)?K(e):e}],headers:{common:{Accept:"application/json, text/plain, */*"},post:Ye(Un),put:Ye(Un),patch:Ye(Un)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer",jsonpCallbackParam:"callback"},x=!1;this.useApplyAsync=function(e){return I(e)?(x=!!e,this):x};var n=this.interceptors=[],r=this.xsrfWhitelistedOrigins=[];this.$get=["$browser","$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector","$sce",function(o,p,d,e,g,m,s,v){var y=e("$http");w.paramSerializer=Se(w.paramSerializer)?s.get(w.paramSerializer):w.paramSerializer;var u=[];me(n,function(e){u.unshift(Se(e)?s.get(e):s.invoke(e))});var t,b=(t=[bi].concat(r.map(wi)),function(e){e=wi(e);return t.some(xi.bind(null,e))});function k(e){if(!$e(e))throw $("$http")("badreq","Http request configuration must be an object. Received: {0}",e);if(!Se(v.valueOf(e.url)))throw $("$http")("badreq","Http request configuration url must be a string or a $sce trusted object. Received: {0}",e.url);var n=ve({method:"get",transformRequest:w.transformRequest,transformResponse:w.transformResponse,paramSerializer:w.paramSerializer,jsonpCallbackParam:w.jsonpCallbackParam},e);n.headers=function(e){var t,n,r,i=w.headers,a=ve({},e.headers);e:for(t in i=ve({},i.common,i[S(e.method)])){for(r in n=S(t),a)if(S(r)===n)continue e;a[t]=i[t]}return function(e,n){var r,i={};return me(e,function(e,t){Ie(e)?null!=(r=e(n))&&(i[t]=r):i[t]=e}),i}(a,Ye(e))}(e),n.method=c(n.method),n.paramSerializer=Se(n.paramSerializer)?s.get(n.paramSerializer):n.paramSerializer,o.$$incOutstandingRequestCount("$http");var t=[],r=[],e=m.resolve(n);return me(u,function(e){(e.request||e.requestError)&&t.unshift(e.request,e.requestError),(e.response||e.responseError)&&r.push(e.response,e.responseError)}),e=i(e,t),e=(e=i(e=e.then(function(e){var n=e.headers,t=Qn(e.data,Zn(n),void 0,e.transformRequest);xe(t)&&me(n,function(e,t){"content-type"===S(t)&&delete n[t]});xe(e.withCredentials)&&!xe(w.withCredentials)&&(e.withCredentials=w.withCredentials);return function(a,e){var o,s=m.defer(),t=s.promise,n=a.headers,r="jsonp"===S(a.method),u=a.url;r?u=v.getTrustedResourceUrl(u):Se(u)||(u=v.valueOf(u));u=function(e,t){0<t.length&&(e+=(-1===e.indexOf("?")?"?":"&")+t);return e}(u,a.paramSerializer(a.params)),r&&(u=function(n,r){var e=n.split("?");if(2<e.length)throw Kn("badjsonp",'Illegal use more than one "?", in url, "{1}"',n);return me(Q(e[1]),function(e,t){if("JSON_CALLBACK"===e)throw Kn("badjsonp",'Illegal use of JSON_CALLBACK in url, "{0}"',n);if(t===r)throw Kn("badjsonp",'Illegal use of callback param, "{0}", in url, "{1}"',r,n)}),n+=(-1===n.indexOf("?")?"?":"&")+r+"=JSON_CALLBACK"}(u,a.jsonpCallbackParam));k.pendingRequests.push(a),t.then(h,h),!a.cache&&!w.cache||!1===a.cache||"GET"!==a.method&&"JSONP"!==a.method||(o=$e(a.cache)?a.cache:$e(w.cache)?w.cache:y);o&&(I(i=o.get(u))?P(i)?i.then(f,f):_e(i)?l(i[1],i[0],Ye(i[2]),i[3],i[4]):l(i,200,{},"OK","complete"):o.put(u,t));{var i;xe(i)&&((i=b(a.url)?d()[a.xsrfCookieName||w.xsrfCookieName]:void 0)&&(n[a.xsrfHeaderName||w.xsrfHeaderName]=i),p(a.method,u,e,function(e,t,n,r,i){o&&(er(e)?o.put(u,[e,t,Xn(n),r,i]):o.remove(u));function a(){l(t,e,n,r,i)}x?g.$applyAsync(a):(a(),g.$$phase||g.$apply())},n,a.timeout,a.withCredentials,a.responseType,c(a.eventHandlers),c(a.uploadEventHandlers)))}return t;function c(e){if(e){var t={};return me(e,function(n,e){t[e]=function(e){function t(){n(e)}x?g.$applyAsync(t):g.$$phase?t():g.$apply(t)}}),t}}function l(e,t,n,r,i){(er(t=-1<=t?t:0)?s.resolve:s.reject)({data:e,status:t,headers:Zn(n),config:a,statusText:r,xhrStatus:i})}function f(e){l(e.data,e.status,Ye(e.headers()),e.statusText,e.xhrStatus)}function h(){var e=k.pendingRequests.indexOf(a);-1!==e&&k.pendingRequests.splice(e,1)}}(e,t).then(a,a)}),r)).finally(function(){o.$$completeOutstandingRequest(ke,"$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 a(e){var t=ve({},e);return t.data=Qn(e.data,e.headers,e.status,n.transformResponse),er(e.status)?t:m.reject(t)}}return k.pendingRequests=[],function(){me(arguments,function(n){k[n]=function(e,t){return k(ve({},t||{},{method:n,url:e}))}})}("get","delete","head","jsonp"),function(){me(arguments,function(r){k[r]=function(e,t,n){return k(ve({},n||{},{method:r,url:e,data:t}))}})}("post","put","patch"),k.defaults=w,k}]}function nr(){this.$get=function(){return function(){return new de.XMLHttpRequest}}}function rr(){this.$get=["$browser","$jsonpCallbacks","$document","$xhrFactory",function(e,t,n,r){return y=r,b=(v=e).defer,k=t,w=n[0],function(e,r,t,i,n,a,o,s,u,c){if(r=r||v.url(),"jsonp"===S(e))var l=k.createCallback(r),f=function(e,r,i){e=e.replace("JSON_CALLBACK",r);var a=w.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),w.body.removeChild(a),a=null;var t=-1,n="unknown";e&&(n=(e="load"===e.type&&!k.wasCalled(r)?{type:"error"}:e).type,t="error"===e.type?404:200),i&&i(t,n)},a.addEventListener("load",o),a.addEventListener("error",o),w.body.appendChild(a),o}(r,l,function(e,t){var n=200===e&&k.getResponse(l);m(i,e,n,"",t,"complete"),k.removeCallback(l)});else{var h=y(e,r),p=!1;h.open(e,r,!0),me(n,function(e,t){I(e)&&h.setRequestHeader(t,e)}),h.onload=function(){var e=h.statusText||"",t="response"in h?h.response:h.responseText,n=1223===h.status?204:h.status;0===n&&(n=t?200:"file"===wi(r).protocol?404:0),m(i,n,t,h.getAllResponseHeaders(),e,"complete")};if(h.onerror=function(){m(i,-1,null,null,"","error")},h.ontimeout=function(){m(i,-1,null,null,"","timeout")},h.onabort=function(){m(i,-1,null,null,"",p?"timeout":"abort")},me(u,function(e,t){h.addEventListener(t,e)}),me(c,function(e,t){h.upload.addEventListener(t,e)}),o&&(h.withCredentials=!0),s)try{h.responseType=s}catch(e){if("json"!==s)throw e}h.send(xe(t)?null:t)}var d;function g(e){p="timeout"===e,f&&f(),h&&h.abort()}function m(e,t,n,r,i,a){I(d)&&b.cancel(d),f=h=null,e(t,n,r,i,a)}0<a?d=b(function(){g("timeout")},a):P(a)&&a.then(function(){g(I(a.$$timeoutId)?"timeout":"abort")})};var v,y,b,k,w}]}var ir=b.$interpolateMinErr=$("$interpolate");function ar(){var S="{{",_="}}";this.startSymbol=function(e){return e?(S=e,this):S},this.endSymbol=function(e){return e?(_=e,this):_},this.$get=["$parse","$exceptionHandler","$sce",function(v,y,b){var k=S.length,w=_.length,t=new RegExp(S.replace(/./g,e),"g"),n=new RegExp(_.replace(/./g,e),"g");function e(e){return"\\\\\\"+e}function x(e){return e.replace(t,S).replace(n,_)}function $(e,t,n,r){var i=e.$watch(function(e){return i(),r(e)},t,n);return i}function r(i,e,r,a){var o=r===b.URL||r===b.MEDIA_URL;if(!i.length||-1===i.indexOf(S)){if(e)return;var t=x(i),t=R(t=o?b.getTrusted(r,t):t);return t.exp=i,t.expressions=[],t.$$watchDelegate=$,t}a=!!a;for(var n,s,u=0,c=[],l=i.length,f=[],h=[];u<l;){if(-1===(s=i.indexOf(S,u))||-1===(n=i.indexOf(_,s+k))){u!==l&&f.push(x(i.substring(u)));break}u!==s&&f.push(x(i.substring(u,s))),s=i.substring(s+k,n),c.push(s),u=n+w,h.push(f.length),f.push("")}var p=1===f.length&&1===h.length,d=o&&p?void 0:function(e){try{return e=r&&!o?b.getTrusted(r,e):b.valueOf(e),a&&!I(e)?e:Ve(e)}catch(e){y(ir.interr(i,e))}},g=c.map(function(e){return v(e,d)});if(!e||c.length){var m=function(e){for(var t=0,n=c.length;t<n;t++){if(a&&xe(e[t]))return;f[h[t]]=e[t]}return o?b.getTrusted(r,p?f[0]:f.join("")):(r&&1<f.length&&ir.throwNoconcat(i),f.join(""))};return ve(function(e){var t=0,n=c.length,r=new Array(n);try{for(;t<n;t++)r[t]=g[t](e);return m(r)}catch(e){y(ir.interr(i,e))}},{exp:i,expressions:c,$$watchDelegate:function(r,i){var a;return r.$watchGroup(g,function(e,t){var n=m(e);i.call(this,n,e!==t?a:n,r),a=n})}})}}return r.startSymbol=function(){return S},r.endSymbol=function(){return _},r}]}ir.throwNoconcat=function(e){throw ir("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)},ir.interr=function(e,t){return ir("interr","Can't interpolate: {0}\n{1}",e,t.toString())};var or=$("$interval");function sr(){this.$get=["$$intervalFactory","$window",function(e,r){function n(e){r.clearInterval(e),delete i[e]}var i={},e=e(function(e,t,n){t=r.setInterval(e,t);return i[t]=n,t},n);return e.cancel=function(e){if(!e)return!1;if(!e.hasOwnProperty("$$intervalId"))throw or("badprom","`$interval.cancel()` called with a promise that was not generated by `$interval()`.");if(!i.hasOwnProperty(e.$$intervalId))return!1;var t=e.$$intervalId,e=i[t];return Zr(e.promise),e.reject("canceled"),n(t),!0},e}]}function ur(){this.$get=["$browser","$q","$$q","$rootScope",function(p,d,g,m){return function(f,h){return function(e,t,n,r){var i=4<arguments.length,a=i?Pe(arguments,4):[],o=0,s=I(r)&&!r,u=(s?g:d).defer(),c=u.promise;function l(){i?e.apply(null,a):e(o)}return n=I(n)?n:0,c.$$intervalId=f(function(){s?p.defer(l):m.$evalAsync(l),u.notify(o++),0<n&&n<=o&&(u.resolve(o),h(c.$$intervalId)),s||m.$apply()},t,u,s),c}}}]}function cr(){this.$get=function(){var a=b.callbacks,o={};return{createCallback:function(e){var t,n="_"+(a.$$counter++).toString(36),r="angular.callbacks."+n,i=((t=function(e){t.data=e,t.called=!0}).id=n,t);return o[r]=a[n]=i,r},wasCalled:function(e){return o[e].called},getResponse:function(e){return o[e].data},removeCallback:function(e){var t=o[e];delete a[t.id],delete o[e]}}}}var lr=/^([^?#]*)(\?([^#]*))?(#(.*))?$/,fr={http:80,https:443,ftp:21},hr=$("$location");function pr(e,t,n){var r,t=(r=[],me(t,function(e,t){_e(e)?me(e,function(e){r.push(te(t,!0)+(!0===e?"":"="+te(e,!0)))}):r.push(te(t,!0)+(!0===e?"":"="+te(e,!0)))}),r.length?r.join("&"):""),n=n?"#"+ee(n):"";return function(e){for(var t=e.split("/"),n=t.length;n--;)t[n]=ee(t[n].replace(/%2F/g,"/"));return t.join("/")}(e)+(t?"?"+t:"")+n}function dr(e,t){e=wi(e);t.$$protocol=e.protocol,t.$$host=e.hostname,t.$$port=w(e.port)||fr[e.protocol]||null}var gr=/^\s*[\\/]{2,}/;function mr(e,t,n){if(gr.test(e))throw hr("badpath",'Invalid url "{0}".',e);var r="/"!==e.charAt(0),e=wi(e=r?"/"+e:e),r=r&&"/"===e.pathname.charAt(0)?e.pathname.substring(1):e.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("/")}(r,n),t.$$search=Q(e.search),t.$$hash=decodeURIComponent(e.hash),t.$$path&&"/"!==t.$$path.charAt(0)&&(t.$$path="/"+t.$$path)}function vr(e,t){return e.slice(0,t.length)===t}function yr(e,t){if(vr(t,e))return t.substr(e.length)}function br(e){var t=e.indexOf("#");return-1===t?e:e.substr(0,t)}function kr(r,i,a){this.$$html5=!0,a=a||"",dr(r,this),this.$$parse=function(e){var t=yr(i,e);if(!Se(t))throw hr("ipthprfx",'Invalid url "{0}", missing path prefix "{1}".',e,i);mr(t,this,!0),this.$$path||(this.$$path="/"),this.$$compose()},this.$$normalizeUrl=function(e){return i+e.substr(1)},this.$$parseLinkUrl=function(e,t){return t&&"#"===t[0]?(this.hash(t.slice(1)),!0):(I(t=yr(r,e))?(n=t,n=a&&I(t=yr(a,t))?i+(yr("/",t)||t):r+n):I(t=yr(i,e))?n=i+t:i===e+"/"&&(n=i),n&&this.$$parse(n),!!n);var n}}function wr(r,i,a){dr(r,this),this.$$parse=function(e){var t,n=yr(r,e)||yr(i,e);xe(n)||"#"!==n.charAt(0)?this.$$html5?t=n:(t="",xe(n)&&(r=e,this.replace())):xe(t=yr(a,n))&&(t=n),mr(t,this,!1),this.$$path=function(e,t,n){var r=/^\/[A-Z]:(\/.*)/;vr(t,n)&&(t=t.replace(n,""));if(r.exec(t))return e;return(r=r.exec(e))?r[1]:e}(this.$$path,t,r),this.$$compose()},this.$$normalizeUrl=function(e){return r+(e?a+e:"")},this.$$parseLinkUrl=function(e,t){return br(r)===br(e)&&(this.$$parse(e),!0)}}function xr(r,i,a){this.$$html5=!0,wr.apply(this,arguments),this.$$parseLinkUrl=function(e,t){return t&&"#"===t[0]?(this.hash(t.slice(1)),!0):(r===br(e)?n=e:(t=yr(i,e))?n=r+a+t:i===e+"/"&&(n=i),n&&this.$$parse(n),!!n);var n},this.$$normalizeUrl=function(e){return r+a+e}}var $r={$$absUrl:"",$$html5:!1,$$replace:!1,$$compose:function(){this.$$url=pr(this.$$path,this.$$search,this.$$hash),this.$$absUrl=this.$$normalizeUrl(this.$$url),this.$$urlUpdatedByLocation=!0},absUrl:Sr("$$absUrl"),url:function(e){if(xe(e))return this.$$url;var t=lr.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:_r("$$path",function(e){return"/"===(e=null!==e?e.toString():"").charAt(0)?e:"/"+e}),search:function(n,e){switch(arguments.length){case 0:return this.$$search;case 1:if(Se(n)||O(n))n=n.toString(),this.$$search=Q(n);else{if(!$e(n))throw hr("isrcharg","The first argument of the `$location#search()` call must be a string or an object.");me(n=H(n,{}),function(e,t){null==e&&delete n[t]}),this.$$search=n}break;default:xe(e)||null===e?delete this.$$search[n]:this.$$search[n]=e}return this.$$compose(),this},hash:_r("$$hash",function(e){return null!==e?e.toString():""}),replace:function(){return this.$$replace=!0,this}};function Sr(e){return function(){return this[e]}}function _r(t,n){return function(e){return xe(e)?this[t]:(this[t]=n(e),this.$$compose(),this)}}function Rr(){var g="!",m={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(e){return I(e)?(g=e,this):g},this.html5Mode=function(e){return Ce(e)?(m.enabled=e,this):$e(e)?(Ce(e.enabled)&&(m.enabled=e.enabled),Ce(e.requireBase)&&(m.requireBase=e.requireBase),(Ce(e.rewriteLinks)||Se(e.rewriteLinks))&&(m.rewriteLinks=e.rewriteLinks),this):m},this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(o,s,u,i,e){var t,n,r=s.baseHref(),a=s.url();if(m.enabled){if(!r&&m.requireBase)throw hr("nobase","$location in HTML5 mode requires a <base> tag to be present!");n=a.substring(0,a.indexOf("/",a.indexOf("//")+2))+(r||"/"),t=u.history?kr:xr}else n=br(a),t=wr;var c,l=n.substr(0,br(n).lastIndexOf("/")+1);(c=new t(n,l,"#"+g)).$$parseLinkUrl(a,a),c.$$state=s.state();var f=/^\s*(javascript|mailto):/i;function h(e,t,n){var r=c.url(),i=c.$$state;try{s.url(e,t,n),c.$$state=s.state()}catch(e){throw c.url(r),c.$$state=i,e}}i.on("click",function(e){var t=m.rewriteLinks;if(t&&!e.ctrlKey&&!e.metaKey&&!e.shiftKey&&2!==e.which&&2!==e.button){for(var n,r=ge(e.target);"a"!==Me(r[0]);)if(r[0]===i[0]||!(r=r.parent())[0])return;Se(t)&&xe(r.attr(t))||(n=r.prop("href"),t=r.attr("href")||r.attr("xlink:href"),$e(n)&&"[object SVGAnimatedString]"===n.toString()&&(n=wi(n.animVal).href),f.test(n)||!n||r.attr("target")||e.isDefaultPrevented()||c.$$parseLinkUrl(n,t)&&(e.preventDefault(),c.absUrl()!==s.url()&&o.$apply()))}}),c.absUrl()!==a&&s.url(c.absUrl(),!0);var p=!0;return s.onUrlChange(function(r,i){vr(r,l)?(o.$evalAsync(function(){var e,t=c.absUrl(),n=c.$$state;c.$$parse(r),c.$$state=i,e=o.$broadcast("$locationChangeStart",r,t,i,n).defaultPrevented,c.absUrl()===r&&(e?(c.$$parse(t),c.$$state=n,h(t,!1,n)):(p=!1,d(t,n)))}),o.$$phase||o.$digest()):e.location.href=r}),o.$watch(function(){var n,r,i,a,e,t;(p||c.$$urlUpdatedByLocation)&&(c.$$urlUpdatedByLocation=!1,n=s.url(),t=c.absUrl(),r=s.state(),i=c.$$replace,a=!((e=n)===(t=t)||wi(e).href===wi(t).href)||c.$$html5&&u.history&&r!==c.$$state,(p||a)&&(p=!1,o.$evalAsync(function(){var e=c.absUrl(),t=o.$broadcast("$locationChangeStart",e,n,c.$$state,r).defaultPrevented;c.absUrl()===e&&(t?(c.$$parse(n),c.$$state=r):(a&&h(e,i,r===c.$$state?null:c.$$state),d(n,r)))}))),c.$$replace=!1}),c;function d(e,t){o.$broadcast("$locationChangeSuccess",c.absUrl(),e,c.$$state,t)}}]}function Ir(){var r=!0,a=this;this.debugEnabled=function(e){return I(e)?(r=e,this):r},this.$get=["$window",function(t){var e,i=ye||/\bEdge\//.test(t.navigator&&t.navigator.userAgent);return{log:n("log"),info:n("info"),warn:n("warn"),error:n("error"),debug:(e=n("debug"),function(){r&&e.apply(a,arguments)})};function n(e){var n=t.console||{},r=n[e]||n.log||ke;return function(){var t=[];return me(arguments,function(e){t.push((Re(e=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.prototype.apply.call(r,n,t)}}}]}me([xr,wr,kr],function(t){t.prototype=Object.create($r),t.prototype.state=function(e){if(!arguments.length)return this.$$state;if(t!==kr||!this.$$html5)throw hr("nostate","History API state support is available only in HTML5 mode and only in browsers supporting HTML5 History API");return this.$$state=xe(e)?null:e,this.$$urlUpdatedByLocation=!0,this}});var Ar=$("$parse"),Cr={}.constructor.prototype.valueOf;function Or(e){return e+""}var Mr=Ue();me("+ - * / % === !== == != < > <= >= && || ! = |".split(" "),function(e){Mr[e]=!0});var Dr={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},Tr=function(e){this.options=e};Tr.prototype={constructor:Tr,lex:function(e){for(this.text=e,this.index=0,this.tokens=[];this.index<this.text.length;){var t,n,r,i,a,o=this.text.charAt(this.index);'"'===o||"'"===o?this.readString(o):this.isNumber(o)||"."===o&&this.isNumber(this.peek())?this.readNumber():this.isIdentifierStart(this.peekMultichar())?this.readIdent():this.is(o,"(){}[].,;:?")?(this.tokens.push({index:this.index,text:o}),this.index++):this.isWhitespace(o)?this.index++:(n=(t=o+this.peek())+this.peek(2),r=Mr[o],i=Mr[t],a=Mr[n],r||i||a?(this.tokens.push({index:this.index,text:o=a?n:i?t:o,operator:!0}),this.index+=o.length):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){e=e||1;return this.index+e<this.text.length&&this.text.charAt(this.index+e)},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 55296<=n&&n<=56319&&56320<=r&&r<=57343?e+t:e},isExpOperator:function(e){return"-"===e||"+"===e||this.isNumber(e)},throwError:function(e,t,n){n=n||this.index;n=I(t)?"s "+t+"-"+this.index+" ["+this.text.substring(t,n)+"]":" "+n;throw Ar("lexerr","Lexer Error: {0} at column{1} in expression [{2}].",e,n,this.text)},readNumber:function(){for(var e="",t=this.index;this.index<this.text.length;){var n=S(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,o=this.text.charAt(this.index);if(r+=o,i)"u"===o?((a=this.text.substring(this.index+1,this.index+5)).match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+a+"]"),this.index+=4,n+=String.fromCharCode(parseInt(a,16))):n+=Dr[o]||o,i=!1;else if("\\"===o)i=!0;else{if(o===e)return this.index++,void this.tokens.push({index:t,text:r,constant:!0,value:n});n+=o}this.index++}this.throwError("Unterminated quote",t)}};var Er=function(e,t){this.lexer=e,this.options=t};function Pr(e,t){return void 0!==e?e:t}function Fr(e,t){return void 0===e?t:void 0===t?e:e+t}Er.Program="Program",Er.ExpressionStatement="ExpressionStatement",Er.AssignmentExpression="AssignmentExpression",Er.ConditionalExpression="ConditionalExpression",Er.LogicalExpression="LogicalExpression",Er.BinaryExpression="BinaryExpression",Er.UnaryExpression="UnaryExpression",Er.CallExpression="CallExpression",Er.MemberExpression="MemberExpression",Er.Identifier="Identifier",Er.Literal="Literal",Er.ArrayExpression="ArrayExpression",Er.Property="Property",Er.ObjectExpression="ObjectExpression",Er.ThisExpression="ThisExpression",Er.LocalsExpression="LocalsExpression",Er.NGValueParameter="NGValueParameter",Er.prototype={ast:function(e){this.text=e,this.tokens=this.lexer.lex(e);e=this.program();return 0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]),e},program:function(){for(var e=[];;)if(0<this.tokens.length&&!this.peek("}",")",";","]")&&e.push(this.expressionStatement()),!this.expect(";"))return{type:Er.Program,body:e}},expressionStatement:function(){return{type:Er.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(!Nr(e))throw Ar("lval","Trying to assign a value to a non l-value");e={type:Er.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:Er.ConditionalExpression,test:n,alternate:e,consequent:t}):n},logicalOR:function(){for(var e=this.logicalAND();this.expect("||");)e={type:Er.LogicalExpression,operator:"||",left:e,right:this.logicalAND()};return e},logicalAND:function(){for(var e=this.equality();this.expect("&&");)e={type:Er.LogicalExpression,operator:"&&",left:e,right:this.equality()};return e},equality:function(){for(var e,t=this.relational();e=this.expect("==","!=","===","!==");)t={type:Er.BinaryExpression,operator:e.text,left:t,right:this.relational()};return t},relational:function(){for(var e,t=this.additive();e=this.expect("<",">","<=",">=");)t={type:Er.BinaryExpression,operator:e.text,left:t,right:this.additive()};return t},additive:function(){for(var e,t=this.multiplicative();e=this.expect("+","-");)t={type:Er.BinaryExpression,operator:e.text,left:t,right:this.multiplicative()};return t},multiplicative:function(){for(var e,t=this.unary();e=this.expect("*","/","%");)t={type:Er.BinaryExpression,operator:e.text,left:t,right:this.unary()};return t},unary:function(){var e;return(e=this.expect("+","-","!"))?{type:Er.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=H(this.selfReferential[this.consume().text]):this.options.literals.hasOwnProperty(this.peek().text)?e={type:Er.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:Er.CallExpression,callee:e,arguments:this.parseArguments()},this.consume(")")):"["===t.text?(e={type:Er.MemberExpression,object:e,property:this.expression(),computed:!0},this.consume("]")):"."===t.text?e={type:Er.MemberExpression,object:e,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return e},filter:function(e){for(var t=[e],e={type:Er.CallExpression,callee:this.identifier(),arguments:t,filter:!0};this.expect(":");)t.push(this.expression());return e},parseArguments:function(){var e=[];if(")"!==this.peekToken().text)for(;e.push(this.filterChain()),this.expect(","););return e},identifier:function(){var e=this.consume();return e.identifier||this.throwError("is not a valid identifier",e),{type:Er.Identifier,name:e.text}},constant:function(){return{type:Er.Literal,value:this.consume().value}},arrayDeclaration:function(){var e=[];if("]"!==this.peekToken().text)for(;!this.peek("]")&&(e.push(this.expression()),this.expect(",")););return this.consume("]"),{type:Er.ArrayExpression,elements:e}},object:function(){var e,t=[];if("}"!==this.peekToken().text)for(;!this.peek("}")&&(e={type:Er.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),this.expect(",")););return this.consume("}"),{type:Er.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],e=a.text;if(e===t||e===n||e===r||e===i||!t&&!n&&!r&&!i)return a}return!1},expect:function(e,t,n,r){r=this.peek(e,t,n,r);return!!r&&(this.tokens.shift(),r)},selfReferential:{this:{type:Er.ThisExpression},$locals:{type:Er.LocalsExpression}}};var Lr=1,Br=2;function jr(e,t,n){var r,i,a,o=e.isPure=function(e,t){switch(e.type){case Er.MemberExpression:if(e.computed)return!1;break;case Er.UnaryExpression:return Lr;case Er.BinaryExpression:return"+"!==e.operator&&Lr;case Er.CallExpression:return!1}return void 0===t?Br:t}(e,n);switch(e.type){case Er.Program:r=!0,me(e.body,function(e){jr(e.expression,t,o),r=r&&e.expression.constant}),e.constant=r;break;case Er.Literal:e.constant=!0,e.toWatch=[];break;case Er.UnaryExpression:jr(e.argument,t,o),e.constant=e.argument.constant,e.toWatch=e.argument.toWatch;break;case Er.BinaryExpression:jr(e.left,t,o),jr(e.right,t,o),e.constant=e.left.constant&&e.right.constant,e.toWatch=e.left.toWatch.concat(e.right.toWatch);break;case Er.LogicalExpression:jr(e.left,t,o),jr(e.right,t,o),e.constant=e.left.constant&&e.right.constant,e.toWatch=e.constant?[]:[e];break;case Er.ConditionalExpression:jr(e.test,t,o),jr(e.alternate,t,o),jr(e.consequent,t,o),e.constant=e.test.constant&&e.alternate.constant&&e.consequent.constant,e.toWatch=e.constant?[]:[e];break;case Er.Identifier:e.constant=!1,e.toWatch=[e];break;case Er.MemberExpression:jr(e.object,t,o),e.computed&&jr(e.property,t,o),e.constant=e.object.constant&&(!e.computed||e.property.constant),e.toWatch=e.constant?[]:[e];break;case Er.CallExpression:a=!!e.filter&&(a=e.callee.name,!t(a).$stateful),r=a,i=[],me(e.arguments,function(e){jr(e,t,o),r=r&&e.constant,i.push.apply(i,e.toWatch)}),e.constant=r,e.toWatch=a?i:[e];break;case Er.AssignmentExpression:jr(e.left,t,o),jr(e.right,t,o),e.constant=e.left.constant&&e.right.constant,e.toWatch=[e];break;case Er.ArrayExpression:r=!0,i=[],me(e.elements,function(e){jr(e,t,o),r=r&&e.constant,i.push.apply(i,e.toWatch)}),e.constant=r,e.toWatch=i;break;case Er.ObjectExpression:r=!0,i=[],me(e.properties,function(e){jr(e.value,t,o),r=r&&e.value.constant,i.push.apply(i,e.value.toWatch),e.computed&&(jr(e.key,t,!1),r=r&&e.key.constant,i.push.apply(i,e.key.toWatch))}),e.constant=r,e.toWatch=i;break;case Er.ThisExpression:case Er.LocalsExpression:e.constant=!1,e.toWatch=[]}}function Hr(e){if(1===e.length){var t=e[0].expression,e=t.toWatch;return 1!==e.length||e[0]!==t?e:void 0}}function Nr(e){return e.type===Er.Identifier||e.type===Er.MemberExpression}function Ur(e){if(1===e.body.length&&Nr(e.body[0].expression))return{type:Er.AssignmentExpression,left:e.body[0].expression,right:{type:Er.NGValueParameter},operator:"="}}function Vr(e){this.$filter=e}function zr(e){this.$filter=e}function qr(e,t,n){this.ast=new Er(e,n),this.astCompiler=new(n.csp?zr:Vr)(t)}function Kr(e){return Ie(e.valueOf)?e.valueOf():Cr.call(e)}function Wr(){var s,u,c=Ue(),l={true:!0,false:!1,null:null,undefined:void 0};this.addLiteral=function(e,t){l[e]=t},this.setIdentifierFns=function(e,t){return s=e,u=t,this},this.$get=["$filter",function(i){var a={csp:N().noUnsafeEval,literals:H(l),isIdentifierStart:Ie(s)&&s,isIdentifierContinue:Ie(u)&&u};return e.$$getAst=function(e){return new qr(new Tr(a),i,a).getAst(e).ast},e;function e(e,t){var n,r;switch(typeof e){case"string":return e=e.trim(),(r=c[n=e])||(r=new qr(new Tr(a),i,a).parse(e),c[n]=d(r)),o(r,t);case"function":return o(e,t);default:return o(ke,t)}}function h(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 t(e,t,n,a,r){var o;if(1===(s=a.inputs).length){var i=h,s=s[0];return e.$watch(function(e){var t=s(e);return h(t,i,s.isPure)||(o=a(e,void 0,void 0,[t]),i=t&&Kr(t)),o},t,n,r)}for(var u=[],c=[],l=0,f=s.length;l<f;l++)u[l]=h,c[l]=null;return e.$watch(function(e){for(var t=!1,n=0,r=s.length;n<r;n++){var i=s[n](e);(t=t||!h(i,u[n],s[n].isPure))&&(c[n]=i,u[n]=i&&Kr(i))}return o=t?a(e,void 0,void 0,c):o},t,n,r)}function n(e,t,n,r,i){var a,o,s=r.literal?p:I,u=r.$$intercepted||r,c=r.$$interceptor||we,l=r.inputs&&!u.inputs;return h.literal=r.literal,h.constant=r.constant,h.inputs=r.inputs,d(h),a=e.$watch(h,t,n,i);function f(){s(o)&&a()}function h(e,t,n,r){return o=l&&r?r[0]:u(e,t,n,r),s(o)&&e.$$postDigest(f),c(o)}}function p(e){var t=!0;return me(e,function(e){I(e)||(t=!1)}),t}function r(e,t,n,r){var i=e.$watch(function(e){return i(),r(e)},t,n);return i}function d(e){return e.constant?e.$$watchDelegate=r:e.oneTime?e.$$watchDelegate=n:e.inputs&&(e.$$watchDelegate=t),e}function o(i,a){if(!a)return i;function e(e){return n(t(e))}var t,n;i.$$interceptor&&(t=i.$$interceptor,n=a,e.$stateful=t.$stateful||n.$stateful,e.$$pure=t.$$pure&&n.$$pure,a=e,i=i.$$intercepted);function r(e,t,n,r){return r=o&&r?r[0]:i(e,t,n,r),a(r)}var o=!1;return r.$$intercepted=i,r.$$interceptor=a,r.literal=i.literal,r.oneTime=i.oneTime,r.constant=i.constant,a.$stateful||(o=!i.inputs,r.inputs=i.inputs||[i],a.$$pure||(r.inputs=r.inputs.map(function(t){return t.isPure===Br?function(e){return t(e)}:t}))),d(r)}}]}function Jr(){var n=!0;this.$get=["$rootScope","$exceptionHandler",function(t,e){return Yr(function(e){t.$evalAsync(e)},e,n)}],this.errorOnUnhandledRejections=function(e){return I(e)?(n=e,this):n}}function Gr(){var n=!0;this.$get=["$browser","$exceptionHandler",function(t,e){return Yr(function(e){t.defer(e)},e,n)}],this.errorOnUnhandledRejections=function(e){return I(e)?(n=e,this):n}}function Yr(o,s,u){var n=$("$q",TypeError),c=0,r=[];function i(){return new e}function e(){var t=this.promise=new a;this.resolve=function(e){h(t,e)},this.reject=function(e){p(t,e)},this.notify=function(e){g(t,e)}}function a(){this.$$state={status:0}}function l(){for(;!c&&r.length;){var e,t=r.shift();t.pur||(Xr(t),e="Possibly unhandled rejection: "+Xe(t.value),Re(t.value)?s(t.value,e):s(e))}}function f(e){!u||e.pending||2!==e.status||e.pur||(0===c&&0===r.length&&o(l),r.push(e)),!e.processScheduled&&e.pending&&(e.processScheduled=!0,++c,o(function(){!function(e){var t,n,r=e.pending;e.processScheduled=!1,e.pending=void 0;try{for(var i=0,a=r.length;i<a;++i){Xr(e),n=r[i][0],t=r[i][e.status];try{Ie(t)?h(n,t(e.value)):(1===e.status?h:p)(n,e.value)}catch(e){p(n,e),e&&!0===e.$$passToExceptionHandler&&s(e)}}}finally{--c,u&&0===c&&o(l)}}(e)}))}function h(e,t){e.$$state.status||(t===e?d(e,n("qcycle","Expected promise to be resolved with value other than itself '{0}'",t)):function t(n,e){var r;var i=!1;try{($e(e)||Ie(e))&&(r=e.then),Ie(r)?(n.$$state.status=-1,r.call(e,a,o,s)):(n.$$state.value=e,n.$$state.status=1,f(n.$$state))}catch(e){o(e)}function a(e){i||(i=!0,t(n,e))}function o(e){i||(i=!0,d(n,e))}function s(e){g(n,e)}}(e,t))}function p(e,t){e.$$state.status||d(e,t)}function d(e,t){e.$$state.value=t,e.$$state.status=2,f(e.$$state)}function g(e,i){var a=e.$$state.pending;e.$$state.status<=0&&a&&a.length&&o(function(){for(var e,t,n=0,r=a.length;n<r;n++){t=a[n][0],e=a[n][3];try{g(t,Ie(e)?e(i):i)}catch(e){s(e)}}})}function m(e){var t=new a;return p(t,e),t}function v(e,t,n){var r=null;try{Ie(n)&&(r=n())}catch(e){return m(e)}return P(r)?r.then(function(){return t(e)},m):t(e)}function y(e,t,n,r){var i=new a;return h(i,e),i.then(t,n,r)}ve(a.prototype,{then:function(e,t,n){if(xe(e)&&xe(t)&&xe(n))return this;var r=new a;return this.$$state.pending=this.$$state.pending||[],this.$$state.pending.push([r,e,t,n]),0<this.$$state.status&&f(this.$$state),r},catch:function(e){return this.then(null,e)},finally:function(t,e){return this.then(function(e){return v(e,b,t)},function(e){return v(e,m,t)},e)}});var b=y;function t(e){if(!Ie(e))throw n("norslvr","Expected resolverFn, got '{0}'",e);var t=new a;return e(function(e){h(t,e)},function(e){p(t,e)}),t}return t.prototype=a.prototype,t.defer=i,t.reject=m,t.when=y,t.resolve=b,t.all=function(e){var n=new a,r=0,i=_e(e)?[]:{};return me(e,function(e,t){r++,y(e).then(function(e){i[t]=e,--r||h(n,i)},function(e){p(n,e)})}),0===r&&h(n,i),n},t.race=function(e){var t=i();return me(e,function(e){y(e).then(t.resolve,t.reject)}),t.promise},t}function Xr(e){e.pur=!0}function Zr(e){e.$$state&&Xr(e.$$state)}function Qr(){this.$get=["$window","$timeout",function(e,n){var r=e.requestAnimationFrame||e.webkitRequestAnimationFrame,i=e.cancelAnimationFrame||e.webkitCancelAnimationFrame||e.webkitCancelRequestAnimationFrame,t=!!r,e=t?function(e){var t=r(e);return function(){i(t)}}:function(e){var t=n(e,16.66,!1);return function(){n.cancel(t)}};return e.supported=t,e}]}function ei(){var S=10,_=$("$rootScope"),R=null,I=null;this.digestTtl=function(e){return S=arguments.length?e:S},this.$get=["$exceptionHandler","$parse","$browser",function(p,d,g){function i(e){e.currentScope.$$destroyed=!0}function a(){this.$id=A(),this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null,(this.$root=this).$$destroyed=!1,this.$$suspended=!1,this.$$listeners={},this.$$listenerCount={},this.$$watchersCount=0,this.$$isolateBindings=null}a.prototype={constructor:a,$new:function(e,t){var n;function r(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null,this.$$listeners={},this.$$listenerCount={},this.$$watchersCount=0,this.$id=A(),this.$$ChildScope=null,this.$$suspended=!1}return t=t||this,e?(n=new a).$root=this.$root:(this.$$ChildScope||(this.$$ChildScope=(r.prototype=this,r)),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",i),n},$watch:function(e,t,n,r){var i=d(e),t=Ie(t)?t:ke;if(i.$$watchDelegate)return i.$$watchDelegate(this,t,n,i,e);var a=this,o=a.$$watchers,s={fn:t,last:x,get:i,exp:r||e,eq:!!n};return R=null,o||((o=a.$$watchers=[]).$$digestWatchIndex=-1),o.unshift(s),o.$$digestWatchIndex++,u(this,1),function(){var e=De(o,s);0<=e&&(u(a,-1),e<o.$$digestWatchIndex&&o.$$digestWatchIndex--),R=null}},$watchGroup:function(t,r){var i=new Array(t.length),a=new Array(t.length),n=[],o=this,s=!1,u=!0;if(t.length)return 1===t.length?this.$watch(t[0],function(e,t,n){a[0]=e,i[0]=t,r(a,e===t?a:i,n)}):(me(t,function(e,t){e=o.$watch(e,function(e){a[t]=e,s||(s=!0,o.$evalAsync(c))});n.push(e)}),function(){for(;n.length;)n.shift()()});var e=!0;return o.$evalAsync(function(){e&&r(a,a,o)}),function(){e=!1};function c(){s=!1;try{u?(u=!1,r(a,a,o)):r(a,i,o)}finally{for(var e=0;e<t.length;e++)i[e]=a[e]}}},$watchCollection:function(e,n){t.$$pure=d(e).literal,t.$stateful=!t.$$pure;var o,s,r,i=this,a=1<n.length,u=0,e=d(e,t),c=[],l={},f=!0,h=0;function t(e){var t,n,r,i;if(!xe(o=e)){if($e(o))if(E(o)){s!==c&&(h=(s=c).length=0,u++),t=o.length,h!==t&&(u++,s.length=h=t);for(var a=0;a<t;a++)i=s[a],r=o[a],i!=i&&r!=r||i===r||(u++,s[a]=r)}else{for(n in s!==l&&(s=l={},h=0,u++),t=0,o)z.call(o,n)&&(t++,r=o[n],i=s[n],n in s?i!=i&&r!=r||i===r||(u++,s[n]=r):(h++,s[n]=r,u++));if(t<h)for(n in u++,s)z.call(o,n)||(h--,delete s[n])}else s!==o&&(s=o,u++);return u}}return this.$watch(e,function(){if(f?(f=!1,n(o,o,i)):n(o,r,i),a)if($e(o))if(E(o)){r=new Array(o.length);for(var e=0;e<o.length;e++)r[e]=o[e]}else for(var t in r={},o)z.call(o,t)&&(r[t]=o[t]);else r=o})},$digest:function(){var e,t,n,r,i,a,o,s=S,u=v.length?m:this,c=[];k("$digest"),g.$$checkUrlChange(),this===m&&null!==I&&(g.defer.cancel(I),$()),R=null;do{for(var l=!1,f=u,h=0;h<v.length;h++){try{(0,(o=v[h]).fn)(o.scope,o.locals)}catch(e){p(e)}R=null}v.length=0;e:do{if(r=!f.$$suspended&&f.$$watchers)for(r.$$digestWatchIndex=r.length;r.$$digestWatchIndex--;)try{if(e=r[r.$$digestWatchIndex])if((t=(0,e.get)(f))===(n=e.last)||(e.eq?Ee(t,n):C(t)&&C(n))){if(e===R){l=!1;break e}}else l=!0,(R=e).last=e.eq?H(t,null):t,(0,e.fn)(t,n===x?t:n,f),s<5&&(c[a=4-s]||(c[a]=[]),c[a].push({msg:Ie(e.exp)?"fn: "+(e.exp.name||e.exp.toString()):e.exp,newVal:t,oldVal:n}))}catch(e){p(e)}if(!(i=!f.$$suspended&&f.$$watchersCount&&f.$$childHead||f!==u&&f.$$nextSibling))for(;f!==u&&!(i=f.$$nextSibling);)f=f.$parent}while(f=i);if((l||v.length)&&!s--)throw w(),_("infdig","{0} $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: {1}",S,c)}while(l||v.length);for(w();b<y.length;)try{y[b++]()}catch(e){p(e)}y.length=b=0,g.$$checkUrlChange()},$suspend:function(){this.$$suspended=!0},$isSuspended:function(){return this.$$suspended},$resume:function(){this.$$suspended=!1},$destroy:function(){if(!this.$$destroyed){var e,t=this.$parent;for(e in this.$broadcast("$destroy"),this.$$destroyed=!0,this===m&&g.$$applicationDestroyed(),u(this,-this.$$watchersCount),this.$$listenerCount)o(this,this.$$listenerCount[e],e);t&&t.$$childHead===this&&(t.$$childHead=this.$$nextSibling),t&&t.$$childTail===this&&(t.$$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=ke,this.$on=this.$watch=this.$watchGroup=function(){return ke},this.$$listeners={},this.$$nextSibling=null,function e(t){9===ye&&(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 d(e)(this,t)},$evalAsync:function(e,t){m.$$phase||v.length||g.defer(function(){v.length&&m.$digest()},null,"$evalAsync"),v.push({scope:this,fn:d(e),locals:t})},$$postDigest:function(e){y.push(e)},$apply:function(e){try{k("$apply");try{return this.$eval(e)}finally{w()}}catch(e){p(e)}finally{try{m.$digest()}catch(e){throw p(e),e}}},$applyAsync:function(e){var t=this;e&&n.push(function(){t.$eval(e)}),e=d(e),null===I&&(I=g.defer(function(){m.$apply($)},null,"$applyAsync"))},$on:function(t,n){var r=this.$$listeners[t];r||(this.$$listeners[t]=r=[]),r.push(n);for(var e=this;e.$$listenerCount[t]||(e.$$listenerCount[t]=0),e.$$listenerCount[t]++,e=e.$parent;);var i=this;return function(){var e=r.indexOf(n);-1!==e&&(delete r[e],o(i,1,t))}},$emit:function(e,t){var n,r,i,a=[],o=this,s=!1,u={name:e,targetScope:o,stopPropagation:function(){s=!0},preventDefault:function(){u.defaultPrevented=!0},defaultPrevented:!1},c=V([u],arguments,1);do{for(n=o.$$listeners[e]||a,u.currentScope=o,r=0,i=n.length;r<i;r++)if(n[r])try{n[r].apply(null,c)}catch(e){p(e)}else n.splice(r,1),r--,i--}while(!s&&(o=o.$parent));return u.currentScope=null,u},$broadcast:function(e,t){var n=this,r=this,i={name:e,targetScope:this,preventDefault:function(){i.defaultPrevented=!0},defaultPrevented:!1};if(!this.$$listenerCount[e])return i;for(var a,o,s,u=V([i],arguments,1);n=r;){for(o=0,s=(a=(i.currentScope=n).$$listeners[e]||[]).length;o<s;o++)if(a[o])try{a[o].apply(null,u)}catch(e){p(e)}else a.splice(o,1),o--,s--;if(!(r=n.$$listenerCount[e]&&n.$$childHead||n!==this&&n.$$nextSibling))for(;n!==this&&!(r=n.$$nextSibling);)n=n.$parent}return i.currentScope=null,i}};var m=new a,v=m.$$asyncQueue=[],y=m.$$postDigestQueue=[],n=m.$$applyAsyncQueue=[],b=0;return m;function k(e){if(m.$$phase)throw _("inprog","{0} already in progress",m.$$phase);m.$$phase=e}function w(){m.$$phase=null}function u(e,t){for(;e.$$watchersCount+=t,e=e.$parent;);}function o(e,t,n){for(;e.$$listenerCount[n]-=t,0===e.$$listenerCount[n]&&delete e.$$listenerCount[n],e=e.$parent;);}function x(){}function $(){for(;n.length;)try{n.shift()()}catch(e){p(e)}I=null}}]}function ti(){var r=/^\s*(https?|s?ftp|mailto|tel|file):/,i=/^\s*((https?|ftp|file|blob):|data:image\/)/;this.aHrefSanitizationWhitelist=function(e){return I(e)?(r=e,this):r},this.imgSrcSanitizationWhitelist=function(e){return I(e)?(i=e,this):i},this.$get=function(){return function(e,t){var n=t?i:r,t=wi(e&&e.trim()).href;return""===t||t.match(n)?e:"unsafe:"+t}}}Vr.prototype={compile:function(e){var i=this;this.state={nextId:0,filters:{},fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]},jr(e,i.$filter);var t,n="";this.stage="assign",(t=Ur(e))&&(this.state.computing="assign",r=this.nextId(),this.recurse(t,r),this.return_(r),n="fn.assign="+this.generateFunction("assign","s,v,l"));var r=Hr(e.body);i.stage="inputs",me(r,function(e,t){var n="fn"+t;i.state[n]={vars:[],body:[],own:{}},i.state.computing=n;var r=i.nextId();i.recurse(e,r),i.return_(r),i.state.inputs.push({name:n,isPure:e.isPure}),e.watchId=t}),this.state.computing="fn",this.stage="main",this.recurse(e);n='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+n+this.watchFns()+"return fn;",n=new Function("$filter","getStringValue","ifDefined","plus",n)(this.$filter,Or,Pr,Fr);return this.state=this.stage=void 0,n},USE:"use",STRICT:"strict",watchFns:function(){var t=[],e=this.state.inputs,n=this;return me(e,function(e){t.push("var "+e.name+"="+n.generateFunction(e.name,"s")),e.isPure&&t.push(e.name,".isPure="+JSON.stringify(e.isPure)+";")}),e.length&&t.push("fn.inputs=["+e.map(function(e){return e.name}).join(",")+"];"),t.join("")},generateFunction:function(e,t){return"function("+t+"){"+this.varsPrefix(e)+this.body(e)+"};"},filterPrefix:function(){var n=[],r=this;return me(this.state.filters,function(e,t){n.push(e+"=$filter("+r.escape(t)+")")}),n.length?"var "+n.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(n,t,e,r,i,a){var o,s,u,c,l,f=this;if(r=r||ke,!a&&I(n.watchId))return t=t||this.nextId(),void this.if_("i",this.lazyAssign(t,this.computedMember("i",n.watchId)),this.lazyRecurse(n,t,e,r,i,!0));switch(n.type){case Er.Program:me(n.body,function(e,t){f.recurse(e.expression,void 0,void 0,function(e){s=e}),t!==n.body.length-1?f.current().body.push(s,";"):f.return_(s)});break;case Er.Literal:c=this.escape(n.value),this.assign(t,c),r(t||c);break;case Er.UnaryExpression:this.recurse(n.argument,void 0,void 0,function(e){s=e}),c=n.operator+"("+this.ifDefined(s,0)+")",this.assign(t,c),r(c);break;case Er.BinaryExpression:this.recurse(n.left,void 0,void 0,function(e){o=e}),this.recurse(n.right,void 0,void 0,function(e){s=e}),c="+"===n.operator?this.plus(o,s):"-"===n.operator?this.ifDefined(o,0)+n.operator+this.ifDefined(s,0):"("+o+")"+n.operator+"("+s+")",this.assign(t,c),r(c);break;case Er.LogicalExpression:t=t||this.nextId(),f.recurse(n.left,t),f.if_("&&"===n.operator?t:f.not(t),f.lazyRecurse(n.right,t)),r(t);break;case Er.ConditionalExpression:t=t||this.nextId(),f.recurse(n.test,t),f.if_(t,f.lazyRecurse(n.alternate,t),f.lazyRecurse(n.consequent,t)),r(t);break;case Er.Identifier:t=t||this.nextId(),e&&(e.context="inputs"===f.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",n.name)+"?l:s"),e.computed=!1,e.name=n.name),f.if_("inputs"===f.stage||f.not(f.getHasOwnProperty("l",n.name)),function(){f.if_("inputs"===f.stage||"s",function(){i&&1!==i&&f.if_(f.isNull(f.nonComputedMember("s",n.name)),f.lazyAssign(f.nonComputedMember("s",n.name),"{}")),f.assign(t,f.nonComputedMember("s",n.name))})},t&&f.lazyAssign(t,f.nonComputedMember("l",n.name))),r(t);break;case Er.MemberExpression:o=e&&(e.context=this.nextId())||this.nextId(),t=t||this.nextId(),f.recurse(n.object,o,void 0,function(){f.if_(f.notNull(o),function(){n.computed?(s=f.nextId(),f.recurse(n.property,s),f.getStringValue(s),i&&1!==i&&f.if_(f.not(f.computedMember(o,s)),f.lazyAssign(f.computedMember(o,s),"{}")),c=f.computedMember(o,s),f.assign(t,c),e&&(e.computed=!0,e.name=s)):(i&&1!==i&&f.if_(f.isNull(f.nonComputedMember(o,n.property.name)),f.lazyAssign(f.nonComputedMember(o,n.property.name),"{}")),c=f.nonComputedMember(o,n.property.name),f.assign(t,c),e&&(e.computed=!1,e.name=n.property.name))},function(){f.assign(t,"undefined")}),r(t)},!!i);break;case Er.CallExpression:t=t||this.nextId(),n.filter?(s=f.filter(n.callee.name),u=[],me(n.arguments,function(e){var t=f.nextId();f.recurse(e,t),u.push(t)}),c=s+"("+u.join(",")+")",f.assign(t,c),r(t)):(s=f.nextId(),u=[],f.recurse(n.callee,s,o={},function(){f.if_(f.notNull(s),function(){me(n.arguments,function(e){f.recurse(e,n.constant?void 0:f.nextId(),void 0,function(e){u.push(e)})}),c=o.name?f.member(o.context,o.name,o.computed)+"("+u.join(",")+")":s+"("+u.join(",")+")",f.assign(t,c)},function(){f.assign(t,"undefined")}),r(t)}));break;case Er.AssignmentExpression:s=this.nextId(),this.recurse(n.left,void 0,o={},function(){f.if_(f.notNull(o.context),function(){f.recurse(n.right,s),c=f.member(o.context,o.name,o.computed)+n.operator+s,f.assign(t,c),r(t||c)})},1);break;case Er.ArrayExpression:u=[],me(n.elements,function(e){f.recurse(e,n.constant?void 0:f.nextId(),void 0,function(e){u.push(e)})}),c="["+u.join(",")+"]",this.assign(t,c),r(t||c);break;case Er.ObjectExpression:l=!(u=[]),me(n.properties,function(e){e.computed&&(l=!0)}),l?(t=t||this.nextId(),this.assign(t,"{}"),me(n.properties,function(e){e.computed?(o=f.nextId(),f.recurse(e.key,o)):o=e.key.type===Er.Identifier?e.key.name:""+e.key.value,s=f.nextId(),f.recurse(e.value,s),f.assign(f.member(t,o,e.computed),s)})):(me(n.properties,function(t){f.recurse(t.value,n.constant?void 0:f.nextId(),void 0,function(e){u.push(f.escape(t.key.type===Er.Identifier?t.key.name:""+t.key.value)+":"+e)})}),c="{"+u.join(",")+"}",this.assign(t,c)),r(t||c);break;case Er.ThisExpression:this.assign(t,"s"),r(t||"s");break;case Er.LocalsExpression:this.assign(t,"l"),r(t||"l");break;case Er.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){var r;!0===e?t():((r=this.current().body).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(Se(e))return"'"+e.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(O(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]}},zr.prototype={compile:function(e){var r,i=this;jr(e,i.$filter),(t=Ur(e))&&(r=this.recurse(t));var a,t=Hr(e.body);t&&(a=[],me(t,function(e,t){var n=i.recurse(e);n.isPure=e.isPure,e.input=n,a.push(n),e.watchId=t}));var o=[];me(e.body,function(e){o.push(i.recurse(e.expression))});e=0===e.body.length?ke:1===e.body.length?o[0]:function(t,n){var r;return me(o,function(e){r=e(t,n)}),r};return r&&(e.assign=function(e,t,n){return r(e,n,t)}),a&&(e.inputs=a),e},recurse:function(e,u,t){var a,c,l,n=this;if(e.input)return this.inputs(e.input,e.watchId);switch(e.type){case Er.Literal:return this.value(e.value,u);case Er.UnaryExpression:return c=this.recurse(e.argument),this["unary"+e.operator](c,u);case Er.BinaryExpression:case Er.LogicalExpression:return a=this.recurse(e.left),c=this.recurse(e.right),this["binary"+e.operator](a,c,u);case Er.ConditionalExpression:return this["ternary?:"](this.recurse(e.test),this.recurse(e.alternate),this.recurse(e.consequent),u);case Er.Identifier:return n.identifier(e.name,u,t);case Er.MemberExpression:return a=this.recurse(e.object,!1,!!t),e.computed||(c=e.property.name),e.computed&&(c=this.recurse(e.property)),e.computed?this.computedMember(a,c,u,t):this.nonComputedMember(a,c,u,t);case Er.CallExpression:return l=[],me(e.arguments,function(e){l.push(n.recurse(e))}),e.filter&&(c=this.$filter(e.callee.name)),e.filter||(c=this.recurse(e.callee,!0)),e.filter?function(e,t,n,r){for(var i=[],a=0;a<l.length;++a)i.push(l[a](e,t,n,r));var o=c.apply(void 0,i,r);return u?{context:void 0,name:void 0,value:o}:o}:function(e,t,n,r){var i,a=c(e,t,n,r);if(null!=a.value){for(var o=[],s=0;s<l.length;++s)o.push(l[s](e,t,n,r));i=a.value.apply(a.context,o)}return u?{value:i}:i};case Er.AssignmentExpression:return a=this.recurse(e.left,!0,1),c=this.recurse(e.right),function(e,t,n,r){var i=a(e,t,n,r),r=c(e,t,n,r);return i.context[i.name]=r,u?{value:r}:r};case Er.ArrayExpression:return l=[],me(e.elements,function(e){l.push(n.recurse(e))}),function(e,t,n,r){for(var i=[],a=0;a<l.length;++a)i.push(l[a](e,t,n,r));return u?{value:i}:i};case Er.ObjectExpression:return l=[],me(e.properties,function(e){e.computed?l.push({key:n.recurse(e.key),computed:!0,value:n.recurse(e.value)}):l.push({key:e.key.type===Er.Identifier?e.key.name:""+e.key.value,computed:!1,value:n.recurse(e.value)})}),function(e,t,n,r){for(var i={},a=0;a<l.length;++a)l[a].computed?i[l[a].key(e,t,n,r)]=l[a].value(e,t,n,r):i[l[a].key]=l[a].value(e,t,n,r);return u?{value:i}:i};case Er.ThisExpression:return function(e){return u?{value:e}:e};case Er.LocalsExpression:return function(e,t){return u?{value:t}:t};case Er.NGValueParameter:return function(e,t,n){return u?{value:n}:n}}},"unary+":function(i,a){return function(e,t,n,r){r=I(r=i(e,t,n,r))?+r:0;return a?{value:r}:r}},"unary-":function(i,a){return function(e,t,n,r){r=I(r=i(e,t,n,r))?-r:-0;return a?{value:r}:r}},"unary!":function(i,a){return function(e,t,n,r){r=!i(e,t,n,r);return a?{value:r}:r}},"binary+":function(i,a,o){return function(e,t,n,r){r=Fr(i(e,t,n,r),a(e,t,n,r));return o?{value:r}:r}},"binary-":function(a,o,s){return function(e,t,n,r){var i=a(e,t,n,r),r=o(e,t,n,r),r=(I(i)?i:0)-(I(r)?r:0);return s?{value:r}:r}},"binary*":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)*a(e,t,n,r);return o?{value:r}:r}},"binary/":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)/a(e,t,n,r);return o?{value:r}:r}},"binary%":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)%a(e,t,n,r);return o?{value:r}:r}},"binary===":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)===a(e,t,n,r);return o?{value:r}:r}},"binary!==":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)!==a(e,t,n,r);return o?{value:r}:r}},"binary==":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)==a(e,t,n,r);return o?{value:r}:r}},"binary!=":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)!=a(e,t,n,r);return o?{value:r}:r}},"binary<":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)<a(e,t,n,r);return o?{value:r}:r}},"binary>":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)>a(e,t,n,r);return o?{value:r}:r}},"binary<=":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)<=a(e,t,n,r);return o?{value:r}:r}},"binary>=":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)>=a(e,t,n,r);return o?{value:r}:r}},"binary&&":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)&&a(e,t,n,r);return o?{value:r}:r}},"binary||":function(i,a,o){return function(e,t,n,r){r=i(e,t,n,r)||a(e,t,n,r);return o?{value:r}:r}},"ternary?:":function(i,a,o,s){return function(e,t,n,r){r=(i(e,t,n,r)?a:o)(e,t,n,r);return s?{value:r}:r}},value:function(e,t){return function(){return t?{context:void 0,name:void 0,value:e}:e}},identifier:function(i,a,o){return function(e,t,n,r){t=t&&i in t?t:e;o&&1!==o&&t&&null==t[i]&&(t[i]={});e=t?t[i]:void 0;return a?{context:t,name:i,value:e}:e}},computedMember:function(s,u,c,l){return function(e,t,n,r){var i,a,o=s(e,t,n,r);return null!=o&&(i=u(e,t,n,r),i+="",l&&1!==l&&o&&!o[i]&&(o[i]={}),a=o[i]),c?{context:o,name:i,value:a}:a}},nonComputedMember:function(i,a,o,s){return function(e,t,n,r){n=i(e,t,n,r);s&&1!==s&&n&&null==n[a]&&(n[a]={});r=null!=n?n[a]:void 0;return o?{context:n,name:a,value:r}:r}},inputs:function(i,a){return function(e,t,n,r){return r?r[a]:i(e,t,n)}}},qr.prototype={constructor:qr,parse:function(e){var t=this.getAst(e),n=this.astCompiler.compile(t.ast);return n.literal=0===(e=t.ast).body.length||1===e.body.length&&(e.body[0].expression.type===Er.Literal||e.body[0].expression.type===Er.ArrayExpression||e.body[0].expression.type===Er.ObjectExpression),n.constant=t.ast.constant,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 ni=$("$sce"),ri={HTML:"html",CSS:"css",MEDIA_URL:"mediaUrl",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},ii=/_([a-z])/g;function ai(e){return e.replace(ii,at)}function oi(e){var t=[];return I(e)&&me(e,function(e){t.push(function(e){if("self"===e)return e;if(Se(e)){if(-1<e.indexOf("***"))throw ni("iwcard","Illegal sequence *** in string matcher. String: {0}",e);return e=L(e).replace(/\\\*\\\*/g,".*").replace(/\\\*/g,"[^:/.?&;]*"),new RegExp("^"+e+"$")}if(D(e))return new RegExp("^"+e.source+"$");throw ni("imatcher",'Matchers may only be "self", string patterns or RegExp objects')}(e))}),t}function si(){this.SCE_CONTEXTS=ri;var s=["self"],u=[];this.resourceUrlWhitelist=function(e){return s=arguments.length?oi(e):s},this.resourceUrlBlacklist=function(e){return u=arguments.length?oi(e):u},this.$get=["$injector","$$sanitizeUri",function(e,r){var i=function(e){throw ni("unsafe","Attempting to use an unsafe value in a safe context.")};function a(e,t){return"self"===e?xi(t,bi)||xi(t,function(){if(de.document.baseURI)return de.document.baseURI;vi||((vi=de.document.createElement("a")).href=".",vi=vi.cloneNode(!1));return vi.href}()):e.exec(t.href)}function t(e){function t(e){this.$$unwrapTrustedValue=function(){return e}}return(t.prototype=e?new e:t.prototype).valueOf=function(){return this.$$unwrapTrustedValue()},t.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},t}e.has("$sanitize")&&(i=e.get("$sanitize"));var n=t(),o={};return o[ri.HTML]=t(n),o[ri.CSS]=t(n),o[ri.MEDIA_URL]=t(n),o[ri.URL]=t(o[ri.MEDIA_URL]),o[ri.JS]=t(n),o[ri.RESOURCE_URL]=t(o[ri.URL]),{trustAs:function(e,t){var n=o.hasOwnProperty(e)?o[e]:null;if(!n)throw ni("icontext","Attempted to trust a value in invalid context. Context: {0}; Value: {1}",e,t);if(null===t||xe(t)||""===t)return t;if("string"!=typeof t)throw ni("itype","Attempted to trust a non-string value in a content requiring a string: Context: {0}",e);return new n(t)},getTrusted:function(e,t){if(null===t||xe(t)||""===t)return t;var n=o.hasOwnProperty(e)?o[e]:null;if(n&&t instanceof n)return t.$$unwrapTrustedValue();if(Ie(t.$$unwrapTrustedValue)&&(t=t.$$unwrapTrustedValue()),e===ri.MEDIA_URL||e===ri.URL)return r(t.toString(),e===ri.MEDIA_URL);if(e===ri.RESOURCE_URL){if(function(e){for(var t=wi(e.toString()),n=!1,r=0,i=s.length;r<i;r++)if(a(s[r],t)){n=!0;break}if(n)for(r=0,i=u.length;r<i;r++)if(a(u[r],t)){n=!1;break}return n}(t))return t;throw ni("insecurl","Blocked loading resource from url not allowed by $sceDelegate policy. URL: {0}",t.toString())}if(e===ri.HTML)return i(t);throw ni("unsafe","Attempting to use an unsafe value in a safe context.")},valueOf:function(e){return e instanceof n?e.$$unwrapTrustedValue():e}}}]}function ui(){var t=!0;this.enabled=function(e){return t=arguments.length?!!e:t},this.$get=["$parse","$sceDelegate",function(r,e){if(t&&ye<8)throw ni("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 i=Ye(ri);i.isEnabled=function(){return t},i.trustAs=e.trustAs,i.getTrusted=e.getTrusted,i.valueOf=e.valueOf,t||(i.trustAs=i.getTrusted=function(e,t){return t},i.valueOf=we),i.parseAs=function(t,e){var n=r(e);return n.literal&&n.constant?n:r(e,function(e){return i.getTrusted(t,e)})};var n=i.parseAs,a=i.getTrusted,o=i.trustAs;return me(ri,function(t,e){e=S(e);i[ai("parse_as_"+e)]=function(e){return n(t,e)},i[ai("get_trusted_"+e)]=function(e){return a(t,e)},i[ai("trust_as_"+e)]=function(e){return o(t,e)}}),i}]}function ci(){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=w((/android (\d+)/.exec(S((e.navigator||{}).userAgent))||[])[1]),a=/Boxee/i.test((e.navigator||{}).userAgent),o=t[0]||{},s=o.body&&o.body.style,e=!1,t=!1;return s&&(e=!!("transition"in s||"webkitTransition"in s),t=!!("animation"in s||"webkitAnimation"in s)),{history:!(!r||i<4||a),hasEvent:function(e){return("input"!==e||!ye)&&(xe(n[e])&&(t=o.createElement("div"),n[e]="on"+e in t),n[e]);var t},csp:N(),transitions:e,animations:t,android:i}}]}function li(){this.$get=R(function(e){return new fi(e)})}function fi(a){var o={},r=[],s=this.ALL_TASKS_TYPE="$$all$$",u=this.DEFAULT_TASK_TYPE="$$default$$";function c(){var e=r.pop();return e&&e.cb}function l(e){for(var t=r.length-1;0<=t;--t){var n=r[t];if(n.type===e)return r.splice(t,1),n.cb}}this.completeTask=function(e,t){t=t||u;try{e()}finally{!function(e){o[e=e||u]&&(o[e]--,o[s]--)}(t);var n=o[t],e=o[s];if(!e||!n)for(var r,i=e?l:c;r=i(t);)try{r()}catch(e){a.error(e)}}},this.incTaskCount=function(e){o[e=e||u]=(o[e]||0)+1,o[s]=(o[s]||0)+1},this.notifyWhenNoPendingTasks=function(e,t){o[t=t||s]?r.push({type:t,cb:e}):e()}}var hi=$("$templateRequest");function pi(){var c;this.httpOptions=function(e){return e?(c=e,this):c},this.$get=["$exceptionHandler","$templateCache","$http","$q","$sce",function(r,i,a,o,s){function u(t,n){u.totalPendingRequests++,Se(t)&&!xe(i.get(t))||(t=s.getTrustedResourceUrl(t));var e=a.defaults&&a.defaults.transformResponse;return _e(e)?e=e.filter(function(e){return e!==Yn}):e===Yn&&(e=null),a.get(t,ve({cache:i,transformResponse:e},c)).finally(function(){u.totalPendingRequests--}).then(function(e){return i.put(t,e.data)},function(e){n||(e=hi("tpload","Failed to load template: {0} (HTTP status: {1} {2})",t,e.status,e.statusText),r(e));return o.reject(e)})}return u.totalPendingRequests=0,u}]}function di(){this.$get=["$rootScope","$browser","$location",function(t,n,r){var e={findBindings:function(e,n,r){var e=e.getElementsByClassName("ng-binding"),i=[];return me(e,function(t){var e=b.element(t).data("$binding");e&&me(e,function(e){r?new RegExp("(^|\\s)"+L(n)+"(\\s|\\||$)").test(e)&&i.push(t):-1!==e.indexOf(n)&&i.push(t)})}),i},findModels:function(e,t,n){for(var r=["ng-","data-ng-","ng\\:"],i=0;i<r.length;++i){var a=e.querySelectorAll("["+r[i]+"model"+(n?"=":"*=")+'"'+t+'"]');if(a.length)return a}},getLocation:function(){return r.url()},setLocation:function(e){e!==r.url()&&(r.url(e),t.$digest())},whenStable:function(e){n.notifyWhenNoOutstandingRequests(e)}};return e}]}var gi=$("$timeout");function mi(){this.$get=["$rootScope","$browser","$q","$$q","$exceptionHandler",function(s,u,c,l,f){var h={};function e(e,t,n){Ie(e)||(n=t,t=e,e=ke);var r=Pe(arguments,3),i=I(n)&&!n,a=(i?l:c).defer(),o=a.promise,t=u.defer(function(){try{a.resolve(e.apply(null,r))}catch(e){a.reject(e),f(e)}finally{delete h[o.$$timeoutId]}i||s.$apply()},t,"$timeout");return o.$$timeoutId=t,h[t]=a,o}return e.cancel=function(e){if(!e)return!1;if(!e.hasOwnProperty("$$timeoutId"))throw gi("badprom","`$timeout.cancel()` called with a promise that was not generated by `$timeout()`.");if(!h.hasOwnProperty(e.$$timeoutId))return!1;var t=e.$$timeoutId,e=h[t];return Zr(e.promise),e.reject("canceled"),delete h[t],u.defer.cancel(t)},e}]}var vi,yi=de.document.createElement("a"),bi=wi(de.location.href);yi.href="http://[::1]";var ki="[::1]"===yi.hostname;function wi(e){if(!Se(e))return e;ye&&(yi.setAttribute("href",e),e=yi.href),yi.setAttribute("href",e);e=yi.hostname;return!ki&&-1<e.indexOf(":")&&(e="["+e+"]"),{href:yi.href,protocol:yi.protocol?yi.protocol.replace(/:$/,""):"",host:yi.host,search:yi.search?yi.search.replace(/^\?/,""):"",hash:yi.hash?yi.hash.replace(/^#/,""):"",hostname:e,port:yi.port,pathname:"/"===yi.pathname.charAt(0)?yi.pathname:"/"+yi.pathname}}function xi(e,t){return e=wi(e),t=wi(t),e.protocol===t.protocol&&e.host===t.host}function $i(){this.$get=R(de)}function Si(e){var o=e[0]||{},s={},u="";function c(t){try{return decodeURIComponent(t)}catch(e){return t}}return function(){var e,t,n,r,i,a=function(e){try{return e.cookie||""}catch(e){return""}}(o);if(a!==u)for(e=(u=a).split("; "),s={},n=0;n<e.length;n++)0<(r=(t=e[n]).indexOf("="))&&(i=c(t.substring(0,r)),xe(s[i])&&(s[i]=c(t.substring(r+1))));return s}}function _i(){this.$get=Si}function Ri(r){var i="Filter";function a(e,t){if($e(e)){var n={};return me(e,function(e,t){n[t]=a(t,e)}),n}return r.factory(e+i,t)}this.register=a,this.$get=["$injector",function(t){return function(e){return t.get(e+i)}}],a("currency",Ti),a("date",qi),a("filter",Ii),a("json",Ki),a("limitTo",Gi),a("lowercase",Wi),a("number",Ei),a("orderBy",Xi),a("uppercase",Ji)}function Ii(){return function(e,t,n,r){if(!E(e)){if(null==e)return e;throw $("filter")("notarray","Expected array but received: {0}",e)}var i,a;switch(r=r||"$",Ci(t)){case"function":i=t;break;case"boolean":case"null":case"number":case"string":a=!0;case"object":i=function(t,n,r,i){var a=$e(t)&&r in t;!0===n?n=Ee:Ie(n)||(n=function(e,t){return!xe(e)&&(null===e||null===t?e===t:!($e(t)||$e(e)&&!x(e))&&(e=S(""+e),t=S(""+t),-1!==e.indexOf(t)))});return function(e){return a&&!$e(e)?Ai(e,t[r],n,r,!1):Ai(e,t,n,r,i)}}(t,n,r,a);break;default:return e}return Array.prototype.filter.call(e,i)}}function Ai(e,t,n,r,i,a){var o,s=Ci(e),u=Ci(t);if("string"===u&&"!"===t.charAt(0))return!Ai(e,t.substring(1),n,r,i);if(_e(e))return e.some(function(e){return Ai(e,t,n,r,i)});switch(s){case"object":if(i){for(o in e)if(o.charAt&&"$"!==o.charAt(0)&&Ai(e[o],t,n,r,!0))return!0;return!a&&Ai(e,t,n,r,!1)}if("object"!==u)return n(e,t);for(o in t){var c=t[o];if(!Ie(c)&&!xe(c)){var l=o===r;if(!Ai(l?e:e[o],c,n,r,l,l))return!1}}return!0;case"function":return!1;default:return n(e,t)}}function Ci(e){return null===e?"null":typeof e}Si.$inject=["$document"],Ri.$inject=["$provide"];var Oi=22,Mi=".",Di="0";function Ti(e){var i=e.NUMBER_FORMATS;return function(e,t,n){xe(t)&&(t=i.CURRENCY_SYM),xe(n)&&(n=i.PATTERNS[1].maxFrac);var r=t?/\u00A4/g:/\s*\u00A4\s*/g;return null==e?e:Pi(e,i.PATTERNS[1],i.GROUP_SEP,i.DECIMAL_SEP,n).replace(r,t)}}function Ei(e){var n=e.NUMBER_FORMATS;return function(e,t){return null==e?e:Pi(e,n.PATTERNS[0],n.GROUP_SEP,n.DECIMAL_SEP,t)}}function Pi(e,t,n,r,i){if(!Se(e)&&!O(e)||isNaN(e))return"";var a=!isFinite(e),o=!1,s=Math.abs(e)+"",u="";if(a)u="∞";else{(function(e,t,n,r){var i=e.d,a=i.length-e.i,o=(t=xe(t)?Math.min(Math.max(n,a),r):+t)+e.i,r=i[o];if(0<o){i.splice(Math.max(e.i,o));for(var s=o;s<i.length;s++)i[s]=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(5<=r)if(o-1<0){for(var c=0;o<c;c--)i.unshift(0),e.i++;i.unshift(1),e.i++}else i[o-1]++;for(;a<Math.max(0,t);a++)i.push(0);(r=i.reduceRight(function(e,t,n,r){return r[n]=(t+=e)%10,Math.floor(t/10)},0))&&(i.unshift(r),e.i++)})(s=function(e){var t,n,r,i,a,o=0;for(0<(r=(e=-1<(n=e.indexOf(Mi))?e.replace(Mi,""):e).search(/e/i))?(n<0&&(n=r),n+=+e.slice(r+1),e=e.substring(0,r)):n<0&&(n=e.length),r=0;e.charAt(r)===Di;r++);if(r===(a=e.length))t=[0],n=1;else{for(a--;e.charAt(a)===Di;)a--;for(n-=r,t=[],i=0;r<=a;r++,i++)t[i]=+e.charAt(r)}return Oi<n&&(t=t.splice(0,Oi-1),o=n-1,n=1),{d:t,e:o,i:n}}(s),i,t.minFrac,t.maxFrac);for(var c=s.d,l=s.i,i=s.e,s=[],o=c.reduce(function(e,t){return e&&!t},!0);l<0;)c.unshift(0),l++;0<l?s=c.splice(l,c.length):(s=c,c=[0]);var f=[];for(c.length>=t.lgSize&&f.unshift(c.splice(-t.lgSize,c.length).join(""));c.length>t.gSize;)f.unshift(c.splice(-t.gSize,c.length).join(""));c.length&&f.unshift(c.join("")),u=f.join(n),s.length&&(u+=r+s.join("")),i&&(u+="e+"+i)}return e<0&&!o?t.negPre+u+t.negSuf:t.posPre+u+t.posSuf}function Fi(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=Di+e;return i+(e=n?e.substr(e.length-t):e)}function Li(t,n,r,i,a){return r=r||0,function(e){e=e["get"+t]();return(0<r||-r<e)&&(e+=r),Fi(e=0===e&&-12===r?12:e,n,i,a)}}function Bi(n,r,i){return function(e,t){e=e["get"+n]();return t[c((i?"STANDALONE":"")+(r?"SHORT":"")+n)][e]}}function ji(e){var t=new Date(e,0,1).getDay();return new Date(e,0,(t<=4?5:12)-t)}function Hi(n){return function(e){var t=ji(e.getFullYear()),e=(e=e,new Date(e.getFullYear(),e.getMonth(),e.getDate()+(4-e.getDay())));return Fi(1+Math.round((+e-+t)/6048e5),n)}}function Ni(e,t){return e.getFullYear()<=0?t.ERAS[0]:t.ERAS[1]}Ti.$inject=["$locale"];var Ui={yyyy:Li("FullYear",4,0,!(Ei.$inject=["$locale"]),!0),yy:Li("FullYear",2,0,!0,!0),y:Li("FullYear",1,0,!1,!0),MMMM:Bi("Month"),MMM:Bi("Month",!0),MM:Li("Month",2,1),M:Li("Month",1,1),LLLL:Bi("Month",!1,!0),dd:Li("Date",2),d:Li("Date",1),HH:Li("Hours",2),H:Li("Hours",1),hh:Li("Hours",2,-12),h:Li("Hours",1,-12),mm:Li("Minutes",2),m:Li("Minutes",1),ss:Li("Seconds",2),s:Li("Seconds",1),sss:Li("Milliseconds",3),EEEE:Bi("Day"),EEE:Bi("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,n=0<=r?"+":"";return n+=Fi(Math[0<r?"floor":"ceil"](r/60),2)+Fi(Math.abs(r%60),2)},ww:Hi(2),w:Hi(1),G:Ni,GG:Ni,GGG:Ni,GGGG:function(e,t){return e.getFullYear()<=0?t.ERANAMES[0]:t.ERANAMES[1]}},Vi=/((?:[^yMLdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|m+|s+|a|Z|G+|w+))([\s\S]*)/,zi=/^-?\d+$/;function qi(u){var c=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(t,e,n){var r,i,a="",o=[];if(e=u.DATETIME_FORMATS[e=e||"mediumDate"]||e,!M(t=O(t=Se(t)?(zi.test(t)?w:function(e){if(o=e.match(c)){var t=new Date(0),n=0,r=0,i=o[8]?t.setUTCFullYear:t.setFullYear,a=o[8]?t.setUTCHours:t.setHours;o[9]&&(n=w(o[9]+o[10]),r=w(o[9]+o[11])),i.call(t,w(o[1]),w(o[2])-1,w(o[3]));var i=w(o[4]||0)-n,n=w(o[5]||0)-r,r=w(o[6]||0),o=Math.round(1e3*parseFloat("0."+(o[7]||0)));return a.call(t,i,n,r,o),t}return e})(t):t)?new Date(t):t)||!isFinite(t.getTime()))return t;for(;e;)e=(i=Vi.exec(e))?(o=V(o,i,1)).pop():(o.push(e),null);var s=t.getTimezoneOffset();return n&&(s=G(n,s),t=X(t,n,!0)),me(o,function(e){r=Ui[e],a+=r?r(t,u.DATETIME_FORMATS,s):"''"===e?"'":e.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),a}}function Ki(){return function(e,t){return K(e,t=xe(t)?2:t)}}qi.$inject=["$locale"];var Wi=R(S),Ji=R(c);function Gi(){return function(e,t,n){return t=(Math.abs(Number(t))===1/0?Number:w)(t),!C(t)&&E(e=O(e)?e.toString():e)?(n=(n=!n||isNaN(n)?0:w(n))<0?Math.max(0,e.length+n):n,0<=t?Yi(e,n,n+t):0===n?Yi(e,t,e.length):Yi(e,Math.max(0,n+t),n)):e}}function Yi(e,t,n){return Se(e)?e.slice(t,n):o.call(e,t,n)}function Xi(i){return function(e,t,n,r){if(null==e)return e;if(!E(e))throw $("orderBy")("notarray","Expected array but received: {0}",e);var a=(t=0===(t=!_e(t)?[t]:t).length?["+"]:t).map(function(e){var t,n=1,r=we;return Ie(e)?r=e:Se(e)&&("+"!==e.charAt(0)&&"-"!==e.charAt(0)||(n="-"===e.charAt(0)?-1:1,e=e.substring(1)),""!==e&&(r=i(e)).constant&&(t=r(),r=function(e){return e[t]})),{get:r,descending:n}}),o=n?-1:1,s=Ie(r)?r:c,r=Array.prototype.map.call(e,function(t,n){return{value:t,tieBreaker:{value:n,type:"number",index:n},predicateValues:a.map(function(e){return function(e,t){var n=typeof e;null===e?n="null":"object"===n&&(e=function(e){if(Ie(e.valueOf)&&u(e=e.valueOf()))return e;if(x(e)&&u(e=e.toString()))return e;return e}(e));return{value:e,type:n,index:t}}(e.get(t),n)})}});return r.sort(function(e,t){for(var n=0,r=a.length;n<r;n++){var i=s(e.predicateValues[n],t.predicateValues[n]);if(i)return i*a[n].descending*o}return(s(e.tieBreaker,t.tieBreaker)||c(e.tieBreaker,t.tieBreaker))*o}),e=r.map(function(e){return e.value})};function u(e){switch(typeof e){case"number":case"boolean":case"string":return 1;default:return}}function c(e,t){var n,r,i=0,a=e.type,o=t.type;return a===o?(n=e.value,r=t.value,"string"===a?(n=n.toLowerCase(),r=r.toLowerCase()):"object"===a&&($e(n)&&(n=e.index),$e(r)&&(r=t.index)),n!==r&&(i=n<r?-1:1)):i="undefined"!==a&&("undefined"===o||"null"!==a&&("null"===o||a<o))?-1:1,i}}function Zi(e){return(e=Ie(e)?{link:e}:e).restrict=e.restrict||"AC",R(e)}Xi.$inject=["$parse"];var Qi=R({restrict:"E",compile:function(e,t){if(!t.href&&!t.xlinkHref)return function(e,t){var n;"a"===t[0].nodeName.toLowerCase()&&(n="[object SVGAnimatedString]"===v.call(t.prop("href"))?"xlink:href":"href",t.on("click",function(e){t.attr(n)||e.preventDefault()}))}}}),ea={};me(jt,function(e,r){var i,t;function a(e,t,n){e.$watch(n[i],function(e){n.$set(r,!!e)})}"multiple"!==e&&(i=Mn("ng-"+r),t="checked"===e?function(e,t,n){n.ngModel!==n[i]&&a(e,0,n)}:a,ea[i]=function(){return{restrict:"A",priority:100,link:t}})}),me(Nt,function(e,i){ea[i]=function(){return{priority:100,link:function(e,t,n){if("ngPattern"===i&&"/"===n.ngPattern.charAt(0)){var r=n.ngPattern.match(a);if(r)return void n.$set("ngPattern",new RegExp(r[1],r[2]))}e.$watch(n[i],function(e){n.$set(i,e)})}}}}),me(["src","srcset","href"],function(o){var s=Mn("ng-"+o);ea[s]=["$sce",function(a){return{priority:99,link:function(e,t,n){var r=o,i=o;"href"===o&&"[object SVGAnimatedString]"===v.call(t.prop("href"))&&(n.$attr[i="xlinkHref"]="xlink:href",r=null),n.$set(s,a.getTrustedMediaUrl(n[s])),n.$observe(s,function(e){e?(n.$set(i,e),ye&&r&&t.prop(r,n[i])):"href"===o&&n.$set(i,null)})}}}]});var ta={$addControl:ke,$getControls:R([]),$$renameControl:function(e,t){e.$name=t},$removeControl:ke,$setValidity:ke,$setDirty:ke,$setPristine:ke,$setSubmitted:ke,$$setSubmitted:ke},na="ng-pending",ra="ng-submitted";function ia(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=ta,this.$$element=e,this.$$animate=r,ua(this)}ia.$inject=["$element","$attrs","$scope","$animate","$interpolate"],ia.prototype={$rollbackViewValue:function(){me(this.$$controls,function(e){e.$rollbackViewValue()})},$commitViewValue:function(){me(this.$$controls,function(e){e.$commitViewValue()})},$addControl:function(e){He(e.$name,"input"),this.$$controls.push(e),e.$name&&(this[e.$name]=e),e.$$parentForm=this},$getControls:function(){return Ye(this.$$controls)},$$renameControl:function(e,t){var n=e.$name;this[n]===e&&delete this[n],(this[t]=e).$name=t},$removeControl:function(n){n.$name&&this[n.$name]===n&&delete this[n.$name],me(this.$pending,function(e,t){this.$setValidity(t,null,n)},this),me(this.$error,function(e,t){this.$setValidity(t,null,n)},this),me(this.$$success,function(e,t){this.$setValidity(t,null,n)},this),De(this.$$controls,n),n.$$parentForm=ta},$setDirty:function(){this.$$animate.removeClass(this.$$element,no),this.$$animate.addClass(this.$$element,ro),this.$dirty=!0,this.$pristine=!1,this.$$parentForm.$setDirty()},$setPristine:function(){this.$$animate.setClass(this.$$element,no,ro+" "+ra),this.$dirty=!1,this.$pristine=!0,this.$submitted=!1,me(this.$$controls,function(e){e.$setPristine()})},$setUntouched:function(){me(this.$$controls,function(e){e.$setUntouched()})},$setSubmitted:function(){for(var e=this;e.$$parentForm&&e.$$parentForm!==ta;)e=e.$$parentForm;e.$$setSubmitted()},$$setSubmitted:function(){this.$$animate.addClass(this.$$element,ra),this.$submitted=!0,me(this.$$controls,function(e){e.$$setSubmitted&&e.$$setSubmitted()})}},ca({clazz:ia,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&&(De(r,n),0===r.length&&delete e[t])}});var aa=function(n){return["$timeout","$parse",function(u,t){return{name:"form",restrict:n?"EAC":"E",require:["form","^^?form"],controller:ia,compile:function(e,t){e.addClass(no).addClass(eo);var s=t.name?"name":!(!n||!t.ngForm)&&"ngForm";return{pre:function(t,e,n,r){var i,a=r[0];"action"in n||(e[0].addEventListener("submit",i=function(e){t.$apply(function(){a.$commitViewValue(),a.$setSubmitted()}),e.preventDefault()}),e.on("$destroy",function(){u(function(){e[0].removeEventListener("submit",i)},0,!1)})),(r[1]||a.$$parentForm).$addControl(a);var o=s?c(a.$name):ke;s&&(o(t,a),n.$observe(s,function(e){a.$name!==e&&(o(t,void 0),a.$$parentForm.$$renameControl(a,e),(o=c(a.$name))(t,a))})),e.on("$destroy",function(){a.$$parentForm.$removeControl(a),o(t,void 0),ve(a,ta)})}}}};function c(e){return""===e?t('this[""]').assign:t(e).assign||ke}}]},oa=aa(),sa=aa(!0);function ua(e){e.$$classCache={},e.$$classCache[to]=!(e.$$classCache[eo]=e.$$element.hasClass(eo))}function ca(e){var t=e.clazz,i=e.set,a=e.unset;function r(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 o(e,t,n){t=t?"-"+Be(t,"-"):"",r(e,eo+t,!0===n),r(e,to+t,!1===n)}t.prototype.$setValidity=function(e,t,n){(xe(t)?function(e,t,n,r){e[t]||(e[t]={});i(e[t],n,r)}:function(e,t,n,r){e[t]&&a(e[t],n,r);la(e[t])&&(e[t]=void 0)})(this,"$pending",e,n),Ce(t)?t?(a(this.$error,e,n),i(this.$$success,e,n)):(i(this.$error,e,n),a(this.$$success,e,n)):(a(this.$error,e,n),a(this.$$success,e,n)),this.$pending?(r(this,na,!0),this.$valid=this.$invalid=void 0,o(this,"",null)):(r(this,na,!1),this.$valid=la(this.$error),this.$invalid=!this.$valid,o(this,"",this.$valid)),o(this,e,n=this.$pending&&this.$pending[e]?void 0:!this.$error[e]&&(!!this.$$success[e]||null)),this.$$parentForm.$setValidity(e,n,this)}}function la(e){if(e)for(var t in e)if(e.hasOwnProperty(t))return!1;return!0}var fa=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/,ha=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,pa=/^(?=.{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])?)*$/,da=/^\s*(-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,ga=/^(\d{4,})-(\d{2})-(\d{2})$/,ma=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,va=/^(\d{4,})-W(\d\d)$/,n=/^(\d{4,})-(\d\d)$/,aa=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,ya="keydown wheel mousedown",ba=Ue();me("date,datetime-local,month,time,week".split(","),function(e){ba[e]=!0});var ka={text:function(e,t,n,r,i,a){xa(0,t,n,r,i,a),wa(r)},date:Sa("date",ga,$a(ga,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":Sa("datetimelocal",ma,$a(ma,["yyyy","MM","dd","HH","mm","ss","sss"]),"yyyy-MM-ddTHH:mm:ss.sss"),time:Sa("time",aa,$a(aa,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:Sa("week",va,function(e,t){if(M(e))return e;if(Se(e)){va.lastIndex=0;var n=va.exec(e);if(n){var r=+n[1],i=+n[2],a=0,o=0,s=0,e=0,n=ji(r),i=7*(i-1);return t&&(a=t.getHours(),o=t.getMinutes(),s=t.getSeconds(),e=t.getMilliseconds()),new Date(r,0,n.getDate()+i,a,o,s,e)}}return NaN},"yyyy-Www"),month:Sa("month",n,$a(n,["yyyy","MM"]),"yyyy-MM"),number:function(e,t,n,r,i,a,o,s){var u;{var c;_a(0,t,0,r,"number"),Ra(r),xa(0,t,n,r,i,a),(I(n.min)||n.ngMin)&&(c=n.min||s(n.ngMin)(e),u=Ia(c),r.$validators.min=function(e,t){return r.$isEmpty(t)||xe(u)||u<=t},n.$observe("min",function(e){e!==c&&(u=Ia(e),c=e,r.$validate())}))}{var l,f;(I(n.max)||n.ngMax)&&(l=n.max||s(n.ngMax)(e),f=Ia(l),r.$validators.max=function(e,t){return r.$isEmpty(t)||xe(f)||t<=f},n.$observe("max",function(e){e!==l&&(f=Ia(e),l=e,r.$validate())}))}{var h,p;(I(n.step)||n.ngStep)&&(h=n.step||s(n.ngStep)(e),p=Ia(h),r.$validators.step=function(e,t){return r.$isEmpty(t)||xe(p)||Oa(t,u||0,p)},n.$observe("step",function(e){e!==h&&(p=Ia(e),h=e,r.$validate())}))}},url:function(e,t,n,r,i,a){xa(0,t,n,r,i,a),wa(r),r.$validators.url=function(e,t){t=e||t;return r.$isEmpty(t)||ha.test(t)}},email:function(e,t,n,r,i,a){xa(0,t,n,r,i,a),wa(r),r.$validators.email=function(e,t){t=e||t;return r.$isEmpty(t)||pa.test(t)}},radio:function(e,n,r,i){var a=!r.ngTrim||"false"!==Oe(r.ngTrim);xe(r.name)&&n.attr("name",A());n.on("change",function(e){var t;n[0].checked&&(t=r.value,a&&(t=Oe(t)),i.$setViewValue(t,e&&e.type))}),i.$render=function(){var e=r.value;a&&(e=Oe(e)),n[0].checked=e===i.$viewValue},r.$observe("value",i.$render)},range:function(e,r,i,n,t,a){_a(0,r,0,n,"range"),Ra(n),xa(0,r,i,n,t,a);var o=n.$$hasNativeValidators&&"range"===r[0].type,s=o?0:void 0,u=o?100:void 0,c=o?1:void 0,l=r[0].validity,e=I(i.min),t=I(i.max),a=I(i.step),f=n.$render;n.$render=o&&I(l.rangeUnderflow)&&I(l.rangeOverflow)?function(){f(),n.$setViewValue(r.val())}:f,e&&(s=Ia(i.min),n.$validators.min=o?function(){return!0}:function(e,t){return n.$isEmpty(t)||xe(s)||s<=t},h("min",function(e){s=Ia(e),C(n.$modelValue)||(o?((e=r.val())<s&&(e=s,r.val(e)),n.$setViewValue(e)):n.$validate())}));t&&(u=Ia(i.max),n.$validators.max=o?function(){return!0}:function(e,t){return n.$isEmpty(t)||xe(u)||t<=u},h("max",function(e){u=Ia(e),C(n.$modelValue)||(o?(e=r.val(),u<e&&(r.val(u),e=u<s?s:u),n.$setViewValue(e)):n.$validate())}));a&&(c=Ia(i.step),n.$validators.step=o?function(){return!l.stepMismatch}:function(e,t){return n.$isEmpty(t)||xe(c)||Oa(t,s||0,c)},h("step",function(e){c=Ia(e),C(n.$modelValue)||(o?n.$viewValue!==r.val()&&n.$setViewValue(r.val()):n.$validate())}));function h(e,t){r.attr(e,i[e]);var n=i[e];i.$observe(e,function(e){e!==n&&t(n=e)})}},checkbox:function(e,t,n,r,i,a,o,s){var u=Ma(s,e,"ngTrueValue",n.ngTrueValue,!0),c=Ma(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 Ee(e,u)}),r.$parsers.push(function(e){return e?u:c})},hidden:ke,button:ke,submit:ke,reset:ke,file:ke};function wa(t){t.$formatters.push(function(e){return t.$isEmpty(e)?e:e.toString()})}function xa(e,n,r,i,t,a){var o,s,u=S(n[0].type);t.android||(o=!1,n.on("compositionstart",function(){o=!0}),n.on("compositionupdate",function(e){!xe(e.data)&&""!==e.data||(o=!1)}),n.on("compositionend",function(){o=!1,l()}));var c,l=function(e){var t;s&&(a.defer.cancel(s),s=null),o||(t=n.val(),e=e&&e.type,"password"===u||r.ngTrim&&"false"===r.ngTrim||(t=Oe(t)),(i.$viewValue!==t||""===t&&i.$$hasNativeValidators)&&i.$setViewValue(t,e))};t.hasEvent("input")?n.on("input",l):(c=function(e,t,n){s=s||a.defer(function(){s=null,t&&t.value===n||l(e)})},n.on("keydown",function(e){var t=e.keyCode;91===t||15<t&&t<19||37<=t&&t<=40||c(e,this,this.value)}),t.hasEvent("paste")&&n.on("paste cut drop",c)),n.on("change",l),ba[u]&&i.$$hasNativeValidators&&u===r.type&&n.on(ya,function(e){var t,n,r;s||(t=this[f],n=t.badInput,r=t.typeMismatch,s=a.defer(function(){s=null,t.badInput===n&&t.typeMismatch===r||l(e)}))}),i.$render=function(){var e=i.$isEmpty(i.$viewValue)?"":i.$viewValue;n.val()!==e&&n.val(e)}}function $a(r,i){return function(e,t){var n;if(M(e))return e;if(Se(e)){if('"'===e.charAt(0)&&'"'===e.charAt(e.length-1)&&(e=e.substring(1,e.length-1)),fa.test(e))return new Date(e);if(r.lastIndex=0,e=r.exec(e)){e.shift(),n=t?{yyyy:t.getFullYear(),MM:t.getMonth()+1,dd:t.getDate(),HH:t.getHours(),mm:t.getMinutes(),ss:t.getSeconds(),sss:t.getMilliseconds()/1e3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},me(e,function(e,t){t<i.length&&(n[i[t]]=+e)});e=new Date(n.yyyy,n.MM-1,n.dd,n.HH,n.mm,n.ss||0,1e3*n.sss||0);return n.yyyy<100&&e.setFullYear(n.yyyy),e}}return NaN}}function Sa(y,b,k,w){return function(e,t,n,r,i,a,o,s){_a(0,t,0,r,y),xa(0,t,n,r,i,a);var u,c,l,f,h,p,d="time"===y||"datetimelocal"===y;function g(e){return e&&(!e.getTime||e.getTime()===e.getTime())}function m(e){return I(e)&&!M(e)?v(e)||void 0:e}function v(e,t){var n=r.$options.getOption("timezone");c&&c!==n&&(t=Y(t,G(c)));t=k(e,t);return t=!isNaN(t)&&n?X(t,n):t}r.$parsers.push(function(e){return r.$isEmpty(e)?null:b.test(e)?v(e,u):void(r.$$parserName=y)}),r.$formatters.push(function(e){if(e&&!M(e))throw so("datefmt","Expected `{0}` to be a date",e);if(g(e)){u=e;var t=r.$options.getOption("timezone");return t&&(u=X(u,c=t,!0)),function(e,t){var n=w;d&&Se(r.$options.getOption("timeSecondsFormat"))&&(n=w.replace("ss.sss",r.$options.getOption("timeSecondsFormat")).replace(/:$/,""));t=o("date")(e,n,t);d&&r.$options.getOption("timeStripZeroSeconds")&&(t=t.replace(/(?::00)?(?:\.000)?$/,""));return t}(e,t)}return c=u=null,""}),(I(n.min)||n.ngMin)&&(l=n.min||s(n.ngMin)(e),f=m(l),r.$validators.min=function(e){return!g(e)||xe(f)||k(e)>=f},n.$observe("min",function(e){e!==l&&(f=m(e),l=e,r.$validate())})),(I(n.max)||n.ngMax)&&(h=n.max||s(n.ngMax)(e),p=m(h),r.$validators.max=function(e){return!g(e)||xe(p)||k(e)<=p},n.$observe("max",function(e){e!==h&&(p=m(e),h=e,r.$validate())}))}}function _a(e,n,t,r,i){var a=n[0];(r.$$hasNativeValidators=$e(a.validity))&&r.$parsers.push(function(e){var t=n.prop(f)||{};if(!t.badInput&&!t.typeMismatch)return e;r.$$parserName=i})}function Ra(t){t.$parsers.push(function(e){return t.$isEmpty(e)?null:da.test(e)?parseFloat(e):void(t.$$parserName="number")}),t.$formatters.push(function(e){if(!t.$isEmpty(e)){if(!O(e))throw so("numfmt","Expected `{0}` to be a number",e);e=e.toString()}return e})}function Ia(e){return I(e)&&!O(e)&&(e=parseFloat(e)),C(e)?void 0:e}function Aa(e){return(0|e)===e}function Ca(e){var t=e.toString(),n=t.indexOf(".");if(-1!==n)return t.length-n-1;if(-1<e&&e<1){t=/e-(\d+)$/.exec(t);if(t)return Number(t[1])}return 0}function Oa(e,t,n){var r,i,a=Number(e),o=!Aa(a),s=!Aa(t),u=!Aa(n);return(o||s||u)&&(r=o?Ca(a):0,i=s?Ca(t):0,e=u?Ca(n):0,e=Math.max(r,i,e),a*=e=Math.pow(10,e),t*=e,n*=e,o&&(a=Math.round(a)),s&&(t=Math.round(t)),u&&(n=Math.round(n))),(a-t)%n==0}function Ma(e,t,n,r,i){if(I(r)){if(!(e=e(r)).constant)throw so("constexpr","Expected constant expression for `{0}`, but saw `{1}`.",n,r);return e(t)}return i}function Da(){var i={configurable:!0,enumerable:!1,get:function(){return this.getAttribute("value")||""},set:function(e){this.setAttribute("value",e)}};return{restrict:"E",priority:200,compile:function(e,t){if("hidden"===S(t.type))return{pre:function(e,t,n,r){t=t[0];t.parentNode&&t.parentNode.insertBefore(t,t.nextSibling),Object.defineProperty&&Object.defineProperty(t,"value",i)}}}}}function Ta(){function r(e,t,n){var r=I(n)?n:9===ye?"":null;e.prop("value",r),t.$set("value",n)}return{restrict:"A",priority:100,compile:function(e,t){return Pa.test(t.ngValue)?function(e,t,n){r(t,n,e.$eval(n.ngValue))}:function(e,t,n){e.$watch(n.ngValue,function(e){r(t,n,e)})}}}}var Ea=["$browser","$sniffer","$filter","$parse",function(i,a,o,s){return{restrict:"E",require:["?ngModel"],link:{pre:function(e,t,n,r){r[0]&&(ka[S(n.type)]||ka.text)(e,t,n,r[0],a,i,o,s)}}}}],Pa=/^(true|false|\d+)$/,Fa=["$compile",function(r){return{restrict:"AC",compile:function(e){return r.$$addBindingClass(e),function(e,t,n){r.$$addBindingInfo(t,n.ngBind),t=t[0],e.$watch(n.ngBind,function(e){t.textContent=Ve(e)})}}}}],La=["$interpolate","$compile",function(i,a){return{compile:function(e){return a.$$addBindingClass(e),function(e,t,n){var r=i(t.attr(n.$attr.ngBindTemplate));a.$$addBindingInfo(t,r.expressions),t=t[0],n.$observe("ngBindTemplate",function(e){t.textContent=xe(e)?"":e})}}}}],Ba=["$sce","$parse","$compile",function(a,n,o){return{restrict:"A",compile:function(e,t){var r=n(t.ngBindHtml),i=n(t.ngBindHtml,function(e){return a.valueOf(e)});return o.$$addBindingClass(e),function(t,n,e){o.$$addBindingInfo(n,e.ngBindHtml),t.$watch(i,function(){var e=r(t);n.html(a.getTrustedHtml(e)||"")})}}}}],ja=R({restrict:"A",require:"ngModel",link:function(e,t,n,r){r.$viewChangeListeners.push(function(){e.$eval(n.ngChange)})}});function Ha(u,c){var l;return u="ngClass"+u,["$parse",function(s){return{restrict:"AC",link:function(e,t,r){var n,i=t.data("$classCounts"),a=!0;function o(e,t){var n=[];return me(e,function(e){(0<t||i[e])&&(i[e]=(i[e]||0)+t,i[e]===+(0<t)&&n.push(e))}),n.join(" ")}i||(i=Ue(),t.data("$classCounts",i)),"ngClass"!==u&&(l=l||s("$index",function(e){return 1&e}),e.$watch(l,function(e){(e===c?function(e){e=o(h(e),1),r.$addClass(e)}:function(e){e=o(h(e),-1),r.$removeClass(e)})(n);a=e})),e.$watch(s(r[u],p),function(e){a===c&&function(e,t){var n=h(e),e=h(t),t=f(n,e),n=f(e,n),t=o(t,-1),n=o(n,1);r.$addClass(n),r.$removeClass(t)}(n,e);n=e})}}}];function f(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 h(e){return e&&e.split(" ")}function p(t){if(!t)return t;var e=t;return _e(t)?e=t.map(p).join(" "):$e(t)?e=Object.keys(t).filter(function(e){return t[e]}).join(" "):Se(t)||(e=t+""),e}}var Na=Ha("",!0),Ua=Ha("Odd",0),Va=Ha("Even",1),za=Zi({compile:function(e,t){t.$set("ngCloak",void 0),e.removeClass("ng-cloak")}}),qa=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Ka={},Wa={blur:!0,focus:!0};function Ja(n,i,a,o,s,u){return{restrict:"A",compile:function(e,t){var r=n(t[o]);return function(n,e){e.on(s,function(e){function t(){r(n,{$event:e})}if(i.$$phase)if(u)n.$evalAsync(t);else try{t()}catch(e){a(e)}else n.$apply(t)})}}}}me("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(r){var i=Mn("ng-"+r);Ka[i]=["$parse","$rootScope","$exceptionHandler",function(e,t,n){return Ja(e,t,n,i,r,Wa[r])}]});function Ga(){return{restrict:"A",priority:100,require:"ngModel",link:function(e,t,n,r){var i=n.ngList||", ",a="false"!==n.ngTrim,o=a?Oe(i):i;r.$parsers.push(function(e){if(!xe(e)){var t=[];return e&&me(e.split(o),function(e){e&&t.push(a?Oe(e):e)}),t}}),r.$formatters.push(function(e){if(_e(e))return e.join(i)}),r.$isEmpty=function(e){return!e||!e.length}}}}var Ya=["$animate","$compile",function(u,c){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(e,n,r,t,i){var a,o,s;e.$watch(r.ngIf,function(e){e?o||i(function(e,t){o=t,e[e.length++]=c.$$createComment("end ngIf",r.ngIf),a={clone:e},u.enter(e,n.parent(),n)}):(s&&(s.remove(),s=null),o&&(o.$destroy(),o=null),a&&(s=Ne(a.clone),u.leave(s).done(function(e){!1!==e&&(s=null)}),a=null))})}}}],Xa=["$templateRequest","$anchorScroll","$animate",function(g,m,v){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:b.noop,compile:function(e,t){var n=t.ngInclude||t.src,p=t.onload||"",d=t.autoscroll;return function(a,o,e,s,u){function c(){t&&(t.remove(),t=null),l&&(l.$destroy(),l=null),f&&(v.leave(f).done(function(e){!1!==e&&(t=null)}),t=f,f=null)}var l,t,f,h=0;a.$watch(n,function(n){function r(e){!1===e||!I(d)||d&&!a.$eval(d)||m()}var i=++h;n?(g(n,!0).then(function(e){var t;a.$$destroyed||i===h&&(t=a.$new(),s.template=e,e=u(t,function(e){c(),v.enter(e,null,o).done(r)}),f=e,(l=t).$emit("$includeContentLoaded",n),a.$eval(p))},function(){a.$$destroyed||i===h&&(c(),a.$emit("$includeContentError",n))}),a.$emit("$includeContentRequested",n)):(c(),s.template=null)})}}}}],Za=["$compile",function(i){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(e,t,n,r){if(v.call(t[0]).match(/SVG/))return t.empty(),void i(yt(r.template,de.document).childNodes)(e,function(e){t.append(e)},{futureParentElement:t});t.html(r.template),i(t.contents())(e)}}}],Qa=Zi({priority:450,compile:function(){return{pre:function(e,t,n){e.$eval(n.ngInit)}}}}),eo="ng-valid",to="ng-invalid",no="ng-pristine",ro="ng-dirty",io="ng-untouched",ao="ng-touched",oo="ng-not-empty",so=$("ngModel");function uo(e,t,n,r,i,a,o,s,u){var c;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=u(n.name||"",!1)(e),this.$$parentForm=ta,this.$options=po,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,ua(this),(c=this).$$scope.$watch(function(e){e=c.$$ngModelGet(e);return e===c.$modelValue||c.$modelValue!=c.$modelValue&&e!=e||c.$$setModelValue(e),e})}uo.$inject=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$q","$interpolate"],uo.prototype={$$initGetterSetters:function(){if(this.$options.getOption("getterSetter")){var n=this.$$parse(this.$$attr.ngModel+"()"),r=this.$$parse(this.$$attr.ngModel+"($$$p)");this.$$ngModelGet=function(e){var t=this.$$parsedNgModel(e);return t=Ie(t)?n(e):t},this.$$ngModelSet=function(e,t){Ie(this.$$parsedNgModel(e))?r(e,{$$$p:t}):this.$$parsedNgModelAssign(e,t)}}else if(!this.$$parsedNgModel.assign)throw so("nonassign","Expression '{0}' is non-assignable. Element: {1}",this.$$attr.ngModel,Le(this.$$element))},$render:ke,$isEmpty:function(e){return xe(e)||""===e||null===e||e!=e},$$updateEmptyClasses:function(e){this.$isEmpty(e)?(this.$$animate.removeClass(this.$$element,oo),this.$$animate.addClass(this.$$element,"ng-empty")):(this.$$animate.removeClass(this.$$element,"ng-empty"),this.$$animate.addClass(this.$$element,oo))},$setPristine:function(){this.$dirty=!1,this.$pristine=!0,this.$$animate.removeClass(this.$$element,ro),this.$$animate.addClass(this.$$element,no)},$setDirty:function(){this.$dirty=!0,this.$pristine=!1,this.$$animate.removeClass(this.$$element,no),this.$$animate.addClass(this.$$element,ro),this.$$parentForm.$setDirty()},$setUntouched:function(){this.$touched=!1,this.$untouched=!0,this.$$animate.setClass(this.$$element,io,ao)},$setTouched:function(){this.$touched=!0,this.$untouched=!1,this.$$animate.setClass(this.$$element,ao,io)},$rollbackViewValue:function(){this.$$timeout.cancel(this.$$pendingDebounce),this.$viewValue=this.$$lastCommittedViewValue,this.$render()},$validate:function(){var e,t,n,r,i,a;C(this.$modelValue)||(e=this.$$lastCommittedViewValue,t=this.$$rawModelValue,n=this.$valid,r=this.$modelValue,i=this.$options.getOption("allowInvalid"),(a=this).$$runValidators(t,e,function(e){i||n===e||(a.$modelValue=e?t:void 0,a.$modelValue!==r&&a.$$writeModelToScope())}))},$$runValidators:function(n,r,t){this.$$currentValidationRunId++;var i,a,o,s=this.$$currentValidationRunId,u=this;function c(e,t){s===u.$$currentValidationRunId&&u.$setValidity(e,t)}function e(e){s===u.$$currentValidationRunId&&t(e)}!function(){var e=u.$$parserName;{if(!xe(u.$$parserValid))return u.$$parserValid||(me(u.$validators,function(e,t){c(t,null)}),me(u.$asyncValidators,function(e,t){c(t,null)})),c(e,u.$$parserValid),u.$$parserValid;c(e,null)}return!0}()?e(!1):(i=!0,me(u.$validators,function(e,t){e=Boolean(e(n,r));i=i&&e,c(t,e)}),i||(me(u.$asyncValidators,function(e,t){c(t,null)}),0)?(a=[],o=!0,me(u.$asyncValidators,function(e,t){e=e(n,r);if(!P(e))throw so("nopromise","Expected asynchronous validator to return a promise but got '{0}' instead.",e);c(t,void 0),a.push(e.then(function(){c(t,!0)},function(){c(t,o=!1)}))}),a.length?u.$$q.all(a).then(function(){e(o)},ke):e(!0)):e(!1))},$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 t=this.$$lastCommittedViewValue,n=this;if(this.$$parserValid=!xe(t)||void 0,this.$setValidity(this.$$parserName,null),this.$$parserName="parse",this.$$parserValid)for(var e=0;e<this.$parsers.length;e++)if(xe(t=this.$parsers[e](t))){this.$$parserValid=!1;break}C(this.$modelValue)&&(this.$modelValue=this.$$ngModelGet(this.$$scope));var r=this.$modelValue,i=this.$options.getOption("allowInvalid");function a(){n.$modelValue!==r&&n.$$writeModelToScope()}this.$$rawModelValue=t,i&&(this.$modelValue=t,a()),this.$$runValidators(t,this.$$lastCommittedViewValue,function(e){i||(n.$modelValue=e?t:void 0,a())})},$$writeModelToScope:function(){this.$$ngModelSet(this.$$scope,this.$modelValue),me(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");O(t[e])?t=t[e]:O(t.default)&&-1===this.$options.getOption("updateOn").indexOf(e)?t=t.default:O(t["*"])&&(t=t["*"]),this.$$timeout.cancel(this.$$pendingDebounce);var n=this;0<t?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,ke))},$$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)}},ca({clazz:uo,set:function(e,t){e[t]=!0},unset:function(e,t){delete e[t]}});var co=["$rootScope",function(o){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:uo,priority:1,compile:function(e){return e.addClass(no).addClass(io).addClass(eo),{pre:function(e,t,n,r){var i=r[0],a=r[1]||i.$$parentForm,r=r[2];r&&(i.$options=r.$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(e,t,n,r){var i=r[0];function a(){i.$setTouched()}i.$$setUpdateOnEvents(),t.on("blur",function(){i.$touched||(o.$$phase?e.$evalAsync(a):e.$apply(a))})}}}}}],lo=/(\s+|^)default(\s+|$)/;function fo(e){this.$$options=e}fo.prototype={getOption:function(e){return this.$$options[e]},createChild:function(n){var r=!1;return me(n=ve({},n),function(e,t){"$inherit"===e?"*"===t?r=!0:(n[t]=this.$$options[t],"updateOn"===t&&(n.updateOnDefault=this.$$options.updateOnDefault)):"updateOn"===t&&(n.updateOnDefault=!1,n[t]=Oe(e.replace(lo,function(){return n.updateOnDefault=!0," "})))},this),r&&(delete n["*"],go(n,this.$$options)),go(n,po.$$options),new fo(n)}};function ho(){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:po,t=this.$$scope.$eval(this.$$attrs.ngModelOptions);this.$options=e.createChild(t)}},{restrict:"A",priority:10,require:{parentCtrl:"?^^ngModelOptions"},bindToController:!0,controller:e}}var po=new fo({updateOn:"",updateOnDefault:!0,debounce:0,getterSetter:!1,allowInvalid:!1,timezone:null});function go(n,e){me(e,function(e,t){I(n[t])||(n[t]=e)})}var mo=Zi({terminal:!0,priority:1e3}),vo=$("ngOptions"),yo=/^\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]+?))?$/,bo=["$compile","$document","$parse",function(g,m,o){function v(e,t,c){var s=e.match(yo);if(!s)throw vo("iexp","Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}",e,Le(t));function l(e,t){return p(e,y(e,t))}var n=s[5]||s[7],r=s[6],e=/ as /.test(s[0])&&s[1],f=s[9],t=o(s[2]?s[1]:n),h=e&&o(e)||t,i=f&&o(f),p=f?function(e,t){return i(c,t)}:function(e){return Jt(e)},d=o(s[2]||s[1]),g=o(s[3]||""),m=o(s[4]||""),v=o(s[8]),a={},y=r?function(e,t){return a[r]=t,a[n]=e,a}:function(e){return a[n]=e,a};function b(e,t,n,r,i){this.selectValue=e,this.viewValue=t,this.label=n,this.group=r,this.disabled=i}function k(e){var t;if(!r&&E(e))t=e;else for(var n in t=[],e)e.hasOwnProperty(n)&&"$"!==n.charAt(0)&&t.push(n);return t}return{trackBy:f,getTrackByValue:l,getWatchables:o(v,function(e){for(var t=[],n=k(e=e||[]),r=n.length,i=0;i<r;i++){var a=e===n?i:n[i],o=e[a],a=y(o,a),o=p(o,a);t.push(o),(s[2]||s[1])&&(o=d(c,a),t.push(o)),s[4]&&(a=m(c,a),t.push(a))}return t}),getOptions:function(){for(var e=[],t={},n=v(c)||[],r=k(n),i=r.length,a=0;a<i;a++){var o=n===r?a:r[a],s=n[o],u=y(s,o),s=h(c,u),o=p(s,u),u=new b(o,s,d(c,u),g(c,u),m(c,u));e.push(u),t[o]=u}return{items:e,selectValueMap:t,getOptionFromViewValue:function(e){return t[l(e)]},getViewValueFromOption:function(e){return f?H(e.viewValue):e.viewValue}}}}}var y=de.document.createElement("option"),b=de.document.createElement("optgroup");return{restrict:"A",terminal:!0,require:["select","ngModel"],link:{pre:function(e,t,n,r){r[0].registerOption=ke},post:function(e,a,t,n){for(var o=n[0],s=n[1],u=t.multiple,r=0,i=a.children(),c=i.length;r<c;r++)if(""===i[r].value){o.hasEmptyOption=!0,o.emptyOption=i.eq(r);break}a.empty();var l,n=!!o.emptyOption;ge(y.cloneNode(!1)).val("?");var f=v(t.ngOptions,a,e),h=m[0].createDocumentFragment();function p(e,t){var n=y.cloneNode(!1);t.appendChild(n),function(e,t){(e.element=t).disabled=e.disabled,e.label!==t.label&&(t.label=e.label,t.textContent=e.label);t.value=e.selectValue}(e,n)}function d(e){var t=l.getOptionFromViewValue(e),e=t&&t.element;return e&&!e.selected&&(e.selected=!0),t}o.generateUnknownOptionValue=function(e){return"?"},u?(o.writeValue=function(e){var t;l&&(t=e&&e.map(d)||[],l.items.forEach(function(e){e.element.selected&&!j(t,e)&&(e.element.selected=!1)}))},o.readValue=function(){var e=a.val()||[],t=[];return me(e,function(e){e=l.selectValueMap[e];e&&!e.disabled&&t.push(l.getViewValueFromOption(e))}),t},f.trackBy&&e.$watchCollection(function(){if(_e(s.$viewValue))return s.$viewValue.map(function(e){return f.getTrackByValue(e)})},function(){s.$render()})):(o.writeValue=function(e){var t,n;l&&(t=a[0].options[a[0].selectedIndex],n=l.getOptionFromViewValue(e),t&&t.removeAttribute("selected"),n?(a[0].value!==n.selectValue&&(o.removeUnknownOption(),a[0].value=n.selectValue,n.element.selected=!0),n.element.setAttribute("selected","selected")):o.selectUnknownOrEmptyOption(e))},o.readValue=function(){var e=l.selectValueMap[a.val()];return e&&!e.disabled?(o.unselectEmptyOption(),o.removeUnknownOption(),l.getViewValueFromOption(e)):null},f.trackBy&&e.$watch(function(){return f.getTrackByValue(s.$viewValue)},function(){s.$render()})),n&&(g(o.emptyOption)(e),a.prepend(o.emptyOption),o.emptyOption[0].nodeType===Ke?(o.hasEmptyOption=!1,o.registerOption=function(e,t){""===t.val()&&(o.hasEmptyOption=!0,o.emptyOption=t,o.emptyOption.removeClass("ng-scope"),s.$render(),t.on("$destroy",function(){var e=o.$isEmptyOptionSelected();o.hasEmptyOption=!1,o.emptyOption=void 0,e&&s.$render()}))}):o.emptyOption.removeClass("ng-scope")),e.$watchCollection(f.getWatchables,function(){var e=l&&o.readValue();if(l)for(var t=l.items.length-1;0<=t;t--){var n=l.items[t];I(n.group)?Ft(n.element.parentNode):Ft(n.element)}l=f.getOptions();var r={};{var i;l.items.forEach(function(e){var t;I(e.group)?((t=r[e.group])||(t=b.cloneNode(!1),h.appendChild(t),t.label=null===e.group?"null":e.group,r[e.group]=t),p(e,t)):p(e,h)}),a[0].appendChild(h),s.$render(),s.$isEmpty(e)||(i=o.readValue(),(f.trackBy||u?Ee(e,i):e===i)||(s.$setViewValue(i),s.$render()))}})}}}}],ko=["$locale","$interpolate","$log",function(d,g,m){var v=/{}/g,y=/^when(Minus)?(.+)$/;return{link:function(r,i,a){var o,e=a.count,s=a.$attr.when&&i.attr(a.$attr.when),u=a.offset||0,c=r.$eval(s)||{},l={},t=g.startSymbol(),n=g.endSymbol(),f=t+e+"-"+u+n,h=b.noop;function p(e){i.text(e||"")}me(a,function(e,t){var n=y.exec(t);n&&(n=(n[1]?"-":"")+S(n[2]),c[n]=i.attr(a.$attr[t]))}),me(c,function(e,t){l[t]=g(e.replace(v,f))}),r.$watch(e,function(e){var t=parseFloat(e),n=C(t);(t=!(n||t in c)?d.pluralCat(t-u):t)===o||n&&C(o)||(h(),xe(n=l[t])?(null!=e&&m.debug("ngPluralize: no rule defined for '"+t+"' in "+s),h=ke,p()):h=r.$watch(n,p),o=t)})}}}],wo=$("ngRef"),xo=["$parse",function(t){return{priority:-1,restrict:"A",compile:function(e,i){var a=Mn(Me(e)),o=t(i.ngRef),s=o.assign||function(){throw wo("nonassign",'Expression in ngRef="{0}" is non-assignable!',i.ngRef)};return function(e,t,n){var r;if(n.hasOwnProperty("ngRefRead")){if("$element"===n.ngRefRead)r=t;else if(!(r=t.data("$"+n.ngRefRead+"Controller")))throw wo("noctrl",'The controller for ngRefRead="{0}" could not be found on ngRef="{1}"',n.ngRefRead,i.ngRef)}else r=t.data("$"+a+"Controller");s(e,r=r||t),t.on("$destroy",function(){o(e)===r&&s(e,null)})}}}}],$o=["$parse","$animate","$compile",function(o,A,s){function C(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))}function O(e,t,n){return Jt(n)}function M(e,t){return t}var D="$$NG_REMOVED",T=$("ngRepeat");return{restrict:"A",multiElement:!0,transclude:"element",priority:1e3,terminal:!0,$$tlb:!0,compile:function(e,t){var w=t.ngRepeat,x=s.$$createComment("end ngRepeat",w),n=w.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);if(!n)throw T("iexp","Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.",w);var r=n[1],i=n[2],$=n[3],t=n[4];if(!(n=r.match(/^(?:(\s*[$\w]+)|\(\s*([$\w]+)\s*,\s*([$\w]+)\s*\))$/)))throw T("iidexp","'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'.",r);var S,a,_,R=n[3]||n[1],I=n[2];if($&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test($)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test($)))throw T("badident","alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.",$);return t&&(S={$id:Jt},a=o(t),_=function(e,t,n,r){return I&&(S[I]=t),S[R]=n,S.$index=r,a(e,S)}),function(v,y,e,t,b){var k=Ue();v.$watchCollection(i,function(e){var n,t,r,i,a,o,s,u,c,l,f,h,p,d=y[0],g=Ue();if($&&(v[$]=e),E(e))c=e,u=_||O;else for(var m in u=_||M,c=[],e)z.call(e,m)&&"$"!==m.charAt(0)&&c.push(m);for(i=c.length,f=new Array(i),n=0;n<i;n++)if(a=e===c?n:c[n],o=e[a],s=u(v,a,o,n),k[s])l=k[s],delete k[s],g[s]=l,f[n]=l;else{if(g[s])throw me(f,function(e){e&&e.scope&&(k[e.id]=e)}),T("dupes","Duplicates in a repeater are not allowed. Use 'track by' expression to specify unique keys. Repeater: {0}, Duplicate key: {1}, Duplicate value: {2}",w,s,o);f[n]={id:s,scope:void 0,clone:void 0},g[s]=!0}for(p in S&&(S[R]=void 0),k){if(h=Ne((l=k[p]).clone),A.leave(h),h[0].parentNode)for(n=0,t=h.length;n<t;n++)h[n][D]=!0;l.scope.$destroy()}for(n=0;n<i;n++)if(a=e===c?n:c[n],o=e[a],(l=f[n]).scope){for(r=d;(r=r.nextSibling)&&r[D];);l.clone[0]!==r&&A.move(Ne(l.clone),null,d),d=l.clone[l.clone.length-1],C(l.scope,n,R,o,I,a,i)}else b(function(e,t){l.scope=t;t=x.cloneNode(!1);e[e.length++]=t,A.enter(e,null,d),d=t,l.clone=e,g[l.id]=l,C(l.scope,n,R,o,I,a,i)});k=g})}}}}],So="ng-hide-animate",_o=["$animate",function(r){return{restrict:"A",multiElement:!0,link:function(e,t,n){e.$watch(n.ngShow,function(e){r[e?"removeClass":"addClass"](t,"ng-hide",{tempClasses:So})})}}}],Ro=["$animate",function(r){return{restrict:"A",multiElement:!0,link:function(e,t,n){e.$watch(n.ngHide,function(e){r[e?"addClass":"removeClass"](t,"ng-hide",{tempClasses:So})})}}}],Io=Zi(function(e,n,t){e.$watchCollection(t.ngStyle,function(e,t){t&&e!==t&&me(t,function(e,t){n.css(t,"")}),e&&n.css(e)})}),Ao=["$animate","$compile",function(c,l){return{require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(e,t,n,i){var a,n=n.ngSwitch||n.on,o=[],s=[],u=[];e.$watch(n,function(e){for(var t,n;s.length;)c.cancel(s.pop());for(t=0,n=u.length;t<n;++t){var r=Ne(o[t].clone);u[t].$destroy(),(s[t]=c.leave(r)).done(function(t,n){return function(e){!1!==e&&t.splice(n,1)}}(s,t))}o.length=0,u.length=0,(a=i.cases["!"+e]||i.cases["?"])&&me(a,function(n){n.transclude(function(e,t){u.push(t);t=n.element;e[e.length++]=l.$$createComment("end ngSwitchWhen"),o.push({clone:e}),c.enter(e,t.parent(),t)})})})}}}],Co=Zi({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(e,t,n,r,i){me(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})})}}),Oo=Zi({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})}}),Mo=$("ngTransclude"),Do=["$compile",function(t){return{restrict:"EAC",compile:function(e){var o=t(e.contents());return e.empty(),function(e,n,t,r,i){if(!i)throw Mo("orphan","Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}",Le(n));t.ngTransclude===t.$attr.ngTransclude&&(t.ngTransclude="");t=t.ngTransclude||t.ngTranscludeSlot;function a(){o(e,function(e){n.append(e)})}i(function(e,t){e.length&&function(e){for(var t=0,n=e.length;t<n;t++){var r=e[t];if(r.nodeType!==qe||r.nodeValue.trim())return!0}}(e)?n.append(e):(a(),t.$destroy())},null,t),t&&!i.isSlotFilled(t)&&a()}}}}],To=["$templateCache",function(n){return{restrict:"E",terminal:!0,compile:function(e,t){"text/ng-template"===t.type&&(t=t.id,e=e[0].text,n.put(t,e))}}}],Eo={$setViewValue:ke,$render:ke};function Po(e,t){e.prop("selected",t),e.attr("selected",t)}function Fo(){return{restrict:"E",require:["select","?ngModel"],controller:jo,priority:1,link:{pre:function(e,r,t,n){var i,a,o=n[0],s=n[1];s?(o.ngModelCtrl=s,r.on("change",function(){o.removeUnknownOption(),e.$apply(function(){s.$setViewValue(o.readValue())})}),t.multiple&&(o.multiple=!0,o.readValue=function(){var t=[];return me(r.find("option"),function(e){e.selected&&!e.disabled&&(e=e.value,t.push(e in o.selectValueMap?o.selectValueMap[e]:e))}),t},o.writeValue=function(n){me(r.find("option"),function(e){var t=!!n&&(j(n,e.value)||j(n,o.selectValueMap[e.value]));t!==e.selected&&Po(ge(e),t)})},a=NaN,e.$watch(function(){a!==s.$viewValue||Ee(i,s.$viewValue)||(i=Ye(s.$viewValue),s.$render()),a=s.$viewValue}),s.$isEmpty=function(e){return!e||0===e.length})):o.registerOption=ke},post:function(e,t,n,r){var i,a=r[1];a&&(i=r[0],a.$render=function(){i.writeValue(a.$viewValue)})}}}}var Lo,Bo,jo=["$element","$scope",function(n,t){var s=this,r=new Xt;s.selectValueMap={},s.ngModelCtrl=Eo,s.multiple=!1,s.unknownOption=ge(de.document.createElement("option")),s.hasEmptyOption=!1,s.emptyOption=void 0,s.renderUnknownOption=function(e){e=s.generateUnknownOptionValue(e);s.unknownOption.val(e),n.prepend(s.unknownOption),Po(s.unknownOption,!0),n.val(e)},s.updateUnknownOption=function(e){e=s.generateUnknownOptionValue(e);s.unknownOption.val(e),Po(s.unknownOption,!0),n.val(e)},s.generateUnknownOptionValue=function(e){return"? "+Jt(e)+" ?"},s.removeUnknownOption=function(){s.unknownOption.parent()&&s.unknownOption.remove()},s.selectEmptyOption=function(){s.emptyOption&&(n.val(""),Po(s.emptyOption,!0))},s.unselectEmptyOption=function(){s.hasEmptyOption&&Po(s.emptyOption,!1)},t.$on("$destroy",function(){s.renderUnknownOption=ke}),s.readValue=function(){var e=n.val(),e=e in s.selectValueMap?s.selectValueMap[e]:e;return s.hasOption(e)?e:null},s.writeValue=function(e){var t=n[0].options[n[0].selectedIndex];t&&Po(ge(t),!1),s.hasOption(e)?(s.removeUnknownOption(),t=Jt(e),n.val(t in s.selectValueMap?t:e),t=n[0].options[n[0].selectedIndex],Po(ge(t),!0)):s.selectUnknownOrEmptyOption(e)},s.addOption=function(e,t){t[0].nodeType!==Ke&&(He(e,'"option value"'),""===e&&(s.hasEmptyOption=!0,s.emptyOption=t),t=r.get(e)||0,r.set(e,t+1),u())},s.removeOption=function(e){var t=r.get(e);t&&(1===t?(r.delete(e),""===e&&(s.hasEmptyOption=!1,s.emptyOption=void 0)):r.set(e,t-1))},s.hasOption=function(e){return!!r.get(e)},s.$hasEmptyOption=function(){return s.hasEmptyOption},s.$isUnknownOptionSelected=function(){return n[0].options[0]===s.unknownOption[0]},s.$isEmptyOptionSelected=function(){return s.hasEmptyOption&&n[0].options[n[0].selectedIndex]===s.emptyOption[0]};var e=!(s.selectUnknownOrEmptyOption=function(e){null==e&&s.emptyOption?(s.removeUnknownOption(),s.selectEmptyOption()):s.unknownOption.parent().length?s.updateUnknownOption(e):s.renderUnknownOption(e)});function u(){e||(e=!0,t.$$postDigest(function(){e=!1,s.ngModelCtrl.$render()}))}var i=!1;function c(e){i||(i=!0,t.$$postDigest(function(){t.$$destroyed||(i=!1,s.ngModelCtrl.$setViewValue(s.readValue()),e&&s.ngModelCtrl.$render())}))}s.registerOption=function(e,r,i,t,n){var a,o;i.$attr.ngValue?i.$observe("value",function(e){var t,n=r.prop("selected");I(o)&&(s.removeOption(a),delete s.selectValueMap[o],t=!0),o=Jt(e),a=e,s.selectValueMap[o]=e,s.addOption(e,r),r.attr("value",o),t&&n&&c()}):t?i.$observe("value",function(e){var t;s.readValue();var n=r.prop("selected");I(a)&&(s.removeOption(a),t=!0),a=e,s.addOption(e,r),t&&n&&c()}):n?e.$watch(n,function(e,t){i.$set("value",e);var n=r.prop("selected");t!==e&&s.removeOption(t),s.addOption(e,r),t&&n&&c()}):s.addOption(i.value,r),i.$observe("disabled",function(e){("true"===e||e&&r.prop("selected"))&&(s.multiple?c(!0):(s.ngModelCtrl.$setViewValue(null),s.ngModelCtrl.$render()))}),r.on("$destroy",function(){var e=s.readValue(),t=i.value;s.removeOption(t),u(),(s.multiple&&e&&-1!==e.indexOf(t)||e===t)&&c(!0)})}}],Ho=["$interpolate",function(n){return{restrict:"E",priority:100,compile:function(e,t){var a,o;return I(t.ngValue)||(I(t.value)?a=n(t.value,!0):(o=n(e.text(),!0))||t.$set("value",e.text())),function(e,t,n){var r="$selectController",i=t.parent(),r=i.data(r)||i.parent().data(r);r&&r.registerOption(e,t,n,a,o)}}}}],No=["$parse",function(a){return{restrict:"A",require:"?ngModel",link:function(e,t,n,r){var i;r&&(i=n.hasOwnProperty("required")||a(n.ngRequired)(e),n.ngRequired||(n.required=!0),r.$validators.required=function(e,t){return!i||!r.$isEmpty(t)},n.$observe("required",function(e){i!==e&&(i=e,r.$validate())}))}}}],Uo=["$parse",function(n){return{restrict:"A",require:"?ngModel",compile:function(e,t){var o,s;return t.ngPattern&&(o=t.ngPattern,s="/"===t.ngPattern.charAt(0)&&a.test(t.ngPattern)?function(){return t.ngPattern}:n(t.ngPattern)),function(e,n,t,r){var i,a;r&&(i=t.pattern,t.ngPattern?i=s(e):o=t.pattern,a=qo(i,o,n),t.$observe("pattern",function(e){var t=a;a=qo(e,o,n),(t&&t.toString())!==(a&&a.toString())&&r.$validate()}),r.$validators.pattern=function(e,t){return r.$isEmpty(t)||xe(a)||a.test(t)})}}}}],Vo=["$parse",function(o){return{restrict:"A",require:"?ngModel",link:function(e,t,n,r){var i,a;r&&(i=n.maxlength||o(n.ngMaxlength)(e),a=Ko(i),n.$observe("maxlength",function(e){i!==e&&(a=Ko(e),i=e,r.$validate())}),r.$validators.maxlength=function(e,t){return a<0||r.$isEmpty(t)||t.length<=a})}}}],zo=["$parse",function(o){return{restrict:"A",require:"?ngModel",link:function(e,t,n,r){var i,a;r&&(i=n.minlength||o(n.ngMinlength)(e),a=Ko(i)||-1,n.$observe("minlength",function(e){i!==e&&(a=Ko(e)||-1,i=e,r.$validate())}),r.$validators.minlength=function(e,t){return r.$isEmpty(t)||t.length>=a})}}}];function qo(e,t,n){if(e){if(!(e=Se(e)?new RegExp("^"+e+"$"):e).test)throw $("ngPattern")("noregexp","Expected {0} to be a RegExp but was {1}. Element: {2}",t,e,Le(n));return e}}function Ko(e){e=w(e);return C(e)?-1:e}de.angular.bootstrap?de.console&&console.log("WARNING: Tried to load AngularJS more than once."):(fe||(Bo=U(),(t=xe(Bo)?de.jQuery:Bo?de[Bo]:void 0)&&t.fn.on?ve((ge=t).fn,{scope:Bt.scope,isolateScope:Bt.isolateScope,controller:Bt.controller,injector:Bt.injector,inheritedData:Bt.inheritedData}):ge=kt,Lo=ge.cleanData,ge.cleanData=function(e){for(var t,n,r=0;null!=(n=e[r]);r++)(t=(ge._data(n)||{}).events)&&t.$destroy&&ge(n).triggerHandler("$destroy");Lo(e)},b.element=ge,fe=!0),ve(b,{errorHandlingConfig:e,bootstrap:se,copy:H,extend:ve,merge:k,equals:Ee,element:ge,forEach:me,injector:un,noop:ke,bind:Fe,toJson:K,fromJson:W,identity:we,isUndefined:xe,isDefined:I,isString:Se,isFunction:Ie,isObject:$e,isNumber:O,isElement:B,isArray:_e,version:Ze,isDate:M,callbacks:{$$counter:0},getTestability:ce,reloadWithDebugInfo:ue,UNSAFE_restoreLegacyJqLiteXHTMLReplacement:he,$$minErr:$,$$csp:N,$$encodeUriSegment:ee,$$encodeUriQuery:te,$$lowercase:S,$$stringify:Ve,$$uppercase:c}),(m=Ge(de))("ng",["ngLocale"],["$provide",function(e){e.provider({$$sanitizeUri:ti}),e.provider("$compile",In).directive({a:Qi,input:Ea,textarea:Ea,form:oa,script:To,select:Fo,option:Ho,ngBind:Fa,ngBindHtml:Ba,ngBindTemplate:La,ngClass:Na,ngClassEven:Va,ngClassOdd:Ua,ngCloak:za,ngController:qa,ngForm:sa,ngHide:Ro,ngIf:Ya,ngInclude:Xa,ngInit:Qa,ngNonBindable:mo,ngPluralize:ko,ngRef:xo,ngRepeat:$o,ngShow:_o,ngStyle:Io,ngSwitch:Ao,ngSwitchWhen:Co,ngSwitchDefault:Oo,ngOptions:bo,ngTransclude:Do,ngModel:co,ngList:Ga,ngChange:ja,pattern:Uo,ngPattern:Uo,required:No,ngRequired:No,minlength:zo,ngMinlength:zo,maxlength:Vo,ngMaxlength:Vo,ngValue:Ta,ngModelOptions:ho}).directive({ngInclude:Za,input:Da}).directive(ea).directive(Ka),e.provider({$anchorScroll:cn,$animate:kn,$animateCss:bn,$$animateJs:gn,$$animateQueue:mn,$$AnimateRunner:yn,$$animateAsyncRun:vn,$browser:xn,$cacheFactory:$n,$controller:Fn,$document:Ln,$$isDocumentHidden:Bn,$exceptionHandler:jn,$filter:Ri,$$forceReflow:Hn,$interpolate:ar,$interval:sr,$$intervalFactory:ur,$http:tr,$httpParamSerializer:Jn,$httpParamSerializerJQLike:Gn,$httpBackend:rr,$xhrFactory:nr,$jsonpCallbacks:cr,$location:Rr,$log:Ir,$parse:Wr,$rootScope:ei,$q:Jr,$$q:Gr,$sce:ui,$sceDelegate:si,$sniffer:ci,$$taskTrackerFactory:li,$templateCache:Sn,$templateRequest:pi,$$testability:di,$timeout:mi,$window:$i,$$rAF:Qr,$$jqLite:Wt,$$Map:Zt,$$cookieReader:_i})}]).info({angularVersion:"1.8.0"}),b.module("ngLocale",[],["$provide",function(e){var r="one",i="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,t){var n=0|e,t=function(e,t){var n=t;void 0===n&&(n=Math.min((t=e,-1==(r=(t+="").indexOf("."))?0:t.length-r-1),3));var r=Math.pow(10,n);return{v:n,f:(e*r|0)%r}}(e,t);return 1==n&&0==t.v?r:i}})}]),ge(function(){oe(de.document,se)}))}(window),window.angular.$$csp().noInlineStyle||window.angular.element(document.head).prepend(window.angular.element("<style>").text('@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;}')),function r(i,a,o){function s(t,e){if(!a[t]){if(!i[t]){var n="function"==typeof require&&require;if(!e&&n)return n(t,!0);if(u)return u(t,!0);throw(n=new Error("Cannot find module '"+t+"'")).code="MODULE_NOT_FOUND",n}n=a[t]={exports:{}},i[t][0].call(n.exports,function(e){return s(i[t][1][e]||e)},n,n.exports,r,i,a,o)}return a[t].exports}for(var u="function"==typeof require&&require,e=0;e<o.length;e++)s(o[e]);return s}({1:[function(e,t,n){"use strict";var r=function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),e};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)}}var a="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};function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0}),n.SNTheme=n.SNSmartTag=n.SNServerExtension=n.SNMfa=n.SNEncryptedStorage=n.SNTag=n.SNNote=n.SNExtension=n.Action=n.SNEditor=n.SNComponent=void 0;var s=function(e,t,n){return t&&u(e.prototype,t),n&&u(e,n),e};function u(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 c(e,t,n){null===e&&(e=Function.prototype);var r=Object.getOwnPropertyDescriptor(e,t);if(void 0!==r){if("value"in r)return r.value;r=r.get;return void 0!==r?r.call(n):void 0}if(null!==(e=Object.getPrototypeOf(e)))return c(e,t,n)}var l=e("standard-file-js");function f(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function h(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==(void 0===t?"undefined":a(t))&&"function"!=typeof t?e:t}function p(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+(void 0===t?"undefined":a(t)));e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var d=n.SNComponent=(p(g,l.SFItem),s(g,[{key:"mapContentToLocalProperties",value:function(e){c(g.prototype.__proto__||Object.getPrototypeOf(g.prototype),"mapContentToLocalProperties",this).call(this,e),e.hosted_url||(this.legacy_url=e.url),this.local_url=e.local_url,this.hosted_url=e.hosted_url||e.url,this.offlineOnly=e.offlineOnly,e.valid_until&&(this.valid_until=new Date(e.valid_until)),this.name=e.name,this.autoupdateDisabled=e.autoupdateDisabled,this.package_info=e.package_info,this.area=e.area,this.permissions=e.permissions,this.permissions||(this.permissions=[]),this.active=e.active,this.componentData=e.componentData||{},this.disassociatedItemIds=e.disassociatedItemIds||[],this.associatedItemIds=e.associatedItemIds||[]}},{key:"handleDeletedContent",value:function(){c(g.prototype.__proto__||Object.getPrototypeOf(g.prototype),"handleDeletedContent",this).call(this),this.active=!1}},{key:"structureParams",value:function(){var e={legacy_url:this.legacy_url,hosted_url:this.hosted_url,local_url:this.local_url,valid_until:this.valid_until,offlineOnly:this.offlineOnly,name:this.name,area:this.area,package_info:this.package_info,permissions:this.permissions,active:this.active,autoupdateDisabled:this.autoupdateDisabled,componentData:this.componentData,disassociatedItemIds:this.disassociatedItemIds,associatedItemIds:this.associatedItemIds},t=c(g.prototype.__proto__||Object.getPrototypeOf(g.prototype),"structureParams",this).call(this);return Object.assign(t,e),t}},{key:"isEditor",value:function(){return"editor-editor"==this.area}},{key:"isTheme",value:function(){return"SN|Theme"==this.content_type||"themes"==this.area}},{key:"isDefaultEditor",value:function(){return 1==this.getAppDataItem("defaultEditor")}},{key:"setLastSize",value:function(e){this.setAppDataItem("lastSize",e)}},{key:"getLastSize",value:function(){return this.getAppDataItem("lastSize")}},{key:"acceptsThemes",value:function(){return!(this.content.package_info&&"acceptsThemes"in this.content.package_info)||this.content.package_info.acceptsThemes}},{key:"getClientDataKey",value:function(){return this.legacy_url||this.uuid}},{key:"hasValidHostedUrl",value:function(){return this.hosted_url||this.legacy_url}},{key:"keysToIgnoreWhenCheckingContentEquality",value:function(){return["active","disassociatedItemIds","associatedItemIds"].concat(c(g.prototype.__proto__||Object.getPrototypeOf(g.prototype),"keysToIgnoreWhenCheckingContentEquality",this).call(this))}},{key:"isAssociative",value:function(){return Component.associativeAreas().includes(this.area)}},{key:"associateWithItem",value:function(e){this.associatedItemIds.push(e.uuid)}},{key:"isExplicitlyEnabledForItem",value:function(e){return-1!==this.associatedItemIds.indexOf(e.uuid)}},{key:"isExplicitlyDisabledForItem",value:function(e){return-1!==this.disassociatedItemIds.indexOf(e.uuid)}},{key:"content_type",get:function(){return"SN|Component"}}],[{key:"associativeAreas",value:function(){return["editor-editor"]}}]),g);function g(e){f(this,g),e.window=null;e=h(this,(g.__proto__||Object.getPrototypeOf(g)).call(this,e));return e.componentData||(e.componentData={}),e.disassociatedItemIds||(e.disassociatedItemIds=[]),e.associatedItemIds||(e.associatedItemIds=[]),e}var m=n.SNEditor=(p(v,l.SFItem),s(v,[{key:"mapContentToLocalProperties",value:function(e){c(v.prototype.__proto__||Object.getPrototypeOf(v.prototype),"mapContentToLocalProperties",this).call(this,e),this.url=e.url,this.name=e.name,this.data=e.data||{},this.default=e.default,this.systemEditor=e.systemEditor}},{key:"structureParams",value:function(){var e={url:this.url,name:this.name,data:this.data,default:this.default,systemEditor:this.systemEditor},t=c(v.prototype.__proto__||Object.getPrototypeOf(v.prototype),"structureParams",this).call(this);return Object.assign(t,e),t}},{key:"referenceParams",value:function(){return _.map(this.notes,function(e){return{uuid:e.uuid,content_type:e.content_type}})}},{key:"addItemAsRelationship",value:function(e){"Note"==e.content_type&&(_.find(this.notes,e)||this.notes.push(e)),c(v.prototype.__proto__||Object.getPrototypeOf(v.prototype),"addItemAsRelationship",this).call(this,e)}},{key:"removeItemAsRelationship",value:function(e){"Note"==e.content_type&&_.pull(this.notes,e),c(v.prototype.__proto__||Object.getPrototypeOf(v.prototype),"removeItemAsRelationship",this).call(this,e)}},{key:"removeAndDirtyAllRelationships",value:function(){c(v.prototype.__proto__||Object.getPrototypeOf(v.prototype),"removeAndDirtyAllRelationships",this).call(this),this.notes=[]}},{key:"removeReferencesNotPresentIn",value:function(e){c(v.prototype.__proto__||Object.getPrototypeOf(v.prototype),"removeReferencesNotPresentIn",this).call(this,e);var t=e.map(function(e){return e.uuid});this.notes.forEach(function(e){t.includes(e.uuid)||_.remove(this.notes,{uuid:e.uuid})}.bind(this))}},{key:"potentialItemOfInterestHasChangedItsUUID",value:function(e,t,n){"Note"===e.content_type&&_.find(this.notes,{uuid:t})&&(_.remove(this.notes,{uuid:t}),this.notes.push(e))}},{key:"setData",value:function(e,t){return JSON.stringify(this.data[e])!==JSON.stringify(t)&&(this.data[e]=t,!0)}},{key:"dataForKey",value:function(e){return this.data[e]||{}}},{key:"content_type",get:function(){return"SN|Editor"}}]),v);function v(e){f(this,v);e=h(this,(v.__proto__||Object.getPrototypeOf(v)).call(this,e));return e.notes||(e.notes=[]),e.data||(e.data={}),e}var y=n.Action=function e(t){f(this,e),_.merge(this,t),this.running=!1,this.error=!1,this.lastExecuted&&(this.lastExecuted=new Date(this.lastExecuted))},b=n.SNExtension=(p(k,l.SFItem),s(k,[{key:"actionsWithContextForItem",value:function(t){return this.actions.filter(function(e){return e.context==t.content_type||"Item"==e.context})}},{key:"mapContentToLocalProperties",value:function(e){c(k.prototype.__proto__||Object.getPrototypeOf(k.prototype),"mapContentToLocalProperties",this).call(this,e),this.description=e.description,this.url=e.url,this.name=e.name,this.package_info=e.package_info,this.supported_types=e.supported_types,e.actions&&(this.actions=e.actions.map(function(e){return new y(e)}))}},{key:"structureParams",value:function(){var e={name:this.name,url:this.url,package_info:this.package_info,description:this.description,actions:this.actions.map(function(e){return _.omit(e,["subrows","subactions"])}),supported_types:this.supported_types},t=c(k.prototype.__proto__||Object.getPrototypeOf(k.prototype),"structureParams",this).call(this);return Object.assign(t,e),t}},{key:"content_type",get:function(){return"Extension"}}]),k);function k(e){f(this,k);var t=h(this,(k.__proto__||Object.getPrototypeOf(k)).call(this,e));return e.actions&&(t.actions=e.actions.map(function(e){return new y(e)})),t.actions||(t.actions=[]),t}var w=n.SNNote=(p(x,l.SFItem),s(x,[{key:"mapContentToLocalProperties",value:function(e){c(x.prototype.__proto__||Object.getPrototypeOf(x.prototype),"mapContentToLocalProperties",this).call(this,e),this.title=e.title,this.text=e.text}},{key:"structureParams",value:function(){var e={title:this.title,text:this.text},t=c(x.prototype.__proto__||Object.getPrototypeOf(x.prototype),"structureParams",this).call(this);return Object.assign(t,e),t}},{key:"addItemAsRelationship",value:function(e){"Tag"==e.content_type&&e.addItemAsRelationship(this),c(x.prototype.__proto__||Object.getPrototypeOf(x.prototype),"addItemAsRelationship",this).call(this,e)}},{key:"setIsBeingReferencedBy",value:function(e){c(x.prototype.__proto__||Object.getPrototypeOf(x.prototype),"setIsBeingReferencedBy",this).call(this,e),this.clearSavedTagsString()}},{key:"setIsNoLongerBeingReferencedBy",value:function(e){c(x.prototype.__proto__||Object.getPrototypeOf(x.prototype),"setIsNoLongerBeingReferencedBy",this).call(this,e),this.clearSavedTagsString()}},{key:"isBeingRemovedLocally",value:function(){this.tags.forEach(function(e){_.remove(e.notes,{uuid:this.uuid})}.bind(this)),c(x.prototype.__proto__||Object.getPrototypeOf(x.prototype),"isBeingRemovedLocally",this).call(this)}},{key:"informReferencesOfUUIDChange",value:function(e,t){c(x.prototype.__proto__||Object.getPrototypeOf(x.prototype),"informReferencesOfUUIDChange",this).call(this);var n=!0,r=!1,i=void 0;try{for(var a,o=this.tags[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;_.remove(s.notes,{uuid:e}),s.notes.push(this)}}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}}},{key:"tagDidFinishSyncing",value:function(e){this.clearSavedTagsString()}},{key:"safeText",value:function(){return this.text||""}},{key:"safeTitle",value:function(){return this.title||""}},{key:"clearSavedTagsString",value:function(){this.savedTagsString=null}},{key:"tagsString",value:function(){return this.savedTagsString=$.arrayToDisplayString(this.tags),this.savedTagsString}},{key:"content_type",get:function(){return"Note"}},{key:"displayName",get:function(){return"Note"}}],[{key:"filterDummyNotes",value:function(e){return e.filter(function(e){return 0==e.dummy||null==e.dummy})}}]),x);function x(e){f(this,x);e=h(this,(x.__proto__||Object.getPrototypeOf(x)).call(this,e));return e.text||(e.text=""),e.tags||(e.tags=[]),e}var $=n.SNTag=(p(S,l.SFItem),s(S,[{key:"mapContentToLocalProperties",value:function(e){c(S.prototype.__proto__||Object.getPrototypeOf(S.prototype),"mapContentToLocalProperties",this).call(this,e),this.title=e.title}},{key:"structureParams",value:function(){var e={title:this.title},t=c(S.prototype.__proto__||Object.getPrototypeOf(S.prototype),"structureParams",this).call(this);return Object.assign(t,e),t}},{key:"addItemAsRelationship",value:function(e){"Note"==e.content_type&&(_.find(this.notes,{uuid:e.uuid})||(this.notes.push(e),e.tags.push(this))),c(S.prototype.__proto__||Object.getPrototypeOf(S.prototype),"addItemAsRelationship",this).call(this,e)}},{key:"removeItemAsRelationship",value:function(e){"Note"==e.content_type&&(_.remove(this.notes,{uuid:e.uuid}),_.remove(e.tags,{uuid:this.uuid})),c(S.prototype.__proto__||Object.getPrototypeOf(S.prototype),"removeItemAsRelationship",this).call(this,e)}},{key:"updateLocalRelationships",value:function(){var t=this.content.references.map(function(e){return e.uuid});this.notes.slice().forEach(function(e){t.includes(e.uuid)||(_.remove(e.tags,{uuid:this.uuid}),_.remove(this.notes,{uuid:e.uuid}),e.setIsNoLongerBeingReferencedBy(this))}.bind(this))}},{key:"isBeingRemovedLocally",value:function(){var t=this;this.notes.forEach(function(e){_.remove(e.tags,{uuid:t.uuid}),e.setIsNoLongerBeingReferencedBy(t)}),this.notes.length=0,c(S.prototype.__proto__||Object.getPrototypeOf(S.prototype),"isBeingRemovedLocally",this).call(this)}},{key:"informReferencesOfUUIDChange",value:function(e,t){var n=!0,r=!1,i=void 0;try{for(var a,o=this.notes[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;_.remove(s.tags,{uuid:e}),s.tags.push(this)}}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}}},{key:"didFinishSyncing",value:function(){var e=!0,t=!1,n=void 0;try{for(var r,i=this.notes[Symbol.iterator]();!(e=(r=i.next()).done);e=!0)r.value.tagDidFinishSyncing(this)}catch(e){t=!0,n=e}finally{try{!e&&i.return&&i.return()}finally{if(t)throw n}}}},{key:"isSmartTag",value:function(){return"SN|SmartTag"==this.content_type}},{key:"displayName",get:function(){return"Tag"}}],[{key:"arrayToDisplayString",value:function(e){return e.sort(function(e,t){return e.title>t.title}).map(function(e,t){return"#"+e.title}).join(" ")}}]),S);function S(e){f(this,S);e=h(this,(S.__proto__||Object.getPrototypeOf(S)).call(this,e));return e.content_type||(e.content_type="Tag"),e.notes||(e.notes=[]),e}var R=n.SNEncryptedStorage=(p(I,l.SFItem),s(I,[{key:"mapContentToLocalProperties",value:function(e){c(I.prototype.__proto__||Object.getPrototypeOf(I.prototype),"mapContentToLocalProperties",this).call(this,e),this.storage=e.storage}},{key:"content_type",get:function(){return"SN|EncryptedStorage"}}]),I);function I(){return f(this,I),h(this,(I.__proto__||Object.getPrototypeOf(I)).apply(this,arguments))}e=n.SNMfa=(p(A,l.SFItem),s(A,[{key:"doNotEncrypt",value:function(){return!0}},{key:"content_type",get:function(){return"SF|MFA"}}]),A);function A(e){return f(this,A),h(this,(A.__proto__||Object.getPrototypeOf(A)).call(this,e))}l=n.SNServerExtension=(p(C,l.SFItem),s(C,[{key:"mapContentToLocalProperties",value:function(e){c(C.prototype.__proto__||Object.getPrototypeOf(C.prototype),"mapContentToLocalProperties",this).call(this,e),this.url=e.url}},{key:"doNotEncrypt",value:function(){return!0}},{key:"content_type",get:function(){return"SF|Extension"}}]),C);function C(){return f(this,C),h(this,(C.__proto__||Object.getPrototypeOf(C)).apply(this,arguments))}var O=n.SNSmartTag=(p(M,$),s(M,null,[{key:"systemSmartTags",value:function(){return[new M({uuid:M.SystemSmartTagIdAllNotes,content:{title:"All notes",isSystemTag:!0,isAllTag:!0,predicate:new SFPredicate.fromArray(["content_type","=","Note"])}}),new M({uuid:M.SystemSmartTagIdArchivedNotes,content:{title:"Archived",isSystemTag:!0,isArchiveTag:!0,predicate:new SFPredicate.fromArray(["archived","=",!0])}}),new M({uuid:M.SystemSmartTagIdTrashedNotes,content:{title:"Trash",isSystemTag:!0,isTrashTag:!0,predicate:new SFPredicate.fromArray(["content.trashed","=",!0])}})]}}]),M);function M(e){f(this,M);e=h(this,(M.__proto__||Object.getPrototypeOf(M)).call(this,e));return e.content_type="SN|SmartTag",e}O.SystemSmartTagIdAllNotes="all-notes",O.SystemSmartTagIdArchivedNotes="archived-notes",O.SystemSmartTagIdTrashedNotes="trashed-notes";s=n.SNTheme=(p(D,d),s(D,[{key:"isLayerable",value:function(){return this.package_info&&this.package_info.layerable}},{key:"setMobileRules",value:function(e){this.setAppDataItem("mobileRules",e)}},{key:"getMobileRules",value:function(){return this.getAppDataItem("mobileRules")||{constants:{},rules:{}}}},{key:"hasMobileRules",value:function(){return this.getAppDataItem("mobileRules")}},{key:"setNotAvailOnMobile",value:function(e){this.setAppDataItem("notAvailableOnMobile",e)}},{key:"getNotAvailOnMobile",value:function(){return this.getAppDataItem("notAvailableOnMobile")}},{key:"setMobileActive",value:function(e){this.setAppDataItem("mobileActive",e)}},{key:"isMobileActive",value:function(){return this.getAppDataItem("mobileActive")}},{key:"content_type",get:function(){return"SN|Theme"}},{key:"displayName",get:function(){return"Theme"}}]),D);function D(e){f(this,D);e=h(this,(D.__proto__||Object.getPrototypeOf(D)).call(this,e));return e.area="themes",e}if("undefined"!=typeof window&&null!==window)try{window.SNNote=w,window.SNTag=$,window.SNSmartTag=O,window.SNMfa=e,window.SNServerExtension=l,window.SNComponent=d,window.SNEditor=m,window.SNExtension=b,window.SNTheme=s,window.SNEncryptedStorage=R}catch(e){console.log("Exception while exporting sn-models window variables",e)}angular.module("app",[]);R=function e(t,m,n){o(this,e);var h="SN|SmartTag",a=new ComponentRelay({targetWindow:window,onReady:function(){t.platform=a.platform}});m.resolveRawTags=function(s){function e(e){return e.sort(function(e,t){e=e.content.title.toLowerCase(),t=t.content.title.toLowerCase();return(t<e)-(e<t)})}var t=s.rawTags.slice(),n=!0,r=!1,i=void 0;try{for(var a,o=s.rawTags[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var u=(h=a.value).children&&h.children.find(function(e){return e.dummy});h.children=[],h.parent=null,u&&h.children.unshift(u)}}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}var c=!0,r=!1,i=void 0;try{for(var l,f=s.rawTags[Symbol.iterator]();!(c=(l=f.next()).done);c=!0){var h,p,d,g=(h=l.value).content.title.split(".");h.displayTitle=g[g.length-1],1!=g.length?(p=function e(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:1,n=g.slice(0,g.length-t).join(".");if(0==n.length)return null;var r=function(e){var t=!0,n=!1,r=void 0;try{for(var i,a=s.rawTags[Symbol.iterator]();!(t=(i=a.next()).done);t=!0){var o=i.value;if(o.content.title===e)return o}}catch(e){n=!0,r=e}finally{try{!t&&a.return&&a.return()}finally{if(n)throw r}}return null}(n);if(!r&&t<g.length-1)return e(t+1);n=h.content.title.slice(n.length+1);return h.displayTitle=n,r}())?(p.children.push(h),p.children=e(p.children),h.parent=p,d=t.indexOf(h),t.splice(d,1),m.selectedTag&&m.selectedTag.uuid==h.uuid&&(m.selectedTag=h,m.setSelectedForTag(h,!0))):(h.displayTitle=h.content.title,h.parent=s):h.parent=s}}catch(e){r=!0,i=e}finally{try{!c&&f.return&&f.return()}finally{if(r)throw i}}u=s.children&&s.children.find(function(e){return e.dummy});s.children=e(t),u&&s.children.unshift(u)},m.changeParent=function(t,n){var c,e,r=m.masterTag.rawTags.filter(function(e){return e.uuid===t})[0],i="0"===n?m.masterTag:m.masterTag.rawTags.filter(function(e){return e.uuid===n})[0];i.parent!==r&&(c=[r],e=function e(t){var n=!0,r=!1,i=void 0;try{for(var a,o=t.children[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value,u=t.content.title+"."+s.content.title.split(".").slice(-1)[0];s.content.title=u,c.push(s),e(s)}}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}},i=i.master?r.content.title.split(".").slice(-1)[0]:i.content.title+"."+r.content.title.split(".").slice(-1)[0],r.content.title=i,e(r),m.resolveRawTags(m.masterTag),a.saveItems(c))},m.createTag=function(e){var t=e.content.title;if(t.startsWith("![")){try{var n=JSON.parse(t.substring(1,t.length))}catch(e){return void alert("There was an error parsing your smart tag syntax. Please ensure the value after the exclamation mark is valid JSON, and try again.")}n={content_type:h,content:{title:n[0],predicate:{keypath:n[1],operator:n[2],value:n[3]}}};a.createItem(n,function(e){m.selectOnLoad=e})}else e.content_type="Tag",t=e.parent.master?e.content.title:e.parent.content.title+"."+e.content.title,e.content.title=t,e.dummy=!1,a.createItem(e,function(e){m.selectOnLoad=e})},m.selectTag=function(e,t){var n=e.content_type==h;n&&(t=!1);function r(){if(m.multipleTags){var e=!0,t=!1,n=void 0;try{for(var r,i=m.multipleTags[Symbol.iterator]();!(e=(r=i.next()).done);e=!0){var a=r.value;m.setSelectedForTag(a,!1)}}catch(e){t=!0,n=e}finally{try{!e&&i.return&&i.return()}finally{if(t)throw n}}}}var i;e.master||e.smartMaster?(r(),m.multipleTags=[],a.clearSelection()):(m.multipleTags||(m.multipleTags=[]),n||m.multipleTags.push(e),t&&1<m.multipleTags.length?(i=m.createEphemeralSmartTagForMultiTags(),a.selectItem(i)):(r(),m.multipleTags=n?[]:[e],a.selectItem(e))),!t&&m.selectedTag&&m.selectedTag!=e?(m.setSelectedForTag(m.selectedTag,!1),m.selectedTag.editing=!1):(m.selectedTag.master||m.selectedTag.smartMaster||m.selectedTag.content_type==h)&&m.setSelectedForTag(m.selectedTag,!1),m.selectedTag!==e||e.master||e.content.isSystemTag||(e.editing=!0),m.selectedTag=e,m.setSelectedForTag(e,!0)},m.createEphemeralSmartTagForMultiTags=function(){var e={uuid:Math.random(),content_type:"SN|SmartTag",content:{title:"Multiple tags"}},t=m.multipleTags.map(function(e){return e.content.title});return e.content.predicate=["tags","includes",["title","in",t]],e},m.toggleCollapse=function(e){e.clientData.collapsed=!e.clientData.collapsed,e.master||a.saveItem(e)},m.saveTags=function(e){a.saveItems(e)},m.setSelectedForTag=function(e,t){e.selected=t},a.streamItems(["Tag",h],function(f){n(function(){var e=m.masterTag?m.masterTag.rawTags:[],t=m.smartMasterTag?m.smartMasterTag.rawTags:O.systemSmartTags(),n=!0,r=!1,i=void 0;try{for(var a,o=f[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s,u=a.value,c=u.content_type==h?t:e,l=c.filter(function(e){return e.uuid===u.uuid})[0];l?Object.assign(l,u):u.content.title&&c.push(u),u.deleted?(s=c.indexOf(l||u),c.splice(s,1)):m.selectOnLoad&&m.selectOnLoad.uuid==u.uuid?(m.selectOnLoad=null,m.selectTag(u)):l&&m.selectedTag&&m.selectedTag.uuid==l.uuid&&m.setSelectedForTag(l,!0)}}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}m.masterTag||(m.masterTag={master:!0,content:{title:""},displayTitle:"All",uuid:"0",clientData:{}}),m.smartMasterTag||(m.smartMasterTag={master:!0,smartMaster:!0,content:{title:""},displayTitle:"Views",uuid:"1",clientData:{}}),m.masterTag.rawTags=e,m.smartMasterTag.rawTags=t,(!m.selectedTag||m.selectedTag&&m.selectedTag.master)&&(m.selectedTag&&m.selectedTag.smartMaster?(m.selectedTag=m.smartMasterTag,m.setSelectedForTag(m.masterTag,!1)):(m.selectedTag=m.masterTag,m.setSelectedForTag(m.smartMasterTag,!1)),m.setSelectedForTag(m.selectedTag,!0)),m.selectedTag.deleted&&m.selectTag(m.masterTag),m.resolveRawTags(m.masterTag),m.resolveRawTags(m.smartMasterTag)})}),m.deleteTag=function(t){var t=(t.content_type==h?m.smartMasterTag:m.masterTag).rawTags.filter(function(e){return e.uuid===t.uuid})[0],s=[];!function e(t){if(s.push(t),t.children){var n=!0,r=!1,i=void 0;try{for(var a,o=t.children[Symbol.iterator]();!(n=(a=o.next()).done);n=!0)e(a.value)}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}}}(t),a.deleteItems(s)}};R.$inject=["$rootScope","$scope","$timeout"],R.$$ngIsClass=!0,angular.module("app").controller("HomeCtrl",R),angular.module("app").directive("mbAutofocus",["$timeout",function(n){return{restrict:"A",scope:{shouldFocus:"="},link:function(e,t){n(function(){e.shouldFocus&&t[0].focus()})}}}]),angular.module("app").directive("draggable",function(){return{scope:{tagId:"=",drop:"&",isDraggable:"=",isDroppable:"="},link:function(n,e,t){e=e[0];e.draggable=n.isDraggable;var r=0;e.addEventListener("dragstart",function(e){return r=0,e.dataTransfer.effectAllowed="move",e.dataTransfer.setData("TagId",JSON.stringify(n.tagId)),this.classList.add("drag"),!1},!1),e.addEventListener("dragend",function(e){return this.classList.remove("drag"),this.classList.remove("over"),!1},!1),e.addEventListener("dragover",function(e){return e.dataTransfer.dropEffect="move",e.preventDefault&&e.preventDefault(),n.isDroppable&&this.classList.add("over"),!1},!1),e.addEventListener("dragenter",function(e){return r++,n.isDroppable&&this.classList.add("over"),!1},!1),e.addEventListener("dragleave",function(e){return 0===--r&&this.classList.remove("over"),!1},!1),e.addEventListener("dragexit",function(e){return this.classList.remove("over"),!1},!1),e.addEventListener("drop",function(e){r=0,e.stopPropagation&&e.stopPropagation(),this.classList.remove("over");var t=JSON.parse(e.dataTransfer.getData("TagId"));if(t!==n.tagId)return n.$apply(function(e){e.drop()(t,e.tagId)}),!1},!1)}}});var T=(r(E,[{key:"controller",value:["$scope","$timeout",function(n,e){n.isDraggable=function(){return!n.tag.master&&"SN|SmartTag"!=n.tag.content_type},n.isDroppable=function(){return!n.tag.smartMaster&&"SN|SmartTag"!=n.tag.content_type},n.onDrop=function(e,t){n.changeParent()(e,t)},n.onDragOver=function(e){},n.onDragStart=function(e){},n.selectTag=function(e){e=e.ctrlKey||e.metaKey;n.onSelect()(n.tag,e)},n.addChild=function(e,t){e.stopPropagation(),t.children.unshift({dummy:!0,parent:t,content:{title:""}})},n.saveNewTag=function(e){e.content.title&&0<e.content.title.length&&n.createTag()(e),e.parent.children.splice(e.parent.children.indexOf(e),1)},n.removeTag=function(e){n.deleteTag()(e)},n.innerCollapse=function(e){n.onToggleCollapse()&&n.onToggleCollapse()(e)},n.saveTagRename=function(e){var u,c,t;e.displayTitle&&0!=e.displayTitle.length?(u=".",c=[e],t=e.parent.master?e.displayTitle:e.parent.content.title+u+e.displayTitle,e.content.title=t,function e(t){var n=!0,r=!1,i=void 0;try{for(var a,o=t.children[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;s.content.title=s.parent.content.title+u+s.displayTitle,c.push(s),e(s)}}catch(e){r=!0,i=e}finally{try{!n&&o.return&&o.return()}finally{if(r)throw i}}}(e),e.editing=!1,n.saveTags()(c)):n.deleteTag()(e)},n.generationForTag=function(e){for(var t=0,n=e.parent;n;)t++,n=n.parent;return t},n.circleClassForTag=function(e){if("SN|SmartTag"==e.content_type)return"success";if(!e.uuid)return"neutral";var t=(t={0:"info",1:"info",2:"success",3:"danger",4:"warning"}[n.generationForTag(e)])||"neutral";return e.clientData&&e.clientData.collapsed&&(t+=" no-bg"),t}}]}]),E);function E(){o(this,E),this.restrict="C",this.templateUrl="directives/tag_tree.html",this.scope={tag:"=",changeParent:"&",onSelect:"&",createTag:"&",saveTags:"&",deleteTag:"&",onToggleCollapse:"&"}}T.$$ngIsClass=!0,angular.module("app").directive("tagTree",function(){return new T})},{"standard-file-js":2}],2:[function(c,t,r){!function(n){!function(){!function(e){"object"==typeof r&&void 0!==t?t.exports=e():"function"==typeof define&&define.amd?define([],e):("undefined"!=typeof window?window:void 0!==n?n:"undefined"!=typeof self?self:this).SF=e()}(function(){return function r(i,a,o){function s(t,e){if(!a[t]){if(!i[t]){var n="function"==typeof c&&c;if(!e&&n)return n(t,!0);if(u)return u(t,!0);throw(n=new Error("Cannot find module '"+t+"'")).code="MODULE_NOT_FOUND",n}n=a[t]={exports:{}},i[t][0].call(n.exports,function(e){return s(i[t][1][e]||e)},n,n.exports,r,i,a,o)}return a[t].exports}for(var u="function"==typeof c&&c,e=0;e<o.length;e++)s(o[e]);return s}({1:[function(e,t,ie){!function(e){var u,c,r,A=A||function(s){function n(){}var e={},t=e.lib={},r=t.Base={extend:function(e){n.prototype=this;var t=new n;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),(t.init.prototype=t).$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},u=t.WordArray=r.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||a).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i<e;i++)t[r+i>>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535<n.length)for(i=0;i<e;i+=4)t[r+i>>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=s.ceil(t/4)},clone:function(){var e=r.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(4294967296*s.random()|0);return new u.init(t,e)}}),i=e.enc={},a=i.Hex={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++){var i=t[r>>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},o=i.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++)n.push(String.fromCharCode(t[r>>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},c=i.Utf8={stringify:function(e){try{return decodeURIComponent(escape(o.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return o.parse(unescape(encodeURIComponent(e)))}},l=t.BufferedBlockAlgorithm=r.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t=this._data,n=t.words,r=t.sigBytes,i=this.blockSize,a=r/(4*i),a=e?s.ceil(a):s.max((0|a)-this._minBufferSize,0),r=s.min(4*(e=a*i),r);if(e){for(var o=0;o<e;o+=i)this._doProcessBlock(n,o);o=n.splice(0,e),t.sigBytes-=r}return new u.init(o,r)},clone:function(){var e=r.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});t.Hasher=l.extend({cfg:r.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(e,t){return new n.init(t).finalize(e)}},_createHmacHelper:function(n){return function(e,t){return new f.HMAC.init(n,t).finalize(e)}}});var f=e.algo={};return e}(Math);u=A.lib.WordArray,A.enc.Base64={stringify:function(e){var t=e.words,n=e.sigBytes,r=this._map;e.clamp(),e=[];for(var i=0;i<n;i+=3)for(var a=(t[i>>>2]>>>24-i%4*8&255)<<16|(t[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|t[i+2>>>2]>>>24-(i+2)%4*8&255,o=0;o<4&&i+.75*o<n;o++)e.push(r.charAt(a>>>6*(3-o)&63));if(t=r.charAt(64))for(;e.length%4;)e.push(t);return e.join("")},parse:function(e){var t=e.length,n=this._map;!(a=n.charAt(64))||-1!=(a=e.indexOf(a))&&(t=a);for(var r,i,a=[],o=0,s=0;s<t;s++)s%4&&(r=n.indexOf(e.charAt(s-1))<<s%4*2,i=n.indexOf(e.charAt(s))>>>6-s%4*2,a[o>>>2]|=(r|i)<<24-o%4*8,o++);return u.create(a,o)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},function(a){function $(e,t,n,r,i,a,o){return((e=e+(t&n|~t&r)+i+o)<<a|e>>>32-a)+t}function S(e,t,n,r,i,a,o){return((e=e+(t&r|n&~r)+i+o)<<a|e>>>32-a)+t}function _(e,t,n,r,i,a,o){return((e=e+(t^n^r)+i+o)<<a|e>>>32-a)+t}function R(e,t,n,r,i,a,o){return((e=e+(n^(t|~r))+i+o)<<a|e>>>32-a)+t}for(var e=A,t=(r=e.lib).WordArray,n=r.Hasher,r=e.algo,I=[],i=0;i<64;i++)I[i]=4294967296*a.abs(a.sin(i+1))|0;r=r.MD5=n.extend({_doReset:function(){this._hash=new t.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,t){for(var n=0;n<16;n++){var r=e[i=t+n];e[i]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8)}var n=this._hash.words,i=e[t+0],r=e[t+1],a=e[t+2],o=e[t+3],s=e[t+4],u=e[t+5],c=e[t+6],l=e[t+7],f=e[t+8],h=e[t+9],p=e[t+10],d=e[t+11],g=e[t+12],m=e[t+13],v=e[t+14],y=e[t+15],b=$(b=n[0],x=n[1],w=n[2],k=n[3],i,7,I[0]),k=$(k,b,x,w,r,12,I[1]),w=$(w,k,b,x,a,17,I[2]),x=$(x,w,k,b,o,22,I[3]),b=$(b,x,w,k,s,7,I[4]),k=$(k,b,x,w,u,12,I[5]),w=$(w,k,b,x,c,17,I[6]),x=$(x,w,k,b,l,22,I[7]),b=$(b,x,w,k,f,7,I[8]),k=$(k,b,x,w,h,12,I[9]),w=$(w,k,b,x,p,17,I[10]),x=$(x,w,k,b,d,22,I[11]),b=$(b,x,w,k,g,7,I[12]),k=$(k,b,x,w,m,12,I[13]),w=$(w,k,b,x,v,17,I[14]),b=S(b,x=$(x,w,k,b,y,22,I[15]),w,k,r,5,I[16]),k=S(k,b,x,w,c,9,I[17]),w=S(w,k,b,x,d,14,I[18]),x=S(x,w,k,b,i,20,I[19]),b=S(b,x,w,k,u,5,I[20]),k=S(k,b,x,w,p,9,I[21]),w=S(w,k,b,x,y,14,I[22]),x=S(x,w,k,b,s,20,I[23]),b=S(b,x,w,k,h,5,I[24]),k=S(k,b,x,w,v,9,I[25]),w=S(w,k,b,x,o,14,I[26]),x=S(x,w,k,b,f,20,I[27]),b=S(b,x,w,k,m,5,I[28]),k=S(k,b,x,w,a,9,I[29]),w=S(w,k,b,x,l,14,I[30]),b=_(b,x=S(x,w,k,b,g,20,I[31]),w,k,u,4,I[32]),k=_(k,b,x,w,f,11,I[33]),w=_(w,k,b,x,d,16,I[34]),x=_(x,w,k,b,v,23,I[35]),b=_(b,x,w,k,r,4,I[36]),k=_(k,b,x,w,s,11,I[37]),w=_(w,k,b,x,l,16,I[38]),x=_(x,w,k,b,p,23,I[39]),b=_(b,x,w,k,m,4,I[40]),k=_(k,b,x,w,i,11,I[41]),w=_(w,k,b,x,o,16,I[42]),x=_(x,w,k,b,c,23,I[43]),b=_(b,x,w,k,h,4,I[44]),k=_(k,b,x,w,g,11,I[45]),w=_(w,k,b,x,y,16,I[46]),b=R(b,x=_(x,w,k,b,a,23,I[47]),w,k,i,6,I[48]),k=R(k,b,x,w,l,10,I[49]),w=R(w,k,b,x,v,15,I[50]),x=R(x,w,k,b,u,21,I[51]),b=R(b,x,w,k,g,6,I[52]),k=R(k,b,x,w,o,10,I[53]),w=R(w,k,b,x,p,15,I[54]),x=R(x,w,k,b,r,21,I[55]),b=R(b,x,w,k,f,6,I[56]),k=R(k,b,x,w,y,10,I[57]),w=R(w,k,b,x,c,15,I[58]),x=R(x,w,k,b,m,21,I[59]),b=R(b,x,w,k,s,6,I[60]),k=R(k,b,x,w,d,10,I[61]),w=R(w,k,b,x,a,15,I[62]),x=R(x,w,k,b,h,21,I[63]);n[0]=n[0]+b|0,n[1]=n[1]+x|0,n[2]=n[2]+w|0,n[3]=n[3]+k|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;t[r>>>5]|=128<<24-r%32;var i=a.floor(n/4294967296);for(t[15+(64+r>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),t[14+(64+r>>>9<<4)]=16711935&(n<<8|n>>>24)|4278255360&(n<<24|n>>>8),e.sigBytes=4*(t.length+1),this._process(),t=(e=this._hash).words,n=0;n<4;n++)r=t[n],t[n]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8);return e},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e}}),e.MD5=n._createHelper(r),e.HmacMD5=n._createHmacHelper(r)}(Math),U=(N=A).lib,P=U.Base,c=U.WordArray,r=(U=N.algo).EvpKDF=P.extend({cfg:P.extend({keySize:4,hasher:U.MD5,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n=(o=this.cfg).hasher.create(),r=c.create(),i=r.words,a=o.keySize,o=o.iterations;i.length<a;){s&&n.update(s);var s=n.update(e).finalize(t);n.reset();for(var u=1;u<o;u++)s=n.finalize(s),n.reset();r.concat(s)}return r.sigBytes=4*a,r}}),N.EvpKDF=function(e,t,n){return r.create(n).compute(e,t)},A.lib.Cipher||function(){var e=(h=A).lib,t=e.Base,o=e.WordArray,n=e.BufferedBlockAlgorithm,r=h.enc.Base64,i=h.algo.EvpKDF,a=e.Cipher=n.extend({cfg:t.extend(),createEncryptor:function(e,t){return this.create(this._ENC_XFORM_MODE,e,t)},createDecryptor:function(e,t){return this.create(this._DEC_XFORM_MODE,e,t)},init:function(e,t,n){this.cfg=this.cfg.extend(n),this._xformMode=e,this._key=t,this.reset()},reset:function(){n.reset.call(this),this._doReset()},process:function(e){return this._append(e),this._process()},finalize:function(e){return e&&this._append(e),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(r){return{encrypt:function(e,t,n){return("string"==typeof t?p:f).encrypt(r,e,t,n)},decrypt:function(e,t,n){return("string"==typeof t?p:f).decrypt(r,e,t,n)}}}});e.StreamCipher=a.extend({_doFinalize:function(){return this._process(!0)},blockSize:1});function s(e,t,n){var r=this._iv;r?this._iv=void 0:r=this._prevBlock;for(var i=0;i<n;i++)e[t+i]^=r[i]}var u=h.mode={},c=(e.BlockCipherMode=t.extend({createEncryptor:function(e,t){return this.Encryptor.create(e,t)},createDecryptor:function(e,t){return this.Decryptor.create(e,t)},init:function(e,t){this._cipher=e,this._iv=t}})).extend();c.Encryptor=c.extend({processBlock:function(e,t){var n=this._cipher,r=n.blockSize;s.call(this,e,t,r),n.encryptBlock(e,t),this._prevBlock=e.slice(t,t+r)}}),c.Decryptor=c.extend({processBlock:function(e,t){var n=this._cipher,r=n.blockSize,i=e.slice(t,t+r);n.decryptBlock(e,t),s.call(this,e,t,r),this._prevBlock=i}}),u=u.CBC=c,c=(h.pad={}).Pkcs7={pad:function(e,t){for(var n=4*t,r=(n=n-e.sigBytes%n)<<24|n<<16|n<<8|n,i=[],a=0;a<n;a+=4)i.push(r);n=o.create(i,n),e.concat(n)},unpad:function(e){e.sigBytes-=255&e.words[e.sigBytes-1>>>2]}},e.BlockCipher=a.extend({cfg:a.cfg.extend({mode:u,padding:c}),reset:function(){a.reset.call(this);var e,t=(n=this.cfg).iv,n=n.mode;this._xformMode==this._ENC_XFORM_MODE?e=n.createEncryptor:(e=n.createDecryptor,this._minBufferSize=1),this._mode=e.call(n,this,t&&t.words)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e,t=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(t.pad(this._data,this.blockSize),e=this._process(!0)):(e=this._process(!0),t.unpad(e)),e},blockSize:4});var l=e.CipherParams=t.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),u=(h.format={}).OpenSSL={stringify:function(e){var t=e.ciphertext;return((e=e.salt)?o.create([1398893684,1701076831]).concat(e).concat(t):t).toString(r)},parse:function(e){var t,n=(e=r.parse(e)).words;return 1398893684==n[0]&&1701076831==n[1]&&(t=o.create(n.slice(2,4)),n.splice(0,4),e.sigBytes-=16),l.create({ciphertext:e,salt:t})}},f=e.SerializableCipher=t.extend({cfg:t.extend({format:u}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=e.createEncryptor(n,r);return t=i.finalize(t),i=i.cfg,l.create({ciphertext:t,key:n,iv:i.iv,algorithm:e,mode:i.mode,padding:i.padding,blockSize:e.blockSize,formatter:r.format})},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),e.createDecryptor(n,r).finalize(t.ciphertext)},_parse:function(e,t){return"string"==typeof e?t.parse(e,this):e}}),h=(h.kdf={}).OpenSSL={execute:function(e,t,n,r){return r=r||o.random(8),e=i.create({keySize:t+n}).compute(e,r),n=o.create(e.words.slice(t),4*n),e.sigBytes=4*t,l.create({key:e,iv:n,salt:r})}},p=e.PasswordBasedCipher=f.extend({cfg:f.cfg.extend({kdf:h}),encrypt:function(e,t,n,r){return n=(r=this.cfg.extend(r)).kdf.execute(n,e.keySize,e.ivSize),r.iv=n.iv,(e=f.encrypt.call(this,e,t,n.key,r)).mixIn(n),e},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),n=r.kdf.execute(n,e.keySize,e.ivSize,t.salt),r.iv=n.iv,f.decrypt.call(this,e,t,n.key,r)}})}(),function(){for(var e=A,t=e.lib.BlockCipher,n=e.algo,o=[],r=[],i=[],a=[],s=[],u=[],c=[],l=[],f=[],h=[],p=[],d=0;d<256;d++)p[d]=d<128?d<<1:d<<1^283;for(var g=0,m=0,d=0;d<256;d++){var v=m^m<<1^m<<2^m<<3^m<<4;o[g]=v=v>>>8^255&v^99;var y=p[r[v]=g],b=p[y],k=p[b],w=257*p[v]^16843008*v;i[g]=w<<24|w>>>8,a[g]=w<<16|w>>>16,s[g]=w<<8|w>>>24,u[g]=w,c[v]=(w=16843009*k^65537*b^257*y^16843008*g)<<24|w>>>8,l[v]=w<<16|w>>>16,f[v]=w<<8|w>>>24,h[v]=w,g?(g=y^p[p[p[k^y]]],m^=p[p[m]]):g=m=1}var x=[0,1,2,4,8,16,32,64,128,27,54],n=n.AES=t.extend({_doReset:function(){for(var e,t=(r=this._key).words,n=r.sigBytes/4,r=4*((this._nRounds=n+6)+1),i=this._keySchedule=[],a=0;a<r;a++)a<n?i[a]=t[a]:(e=i[a-1],a%n?6<n&&4==a%n&&(e=o[e>>>24]<<24|o[e>>>16&255]<<16|o[e>>>8&255]<<8|o[255&e]):(e=o[(e=e<<8|e>>>24)>>>24]<<24|o[e>>>16&255]<<16|o[e>>>8&255]<<8|o[255&e],e^=x[a/n|0]<<24),i[a]=i[a-n]^e);for(t=this._invKeySchedule=[],n=0;n<r;n++)a=r-n,e=n%4?i[a]:i[a-4],t[n]=n<4||a<=4?e:c[o[e>>>24]]^l[o[e>>>16&255]]^f[o[e>>>8&255]]^h[o[255&e]]},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,i,a,s,u,o)},decryptBlock:function(e,t){var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n,this._doCryptBlock(e,t,this._invKeySchedule,c,l,f,h,r),n=e[t+1],e[t+1]=e[t+3],e[t+3]=n},_doCryptBlock:function(e,t,n,r,i,a,o,s){for(var u=this._nRounds,c=e[t]^n[0],l=e[t+1]^n[1],f=e[t+2]^n[2],h=e[t+3]^n[3],p=4,d=1;d<u;d++)var g=r[c>>>24]^i[l>>>16&255]^a[f>>>8&255]^o[255&h]^n[p++],m=r[l>>>24]^i[f>>>16&255]^a[h>>>8&255]^o[255&c]^n[p++],v=r[f>>>24]^i[h>>>16&255]^a[c>>>8&255]^o[255&l]^n[p++],h=r[h>>>24]^i[c>>>16&255]^a[l>>>8&255]^o[255&f]^n[p++],c=g,l=m,f=v;g=(s[c>>>24]<<24|s[l>>>16&255]<<16|s[f>>>8&255]<<8|s[255&h])^n[p++],m=(s[l>>>24]<<24|s[f>>>16&255]<<16|s[h>>>8&255]<<8|s[255&c])^n[p++],v=(s[f>>>24]<<24|s[h>>>16&255]<<16|s[c>>>8&255]<<8|s[255&l])^n[p++],h=(s[h>>>24]<<24|s[c>>>16&255]<<16|s[l>>>8&255]<<8|s[255&f])^n[p++],e[t]=g,e[t+1]=m,e[t+2]=v,e[t+3]=h},keySize:8});e.AES=t._createHelper(n)}();var s,A=A||function(s){function n(){}var e={},t=e.lib={},r=t.Base={extend:function(e){n.prototype=this;var t=new n;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),(t.init.prototype=t).$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},u=t.WordArray=r.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||a).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i<e;i++)t[r+i>>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535<n.length)for(i=0;i<e;i+=4)t[r+i>>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=s.ceil(t/4)},clone:function(){var e=r.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(4294967296*s.random()|0);return new u.init(t,e)}}),i=e.enc={},a=i.Hex={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++){var i=t[r>>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},o=i.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++)n.push(String.fromCharCode(t[r>>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},c=i.Utf8={stringify:function(e){try{return decodeURIComponent(escape(o.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return o.parse(unescape(encodeURIComponent(e)))}},l=t.BufferedBlockAlgorithm=r.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t=this._data,n=t.words,r=t.sigBytes,i=this.blockSize,a=r/(4*i),a=e?s.ceil(a):s.max((0|a)-this._minBufferSize,0),r=s.min(4*(e=a*i),r);if(e){for(var o=0;o<e;o+=i)this._doProcessBlock(n,o);o=n.splice(0,e),t.sigBytes-=r}return new u.init(o,r)},clone:function(){var e=r.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});t.Hasher=l.extend({cfg:r.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(e,t){return new n.init(t).finalize(e)}},_createHmacHelper:function(n){return function(e,t){return new f.HMAC.init(n,t).finalize(e)}}});var f=e.algo={};return e}(Math);!function(i){function e(e){return 4294967296*(e-(0|e))|0}for(var t=A,n=(a=t.lib).WordArray,r=a.Hasher,a=t.algo,o=[],d=[],s=2,u=0;u<64;){e:{for(var c,l=i.sqrt(c=s),f=2;f<=l;f++)if(!(c%f)){c=!1;break e}c=!0}c&&(u<8&&(o[u]=e(i.pow(s,.5))),d[u]=e(i.pow(s,1/3)),u++),s++}var g=[],a=a.SHA256=r.extend({_doReset:function(){this._hash=new n.init(o.slice(0))},_doProcessBlock:function(e,t){for(var n,r,i=this._hash.words,a=i[0],o=i[1],s=i[2],u=i[3],c=i[4],l=i[5],f=i[6],h=i[7],p=0;p<64;p++)p<16?g[p]=0|e[t+p]:(n=g[p-15],r=g[p-2],g[p]=((n<<25|n>>>7)^(n<<14|n>>>18)^n>>>3)+g[p-7]+((r<<15|r>>>17)^(r<<13|r>>>19)^r>>>10)+g[p-16]),n=h+((c<<26|c>>>6)^(c<<21|c>>>11)^(c<<7|c>>>25))+(c&l^~c&f)+d[p]+g[p],r=((a<<30|a>>>2)^(a<<19|a>>>13)^(a<<10|a>>>22))+(a&o^a&s^o&s),h=f,f=l,l=c,c=u+n|0,u=s,s=o,o=a,a=n+r|0;i[0]=i[0]+a|0,i[1]=i[1]+o|0,i[2]=i[2]+s|0,i[3]=i[3]+u|0,i[4]=i[4]+c|0,i[5]=i[5]+l|0,i[6]=i[6]+f|0,i[7]=i[7]+h|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(64+r>>>9<<4)]=i.floor(n/4294967296),t[15+(64+r>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=r.clone.call(this);return e._hash=this._hash.clone(),e}});t.SHA256=r._createHelper(a),t.HmacSHA256=r._createHmacHelper(a)}(Math),s=A.enc.Utf8,A.algo.HMAC=A.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=s.parse(t));var n=e.blockSize,r=4*n;(t=t.sigBytes>r?e.finalize(t):t).clamp();for(var e=this._oKey=t.clone(),t=this._iKey=t.clone(),i=e.words,a=t.words,o=0;o<n;o++)i[o]^=1549556828,a[o]^=909522486;e.sigBytes=t.sigBytes=r,this.reset()},reset:function(){var e=this._hasher;e.reset(),e.update(this._iKey)},update:function(e){return this._hasher.update(e),this},finalize:function(e){var t=this._hasher;return e=t.finalize(e),t.reset(),t.finalize(this._oKey.clone().concat(e))}});var i,a,l,A=A||function(s){function n(){}var e={},t=e.lib={},r=t.Base={extend:function(e){n.prototype=this;var t=new n;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),(t.init.prototype=t).$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},u=t.WordArray=r.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||a).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i<e;i++)t[r+i>>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535<n.length)for(i=0;i<e;i+=4)t[r+i>>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=s.ceil(t/4)},clone:function(){var e=r.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(4294967296*s.random()|0);return new u.init(t,e)}}),i=e.enc={},a=i.Hex={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++){var i=t[r>>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},o=i.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++)n.push(String.fromCharCode(t[r>>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},c=i.Utf8={stringify:function(e){try{return decodeURIComponent(escape(o.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return o.parse(unescape(encodeURIComponent(e)))}},l=t.BufferedBlockAlgorithm=r.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t=this._data,n=t.words,r=t.sigBytes,i=this.blockSize,a=r/(4*i),a=e?s.ceil(a):s.max((0|a)-this._minBufferSize,0),r=s.min(4*(e=a*i),r);if(e){for(var o=0;o<e;o+=i)this._doProcessBlock(n,o);o=n.splice(0,e),t.sigBytes-=r}return new u.init(o,r)},clone:function(){var e=r.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});t.Hasher=l.extend({cfg:r.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(e,t){return new n.init(t).finalize(e)}},_createHmacHelper:function(n){return function(e,t){return new f.HMAC.init(n,t).finalize(e)}}});var f=e.algo={};return e}(Math);V=A,L=A.lib,i=L.Base,a=L.WordArray,(V=A.x64={}).Word=i.extend({init:function(e,t){this.high=e,this.low=t}}),V.WordArray=i.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:8*e.length},toX32:function(){for(var e=this.words,t=e.length,n=[],r=0;r<t;r++){var i=e[r];n.push(i.high),n.push(i.low)}return a.create(n,this.sigBytes)},clone:function(){for(var e=i.clone.call(this),t=e.words=this.words.slice(0),n=t.length,r=0;r<n;r++)t[r]=t[r].clone();return e}}),function(){function e(){return r.create.apply(r,arguments)}for(var t=A,n=t.lib.Hasher,r=(a=t.x64).Word,i=a.WordArray,a=t.algo,te=[e(1116352408,3609767458),e(1899447441,602891725),e(3049323471,3964484399),e(3921009573,2173295548),e(961987163,4081628472),e(1508970993,3053834265),e(2453635748,2937671579),e(2870763221,3664609560),e(3624381080,2734883394),e(310598401,1164996542),e(607225278,1323610764),e(1426881987,3590304994),e(1925078388,4068182383),e(2162078206,991336113),e(2614888103,633803317),e(3248222580,3479774868),e(3835390401,2666613458),e(4022224774,944711139),e(264347078,2341262773),e(604807628,2007800933),e(770255983,1495990901),e(1249150122,1856431235),e(1555081692,3175218132),e(1996064986,2198950837),e(2554220882,3999719339),e(2821834349,766784016),e(2952996808,2566594879),e(3210313671,3203337956),e(3336571891,1034457026),e(3584528711,2466948901),e(113926993,3758326383),e(338241895,168717936),e(666307205,1188179964),e(773529912,1546045734),e(1294757372,1522805485),e(1396182291,2643833823),e(1695183700,2343527390),e(1986661051,1014477480),e(2177026350,1206759142),e(2456956037,344077627),e(2730485921,1290863460),e(2820302411,3158454273),e(3259730800,3505952657),e(3345764771,106217008),e(3516065817,3606008344),e(3600352804,1432725776),e(4094571909,1467031594),e(275423344,851169720),e(430227734,3100823752),e(506948616,1363258195),e(659060556,3750685593),e(883997877,3785050280),e(958139571,3318307427),e(1322822218,3812723403),e(1537002063,2003034995),e(1747873779,3602036899),e(1955562222,1575990012),e(2024104815,1125592928),e(2227730452,2716904306),e(2361852424,442776044),e(2428436474,593698344),e(2756734187,3733110249),e(3204031479,2999351573),e(3329325298,3815920427),e(3391569614,3928383900),e(3515267271,566280711),e(3940187606,3454069534),e(4118630271,4000239992),e(116418474,1914138554),e(174292421,2731055270),e(289380356,3203993006),e(460393269,320620315),e(685471733,587496836),e(852142971,1086792851),e(1017036298,365543100),e(1126000580,2618297676),e(1288033470,3409855158),e(1501505948,4234509866),e(1607167915,987167468),e(1816402316,1246189591)],ne=[],o=0;o<80;o++)ne[o]=e();a=a.SHA512=n.extend({_doReset:function(){this._hash=new i.init([new r.init(1779033703,4089235720),new r.init(3144134277,2227873595),new r.init(1013904242,4271175723),new r.init(2773480762,1595750129),new r.init(1359893119,2917565137),new r.init(2600822924,725511199),new r.init(528734635,4215389547),new r.init(1541459225,327033209)])},_doProcessBlock:function(e,t){for(var n=(c=this._hash.words)[0],r=c[1],i=c[2],a=c[3],o=c[4],s=c[5],u=c[6],c=c[7],l=n.high,f=n.low,h=r.high,p=r.low,d=i.high,g=i.low,m=a.high,v=a.low,y=o.high,b=o.low,k=s.high,w=s.low,x=u.high,$=u.low,S=c.high,_=c.low,R=l,I=f,A=h,C=p,O=d,M=g,D=m,T=v,E=y,P=b,F=k,L=w,B=x,j=$,H=S,N=_,U=0;U<80;U++){var V,z=ne[U];U<16?(V=z.high=0|e[t+2*U],J=z.low=0|e[t+2*U+1]):(V=((J=(V=ne[U-15]).high)>>>1|(q=V.low)<<31)^(J>>>8|q<<24)^J>>>7,q=(q>>>1|J<<31)^(q>>>8|J<<24)^(q>>>7|J<<25),K=((J=(K=ne[U-2]).high)>>>19|(W=K.low)<<13)^(J<<3|W>>>29)^J>>>6,W=(W>>>19|J<<13)^(W<<3|J>>>29)^(W>>>6|J<<26),G=(J=ne[U-7]).high,ee=(Y=ne[U-16]).high,Y=Y.low,J=q+J.low,z.high=V=(V=(V=V+G+(J>>>0<q>>>0?1:0))+K+((J=J+W)>>>0<W>>>0?1:0))+ee+((J=J+Y)>>>0<Y>>>0?1:0),z.low=J);var q,K,W,J,G=E&F^~E&B,Y=P&L^~P&j,z=R&A^R&O^A&O,X=I&C^I&M^C&M,Z=(W=te[U]).high,Q=W.low,ee=H+((E>>>14|P<<18)^(E>>>18|P<<14)^(E<<23|P>>>9))+((W=N+((P>>>14|E<<18)^(P>>>18|E<<14)^(P<<23|E>>>9)))>>>0<N>>>0?1:0),H=B,N=j,B=F,j=L,F=E,L=P,E=D+(ee=(ee=(ee=ee+G+((W=W+Y)>>>0<Y>>>0?1:0))+Z+((W=W+Q)>>>0<Q>>>0?1:0))+V+((W=W+J)>>>0<J>>>0?1:0))+((P=T+W|0)>>>0<T>>>0?1:0)|0,D=O,T=M,O=A,M=C,A=R,C=I,R=ee+(z=(q=(R>>>28|I<<4)^(R<<30|I>>>2)^(R<<25|I>>>7))+z+((J=(K=(I>>>28|R<<4)^(I<<30|R>>>2)^(I<<25|R>>>7))+X)>>>0<K>>>0?1:0))+((I=W+J|0)>>>0<W>>>0?1:0)|0}f=n.low=f+I,n.high=l+R+(f>>>0<I>>>0?1:0),p=r.low=p+C,r.high=h+A+(p>>>0<C>>>0?1:0),g=i.low=g+M,i.high=d+O+(g>>>0<M>>>0?1:0),v=a.low=v+T,a.high=m+D+(v>>>0<T>>>0?1:0),b=o.low=b+P,o.high=y+E+(b>>>0<P>>>0?1:0),w=s.low=w+L,s.high=k+F+(w>>>0<L>>>0?1:0),$=u.low=$+j,u.high=x+B+($>>>0<j>>>0?1:0),_=c.low=_+N,c.high=S+H+(_>>>0<N>>>0?1:0)},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[30+(128+r>>>10<<5)]=Math.floor(n/4294967296),t[31+(128+r>>>10<<5)]=n,e.sigBytes=4*t.length,this._process(),this._hash.toX32()},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e},blockSize:32}),t.SHA512=n._createHelper(a),t.HmacSHA512=n._createHmacHelper(a)}(),l=A.enc.Utf8,A.algo.HMAC=A.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=l.parse(t));var n=e.blockSize,r=4*n;(t=t.sigBytes>r?e.finalize(t):t).clamp();for(var e=this._oKey=t.clone(),t=this._iKey=t.clone(),i=e.words,a=t.words,o=0;o<n;o++)i[o]^=1549556828,a[o]^=909522486;e.sigBytes=t.sigBytes=r,this.reset()},reset:function(){var e=this._hasher;e.reset(),e.update(this._iKey)},update:function(e){return this._hasher.update(e),this},finalize:function(e){var t=this._hasher;return e=t.finalize(e),t.reset(),t.finalize(this._oKey.clone().concat(e))}});var t,n,f,h,m,v,o,A=A||function(s){function n(){}var e={},t=e.lib={},r=t.Base={extend:function(e){n.prototype=this;var t=new n;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),(t.init.prototype=t).$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},u=t.WordArray=r.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||a).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i<e;i++)t[r+i>>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535<n.length)for(i=0;i<e;i+=4)t[r+i>>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=s.ceil(t/4)},clone:function(){var e=r.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(4294967296*s.random()|0);return new u.init(t,e)}}),i=e.enc={},a=i.Hex={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++){var i=t[r>>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},o=i.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++)n.push(String.fromCharCode(t[r>>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},c=i.Utf8={stringify:function(e){try{return decodeURIComponent(escape(o.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return o.parse(unescape(encodeURIComponent(e)))}},l=t.BufferedBlockAlgorithm=r.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t=this._data,n=t.words,r=t.sigBytes,i=this.blockSize,a=r/(4*i),a=e?s.ceil(a):s.max((0|a)-this._minBufferSize,0),r=s.min(4*(e=a*i),r);if(e){for(var o=0;o<e;o+=i)this._doProcessBlock(n,o);o=n.splice(0,e),t.sigBytes-=r}return new u.init(o,r)},clone:function(){var e=r.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});t.Hasher=l.extend({cfg:r.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(e,t){return new n.init(t).finalize(e)}},_createHmacHelper:function(n){return function(e,t){return new f.HMAC.init(n,t).finalize(e)}}});var f=e.algo={};return e}(Math);t=(P=(q=A).lib).WordArray,n=P.Hasher,f=[],P=q.algo.SHA1=n.extend({_doReset:function(){this._hash=new t.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var n,r=this._hash.words,i=r[0],a=r[1],o=r[2],s=r[3],u=r[4],c=0;c<80;c++)c<16?f[c]=0|e[t+c]:(n=f[c-3]^f[c-8]^f[c-14]^f[c-16],f[c]=n<<1|n>>>31),n=(i<<5|i>>>27)+u+f[c],n=c<20?n+(1518500249+(a&o|~a&s)):c<40?n+(1859775393+(a^o^s)):c<60?n+((a&o|a&s|o&s)-1894007588):n+((a^o^s)-899497514),u=s,s=o,o=a<<30|a>>>2,a=i,i=n;r[0]=r[0]+i|0,r[1]=r[1]+a|0,r[2]=r[2]+o|0,r[3]=r[3]+s|0,r[4]=r[4]+u|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(64+r>>>9<<4)]=Math.floor(n/4294967296),t[15+(64+r>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e}}),q.SHA1=n._createHelper(P),q.HmacSHA1=n._createHmacHelper(P),h=A.enc.Utf8,A.algo.HMAC=A.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=h.parse(t));var n=e.blockSize,r=4*n;(t=t.sigBytes>r?e.finalize(t):t).clamp();for(var e=this._oKey=t.clone(),t=this._iKey=t.clone(),i=e.words,a=t.words,o=0;o<n;o++)i[o]^=1549556828,a[o]^=909522486;e.sigBytes=t.sigBytes=r,this.reset()},reset:function(){var e=this._hasher;e.reset(),e.update(this._iKey)},update:function(e){return this._hasher.update(e),this},finalize:function(e){var t=this._hasher;return e=t.finalize(e),t.reset(),t.finalize(this._oKey.clone().concat(e))}}),N=(U=A).lib,L=N.Base,m=N.WordArray,v=(N=U.algo).HMAC,o=N.PBKDF2=L.extend({cfg:L.extend({keySize:4,hasher:N.SHA1,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n=this.cfg,r=v.create(n.hasher,e),i=m.create(),a=m.create([1]),o=i.words,s=a.words,u=n.keySize,n=n.iterations;o.length<u;){var c=r.update(t).finalize(a);r.reset();for(var l=c.words,f=l.length,h=c,p=1;p<n;p++){h=r.finalize(h),r.reset();for(var d=h.words,g=0;g<f;g++)l[g]^=d[g]}i.concat(c),s[0]++}return i.sigBytes=4*u,i}}),U.PBKDF2=function(e,t,n){return o.create(n).compute(e,t)};var p,d,g,A=A||function(s){function n(){}var e={},t=e.lib={},r=t.Base={extend:function(e){n.prototype=this;var t=new n;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),(t.init.prototype=t).$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},u=t.WordArray=r.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||a).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i<e;i++)t[r+i>>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535<n.length)for(i=0;i<e;i+=4)t[r+i>>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var e=this.words,t=this.sigBytes;e[t>>>2]&=4294967295<<32-t%4*8,e.length=s.ceil(t/4)},clone:function(){var e=r.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(4294967296*s.random()|0);return new u.init(t,e)}}),i=e.enc={},a=i.Hex={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++){var i=t[r>>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},o=i.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r<e;r++)n.push(String.fromCharCode(t[r>>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},c=i.Utf8={stringify:function(e){try{return decodeURIComponent(escape(o.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return o.parse(unescape(encodeURIComponent(e)))}},l=t.BufferedBlockAlgorithm=r.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(e){var t=this._data,n=t.words,r=t.sigBytes,i=this.blockSize,a=r/(4*i),a=e?s.ceil(a):s.max((0|a)-this._minBufferSize,0),r=s.min(4*(e=a*i),r);if(e){for(var o=0;o<e;o+=i)this._doProcessBlock(n,o);o=n.splice(0,e),t.sigBytes-=r}return new u.init(o,r)},clone:function(){var e=r.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});t.Hasher=l.extend({cfg:r.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){l.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(n){return function(e,t){return new n.init(t).finalize(e)}},_createHmacHelper:function(n){return function(e,t){return new f.HMAC.init(n,t).finalize(e)}}});var f=e.algo={};return e}(Math);function y(e,t){return!t||"object"!==x(t)&&"function"!=typeof t?function(e){if(void 0!==e)return e;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(e):t}function b(e){return(b=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function k(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&&w(e,t)}function w(e,t){return(w=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function E(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(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)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function x(e){return(x="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,t,n,r,i,a,o){try{var s=e[a](o),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,i)}function S(s){return function(){var e=this,o=arguments;return new Promise(function(t,n){var r=s.apply(e,o);function i(e){$(r,t,n,i,a,"next",e)}function a(e){$(r,t,n,i,a,"throw",e)}i(void 0)})}}function C(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}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)}}function O(e,t,n){return t&&R(e.prototype,t),n&&R(e,n),e}p=(q=(V=A).lib).WordArray,d=q.Hasher,g=[],q=V.algo.SHA1=d.extend({_doReset:function(){this._hash=new p.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var n,r=this._hash.words,i=r[0],a=r[1],o=r[2],s=r[3],u=r[4],c=0;c<80;c++)c<16?g[c]=0|e[t+c]:(n=g[c-3]^g[c-8]^g[c-14]^g[c-16],g[c]=n<<1|n>>>31),n=(i<<5|i>>>27)+u+g[c],n=c<20?n+(1518500249+(a&o|~a&s)):c<40?n+(1859775393+(a^o^s)):c<60?n+((a&o|a&s|o&s)-1894007588):n+((a^o^s)-899497514),u=s,s=o,o=a<<30|a>>>2,a=i,i=n;r[0]=r[0]+i|0,r[1]=r[1]+a|0,r[2]=r[2]+o|0,r[3]=r[3]+s|0,r[4]=r[4]+u|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(64+r>>>9<<4)]=Math.floor(n/4294967296),t[15+(64+r>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=d.clone.call(this);return e._hash=this._hash.clone(),e}}),V.SHA1=d._createHelper(q),V.HmacSHA1=d._createHmacHelper(q),Object.defineProperty(ie,"__esModule",{value:!0}),ie.StandardFile=ie.SFItemTransformer=ie.SFCryptoWeb=ie.SFCryptoJS=ie.SFAbstractCrypto=ie.SFItemHistoryEntry=ie.SFItemHistory=ie.SFHistorySession=ie.SFPrivileges=ie.SFPredicate=ie.SFItemParams=ie.SFItem=ie.SFSyncManager=ie.SFStorageManager=ie.SFSingletonManager=ie.SFSessionHistoryManager=ie.SFPrivilegesManager=ie.SFModelManager=ie.SFMigrationManager=ie.SFHttpManager=ie.SFAuthManager=ie.SFAlertManager=void 0;var I=function(){function e(){C(this,e)}var t,n;return O(e,[{key:"alert",value:(n=S(regeneratorRuntime.mark(function e(n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(e,t){window.alert(n.text),e()}));case 1:case"end":return e.stop()}},e)})),function(e){return n.apply(this,arguments)})},{key:"confirm",value:(t=S(regeneratorRuntime.mark(function e(n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(e,t){(window.confirm(n.text)?e:t)()}));case 1:case"end":return e.stop()}},e)})),function(e){return t.apply(this,arguments)})}]),e}();ie.SFAlertManager=I;var M=function(){function m(e,t,n,r){C(this,m),m.DidSignOutEvent="DidSignOutEvent",m.WillSignInEvent="WillSignInEvent",m.DidSignInEvent="DidSignInEvent",this.httpManager=t,this.storageManager=e,this.alertManager=n||new I,this.$timeout=r||setTimeout.bind(window),this.eventHandlers=[]}var a,o,s,r,e,t,n,i,u,c;return O(m,[{key:"addEventHandler",value:function(e){return this.eventHandlers.push(e),e}},{key:"removeEventHandler",value:function(e){_.pull(this.eventHandlers,e)}},{key:"notifyEvent",value:function(e,t){var n=!0,r=!1,i=void 0;try{for(var a,o=this.eventHandlers[Symbol.iterator]();!(n=(a=o.next()).done);n=!0)(0,a.value)(e,t||{})}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}}},{key:"saveKeys",value:(c=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this._keys=t,e.next=3,this.storageManager.setItem("mk",t.mk);case 3:return e.next=5,this.storageManager.setItem("ak",t.ak);case 5:case"end":return e.stop()}},e,this)})),function(e){return c.apply(this,arguments)})},{key:"signout",value:(u=S(regeneratorRuntime.mark(function e(t){var n=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._keys=null,this._authParams=null,t)return e.abrupt("return",this.storageManager.clearAllData().then(function(){n.notifyEvent(m.DidSignOutEvent)}));e.next=6;break;case 6:this.notifyEvent(m.DidSignOutEvent);case 7:case"end":return e.stop()}},e,this)})),function(e){return u.apply(this,arguments)})},{key:"keys",value:(i=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._keys){e.next=11;break}return e.next=3,this.storageManager.getItem("mk");case 3:if(t=e.sent){e.next=6;break}return e.abrupt("return",null);case 6:return e.t0=t,e.next=9,this.storageManager.getItem("ak");case 9:e.t1=e.sent,this._keys={mk:e.t0,ak:e.t1};case 11:return e.abrupt("return",this._keys);case 12:case"end":return e.stop()}},e,this)})),function(){return i.apply(this,arguments)})},{key:"getAuthParams",value:(n=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._authParams){e.next=5;break}return e.next=3,this.storageManager.getItem("auth_params");case 3:t=e.sent,this._authParams=JSON.parse(t);case 5:if(this._authParams&&!this._authParams.version)return e.next=8,this.defaultProtocolVersion();e.next=9;break;case 8:this._authParams.version=e.sent;case 9:return e.abrupt("return",this._authParams);case 10:case"end":return e.stop()}},e,this)})),function(){return n.apply(this,arguments)})},{key:"defaultProtocolVersion",value:(t=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.keys();case 2:if((t=e.sent)&&t.ak)return e.abrupt("return","002");e.next=7;break;case 7:return e.abrupt("return","001");case 8:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})},{key:"protocolVersion",value:(e=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getAuthParams();case 2:if((t=e.sent)&&t.version)return e.abrupt("return",t.version);e.next=5;break;case 5:return e.abrupt("return",this.defaultProtocolVersion());case 6:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})},{key:"getAuthParamsForEmail",value:(r=S(regeneratorRuntime.mark(function e(n,t,r){var i,a=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return(i=_.merge({email:t},r)).api=T.getApiVersion(),e.abrupt("return",new Promise(function(t,e){a.httpManager.getAbsolute(n+"/auth/params",i,function(e){t(e)},function(e){console.error("Error getting auth params",e),"object"!==x(e)&&(e={error:{message:"A server error occurred while trying to sign in. Please try again."}}),t(e)})}));case 3:case"end":return e.stop()}},e)})),function(e,t,n){return r.apply(this,arguments)})},{key:"lock",value:function(){this.locked=!0}},{key:"unlock",value:function(){this.locked=!1}},{key:"isLocked",value:function(){return 1==this.locked}},{key:"unlockAndResolve",value:function(e,t){this.unlock(),e(t)}},{key:"login",value:(s=S(regeneratorRuntime.mark(function e(l,f,h,p,d){var g=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(){var n=S(regeneratorRuntime.mark(function e(n,t){var r,i,a,o,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,g.keys();case 2:if(null!=e.sent)return n({error:{message:"Cannot log in because already signed in."}}),e.abrupt("return");e.next=6;break;case 6:if(g.isLocked())return n({error:{message:"Login already in progress."}}),e.abrupt("return");e.next=9;break;case 9:return g.lock(),g.notifyEvent(m.WillSignInEvent),e.next=13,g.getAuthParamsForEmail(l,f,d);case 13:if((r=e.sent).identifier=f,r.error)return g.unlockAndResolve(n,r),e.abrupt("return");e.next=18;break;case 18:if(r&&r.pw_cost){e.next=21;break}return g.unlockAndResolve(n,{error:{message:"Invalid email or password."}}),e.abrupt("return");case 21:if(SFJS.supportedVersions().includes(r.version)){e.next=25;break}return i=SFJS.isVersionNewerThanLibraryVersion(r.version)?"This version of the application does not support your newer account type. Please upgrade to the latest version of Standard Notes to sign in.":"The protocol version associated with your account is outdated and no longer supported by this application. Please visit standardnotes.org/help/security for more information.",g.unlockAndResolve(n,{error:{message:i}}),e.abrupt("return");case 25:if(SFJS.isProtocolVersionOutdated(r.version))return o="The encryption version for your account, ".concat(r.version,", is outdated and requires upgrade. You may proceed with login, but are advised to perform a security update using the web or desktop application. Please visit standardnotes.org/help/security for more information."),a=!1,e.next=30,g.alertManager.confirm({title:"Update Needed",text:o,confirmButtonText:"Sign In"}).catch(function(){g.unlockAndResolve(n,{error:{}}),a=!0});e.next=32;break;case 30:if(a)return e.abrupt("return");e.next=32;break;case 32:if(SFJS.supportsPasswordDerivationCost(r.pw_cost)){e.next=36;break}return g.unlockAndResolve(n,{error:{message:"Your account was created on a platform with higher security capabilities than this browser supports. If we attempted to generate your login keys here, it would take hours. Please use a browser with more up to date security capabilities, like Google Chrome or Firefox, to log in."}}),e.abrupt("return");case 36:if(o=SFJS.costMinimumForVersion(r.version),r.pw_cost<o)return g.unlockAndResolve(n,{error:{message:"Unable to login due to insecure password parameters. Please visit standardnotes.org/help/security for more information."}}),e.abrupt("return");e.next=41;break;case 41:if(!p){e.next=47;break}if(u=SFJS.version(),r.version!==u)return c="Strict sign in refused server sign in parameters. The latest security version is ".concat(u,", but your account is reported to have version ").concat(r.version,". If you'd like to proceed with sign in anyway, please disable strict sign in and try again."),g.unlockAndResolve(n,{error:{message:c}}),e.abrupt("return");e.next=47;break;case 47:return e.next=49,SFJS.crypto.computeEncryptionKeysForUser(h,r);case 49:s=e.sent,u=l+"/auth/sign_in",(c=_.merge({password:s.pw,email:f},d)).api=T.getApiVersion(),g.httpManager.postAbsolute(u,c,function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,g.handleAuthResponse(t,f,l,r,s);case 2:g.notifyEvent(m.DidSignInEvent),g.$timeout(function(){return g.unlockAndResolve(n,t)});case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),function(e){console.error("Error logging in",e),"object"!==x(e)&&(e={error:{message:"A server error occurred while trying to sign in. Please try again."}}),g.$timeout(function(){return g.unlockAndResolve(n,e)})});case 54:case"end":return e.stop()}},e)}));return function(e,t){return n.apply(this,arguments)}}()));case 1:case"end":return e.stop()}},e)})),function(e,t,n,r,i){return s.apply(this,arguments)})},{key:"register",value:function(s,u,c){var l=this;return new Promise(function(){var n=S(regeneratorRuntime.mark(function e(n,t){var r,i,a,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(l.isLocked())return n({error:{message:"Register already in progress."}}),e.abrupt("return");e.next=3;break;case 3:if(c.length<8)return a="Your password must be at least ".concat(8," characters in length. For your security, please choose a longer password or, ideally, a passphrase, and try again."),n({error:{message:a}}),e.abrupt("return");e.next=8;break;case 8:return l.lock(),e.next=11,SFJS.crypto.generateInitialKeysAndAuthParamsForUser(u,c);case 11:o=e.sent,r=o.keys,i=o.authParams,a=s+"/auth",(o=_.merge({password:r.pw,email:u},i)).api=T.getApiVersion(),l.httpManager.postAbsolute(a,o,function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.handleAuthResponse(t,u,s,i,r);case 2:l.unlockAndResolve(n,t);case 3:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),function(e){console.error("Registration error",e),"object"!==x(e)&&(e={error:{message:"A server error occurred while trying to register. Please try again."}}),l.unlockAndResolve(n,e)});case 18:case"end":return e.stop()}},e)}));return function(e,t){return n.apply(this,arguments)}}())}},{key:"changePassword",value:(o=S(regeneratorRuntime.mark(function e(a,o,s,u,c){var l=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(){var n=S(regeneratorRuntime.mark(function e(n,t){var r,i;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(l.isLocked())return n({error:{message:"Change password already in progress."}}),e.abrupt("return");e.next=3;break;case 3:l.lock(),i=u.pw,r=a+"/auth/change_pw",(i=_.merge({new_password:i,current_password:s},c)).api=T.getApiVersion(),l.httpManager.postAuthenticatedAbsolute(r,i,function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.handleAuthResponse(t,o,null,c,u);case 2:l.unlockAndResolve(n,t);case 3:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),function(e){"object"!==x(e)&&(e={error:{message:"Something went wrong while changing your password. Your password was not changed. Please try again."}}),l.unlockAndResolve(n,e)});case 9:case"end":return e.stop()}},e)}));return function(e,t){return n.apply(this,arguments)}}()));case 1:case"end":return e.stop()}},e)})),function(e,t,n,r,i){return o.apply(this,arguments)})},{key:"handleAuthResponse",value:(a=S(regeneratorRuntime.mark(function e(t,n,r,i,a){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r)return e.next=3,this.storageManager.setItem("server",r);e.next=3;break;case 3:return this._authParams=i,e.next=6,this.storageManager.setItem("auth_params",JSON.stringify(i));case 6:return e.next=8,this.storageManager.setItem("jwt",t.token);case 8:return e.abrupt("return",this.saveKeys(a));case 9:case"end":return e.stop()}},e,this)})),function(e,t,n,r,i){return a.apply(this,arguments)})}]),m}();ie.SFAuthManager=M;var D="undefined"!=typeof window?window:void 0!==e?e:null,T=function(){function n(e,t){C(this,n),this.$timeout=e||setTimeout.bind(D)}var a,i,o,s,u,t;return O(n,null,[{key:"getApiVersion",value:function(){return"20190520"}}]),O(n,[{key:"setJWTRequestHandler",value:function(e){this.jwtRequestHandler=e}},{key:"setAuthHeadersForRequest",value:(t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.jwtRequestHandler();case 2:(n=e.sent)&&t.setRequestHeader("Authorization","Bearer "+n);case 4:case"end":return e.stop()}},e,this)})),function(e){return t.apply(this,arguments)})},{key:"postAbsolute",value:(u=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.httpRequest("post",t,n,r,i));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return u.apply(this,arguments)})},{key:"postAuthenticatedAbsolute",value:(s=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.httpRequest("post",t,n,r,i,!0));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return s.apply(this,arguments)})},{key:"patchAbsolute",value:(o=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.httpRequest("patch",t,n,r,i));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return o.apply(this,arguments)})},{key:"getAbsolute",value:(i=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.httpRequest("get",t,n,r,i));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return i.apply(this,arguments)})},{key:"httpRequest",value:(a=S(regeneratorRuntime.mark(function e(i,a,o,s,u){var c,l=this,t=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return c=5<t.length&&void 0!==t[5]&&t[5],e.abrupt("return",new Promise(function(){var n=S(regeneratorRuntime.mark(function e(t,n){var r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if((r=new XMLHttpRequest).onreadystatechange=function(){if(4==r.readyState){var e=r.responseText;if(e)try{e=JSON.parse(e)}catch(e){}200<=r.status&&r.status<=299?l.$timeout(function(){s(e),t(e)}):(console.error("Request error:",e),l.$timeout(function(){u(e,r.status),n(e)}))}},"get"==i&&0<Object.keys(o).length&&(a=l.urlForUrlAndParams(a,o)),r.open(i,a,!0),r.setRequestHeader("Content-type","application/json"),c)return e.next=8,l.setAuthHeadersForRequest(r);e.next=8;break;case 8:"post"==i||"patch"==i?r.send(JSON.stringify(o)):r.send();case 9:case"end":return e.stop()}},e)}));return function(e,t){return n.apply(this,arguments)}}()));case 2:case"end":return e.stop()}},e)})),function(e,t,n,r,i){return a.apply(this,arguments)})},{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}}]),n}();ie.SFHttpManager=T;var P=function(){function r(e,t,n,f){var h=this;C(this,r),this.modelManager=e,this.syncManager=t,this.storageManager=n,this.completionHandlers=[],this.loadMigrations();var p=!1,d=f.addEventHandler(function(e){e==M.DidSignInEvent&&(p=!0)});this.receivedLocalDataEvent=t.initialDataLoaded(),this.syncManager.addEventHandler(function(){var n=S(regeneratorRuntime.mark(function e(t,n){var r,i,a,o,s,u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(i="sync:completed"==t,!(r="local-data-loaded"==t)&&!i){e.next=40;break}if(r?h.receivedLocalDataEvent=!0:i&&(h.receivedSyncCompletedEvent=!0),!h.receivedLocalDataEvent||!h.receivedSyncCompletedEvent){e.next=40;break}if(p)return p=!1,f.removeEventHandler(d),e.next=10,h.getCompletedMigrations();e.next=39;break;case 10:c=e.sent.slice(),o=!(a=!0),s=void 0,e.prev=14,u=c[Symbol.iterator]();case 16:if(a=(c=u.next()).done){e.next=25;break}return l=c.value,e.next=20,h.migrationForEncodedName(l);case 20:e.sent.runOnlyOnce||_.pull(h._completed,l);case 22:a=!0,e.next=16;break;case 25:e.next=31;break;case 27:e.prev=27,e.t0=e.catch(14),o=!0,s=e.t0;case 31:e.prev=31,e.prev=32,a||null==u.return||u.return();case 34:if(e.prev=34,o)throw s;e.next=37;break;case 37:return e.finish(34);case 38:return e.finish(31);case 39:h.runPendingMigrations();case 40:case"end":return e.stop()}},e,null,[[14,27,31,39],[32,,34,38]])}));return function(e,t){return n.apply(this,arguments)}}())}var n,t,e,i,a,o,s,u;return O(r,[{key:"addCompletionHandler",value:function(e){this.completionHandlers.push(e)}},{key:"removeCompletionHandler",value:function(e){_.pull(this.completionHandlers,e)}},{key:"migrationForEncodedName",value:(u=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.decode(t);case 2:return n=e.sent,e.abrupt("return",this.migrations.find(function(e){return e.name==n}));case 4:case"end":return e.stop()}},e,this)})),function(e){return u.apply(this,arguments)})},{key:"loadMigrations",value:function(){this.migrations=this.registeredMigrations()}},{key:"registeredMigrations",value:function(){}},{key:"runPendingMigrations",value:(s=S(regeneratorRuntime.mark(function e(){var t,n,r,i,a,o,s,u,c,l,f,h,p,d,g,m,v,y,b,k,w,x,$,S,_,R,I;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPendingMigrations();case 2:for(t=e.sent,r=!(n=!0),i=void 0,e.prev=6,a=t[Symbol.iterator]();!(n=(o=a.next()).done);n=!0)(s=o.value).items=[];e.next=14;break;case 10:e.prev=10,e.t0=e.catch(6),r=!0,i=e.t0;case 14:e.prev=14,e.prev=15,n||null==a.return||a.return();case 17:if(e.prev=17,r)throw i;e.next=20;break;case 20:return e.finish(17);case 21:return e.finish(14);case 22:c=!(u=!0),l=void 0,e.prev=25,f=this.modelManager.allNondummyItems[Symbol.iterator]();case 27:if(u=(x=f.next()).done){e.next=51;break}for(h=x.value,d=!(p=!0),g=void 0,e.prev=32,m=t[Symbol.iterator]();!(p=(v=m.next()).done);p=!0)s=v.value,h.content_type==s.content_type&&s.items.push(h);e.next=40;break;case 36:e.prev=36,e.t1=e.catch(32),d=!0,g=e.t1;case 40:e.prev=40,e.prev=41,p||null==m.return||m.return();case 43:if(e.prev=43,d)throw g;e.next=46;break;case 46:return e.finish(43);case 47:return e.finish(40);case 48:u=!0,e.next=27;break;case 51:e.next=57;break;case 53:e.prev=53,e.t2=e.catch(25),c=!0,l=e.t2;case 57:e.prev=57,e.prev=58,u||null==f.return||f.return();case 60:if(e.prev=60,c)throw l;e.next=63;break;case 63:return e.finish(60);case 64:return e.finish(57);case 65:b=!(y=!0),k=void 0,e.prev=68,w=t[Symbol.iterator]();case 70:if(y=(x=w.next()).done){e.next=81;break}if((s=x.value).items&&0<s.items.length||s.customHandler)return e.next=75,this.runMigration(s,s.items);e.next=77;break;case 75:e.next=78;break;case 77:this.markMigrationCompleted(s);case 78:y=!0,e.next=70;break;case 81:e.next=87;break;case 83:e.prev=83,e.t3=e.catch(68),b=!0,k=e.t3;case 87:e.prev=87,e.prev=88,y||null==w.return||w.return();case 90:if(e.prev=90,b)throw k;e.next=93;break;case 93:return e.finish(90);case 94:return e.finish(87);case 95:for(S=!($=!0),_=void 0,e.prev=98,R=this.completionHandlers[Symbol.iterator]();!($=(I=R.next()).done);$=!0)(0,I.value)();e.next=106;break;case 102:e.prev=102,e.t4=e.catch(98),S=!0,_=e.t4;case 106:e.prev=106,e.prev=107,$||null==R.return||R.return();case 109:if(e.prev=109,S)throw _;e.next=112;break;case 112:return e.finish(109);case 113:return e.finish(106);case 114:case"end":return e.stop()}},e,this,[[6,10,14,22],[15,,17,21],[25,53,57,65],[32,36,40,48],[41,,43,47],[58,,60,64],[68,83,87,95],[88,,90,94],[98,102,106,114],[107,,109,113]])})),function(){return s.apply(this,arguments)})},{key:"encode",value:(o=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.btoa(t));case 1:case"end":return e.stop()}},e)})),function(e){return o.apply(this,arguments)})},{key:"decode",value:(a=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.atob(t));case 1:case"end":return e.stop()}},e)})),function(e){return a.apply(this,arguments)})},{key:"getCompletedMigrations",value:(i=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._completed){e.next=5;break}return e.next=3,this.storageManager.getItem("migrations");case 3:t=e.sent,this._completed=t?JSON.parse(t):[];case 5:return e.abrupt("return",this._completed);case 6:case"end":return e.stop()}},e,this)})),function(){return i.apply(this,arguments)})},{key:"getPendingMigrations",value:(e=S(regeneratorRuntime.mark(function e(){var t,n,r,i,a,o,s,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getCompletedMigrations();case 2:t=e.sent,n=[],i=!(r=!0),a=void 0,e.prev=7,o=this.migrations[Symbol.iterator]();case 9:if(r=(s=o.next()).done){e.next=22;break}return u=s.value,e.t0=t,e.next=14,this.encode(u.name);case 14:if(e.t1=e.sent,e.t2=e.t0.indexOf.call(e.t0,e.t1),e.t3=-1,e.t2!=e.t3){e.next=19;break}n.push(u);case 19:r=!0,e.next=9;break;case 22:e.next=28;break;case 24:e.prev=24,e.t4=e.catch(7),i=!0,a=e.t4;case 28:e.prev=28,e.prev=29,r||null==o.return||o.return();case 31:if(e.prev=31,i)throw a;e.next=34;break;case 34:return e.finish(31);case 35:return e.finish(28);case 36:return e.abrupt("return",n);case 37:case"end":return e.stop()}},e,this,[[7,24,28,36],[29,,31,35]])})),function(){return e.apply(this,arguments)})},{key:"markMigrationCompleted",value:(t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getCompletedMigrations();case 2:return n=e.sent,e.t0=n,e.next=6,this.encode(t.name);case 6:e.t1=e.sent,e.t0.push.call(e.t0,e.t1),this.storageManager.setItem("migrations",JSON.stringify(n)),t.running=!1;case 10:case"end":return e.stop()}},e,this)})),function(e){return t.apply(this,arguments)})},{key:"runMigration",value:(n=S(regeneratorRuntime.mark(function e(t,n){var r=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t.running)return e.abrupt("return");e.next=2;break;case 2:if(console.log("Running migration:",t.name),t.running=!0,t.customHandler)return e.abrupt("return",t.customHandler().then(function(){r.markMigrationCompleted(t)}));e.next=8;break;case 8:return e.abrupt("return",t.handler(n).then(function(){r.markMigrationCompleted(t)}));case 9:case"end":return e.stop()}},e)})),function(e,t){return n.apply(this,arguments)})}]),r}();ie.SFMigrationManager=P;var F=function(){function R(e){C(this,R),R.MappingSourceRemoteRetrieved="MappingSourceRemoteRetrieved",R.MappingSourceRemoteSaved="MappingSourceRemoteSaved",R.MappingSourceLocalSaved="MappingSourceLocalSaved",R.MappingSourceLocalRetrieved="MappingSourceLocalRetrieved",R.MappingSourceLocalDirtied="MappingSourceLocalDirtied",R.MappingSourceComponentRetrieved="MappingSourceComponentRetrieved",R.MappingSourceDesktopInstalled="MappingSourceDesktopInstalled",R.MappingSourceRemoteActionRetrieved="MappingSourceRemoteActionRetrieved",R.MappingSourceFileImport="MappingSourceFileImport",R.isMappingSourceRetrieved=function(e){return[R.MappingSourceRemoteRetrieved,R.MappingSourceComponentRetrieved,R.MappingSourceRemoteActionRetrieved].includes(e)},this.$timeout=e||setTimeout.bind(window),this.itemSyncObservers=[],this.items=[],this.itemsHash={},this.missedReferences={},this.uuidChangeObservers=[]}var e,i,r,t,n,a,o,s,u,c,l,f;return O(R,[{key:"handleSignout",value:function(){this.items.length=0,this.itemsHash={},this.missedReferences={}}},{key:"addModelUuidChangeObserver",value:function(e,t){this.uuidChangeObservers.push({id:e,callback:t})}},{key:"notifyObserversOfUuidChange",value:function(e,t){var n=!0,r=!1,i=void 0;try{for(var a,o=this.uuidChangeObservers[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;try{s.callback(e,t)}catch(e){console.error("Notify observers of uuid change exception:",e)}}}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}}},{key:"alternateUUIDForItem",value:(f=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.createItem(t),e.next=3,SFJS.crypto.generateUUID();case 3:for(n.uuid=e.sent,n.informReferencesOfUUIDChange(t.uuid,n.uuid),this.informModelsOfUUIDChangeForItem(n,t.uuid,n.uuid),i=!(r=!0),a=void 0,e.prev=9,o=t.referencingObjects[Symbol.iterator]();!(r=(s=o.next()).done);r=!0)(s=s.value).setIsNoLongerBeingReferencedBy(t),t.setIsNoLongerBeingReferencedBy(s),s.addItemAsRelationship(n);e.next=17;break;case 13:e.prev=13,e.t0=e.catch(9),i=!0,a=e.t0;case 17:e.prev=17,e.prev=18,r||null==o.return||o.return();case 20:if(e.prev=20,i)throw a;e.next=23;break;case 23:return e.finish(20);case 24:return e.finish(17);case 25:return this.setItemsDirty(t.referencingObjects,!0),this.resolveReferencesForItem(n),this.loggingEnabled&&console.log(t.uuid,"--\x3e",n.uuid),t.deleted=!0,t.content.references=[],this.setItemDirty(t,!1,!1,R.MappingSourceLocalSaved),e.next=33,this.mapResponseItemsToLocalModels([t],R.MappingSourceLocalSaved);case 33:return this.addItem(n),this.setItemDirty(n,!0,!0,R.MappingSourceLocalSaved),this.notifyObserversOfUuidChange(t,n),e.abrupt("return",n);case 37:case"end":return e.stop()}},e,this,[[9,13,17,25],[18,,20,24]])})),function(e){return f.apply(this,arguments)})},{key:"informModelsOfUUIDChangeForItem",value:function(e,t,n){var r=!0,i=!1,a=void 0;try{for(var o,s=this.items[Symbol.iterator]();!(r=(o=s.next()).done);r=!0)o.value.potentialItemOfInterestHasChangedItsUUID(e,t,n)}catch(e){i=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}}},{key:"didSyncModelsOffline",value:function(e){this.notifySyncObserversOfModels(e,R.MappingSourceLocalSaved)}},{key:"mapResponseItemsToLocalModels",value:(l=S(regeneratorRuntime.mark(function e(t,n,r){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mapResponseItemsToLocalModelsWithOptions({items:t,source:n,sourceKey:r}));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n){return l.apply(this,arguments)})},{key:"mapResponseItemsToLocalModelsOmittingFields",value:(c=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mapResponseItemsToLocalModelsWithOptions({items:t,omitFields:n,source:r,sourceKey:i}));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return c.apply(this,arguments)})},{key:"mapResponseItemsToLocalModelsWithOptions",value:(u=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c,l,f,h,p,d,g,m,v,y,b,k,w,x,$,S,_,R,I,A,C,O,M,D,T;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:f=t.items,n=t.omitFields,r=t.source,i=t.sourceKey,t.options,a=[],o=[],s=[],c=!(u=!0),l=void 0,e.prev=5,f=f[Symbol.iterator]();case 7:if(u=(p=f.next()).done){e.next=58;break}if(h=p.value){e.next=11;break}return e.abrupt("continue",55);case 11:if(p=!h.content&&!h.errorDecrypting,!(!h.content_type||!h.uuid)&&!p||h.deleted){e.next=16;break}return console.error("Server response item is corrupt:",h),e.abrupt("continue",55);case 16:if(!Array.isArray(n)){e.next=36;break}for(g=!(d=!0),m=void 0,e.prev=20,v=n[Symbol.iterator]();!(d=(y=v.next()).done);d=!0)y=y.value,delete h[y];e.next=28;break;case 24:e.prev=24,e.t0=e.catch(20),g=!0,m=e.t0;case 28:e.prev=28,e.prev=29,d||null==v.return||v.return();case 31:if(e.prev=31,g)throw m;e.next=34;break;case 34:return e.finish(31);case 35:return e.finish(28);case 36:if((b=this.findItem(h.uuid))&&(b.updateFromJSON(h),b.dummy=!1),I=h.content_type||b&&b.content_type,this.acceptableContentTypes&&!this.acceptableContentTypes.includes(I))return e.abrupt("continue",55);e.next=42;break;case 42:if(k=!1,1!=h.deleted){e.next=50;break}if(!h.dirty){e.next=48;break}k=!0,e.next=50;break;case 48:return b&&(a.push(b),s.push(b),this.removeItemLocally(b)),e.abrupt("continue",55);case 50:b=b||this.createItem(h),this.addItem(b,k),b.errorDecrypting||s.push(b),a.push(b),o.push(h);case 55:u=!0,e.next=7;break;case 58:e.next=64;break;case 60:e.prev=60,e.t1=e.catch(5),c=!0,l=e.t1;case 64:e.prev=64,e.prev=65,u||null==f.return||f.return();case 67:if(e.prev=67,c)throw l;e.next=70;break;case 70:return e.finish(67);case 71:return e.finish(64);case 72:for(x=!(w=!0),$=void 0,e.prev=75,S=o.entries()[Symbol.iterator]();!(w=(R=S.next()).done);w=!0)_=E(R.value,2),R=_[0],_=_[1],R=a[R],_.content&&this.resolveReferencesForItem(R),R.didFinishSyncing();e.next=83;break;case 79:e.prev=79,e.t2=e.catch(75),x=!0,$=e.t2;case 83:e.prev=83,e.prev=84,w||null==S.return||S.return();case 86:if(e.prev=86,x)throw $;e.next=89;break;case 89:return e.finish(86);case 90:return e.finish(83);case 91:for(I=this.popMissedReferenceStructsForObjects(o),C=!(A=!0),O=void 0,e.prev=95,M=function(){var t=T.value,e=a.find(function(e){return e.uuid==t.reference_uuid});e&&t.for_item.addItemAsRelationship(e)},D=I[Symbol.iterator]();!(A=(T=D.next()).done);A=!0)M();e.next=104;break;case 100:e.prev=100,e.t3=e.catch(95),C=!0,O=e.t3;case 104:e.prev=104,e.prev=105,A||null==D.return||D.return();case 107:if(e.prev=107,C)throw O;e.next=110;break;case 110:return e.finish(107);case 111:return e.finish(104);case 112:return e.next=114,this.notifySyncObserversOfModels(s,r,i);case 114:return e.abrupt("return",a);case 115:case"end":return e.stop()}},e,this,[[5,60,64,72],[20,24,28,36],[29,,31,35],[65,,67,71],[75,79,83,91],[84,,86,90],[95,100,104,112],[105,,107,111]])})),function(e){return u.apply(this,arguments)})},{key:"missedReferenceBuildKey",value:function(e,t){return"".concat(e,":").concat(t)}},{key:"popMissedReferenceStructsForObjects",value:function(e){if(!e||0==e.length)return[];for(var t=[],n=[],r=e.map(function(e){return e.uuid}),i=r[0].length,a=0,o=Object.keys(this.missedReferences);a<o.length;a++){var s=o[a];r.includes(s.substring(0,i))&&(t.push(this.missedReferences[s]),n.push(s))}for(var u=0,c=n;u<c.length;u++){var l=c[u];delete this.missedReferences[l]}return t}},{key:"resolveReferencesForItem",value:function(e){var t=1<arguments.length&&void 0!==arguments[1]&&arguments[1];if(!e.errorDecrypting){var n=e.contentObject;if(e.updateLocalRelationships(),n.references){var r=n.references.slice().map(function(e){return e.uuid}),i=this.findItems(r,!0),a=!0,o=!1,n=void 0;try{for(var s,u=i.entries()[Symbol.iterator]();!(a=(s=u.next()).done);a=!0){var c,l,f,h=E(s.value,2),p=h[0],d=h[1];d?(e.addItemAsRelationship(d),t&&this.setItemDirty(d,!0)):(c=r[p],l=this.missedReferenceBuildKey(c,e.uuid),this.missedReferences[l]||(f={reference_uuid:c,for_item:e},this.missedReferences[l]=f))}}catch(e){o=!0,n=e}finally{try{a||null==u.return||u.return()}finally{if(o)throw n}}}}}},{key:"notifySyncObserversOfModels",value:(s=S(regeneratorRuntime.mark(function e(l,f,h){var t,n,r,i,a,p,d=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:a=this.itemSyncObservers.sort(function(e,t){return e.priority<t.priority?-1:1}),n=!(t=!0),r=void 0,e.prev=4,i=regeneratorRuntime.mark(function e(){var t,n,r,i,a,o,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(t=p.value,n=t.types.includes("*")?l:l.filter(function(e){return t.types.includes(e.content_type)}),r=[],i=[],o=!(a=!0),s=void 0,e.prev=6,u=n[Symbol.iterator]();!(a=(c=u.next()).done);a=!0)((c=c.value).deleted?i:r).push(c);e.next=14;break;case 10:e.prev=10,e.t0=e.catch(6),o=!0,s=e.t0;case 14:e.prev=14,e.prev=15,a||null==u.return||u.return();case 17:if(e.prev=17,o)throw s;e.next=20;break;case 20:return e.finish(17);case 21:return e.finish(14);case 22:if(0<n.length)return e.next=25,d._callSyncObserverCallbackWithTimeout(t,n,r,i,f,h);e.next=25;break;case 25:case"end":return e.stop()}},e,null,[[6,10,14,22],[15,,17,21]])}),a=a[Symbol.iterator]();case 7:if(t=(p=a.next()).done){e.next=12;break}return e.delegateYield(i(),"t0",9);case 9:t=!0,e.next=7;break;case 12:e.next=18;break;case 14:e.prev=14,e.t1=e.catch(4),n=!0,r=e.t1;case 18:e.prev=18,e.prev=19,t||null==a.return||a.return();case 21:if(e.prev=21,n)throw r;e.next=24;break;case 24:return e.finish(21);case 25:return e.finish(18);case 26:case"end":return e.stop()}},e,this,[[4,14,18,26],[19,,21,25]])})),function(e,t,n){return s.apply(this,arguments)})},{key:"_callSyncObserverCallbackWithTimeout",value:(o=S(regeneratorRuntime.mark(function e(n,r,i,a,o,s){var u=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(e,t){u.$timeout(function(){try{n.callback(r,i,a,o,s)}catch(e){console.error("Sync observer exception",e)}finally{e()}})}));case 1:case"end":return e.stop()}},e)})),function(e,t,n,r,i,a){return o.apply(this,arguments)})},{key:"setItemDirty",value:function(e){this.setItemsDirty([e],!(1<arguments.length&&void 0!==arguments[1])||arguments[1],2<arguments.length?arguments[2]:void 0,3<arguments.length?arguments[3]:void 0,4<arguments.length?arguments[4]:void 0)}},{key:"setItemsDirty",value:function(e){var t=!(1<arguments.length&&void 0!==arguments[1])||arguments[1],n=2<arguments.length?arguments[2]:void 0,r=3<arguments.length?arguments[3]:void 0,i=4<arguments.length?arguments[4]:void 0,a=!0,o=!1,s=void 0;try{for(var u,c=e[Symbol.iterator]();!(a=(u=c.next()).done);a=!0)u.value.setDirty(t,n)}catch(e){o=!0,s=e}finally{try{a||null==c.return||c.return()}finally{if(o)throw s}}this.notifySyncObserversOfModels(e,r||R.MappingSourceLocalDirtied,i)}},{key:"createItem",value:function(e){return new(R.ContentTypeClassMapping&&R.ContentTypeClassMapping[e.content_type]||K)(e)}},{key:"createDuplicateItemFromResponseItem",value:(a=S(regeneratorRuntime.mark(function e(t){var n,r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("function"==typeof t.setDirty)return console.error("Attempting to create conflicted copy of non-response item."),e.abrupt("return",null);e.next=3;break;case 3:return n=JSON.parse(JSON.stringify(t)),e.next=6,SFJS.crypto.generateUUID();case 6:return n.uuid=e.sent,r=this.createItem(n),e.abrupt("return",r);case 9:case"end":return e.stop()}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"duplicateItemAndAddAsConflict",value:function(e){return this.duplicateItemWithCustomContentAndAddAsConflict({content:e.content,duplicateOf:e})}},{key:"duplicateItemWithCustomContentAndAddAsConflict",value:function(e){var t=e.content,e=e.duplicateOf,t=this.duplicateItemWithCustomContent({content:t,duplicateOf:e});return this.addDuplicatedItemAsConflict({duplicate:t,duplicateOf:e}),t}},{key:"addDuplicatedItemAsConflict",value:function(e){var t=e.duplicate,e=e.duplicateOf;this.addDuplicatedItem(t,e),t.content.conflict_of=e.uuid}},{key:"duplicateItemWithCustomContent",value:function(e){var t=e.content,e=e.duplicateOf,t=new e.constructor({content:t});return t.created_at=e.created_at,t.content_type||(t.content_type=e.content_type),t}},{key:"duplicateItemAndAdd",value:function(e){var t=this.duplicateItemWithoutAdding(e);return this.addDuplicatedItem(t,e),t}},{key:"duplicateItemWithoutAdding",value:function(e){var t=new e.constructor({content:e.content});return t.created_at=e.created_at,t.content_type||(t.content_type=e.content_type),t}},{key:"addDuplicatedItem",value:function(e,t){this.addItem(e);var n=!0,r=!1,i=void 0;try{for(var a,o=t.referencingObjects[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;s.addItemAsRelationship(e),this.setItemDirty(s,!0)}}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}this.resolveReferencesForItem(e),this.setItemDirty(e,!0)}},{key:"addItem",value:function(e){this.addItems([e],1<arguments.length&&void 0!==arguments[1]&&arguments[1])}},{key:"addItems",value:function(e){var t=this;e.forEach(function(e){t.itemsHash[e.uuid]||(t.itemsHash[e.uuid]=e,t.items.push(e))})}},{key:"addItemSyncObserver",value:function(e,t,n){this.addItemSyncObserverWithPriority({id:e,types:t,callback:n,priority:1})}},{key:"addItemSyncObserverWithPriority",value:function(e){var t=e.id,n=e.priority,r=e.types,e=e.callback;Array.isArray(r)||(r=[r]),this.itemSyncObservers.push({id:t,types:r,priority:n,callback:e})}},{key:"removeItemSyncObserver",value:function(e){_.remove(this.itemSyncObservers,_.find(this.itemSyncObservers,{id:e}))}},{key:"getDirtyItems",value:function(){return this.items.filter(function(e){return 1==e.dirty&&!e.dummy&&(!e.errorDecrypting||e.deleted)})}},{key:"clearDirtyItems",value:function(e){var t=!0,n=!1,r=void 0;try{for(var i,a=e[Symbol.iterator]();!(t=(i=a.next()).done);t=!0)i.value.setDirty(!1)}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}}},{key:"removeAndDirtyAllRelationshipsForItem",value:function(e){if(!e.errorDecrypting){var t=!0,n=!1,r=void 0;try{for(var i,a=e.content.references[Symbol.iterator]();!(t=(i=a.next()).done);t=!0){var o=i.value,s=this.findItem(o.uuid);s&&(e.removeItemAsRelationship(s),s.hasRelationshipWithItem(e)&&(s.removeItemAsRelationship(e),this.setItemDirty(s,!0)))}}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}}var u=!0,n=!1,r=void 0;try{for(var c,l=e.referencingObjects[Symbol.iterator]();!(u=(c=l.next()).done);u=!0){var f=c.value;f.removeItemAsRelationship(e),this.setItemDirty(f,!0)}}catch(e){n=!0,r=e}finally{try{u||null==l.return||l.return()}finally{if(n)throw r}}e.referencingObjects=[]}},{key:"setAllItemsDirty",value:function(){var e=this.allItems;this.setItemsDirty(e,!0)}},{key:"setItemToBeDeleted",value:function(e){e.deleted=!0,e.dummy||this.setItemDirty(e,!0),this.removeAndDirtyAllRelationshipsForItem(e)}},{key:"removeItemLocally",value:(n=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:_.remove(this.items,{uuid:t.uuid}),delete this.itemsHash[t.uuid],t.isBeingRemovedLocally();case 3:case"end":return e.stop()}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"allItemsMatchingTypes",value:function(t){return this.allItems.filter(function(e){return(_.includes(t,e.content_type)||_.includes(t,"*"))&&!e.dummy})}},{key:"invalidItems",value:function(){return this.allItems.filter(function(e){return e.errorDecrypting})}},{key:"validItemsForContentType",value:function(t){return this.allItems.filter(function(e){return e.content_type==t&&!e.errorDecrypting})}},{key:"findItem",value:function(e){return this.itemsHash[e]}},{key:"findItems",value:function(e){var t=1<arguments.length&&void 0!==arguments[1]&&arguments[1],n=[],r=!0,i=!1,a=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var u=o.value,c=this.itemsHash[u];(c||t)&&n.push(c)}}catch(e){i=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}return n}},{key:"itemsMatchingPredicate",value:function(e){return this.itemsMatchingPredicates([e])}},{key:"itemsMatchingPredicates",value:function(e){return this.filterItemsWithPredicates(this.allItems,e)}},{key:"filterItemsWithPredicates",value:function(e,s){return e.filter(function(e){var t=!0,n=!1,r=void 0;try{for(var i,a=s[Symbol.iterator]();!(t=(i=a.next()).done);t=!0){var o=i.value;if(!e.satisfiesPredicate(o))return!1}}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}return!0})}},{key:"importItems",value:(t=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c,l,f,h,p,d,g,m,v,y,b,k,w,x,$,S,_;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:n=[],r={},a=!(i=!0),o=void 0,e.prev=5,s=t[Symbol.iterator]();case 7:if(i=(u=s.next()).done){e.next=18;break}if(c=u.value,l=this.findItem(c.uuid)){e.next=13;break}return r[c.uuid]={},e.abrupt("continue",15);case 13:g=this.duplicateItemWithoutAdding(l),r[c.uuid]={frozenValue:g,itemRef:l};case 15:i=!0,e.next=7;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(5),a=!0,o=e.t0;case 24:e.prev=24,e.prev=25,i||null==s.return||s.return();case 27:if(e.prev=27,a)throw o;e.next=30;break;case 30:return e.finish(27);case 31:return e.finish(24);case 32:h=!(f=!0),p=void 0,e.prev=35,d=t[Symbol.iterator]();case 37:if(f=(g=d.next()).done){e.next=52;break}if(m=g.value,b=r[m.uuid],v=b.frozenValue,y=b.itemRef,v&&!y.errorDecrypting)return e.next=43,this.createDuplicateItemFromResponseItem(m);e.next=47;break;case 43:b=e.sent,m.deleted||v.isItemContentEqualWith(b)||(this.addDuplicatedItemAsConflict({duplicate:b,duplicateOf:y}),n.push(b)),e.next=49;break;case 47:n.push(m),y&&y.errorDecrypting&&(y.errorDecrypting=!1);case 49:f=!0,e.next=37;break;case 52:e.next=58;break;case 54:e.prev=54,e.t1=e.catch(35),h=!0,p=e.t1;case 58:e.prev=58,e.prev=59,f||null==d.return||d.return();case 61:if(e.prev=61,h)throw p;e.next=64;break;case 64:return e.finish(61);case 65:return e.finish(58);case 66:return e.next=68,this.mapResponseItemsToLocalModels(n,R.MappingSourceFileImport);case 68:for(k=e.sent,x=!(w=!0),$=void 0,e.prev=72,S=k[Symbol.iterator]();!(w=(_=S.next()).done);w=!0)_=_.value,this.setItemDirty(_,!0,!1),_.deleted=!1;e.next=80;break;case 76:e.prev=76,e.t2=e.catch(72),x=!0,$=e.t2;case 80:e.prev=80,e.prev=81,w||null==S.return||S.return();case 83:if(e.prev=83,x)throw $;e.next=86;break;case 86:return e.finish(83);case 87:return e.finish(80);case 88:return e.abrupt("return",k);case 89:case"end":return e.stop()}},e,this,[[5,20,24,32],[25,,27,31],[35,54,58,66],[59,,61,65],[72,76,80,88],[81,,83,87]])})),function(e){return t.apply(this,arguments)})},{key:"getAllItemsJSONData",value:(r=S(regeneratorRuntime.mark(function e(t,n,r){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.getJSONDataForItems(this.allItems,t,n,r));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n){return r.apply(this,arguments)})},{key:"getJSONDataForItems",value:(i=S(regeneratorRuntime.mark(function e(t,n,r,i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all(t.map(function(e){return new W(e,n,r).paramsForExportFile()})).then(function(e){if(i&&0==e.length)return null;e={items:e};return n&&(e.auth_params=r),JSON.stringify(e,null,2)}));case 1:case"end":return e.stop()}},e)})),function(e,t,n,r){return i.apply(this,arguments)})},{key:"computeDataIntegrityHash",value:(e=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,t=this.allNondummyItems.sort(function(e,t){return t.updated_at-e.updated_at}),t=t.map(function(e){return e.updatedAtTimestamp()}),t=t.join(","),e.next=6,SFJS.crypto.sha256(t);case 6:return t=e.sent,e.abrupt("return",t);case 10:return e.prev=10,e.t0=e.catch(0),console.error("Error computing data integrity hash",e.t0),e.abrupt("return",null);case 14:case"end":return e.stop()}},e,this,[[0,10]])})),function(){return e.apply(this,arguments)})},{key:"allItems",get:function(){return this.items.slice()}},{key:"allNondummyItems",get:function(){return this.items.filter(function(e){return!e.dummy})}}]),R}();ie.SFModelManager=F;var L=function(){function c(e,t,n){C(this,c),this.modelManager=e,this.syncManager=t,this.singletonManager=n,this.loadPrivileges(),c.CredentialAccountPassword="CredentialAccountPassword",c.CredentialLocalPasscode="CredentialLocalPasscode",c.ActionManageExtensions="ActionManageExtensions",c.ActionManageBackups="ActionManageBackups",c.ActionViewProtectedNotes="ActionViewProtectedNotes",c.ActionManagePrivileges="ActionManagePrivileges",c.ActionManagePasscode="ActionManagePasscode",c.ActionDeleteNote="ActionDeleteNote",c.SessionExpiresAtKey="SessionExpiresAtKey",c.SessionLengthKey="SessionLengthKey",c.SessionLengthNone=0,c.SessionLengthFiveMinutes=300,c.SessionLengthOneHour=3600,c.SessionLengthOneWeek=604800,this.availableActions=[c.ActionViewProtectedNotes,c.ActionDeleteNote,c.ActionManagePasscode,c.ActionManageBackups,c.ActionManageExtensions,c.ActionManagePrivileges],this.availableCredentials=[c.CredentialAccountPassword,c.CredentialLocalPasscode],this.sessionLengths=[c.SessionLengthNone,c.SessionLengthFiveMinutes,c.SessionLengthOneHour,c.SessionLengthOneWeek,c.SessionLengthIndefinite]}var n,r,e,t,i,a,o,s,u,l,f,h;return O(c,[{key:"setDelegate",value:function(e){this.delegate=e}},{key:"getAvailableActions",value:function(){return this.availableActions}},{key:"getAvailableCredentials",value:function(){return this.availableCredentials}},{key:"netCredentialsForAction",value:(h=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPrivileges();case 2:e.t0=t,s=e.sent.getCredentialsForAction(e.t0),n=[],i=!(r=!0),a=void 0,e.prev=8,o=s[Symbol.iterator]();case 10:if(r=(s=o.next()).done){e.next=27;break}if((u=s.value)==c.CredentialAccountPassword)return e.next=15,this.delegate.isOffline();e.next=19;break;case 15:e.sent||n.push(u),e.next=24;break;case 19:if(u==c.CredentialLocalPasscode)return e.next=22,this.delegate.hasLocalPasscode();e.next=24;break;case 22:e.sent&&n.push(u);case 24:r=!0,e.next=10;break;case 27:e.next=33;break;case 29:e.prev=29,e.t1=e.catch(8),i=!0,a=e.t1;case 33:e.prev=33,e.prev=34,r||null==o.return||o.return();case 36:if(e.prev=36,i)throw a;e.next=39;break;case 39:return e.finish(36);case 40:return e.finish(33);case 41:return e.abrupt("return",n);case 42:case"end":return e.stop()}},e,this,[[8,29,33,41],[34,,36,40]])})),function(e){return h.apply(this,arguments)})},{key:"loadPrivileges",value:(f=S(regeneratorRuntime.mark(function e(){var a=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.loadPromise)return e.abrupt("return",this.loadPromise);e.next=2;break;case 2:return this.loadPromise=new Promise(function(r,e){var i=G.contentType(),t=new J("content_type","=",i);a.singletonManager.registerSingleton([t],function(e){a.privileges=e,r(e)},function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n=new G({content_type:i}),SFJS.crypto.generateUUIDSync){e.next=4;break}return e.next=4,n.initUUID();case 4:a.modelManager.addItem(n),a.modelManager.setItemDirty(n,!0),a.syncManager.sync(),t(n),r(n);case 9:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}())}),e.abrupt("return",this.loadPromise);case 4:case"end":return e.stop()}},e,this)})),function(){return f.apply(this,arguments)})},{key:"getPrivileges",value:(l=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.privileges)return e.abrupt("return",this.privileges);e.next=4;break;case 4:return e.abrupt("return",this.loadPrivileges());case 5:case"end":return e.stop()}},e,this)})),function(){return l.apply(this,arguments)})},{key:"displayInfoForCredential",value:function(e){var t={};return t[c.CredentialAccountPassword]={label:"Account Password",prompt:"Please enter your account password."},t[c.CredentialLocalPasscode]={label:"Local Passcode",prompt:"Please enter your local passcode."},t[e]}},{key:"displayInfoForAction",value:function(e){var t={};return t[c.ActionManageExtensions]={label:"Manage Extensions"},t[c.ActionManageBackups]={label:"Download/Import Backups"},t[c.ActionViewProtectedNotes]={label:"View Protected Notes"},t[c.ActionManagePrivileges]={label:"Manage Privileges"},t[c.ActionManagePasscode]={label:"Manage Passcode"},t[c.ActionDeleteNote]={label:"Delete Notes"},t[e]}},{key:"getSessionLengthOptions",value:function(){return[{value:c.SessionLengthNone,label:"Don't Remember"},{value:c.SessionLengthFiveMinutes,label:"5 Minutes"},{value:c.SessionLengthOneHour,label:"1 Hour"},{value:c.SessionLengthOneWeek,label:"1 Week"}]}},{key:"setSessionLength",value:(u=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=function(e){var t=new Date;return t.setSeconds(t.getSeconds()+e),t}(t),e.abrupt("return",Promise.all([this.delegate.saveToStorage(c.SessionExpiresAtKey,JSON.stringify(n)),this.delegate.saveToStorage(c.SessionLengthKey,JSON.stringify(t))]));case 3:case"end":return e.stop()}},e,this)})),function(e){return u.apply(this,arguments)})},{key:"clearSession",value:(s=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.setSessionLength(c.SessionLengthNone));case 1:case"end":return e.stop()}},e,this)})),function(){return s.apply(this,arguments)})},{key:"getSelectedSessionLength",value:(o=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.delegate.getFromStorage(c.SessionLengthKey);case 2:if(t=e.sent)return e.abrupt("return",JSON.parse(t));e.next=7;break;case 7:return e.abrupt("return",c.SessionLengthNone);case 8:case"end":return e.stop()}},e,this)})),function(){return o.apply(this,arguments)})},{key:"getSessionExpirey",value:(a=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.delegate.getFromStorage(c.SessionExpiresAtKey);case 2:if(t=e.sent)return e.abrupt("return",new Date(JSON.parse(t)));e.next=7;break;case 7:return e.abrupt("return",new Date);case 8:case"end":return e.stop()}},e,this)})),function(){return a.apply(this,arguments)})},{key:"actionHasPrivilegesConfigured",value:(i=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.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",0<e.t0);case 4:case"end":return e.stop()}},e,this)})),function(e){return i.apply(this,arguments)})},{key:"actionRequiresPrivilege",value:(t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getSessionExpirey();case 2:if(e.sent>new Date)return e.abrupt("return",!1);e.next=5;break;case 5:return e.next=7,this.netCredentialsForAction(t);case 7:return n=e.sent,e.abrupt("return",0<n.length);case 9:case"end":return e.stop()}},e,this)})),function(e){return t.apply(this,arguments)})},{key:"savePrivileges",value:(e=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPrivileges();case 2:t=e.sent,this.modelManager.setItemDirty(t,!0),this.syncManager.sync();case 5:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})},{key:"authenticateAction",value:(r=S(regeneratorRuntime.mark(function e(t,n){var r,i,a,o,s,u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.netCredentialsForAction(t);case 2:c=e.sent,r=[],i=[],o=!(a=!0),s=void 0,e.prev=7,u=c[Symbol.iterator]();case 9:if(a=(c=u.next()).done){e.next=18;break}return l=c.value,e.next=13,this._verifyAuthenticationParameters(l,n[l]);case 13:(e.sent?r:i).push(l);case 15:a=!0,e.next=9;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(7),o=!0,s=e.t0;case 24:e.prev=24,e.prev=25,a||null==u.return||u.return();case 27:if(e.prev=27,o)throw s;e.next=30;break;case 30:return e.finish(27);case 31:return e.finish(24);case 32:return e.abrupt("return",{success:0==i.length,successfulCredentials:r,failedCredentials:i});case 33:case"end":return e.stop()}},e,this,[[7,20,24,32],[25,,27,31]])})),function(e,t){return r.apply(this,arguments)})},{key:"_verifyAuthenticationParameters",value:(n=S(regeneratorRuntime.mark(function e(t,n){var r,i,a=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.delegate.verifyAccountPassword(t));case 1:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),i=function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.delegate.verifyLocalPasscode(t));case 1:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),t==c.CredentialAccountPassword)return e.abrupt("return",r(n));e.next=6;break;case 6:if(t==c.CredentialLocalPasscode)return e.abrupt("return",i(n));e.next=8;break;case 8:case"end":return e.stop()}},e)})),function(e,t){return n.apply(this,arguments)})}]),c}();ie.SFPrivilegesManager=L;var B="sessionHistory_persist",j="sessionHistory_revisions",H="sessionHistory_autoOptimize",N=function(){function a(e,t,n,r,i){var l=this;C(this,a),this.modelManager=e,this.storageManager=t,this.$timeout=i||setTimeout.bind(window),this.keyRequestHandler=n,this.loadFromDisk().then(function(){l.modelManager.addItemSyncObserver("session-history",r,function(e,t,n,r,i){if(r!==F.MappingSourceLocalDirtied){var a=!0,o=!1,r=void 0;try{for(var s,u=e[Symbol.iterator]();!(a=(s=u.next()).done);a=!0){var c=s.value;try{l.addHistoryEntryForItem(c)}catch(e){console.log("Caught exception while trying to add item history entry",e)}}}catch(e){o=!0,r=e}finally{try{a||null==u.return||u.return()}finally{if(o)throw r}}}})})}var e,t,n,r,i,o,s;return O(a,[{key:"encryptionParams",value:(s=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.keyRequestHandler());case 1:case"end":return e.stop()}},e,this)})),function(){return s.apply(this,arguments)})},{key:"addHistoryEntryForItem",value:function(e){var t=this,n={uuid:e.uuid,content_type:e.content_type,updated_at:e.updated_at,content:e.getContentCopy()},n=this.historySession.addEntryForItem(n);this.autoOptimize&&this.historySession.optimizeHistoryForItem(e),n&&this.diskEnabled&&(this.diskTimeout&&(this.$timeout.hasOwnProperty("cancel")?this.$timeout.cancel(this.diskTimeout):clearTimeout(this.diskTimeout)),this.diskTimeout=this.$timeout(function(){t.saveToDisk()},2e3))}},{key:"historyForItem",value:function(e){return this.historySession.historyForItem(e)}},{key:"clearHistoryForItem",value:(o=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.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 o.apply(this,arguments)})},{key:"clearAllHistory",value:(i=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.historySession.clearAllHistory(),e.abrupt("return",this.storageManager.removeItem(j));case 2:case"end":return e.stop()}},e,this)})),function(){return i.apply(this,arguments)})},{key:"toggleDiskSaving",value:(r=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.diskEnabled=!this.diskEnabled,!this.diskEnabled){e.next=6;break}this.storageManager.setItem(B,JSON.stringify(!0)),this.saveToDisk(),e.next=8;break;case 6:return this.storageManager.setItem(B,JSON.stringify(!1)),e.abrupt("return",this.storageManager.removeItem(j));case 8:case"end":return e.stop()}},e,this)})),function(){return r.apply(this,arguments)})},{key:"saveToDisk",value:(n=S(regeneratorRuntime.mark(function e(){var t,n=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.diskEnabled){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,this.encryptionParams();case 4:t=e.sent,new W(this.historySession,t.keys,t.auth_params).paramsForSync().then(function(e){n.storageManager.setItem(j,JSON.stringify(e))});case 7:case"end":return e.stop()}},e,this)})),function(){return n.apply(this,arguments)})},{key:"loadFromDisk",value:(t=S(regeneratorRuntime.mark(function e(){var t,n,r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageManager.getItem(B);case 2:return(n=e.sent)&&(this.diskEnabled=JSON.parse(n)),e.next=6,this.storageManager.getItem(j);case 6:if(t=e.sent)return t=JSON.parse(t),e.next=11,this.encryptionParams();e.next=18;break;case 11:return n=e.sent,e.next=14,SFJS.itemTransformer.decryptItem(t,n.keys);case 14:r=new Y(t),this.historySession=r,e.next=19;break;case 18:this.historySession=new Y;case 19:return e.next=21,this.storageManager.getItem(H);case 21:r=e.sent,this.autoOptimize=!r||JSON.parse(r);case 23:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})},{key:"toggleAutoOptimize",value:(e=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:this.autoOptimize=!this.autoOptimize,this.autoOptimize?this.storageManager.setItem(H,JSON.stringify(!0)):this.storageManager.setItem(H,JSON.stringify(!1));case 2:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})}]),a}();ie.SFSessionHistoryManager=N;var U=function(){function t(a,e){var u=this;C(this,t),this.syncManager=e,this.modelManager=a,this.singletonHandlers=[],a.addItemSyncObserverWithPriority({id:"sf-singleton-manager",types:"*",priority:-1,callback:function(e,t,n,r,i){r!==F.MappingSourceLocalDirtied&&u.resolveSingletons(a.allNondummyItems,null,!0)}}),e.addEventHandler(function(e,t){"local-data-loaded"==e?(u.resolveSingletons(a.allNondummyItems,null,!0),u.initialDataLoaded=!0):"sync:completed"==e&&u.initialDataLoaded&&u.resolveSingletons(t.retrievedItems,t.savedItems)}),a.addModelUuidChangeObserver("singleton-manager",function(e,t){var n=!0,r=!1,i=void 0;try{for(var a,o=u.singletonHandlers[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;s.singleton&&J.ItemSatisfiesPredicates(t,s.predicates)&&(s.singleton=null,u.resolveSingletons([t]))}}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}})}return O(t,[{key:"registerSingleton",value:function(e,t,n){this.singletonHandlers.push({predicates:e,resolutionCallback:t,createBlock:n})}},{key:"resolveSingletons",value:function(f,h,p){var d=this;f=f||[],h=h||[];var e=!0,t=!1,n=void 0;try{for(var g,r=this.singletonHandlers[Symbol.iterator]();!(e=(g=r.next()).done);e=!0)!function(){function e(){t.createBlock&&(t.pendingCreateBlockCallback=!0,t.createBlock(function(e){t.singleton=e,t.pendingCreateBlockCallback=!1,t.resolutionCallback&&t.resolutionCallback(e)}))}var t=g.value,n=t.predicates.slice(),r=d.modelManager.filterItemsWithPredicates(f,n),i=d.modelManager.filterItemsWithPredicates(h,n).length;if(0<r.length||0<i){var a=d.modelManager.itemsMatchingPredicates(n);if(2<=a.length){var o=a.sort(function(e,t){return!e.errorDecrypting&&(t.errorDecrypting||e.created_at<t.created_at)?-1:1}),r=o[0],i=o.slice(1,o.length),s=!0,n=!1,o=void 0;try{for(var u,c=i[Symbol.iterator]();!(s=(u=c.next()).done);s=!0){var l=u.value;d.modelManager.setItemToBeDeleted(l)}}catch(e){n=!0,o=e}finally{try{s||null==c.return||c.return()}finally{if(n)throw o}}d.syncManager.sync(),t.singleton=r,t.resolutionCallback&&t.resolutionCallback(r)}else 1==a.length&&((a=a[0]).errorDecrypting?(d.modelManager.setItemToBeDeleted(a),e()):t.singleton&&t.singleton===a||(t.singleton=a,t.resolutionCallback&&t.resolutionCallback(a)))}else t.singleton||p||t.pendingCreateBlockCallback||e()}()}catch(e){t=!0,n=e}finally{try{e||null==r.return||r.return()}finally{if(t)throw n}}}}]),t}();ie.SFSingletonManager=U;var V=function(){function e(){C(this,e)}var t,n,r,i,a,o,s,u,c,l;return O(e,[{key:"setItem",value:(l=S(regeneratorRuntime.mark(function e(t,n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(e,t){return l.apply(this,arguments)})},{key:"getItem",value:(c=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(e){return c.apply(this,arguments)})},{key:"removeItem",value:(u=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(e){return u.apply(this,arguments)})},{key:"clear",value:(s=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(){return s.apply(this,arguments)})},{key:"getAllModels",value:(o=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(){return o.apply(this,arguments)})},{key:"saveModel",value:(a=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.saveModels([t]));case 1:case"end":return e.stop()}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"saveModels",value:(i=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(e){return i.apply(this,arguments)})},{key:"deleteModel",value:(r=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.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:"clearAllModels",value:(n=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)})),function(){return n.apply(this,arguments)})},{key:"clearAllData",value:(t=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all([this.clear(),this.clearAllModels()]));case 1:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})}]),e}();ie.SFStorageManager=V;var z,q=function(){function I(e,t,n,r,i){C(this,I),I.KeyRequestLoadLocal="KeyRequestLoadLocal",I.KeyRequestSaveLocal="KeyRequestSaveLocal",I.KeyRequestLoadSaveAccount="KeyRequestLoadSaveAccount",this.httpManager=n,this.modelManager=e,this.storageManager=t,this.$interval=i||setInterval.bind(window),this.$timeout=r||setTimeout.bind(window),this.syncStatus={},this.syncStatusObservers=[],this.eventHandlers=[],this.PerSyncItemUploadLimit=150,this.ServerItemDownloadLimit=150,this.MajorDataChangeThreshold=15,this.MaxDiscordanceBeforeOutOfSync=5,this.syncDiscordance=0,this.outOfSync=!1}var e,t,n,r,i,a,o,s,u,c,l,f,h,p,d,g,m,v,y,b,k,w,x;return O(I,[{key:"handleServerIntegrityHash",value:(x=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t&&0!=t.length){e.next=2;break}return e.abrupt("return",!0);case 2:return e.next=4,this.modelManager.computeDataIntegrityHash();case 4:if(n=e.sent){e.next=7;break}return e.abrupt("return",!0);case 7:if(n!==t)return this.syncDiscordance++,this.syncDiscordance>=this.MaxDiscordanceBeforeOutOfSync&&(this.outOfSync||(this.outOfSync=!0,this.notifyEvent("enter-out-of-sync"))),e.abrupt("return",!1);e.next=13;break;case 13:return this.outOfSync&&(this.outOfSync=!1,this.notifyEvent("exit-out-of-sync")),this.syncDiscordance=0,e.abrupt("return",!0);case 16:case"end":return e.stop()}},e,this)})),function(e){return x.apply(this,arguments)})},{key:"isOutOfSync",value:function(){return this.outOfSync}},{key:"getServerURL",value:(w=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageManager.getItem("server");case 2:if(e.t0=e.sent,e.t0){e.next=5;break}e.t0=window._default_sf_server;case 5:return e.abrupt("return",e.t0);case 6:case"end":return e.stop()}},e,this)})),function(){return w.apply(this,arguments)})},{key:"getSyncURL",value:(k=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getServerURL();case 2:return e.t0=e.sent,e.abrupt("return",e.t0+"/items/sync");case 4:case"end":return e.stop()}},e,this)})),function(){return k.apply(this,arguments)})},{key:"registerSyncStatusObserver",value:function(e){e={key:new Date,callback:e};return this.syncStatusObservers.push(e),e}},{key:"removeSyncStatusObserver",value:function(e){_.pull(this.syncStatusObservers,e)}},{key:"syncStatusDidChange",value:function(){var t=this;this.syncStatusObservers.forEach(function(e){e.callback(t.syncStatus)})}},{key:"addEventHandler",value:function(e){return this.eventHandlers.push(e),e}},{key:"removeEventHandler",value:function(e){_.pull(this.eventHandlers,e)}},{key:"notifyEvent",value:function(e,t){var n=!0,r=!1,i=void 0;try{for(var a,o=this.eventHandlers[Symbol.iterator]();!(n=(a=o.next()).done);n=!0)(0,a.value)(e,t||{})}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}}},{key:"setKeyRequestHandler",value:function(e){this.keyRequestHandler=e}},{key:"getActiveKeyInfo",value:(b=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.keyRequestHandler(t));case 1:case"end":return e.stop()}},e,this)})),function(e){return b.apply(this,arguments)})},{key:"initialDataLoaded",value:function(){return!0===this._initialDataLoaded}},{key:"_sortLocalItems",value:function(e){var o=this;return e.sort(function(e,t){var n=new Date(t.updated_at)-new Date(e.updated_at),r=o.contentTypeLoadPriority,i=0,a=0;return r&&(i=r.indexOf(e.content_type),a=r.indexOf(t.content_type),-1==i&&(i=r.length),-1==a&&(a=r.length)),i==a?n:i<a?-1:1})}},{key:"loadLocalItems",value:(y=S(regeneratorRuntime.mark(function e(){var u,c,t,l=this,n=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(u=(t=0<n.length&&void 0!==n[0]?n[0]:{}).incrementalCallback,c=t.batchSize,(t=t.options)&&t.simulateHighLatency)return t=t.simulatedLatency||1e3,e.next=5,this._awaitSleep(t);e.next=5;break;case 5:if(this.loadLocalDataPromise)return e.abrupt("return",this.loadLocalDataPromise);e.next=7;break;case 7:return c=c||100,this.loadLocalDataPromise=this.storageManager.getAllModels().then(function(r){var i=(r=(r=l._sortLocalItems(r)).filter(function(e){var t=l.modelManager.findItem(e.uuid);return!t||new Date(e.dirtiedDate)>t.dirtiedDate})).length,a=0,o=[],s=function(){var e=S(regeneratorRuntime.mark(function e(){var t,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=r.slice(a,a+c),e.next=3,l.handleItemsResponse(t,null,F.MappingSourceLocalRetrieved,I.KeyRequestLoadLocal);case 3:if(n=e.sent,o.push(n),(a+=t.length)<i)return e.abrupt("return",new Promise(function(e,t){l.$timeout(function(){l.notifyEvent("local-data-incremental-load"),u&&u(a,i),s().then(e)})}));e.next=10;break;case 10:l._initialDataLoaded=!0,l.notifyEvent("local-data-loaded");case 12:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}();return s()}),e.abrupt("return",this.loadLocalDataPromise);case 10:case"end":return e.stop()}},e,this)})),function(){return y.apply(this,arguments)})},{key:"writeItemsToLocalStorage",value:(v=S(regeneratorRuntime.mark(function e(h,p){var d=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(0==h.length)return e.abrupt("return");e.next=2;break;case 2:return e.abrupt("return",new Promise(function(){var n=S(regeneratorRuntime.mark(function e(t,n){var r,i,a,o,s,u,c,l,f;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(r=[],i=[],o=!(a=!0),s=void 0,e.prev=4,u=h[Symbol.iterator]();!(a=(c=u.next()).done);a=!0)(!0!==(c=c.value).deleted||c.dirty?r:i).push(c);e.next=12;break;case 8:e.prev=8,e.t0=e.catch(4),o=!0,s=e.t0;case 12:e.prev=12,e.prev=13,a||null==u.return||u.return();case 15:if(e.prev=15,o)throw s;e.next=18;break;case 18:return e.finish(15);case 19:return e.finish(12);case 20:if(0<i.length)return e.next=23,Promise.all(i.map(function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",d.storageManager.deleteModel(t));case 1:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()));e.next=23;break;case 23:return e.next=25,d.getActiveKeyInfo(I.KeyRequestSaveLocal);case 25:if(l=e.sent,0<r.length)return e.next=29,Promise.all(r.map(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=new W(t,l.keys,l.auth_params),e.next=3,n.paramsForLocalStorage();case 3:return n=e.sent,p&&delete n.dirty,e.abrupt("return",n);case 6:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}())).catch(function(e){return n(e)});e.next=33;break;case 29:return f=e.sent,e.next=32,d.storageManager.saveModels(f).catch(function(e){console.error("Error writing items",e),d.syncStatus.localError=e,d.syncStatusDidChange(),n()});case 32:d.syncStatus.localError&&(d.syncStatus.localError=null,d.syncStatusDidChange());case 33:t();case 34:case"end":return e.stop()}},e,null,[[4,8,12,20],[13,,15,19]])}));return function(e,t){return n.apply(this,arguments)}}()));case 3:case"end":return e.stop()}},e)})),function(e,t){return v.apply(this,arguments)})},{key:"syncOffline",value:(m=S(regeneratorRuntime.mark(function e(s){var t,n,r,i,a,u=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(n=!(t=!0),r=void 0,e.prev=3,i=s[Symbol.iterator]();!(t=(a=i.next()).done);t=!0)a.value.updated_at=new Date;e.next=11;break;case 7:e.prev=7,e.t0=e.catch(3),n=!0,r=e.t0;case 11:e.prev=11,e.prev=12,t||null==i.return||i.return();case 14:if(e.prev=14,n)throw r;e.next=17;break;case 17:return e.finish(14);case 18:return e.finish(11);case 19:return e.abrupt("return",this.writeItemsToLocalStorage(s,!0).then(function(e){var t=!0,n=!1,r=void 0;try{for(var i,a=s[Symbol.iterator]();!(t=(i=a.next()).done);t=!0){var o=i.value;o.deleted&&u.modelManager.removeItemLocally(o)}}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}return u.modelManager.clearDirtyItems(s),u.modelManager.didSyncModelsOffline(s),u.notifyEvent("sync:completed",{savedItems:s}),{saved_items:s}}));case 20:case"end":return e.stop()}},e,this,[[3,7,11,19],[12,,14,18]])})),function(e){return m.apply(this,arguments)})},{key:"markAllItemsDirtyAndSaveOffline",value:(g=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c,l,f,h;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!t){e.next=28;break}o=this.modelManager.allNondummyItems.filter(function(e){return!e.errorDecrypting}).slice(),r=!(n=!0),i=void 0,e.prev=5,a=o[Symbol.iterator]();case 7:if(n=(o=a.next()).done){e.next=14;break}return o=o.value,e.next=11,this.modelManager.alternateUUIDForItem(o);case 11:n=!0,e.next=7;break;case 14:e.next=20;break;case 16:e.prev=16,e.t0=e.catch(5),r=!0,i=e.t0;case 20:e.prev=20,e.prev=21,n||null==a.return||a.return();case 23:if(e.prev=23,r)throw i;e.next=26;break;case 26:return e.finish(23);case 27:return e.finish(20);case 28:for(s=this.modelManager.allNondummyItems,c=!(u=!0),l=void 0,e.prev=32,f=s[Symbol.iterator]();!(u=(h=f.next()).done);u=!0)h.value.setDirty(!0);e.next=40;break;case 36:e.prev=36,e.t1=e.catch(32),c=!0,l=e.t1;case 40:e.prev=40,e.prev=41,u||null==f.return||f.return();case 43:if(e.prev=43,c)throw l;e.next=46;break;case 46:return e.finish(43);case 47:return e.finish(40);case 48:return e.abrupt("return",this.writeItemsToLocalStorage(s,!1));case 49:case"end":return e.stop()}},e,this,[[5,16,20,28],[21,,23,27],[32,36,40,48],[41,,43,47]])})),function(e){return g.apply(this,arguments)})},{key:"setSyncToken",value:(d=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this._syncToken=t,e.next=3,this.storageManager.setItem("syncToken",t);case 3:case"end":return e.stop()}},e,this)})),function(e){return d.apply(this,arguments)})},{key:"getSyncToken",value:(p=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._syncToken){e.next=4;break}return e.next=3,this.storageManager.getItem("syncToken");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 p.apply(this,arguments)})},{key:"setCursorToken",value:(h=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._cursorToken=t)return e.next=4,this.storageManager.setItem("cursorToken",t);e.next=6;break;case 4:e.next=8;break;case 6:return e.next=8,this.storageManager.removeItem("cursorToken");case 8:case"end":return e.stop()}},e,this)})),function(e){return h.apply(this,arguments)})},{key:"getCursorToken",value:(f=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this._cursorToken){e.next=4;break}return e.next=3,this.storageManager.getItem("cursorToken");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 f.apply(this,arguments)})},{key:"clearQueuedCallbacks",value:function(){this._queuedCallbacks=[]}},{key:"callQueuedCallbacks",value:function(e){var t=this.queuedCallbacks;if(t.length){var n=!0,r=!1,i=void 0;try{for(var a,o=t[Symbol.iterator]();!(n=(a=o.next()).done);n=!0)(0,a.value)(e)}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}this.clearQueuedCallbacks()}}},{key:"beginCheckingIfSyncIsTakingTooLong",value:function(){this.syncStatus.checker&&this.stopCheckingIfSyncIsTakingTooLong(),this.syncStatus.checker=this.$interval(function(){5<(new Date-this.syncStatus.syncStart)/1e3&&(this.notifyEvent("sync:taking-too-long"),this.stopCheckingIfSyncIsTakingTooLong())}.bind(this),500)}},{key:"stopCheckingIfSyncIsTakingTooLong",value:function(){this.$interval.hasOwnProperty("cancel")?this.$interval.cancel(this.syncStatus.checker):clearInterval(this.syncStatus.checker),this.syncStatus.checker=null}},{key:"lockSyncing",value:function(){this.syncLocked=!0}},{key:"unlockSyncing",value:function(){this.syncLocked=!1}},{key:"sync",value:(l=S(regeneratorRuntime.mark(function e(){var v,y=this,t=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(v=0<t.length&&void 0!==t[0]?t[0]:{},this.syncLocked)return console.log("Sync Locked, Returning;"),e.abrupt("return");e.next=4;break;case 4:return e.abrupt("return",new Promise(function(){var n=S(regeneratorRuntime.mark(function e(n,t){var r,i,a,o,s,u,c,l,f,h,p,d,g,m;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return v=v||{},r=y.modelManager.getDirtyItems(),i=r.filter(function(e){return!y.lastDirtyItemsSave||e.dirtiedDate>y.lastDirtyItemsSave}),e.next=5,y.getActiveKeyInfo(I.KeyRequestLoadSaveAccount);case 5:if(a=e.sent,o=y.syncStatus.syncOpInProgress,s=y.initialDataLoaded(),o||!s)return y.performSyncAgainOnCompletion=!0,y.lastDirtyItemsSave=new Date,e.next=13,y.writeItemsToLocalStorage(i,!1);e.next=16;break;case 13:return o&&(y.queuedCallbacks.push(n),y.loggingEnabled&&console.warn("Attempting to sync while existing sync is in progress.")),s||(y.loggingEnabled&&console.warn("(1) Attempting to perform online sync before local data has loaded"),n()),e.abrupt("return");case 16:if(y.syncStatus.syncOpInProgress=!0,a.offline)return e.abrupt("return",y.syncOffline(r).then(function(e){y.syncStatus.syncOpInProgress=!1,n(e)}).catch(function(e){y.notifyEvent("sync-exception",e)}));e.next=19;break;case 19:if(y.initialDataLoaded()){e.next=22;break}return console.error("Attempting to perform online sync before local data has loaded"),e.abrupt("return");case 22:return y.loggingEnabled&&console.log("Syncing online user."),u=y.syncStatus.needsMoreSync,y.syncStatus.syncStart=new Date,y.beginCheckingIfSyncIsTakingTooLong(),c=y.PerSyncItemUploadLimit,(l=r.slice(0,c)).length<r.length?y.syncStatus.needsMoreSync=!0:y.syncStatus.needsMoreSync=!1,u||(y.syncStatus.total=r.length,y.syncStatus.current=0),y.syncStatus.current>y.syncStatus.total&&(y.syncStatus.total=y.syncStatus.current),y.syncStatusDidChange(),e.next=34,y.writeItemsToLocalStorage(i,!1);case 34:return y.lastDirtyItemsSave=new Date,v.onPreSyncSave&&v.onPreSyncSave(),y.allRetreivedItems||(y.allRetreivedItems=[]),y.allSavedItems||(y.allSavedItems=[]),(f={}).limit=y.ServerItemDownloadLimit,v.performIntegrityCheck&&(f.compute_integrity=!0),e.prev=41,e.next=44,Promise.all(l.map(function(e){e=new W(e,a.keys,a.auth_params);return e.additionalFields=v.additionalFields,e.paramsForSync()})).then(function(e){f.items=e});case 44:e.next=49;break;case 46:e.prev=46,e.t0=e.catch(41),y.notifyEvent("sync-exception",e.t0);case 49:for(p=!(h=!0),d=void 0,e.prev=52,g=l[Symbol.iterator]();!(h=(m=g.next()).done);h=!0)m.value.dirtyCount=0;e.next=60;break;case 56:e.prev=56,e.t1=e.catch(52),p=!0,d=e.t1;case 60:e.prev=60,e.prev=61,h||null==g.return||g.return();case 63:if(e.prev=63,p)throw d;e.next=66;break;case 66:return e.finish(63);case 67:return e.finish(60);case 68:return e.next=70,y.getSyncToken();case 70:return f.sync_token=e.sent,e.next=73,y.getCursorToken();case 73:return f.cursor_token=e.sent,f.api=T.getApiVersion(),y.loggingEnabled&&console.log("Syncing with params",f),e.prev=76,e.t2=y.httpManager,e.next=80,y.getSyncURL();case 80:e.t3=e.sent,e.t4=f,e.t5=function(e){y.handleSyncSuccess(l,e,v).then(function(){n(e)}).catch(function(t){console.log("Caught sync success exception:",t),y.handleSyncError(t,null,r).then(function(e){y.notifyEvent("sync-exception",t),n(e)})})},e.t6=function(e,t){y.handleSyncError(e,t,r).then(function(e){n(e)})},e.t2.postAuthenticatedAbsolute.call(e.t2,e.t3,e.t4,e.t5,e.t6),e.next=90;break;case 87:e.prev=87,e.t7=e.catch(76),console.log("Sync exception caught:",e.t7);case 90:case"end":return e.stop()}},e,null,[[41,46],[52,56,60,68],[61,,63,67],[76,87]])}));return function(e,t){return n.apply(this,arguments)}}()));case 5:case"end":return e.stop()}},e,this)})),function(){return l.apply(this,arguments)})},{key:"_awaitSleep",value:(c=S(regeneratorRuntime.mark(function e(n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return console.warn("Simulating high latency sync request",n),e.abrupt("return",new Promise(function(e,t){setTimeout(function(){e()},n)}));case 2:case"end":return e.stop()}},e)})),function(e){return c.apply(this,arguments)})},{key:"handleSyncSuccess",value:(u=S(regeneratorRuntime.mark(function e(t,n,r){var i,a,o,s,u,c,l,f,h,p,d,g,m,v,y=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r.simulateHighLatency)return p=r.simulatedLatency||1e3,e.next=4,this._awaitSleep(p);e.next=4;break;case 4:for(this.syncStatus.error=null,this.loggingEnabled&&console.log("Sync response",n),i=this.allSavedItems.map(function(e){return e.uuid}),a=n.saved_items.map(function(e){return e.uuid}),n.retrieved_items=n.retrieved_items.filter(function(e){var t=i.includes(e.uuid),n=a.includes(e.uuid);if(t||n)return!1;e=y.modelManager.findItem(e.uuid);return!e||!e.dirty}),o=[],u=!(s=!0),c=void 0,e.prev=13,l=t[Symbol.iterator]();!(s=(f=l.next()).done);s=!0)0==(f=f.value).dirtyCount&&o.push(f);e.next=21;break;case 17:e.prev=17,e.t0=e.catch(13),u=!0,c=e.t0;case 21:e.prev=21,e.prev=22,s||null==l.return||l.return();case 24:if(e.prev=24,u)throw c;e.next=27;break;case 27:return e.finish(24);case 28:return e.finish(21);case 29:return this.modelManager.clearDirtyItems(o),e.next=32,this.handleItemsResponse(n.retrieved_items,null,F.MappingSourceRemoteRetrieved,I.KeyRequestLoadSaveAccount);case 32:return h=e.sent,this.allRetreivedItems=this.allRetreivedItems.concat(h),this.syncStatus.retrievedCount=this.allRetreivedItems.length,p=["content","auth_hash"],e.next=38,this.handleItemsResponse(n.saved_items,p,F.MappingSourceRemoteSaved,I.KeyRequestLoadSaveAccount);case 38:return d=e.sent,this.allSavedItems=this.allSavedItems.concat(d),g=n.unsaved,e.next=43,this.deprecated_handleUnsavedItemsResponse(g);case 43:return e.next=45,this.handleConflictsResponse(n.conflicts);case 45:if(m=e.sent,v=m&&0<m.length,m)return e.next=50,this.writeItemsToLocalStorage(m,!1);e.next=50;break;case 50:return e.next=52,this.writeItemsToLocalStorage(d,!1);case 52:return e.next=54,this.writeItemsToLocalStorage(h,!1);case 54:if(n.integrity_hash&&!n.cursor_token)return e.next=57,this.handleServerIntegrityHash(n.integrity_hash);e.next=59;break;case 57:e.sent||this.syncDiscordance<this.MaxDiscordanceBeforeOutOfSync&&(this.performSyncAgainOnCompletion=!0);case 59:return this.syncStatus.syncOpInProgress=!1,this.syncStatus.current+=t.length,this.syncStatusDidChange(),this.setSyncToken(n.sync_token),this.setCursorToken(n.cursor_token),this.stopCheckingIfSyncIsTakingTooLong(),e.next=67,this.getCursorToken();case 67:if(e.sent||this.syncStatus.needsMoreSync)return e.abrupt("return",new Promise(function(e,t){setTimeout(function(){this.sync(r).then(e)}.bind(y),10)}));e.next=72;break;case 72:if(v)return this.performSyncAgainOnCompletion=!1,e.abrupt("return",new Promise(function(e,t){setTimeout(function(){y.sync(r).then(e)},10)}));e.next=77;break;case 77:return this.syncStatus.retrievedCount=0,this.syncStatus.current=0,this.syncStatus.total=0,this.syncStatusDidChange(),(this.allRetreivedItems.length>=this.majorDataChangeThreshold||d.length>=this.majorDataChangeThreshold||g&&g.length>=this.majorDataChangeThreshold||m&&m.length>=this.majorDataChangeThreshold)&&this.notifyEvent("major-data-change"),this.callQueuedCallbacks(n),this.notifyEvent("sync:completed",{retrievedItems:this.allRetreivedItems,savedItems:this.allSavedItems}),this.allRetreivedItems=[],this.allSavedItems=[],this.performSyncAgainOnCompletion&&(this.performSyncAgainOnCompletion=!1,setTimeout(function(){y.sync(r)},10)),e.abrupt("return",n);case 88:case"end":return e.stop()}},e,this,[[13,17,21,29],[22,,24,28]])})),function(e,t,n){return u.apply(this,arguments)})},{key:"handleSyncError",value:(s=S(regeneratorRuntime.mark(function e(t,n,r){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return console.log("Sync error: ",t),401==n&&this.notifyEvent("sync-session-invalid"),t?"string"==typeof t&&(t={error:{message:t}}):t={error:{message:"Could not connect to server."}},this.syncStatus.syncOpInProgress=!1,this.syncStatus.error=t.error,this.syncStatusDidChange(),this.writeItemsToLocalStorage(r,!1),this.modelManager.didSyncModelsOffline(r),this.stopCheckingIfSyncIsTakingTooLong(),this.notifyEvent("sync:error",t.error),this.callQueuedCallbacks({error:"Sync error"}),e.abrupt("return",t);case 12:case"end":return e.stop()}},e,this)})),function(e,t,n){return s.apply(this,arguments)})},{key:"handleItemsResponse",value:(o=S(regeneratorRuntime.mark(function e(t,n,r,i){var a,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getActiveKeyInfo(i);case 2:return o=e.sent.keys,e.next=5,SFJS.itemTransformer.decryptMultipleItems(t,o);case 5:return e.next=7,this.modelManager.mapResponseItemsToLocalModelsOmittingFields(t,n,r);case 7:return a=e.sent,0<(o=a.filter(function(e){var t=e.errorDecryptingValueChanged;return e.errorDecryptingValueChanged=!1,t})).length&&this.writeItemsToLocalStorage(o,!1),e.abrupt("return",a);case 11:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return o.apply(this,arguments)})},{key:"refreshErroredItems",value:(a=S(regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(0<(t=this.modelManager.allNondummyItems.filter(function(e){return 1==e.errorDecrypting})).length)return e.abrupt("return",this.handleItemsResponse(t,null,F.MappingSourceLocalRetrieved,I.KeyRequestLoadSaveAccount));e.next=3;break;case 3:case"end":return e.stop()}},e,this)})),function(){return a.apply(this,arguments)})},{key:"handleConflictsResponse",value:(i=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c,l,f,h,p,d,g,m,v,y,b,k,w,x,$,S,_,R;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t&&0!=t.length){e.next=2;break}return e.abrupt("return");case 2:this.loggingEnabled&&console.log("Handle Conflicted Items:",t),n={},i=!(r=!0),a=void 0,e.prev=7,o=t[Symbol.iterator]();case 9:if(r=(s=o.next()).done){e.next=21;break}if(c=s.value,u=c.server_item||c.unsaved_item,c=this.modelManager.findItem(u.uuid)){e.next=16;break}return n[u.uuid]={},e.abrupt("continue",18);case 16:g=c.getContentCopy(),n[u.uuid]={frozenContent:g,itemRef:c};case 18:r=!0,e.next=9;break;case 21:e.next=27;break;case 23:e.prev=23,e.t0=e.catch(7),i=!0,a=e.t0;case 27:e.prev=27,e.prev=28,r||null==o.return||o.return();case 30:if(e.prev=30,i)throw a;e.next=33;break;case 33:return e.finish(30);case 34:return e.finish(27);case 35:l=[],h=!(f=!0),p=void 0,e.prev=39,d=t[Symbol.iterator]();case 41:if(f=(g=d.next()).done){e.next=91;break}return m=g.value,v=m.server_item||m.unsaved_item,e.t1=SFJS.itemTransformer,e.t2=[v],e.next=48,this.getActiveKeyInfo(I.KeyRequestLoadSaveAccount);case 48:return e.t3=e.sent.keys,e.next=51,e.t1.decryptMultipleItems.call(e.t1,e.t2,e.t3);case 51:if(w=n[v.uuid],y=w.frozenContent,b=w.itemRef){e.next=54;break}return e.abrupt("continue",88);case 54:if(l.push(b),"uuid_conflict"===m.type)return e.next=58,this.modelManager.alternateUUIDForItem(b);e.next=62;break;case 58:_=e.sent,l.push(_),e.next=88;break;case 62:if("sync_conflict"===m.type)return e.next=65,this.modelManager.createDuplicateItemFromResponseItem(v);e.next=86;break;case 65:if(k=e.sent,S=this.modelManager.duplicateItemWithCustomContent({content:y,duplicateOf:b}),w=!S.isItemContentEqualWith(k),_=!b.isItemContentEqualWith(k),S=$=x=R=!1,v.deleted||b.deleted?S=!0:w?(new Date-b.client_updated_at)/1e3<20?x=$=!0:S=R=!0:_?(_=!K.AreItemContentsEqual({leftContent:b.content,rightContent:k.content,keysToIgnore:b.keysToIgnoreWhenCheckingContentEquality().concat(["references"]),appDataKeysToIgnore:b.appDataKeysToIgnoreWhenCheckingContentEquality()}),!_?$=!0:S=R=!0):S=!0,R)return e.next=77,this.modelManager.duplicateItemWithCustomContentAndAddAsConflict({content:y,duplicateOf:b});e.next=79;break;case 77:R=e.sent,l.push(R);case 79:if(x&&(this.modelManager.addDuplicatedItemAsConflict({duplicate:k,duplicateOf:b}),l.push(k)),S)return e.next=83,this.modelManager.mapResponseItemsToLocalModelsOmittingFields([v],null,F.MappingSourceRemoteRetrieved);e.next=83;break;case 83:$&&(b.updated_at=k.updated_at,b.setDirty(!0)),e.next=88;break;case 86:return console.error("Unsupported conflict type",m.type),e.abrupt("continue",88);case 88:f=!0,e.next=41;break;case 91:e.next=97;break;case 93:e.prev=93,e.t4=e.catch(39),h=!0,p=e.t4;case 97:e.prev=97,e.prev=98,f||null==d.return||d.return();case 100:if(e.prev=100,h)throw p;e.next=103;break;case 103:return e.finish(100);case 104:return e.finish(97);case 105:return e.abrupt("return",l);case 106:case"end":return e.stop()}},e,this,[[7,23,27,35],[28,,30,34],[39,93,97,105],[98,,100,104]])})),function(e){return i.apply(this,arguments)})},{key:"deprecated_handleUnsavedItemsResponse",value:(r=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t&&0!=t.length){e.next=2;break}return e.abrupt("return");case 2:this.loggingEnabled&&console.log("Handle Unsaved Items:",t),r=!(n=!0),i=void 0,e.prev=6,a=t[Symbol.iterator]();case 8:if(n=(l=a.next()).done){e.next=35;break}return o=l.value,s=o.item,e.t0=SFJS.itemTransformer,e.t1=[s],e.next=15,this.getActiveKeyInfo(I.KeyRequestLoadSaveAccount);case 15:return e.t2=e.sent.keys,e.next=18,e.t0.decryptMultipleItems.call(e.t0,e.t1,e.t2);case 18:if(u=this.modelManager.findItem(s.uuid)){e.next=21;break}return e.abrupt("continue",32);case 21:if("uuid_conflict"===(c=o.error).tag)return e.next=25,this.modelManager.alternateUUIDForItem(u);e.next=27;break;case 25:e.next=32;break;case 27:if("sync_conflict"===c.tag)return e.next=30,this.modelManager.createDuplicateItemFromResponseItem(s);e.next=32;break;case 30:l=e.sent,s.deleted||u.isItemContentEqualWith(l)||this.modelManager.addDuplicatedItemAsConflict({duplicate:l,duplicateOf:u});case 32:n=!0,e.next=8;break;case 35:e.next=41;break;case 37:e.prev=37,e.t3=e.catch(6),r=!0,i=e.t3;case 41:e.prev=41,e.prev=42,n||null==a.return||a.return();case 44:if(e.prev=44,r)throw i;e.next=47;break;case 47:return e.finish(44);case 48:return e.finish(41);case 49:case"end":return e.stop()}},e,this,[[6,37,41,49],[42,,44,48]])})),function(e){return r.apply(this,arguments)})},{key:"stateless_downloadAllItems",value:function(){var a=this,o=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return new Promise(function(){var n=S(regeneratorRuntime.mark(function e(i,n){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t={limit:o.limit||500,sync_token:o.syncToken,cursor_token:o.cursorToken,content_type:o.contentType,event:o.event,api:T.getApiVersion()},e.prev=1,e.t0=a.httpManager,e.next=5,a.getSyncURL();case 5:e.t1=e.sent,e.t2=t,e.t3=function(){var t=S(regeneratorRuntime.mark(function e(t){var n,r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return o.retrievedItems||(o.retrievedItems=[]),n=t.retrieved_items,e.next=4,a.getActiveKeyInfo(I.KeyRequestLoadSaveAccount);case 4:return r=e.sent.keys,e.next=7,SFJS.itemTransformer.decryptMultipleItems(n,r);case 7:o.retrievedItems=o.retrievedItems.concat(n.map(function(e){return a.modelManager.createItem(e)})),o.syncToken=t.sync_token,o.cursorToken=t.cursor_token,o.cursorToken?a.stateless_downloadAllItems(o).then(i):i(o.retrievedItems);case 11:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}(),e.t4=function(e,t){n(e)},e.t0.postAuthenticatedAbsolute.call(e.t0,e.t1,e.t2,e.t3,e.t4),e.next=16;break;case 12:e.prev=12,e.t5=e.catch(1),console.log("Download all items exception caught:",e.t5),n(e.t5);case 16:case"end":return e.stop()}},e,null,[[1,12]])}));return function(e,t){return n.apply(this,arguments)}}())}},{key:"resolveOutOfSync",value:(n=S(regeneratorRuntime.mark(function e(){var l=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.stateless_downloadAllItems({event:"resolve-out-of-sync"}).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n,r,i,a,o,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:n=[],i=!(r=!0),a=void 0,e.prev=4,o=t[Symbol.iterator]();case 6:if(r=(s=o.next()).done){e.next=18;break}if(u=s.value,!(c=l.modelManager.findItem(u.uuid))){e.next=14;break}if(!u.isItemContentEqualWith(c))return e.next=14,l.modelManager.duplicateItemAndAddAsConflict(c);e.next=14;break;case 14:n.push(u);case 15:r=!0,e.next=6;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(4),i=!0,a=e.t0;case 24:e.prev=24,e.prev=25,r||null==o.return||o.return();case 27:if(e.prev=27,i)throw a;e.next=30;break;case 30:return e.finish(27);case 31:return e.finish(24);case 32:return e.next=34,l.modelManager.mapResponseItemsToLocalModelsWithOptions({items:n,source:F.MappingSourceRemoteRetrieved});case 34:return e.next=36,l.writeItemsToLocalStorage(l.modelManager.allNondummyItems);case 36:return e.abrupt("return",l.sync({performIntegrityCheck:!0}));case 37:case"end":return e.stop()}},e,null,[[4,20,24,32],[25,,27,31]])}));return function(e){return t.apply(this,arguments)}}()));case 1:case"end":return e.stop()}},e,this)})),function(){return n.apply(this,arguments)})},{key:"handleSignout",value:(t=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.outOfSync=!1,this.loadLocalDataPromise=null,this.performSyncAgainOnCompletion=!1,this.syncStatus.syncOpInProgress=!1,this._queuedCallbacks=[],this.syncStatus={},e.abrupt("return",this.clearSyncToken());case 7:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})},{key:"clearSyncToken",value:(e=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this._syncToken=null,this._cursorToken=null,e.abrupt("return",this.storageManager.removeItem("syncToken"));case 3:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})},{key:"__setLocalDataNotLoaded",value:function(){this.loadLocalDataPromise=null,this._initialDataLoaded=!1}},{key:"queuedCallbacks",get:function(){return this._queuedCallbacks||(this._queuedCallbacks=[]),this._queuedCallbacks}}]),I}();ie.SFSyncManager=q;var K=function(){function a(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};C(this,a),this.content={},this.referencingObjects=[],this.updateFromJSON(e),this.uuid||"undefined"!=typeof SFJS&&SFJS.crypto.generateUUIDSync&&(this.uuid=SFJS.crypto.generateUUIDSync()),"object"!==x(this.content)||this.content.references||(this.content.references=[])}var e;return O(a,[{key:"initUUID",value:(e=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.uuid){e.next=4;break}return e.next=3,SFJS.crypto.generateUUID();case 3:this.uuid=e.sent;case 4:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})},{key:"updateFromJSON",value:function(e){if(e){this.deleted=e.deleted,this.uuid=e.uuid,this.enc_item_key=e.enc_item_key,this.auth_hash=e.auth_hash,this.auth_params=e.auth_params;for(var t=0,n=["errorDecrypting","dirty","dirtyCount","dirtiedDate","dummy"];t<n.length;t++){var r=n[t];void 0!==e[r]&&(this[r]=e[r])}if(this.dirtiedDate&&"string"==typeof this.dirtiedDate&&(this.dirtiedDate=new Date(this.dirtiedDate)),this.content_type||(this.content_type=e.content_type),e.errorDecrypting)this.content=e.content;else try{var i="string"==typeof e.content?JSON.parse(e.content):e.content;a.deepMerge(this.contentObject,i)}catch(e){console.log("Error while updating item from json",e)}e.created_at&&(this.created_at=e.created_at),e.updated_at&&(this.updated_at=e.updated_at),this.created_at?this.created_at=new Date(this.created_at):this.created_at=new Date,this.updated_at?this.updated_at=new Date(this.updated_at):this.updated_at=new Date(0),this._client_updated_at=null,e.content?this.mapContentToLocalProperties(this.contentObject):1==e.deleted&&this.handleDeletedContent()}}},{key:"mapContentToLocalProperties",value:function(e){}},{key:"createContentJSONFromProperties",value:function(){var e=this.structureParams();return a.deepMerge(this.contentObject,e),e}},{key:"structureParams",value:function(){return this.getContentCopy()}},{key:"handleDeletedContent",value:function(){}},{key:"setDirty",value:function(e,t){this.dirty=e,this.dirtyCount||(this.dirtyCount=0),e?this.dirtyCount++:this.dirtyCount=0,this.dirtiedDate=new Date,e&&t?this.client_updated_at=new Date:this.hasRawClientUpdatedAtValue()||(this.client_updated_at=new Date(this.updated_at))}},{key:"updateLocalRelationships",value:function(){}},{key:"addItemAsRelationship",value:function(e){var t;e.setIsBeingReferencedBy(this),this.hasRelationshipWithItem(e)||((t=this.content.references||[]).push({uuid:e.uuid,content_type:e.content_type}),this.content.references=t)}},{key:"removeItemAsRelationship",value:function(e){e.setIsNoLongerBeingReferencedBy(this),this.removeReferenceWithUuid(e.uuid)}},{key:"setIsBeingReferencedBy",value:function(e){_.find(this.referencingObjects,{uuid:e.uuid})||this.referencingObjects.push(e)}},{key:"setIsNoLongerBeingReferencedBy",value:function(e){_.remove(this.referencingObjects,{uuid:e.uuid}),this.hasRelationshipWithItem(e)&&(this.removeReferenceWithUuid(e.uuid),this.setDirty(!0))}},{key:"removeReferenceWithUuid",value:function(t){var e=(e=this.content.references||[]).filter(function(e){return e.uuid!=t});this.content.references=e}},{key:"hasRelationshipWithItem",value:function(t){return null!=this.content.references.find(function(e){return e.uuid==t.uuid})}},{key:"isBeingRemovedLocally",value:function(){}},{key:"didFinishSyncing",value:function(){}},{key:"informReferencesOfUUIDChange",value:function(e,t){}},{key:"potentialItemOfInterestHasChangedItsUUID",value:function(e,t,n){if(!this.errorDecrypting){var r=!0,i=!1,a=void 0;try{for(var o,s=this.content.references[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var u=o.value;u.uuid==t&&(u.uuid=n,this.setDirty(!0))}}catch(e){i=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}}}},{key:"doNotEncrypt",value:function(){return!1}},{key:"setDomainDataItem",value:function(e,t,n){var r;n?this.errorDecrypting||(this.content.appData||(this.content.appData={}),(r=(r=this.content.appData[n])||{})[e]=t,this.content.appData[n]=r):console.error("SFItem.AppDomain needs to be set.")}},{key:"getDomainDataItem",value:function(e,t){if(t){if(!this.errorDecrypting){this.content.appData||(this.content.appData={});t=this.content.appData[t];return t?t[e]:null}}else console.error("SFItem.AppDomain needs to be set.")}},{key:"setAppDataItem",value:function(e,t){this.setDomainDataItem(e,t,a.AppDomain)}},{key:"getAppDataItem",value:function(e){return this.getDomainDataItem(e,a.AppDomain)}},{key:"hasRawClientUpdatedAtValue",value:function(){return null!=this.getAppDataItem("client_updated_at")}},{key:"keysToIgnoreWhenCheckingContentEquality",value:function(){return[]}},{key:"appDataKeysToIgnoreWhenCheckingContentEquality",value:function(){return["client_updated_at"]}},{key:"getContentCopy",value:function(){return JSON.parse(JSON.stringify(this.content))}},{key:"isItemContentEqualWith",value:function(e){return a.AreItemContentsEqual({leftContent:this.content,rightContent:e.content,keysToIgnore:this.keysToIgnoreWhenCheckingContentEquality(),appDataKeysToIgnore:this.appDataKeysToIgnoreWhenCheckingContentEquality()})}},{key:"satisfiesPredicate",value:function(e){return J.ItemSatisfiesPredicate(this,e)}},{key:"createdAtString",value:function(){return this.dateToLocalizedString(this.created_at)}},{key:"updatedAtString",value:function(){return this.dateToLocalizedString(this.client_updated_at)}},{key:"updatedAtTimestamp",value:function(){return this.updated_at.getTime()}},{key:"dateToLocalizedString",value:function(e){var t;return"undefined"!=typeof Intl&&Intl.DateTimeFormat?(z||(t=navigator.languages&&navigator.languages.length?navigator.languages[0]:navigator.language,z=new Intl.DateTimeFormat(t,{year:"numeric",month:"short",day:"2-digit",weekday:"long",hour:"2-digit",minute:"2-digit"})),z.format(e)):e.toDateString()+" "+e.toLocaleTimeString()}},{key:"contentObject",get:function(){if(this.errorDecrypting)return this.content;if(!this.content)return this.content={},this.content;if(null!==this.content&&"object"===x(this.content))return this.content;try{var e=JSON.parse(this.content);return this.content=e,this.content}catch(e){return console.log("Error parsing json",e,this),this.content={},this.content}}},{key:"pinned",get:function(){return this.getAppDataItem("pinned")}},{key:"archived",get:function(){return this.getAppDataItem("archived")}},{key:"locked",get:function(){return this.getAppDataItem("locked")}},{key:"displayName",get:function(){return"Item"}},{key:"client_updated_at",get:function(){var e;return this._client_updated_at||(e=this.getAppDataItem("client_updated_at"),this._client_updated_at=e?new Date(e):new Date(this.updated_at)),this._client_updated_at},set:function(e){this._client_updated_at=e,this.setAppDataItem("client_updated_at",e)}}],[{key:"deepMerge",value:function(e,t){return _.mergeWith(e,t,function(e,t){if(_.isArray(e))return t}),e}},{key:"AreItemContentsEqual",value:function(e){var t=e.leftContent,n=e.rightContent,r=e.keysToIgnore,i=e.appDataKeysToIgnore,e=function(e,t){if(!e)return e;var n=!0,r=!1,i=void 0;try{for(var a,o=t[Symbol.iterator]();!(n=(a=o.next()).done);n=!0)delete e[a.value]}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}return e};return(t=JSON.parse(JSON.stringify(t))).appData&&e(t.appData[a.AppDomain],i),t=e(t,r),(n=JSON.parse(JSON.stringify(n))).appData&&e(n.appData[a.AppDomain],i),n=e(n,r),JSON.stringify(t)===JSON.stringify(n)}}]),a}();ie.SFItem=K;var W=function(){function r(e,t,n){if(C(this,r),this.item=e,this.keys=t,this.auth_params=n,this.keys&&!this.auth_params)throw"SFItemParams.auth_params must be supplied if supplying keys.";if(this.auth_params&&!this.auth_params.version)throw"SFItemParams.auth_params is missing version"}var e,t,n,i,a;return O(r,[{key:"paramsForExportFile",value:(a=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.forExportFile=!0,t)return e.abrupt("return",this.__params());e.next=5;break;case 5:return e.next=7,this.__params();case 7:return n=e.sent,e.abrupt("return",_.omit(n,["deleted"]));case 9:case"end":return e.stop()}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"paramsForExtension",value:(i=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.paramsForExportFile());case 1:case"end":return e.stop()}},e,this)})),function(){return i.apply(this,arguments)})},{key:"paramsForLocalStorage",value:(n=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.additionalFields=["dirty","dirtiedDate","errorDecrypting"],this.forExportFile=!0,e.abrupt("return",this.__params());case 3:case"end":return e.stop()}},e,this)})),function(){return n.apply(this,arguments)})},{key:"paramsForSync",value:(t=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.__params());case 1:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})},{key:"__params",value:(e=S(regeneratorRuntime.mark(function e(){var t,n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t={uuid:this.item.uuid,content_type:this.item.content_type,deleted:this.item.deleted,created_at:this.item.created_at,updated_at:this.item.updated_at},this.item.errorDecrypting){e.next=23;break}if(n=this.item.doNotEncrypt()&&!this.forExportFile,this.keys&&!n)return e.next=6,SFJS.itemTransformer.encryptItem(this.item,this.keys,this.auth_params);e.next=11;break;case 6:n=e.sent,_.merge(t,n),"001"!==this.auth_params.version&&(t.auth_hash=null),e.next=21;break;case 11:if(!this.forExportFile){e.next=15;break}e.t0=this.item.createContentJSONFromProperties(),e.next=19;break;case 15:return e.next=17,SFJS.crypto.base64(JSON.stringify(this.item.createContentJSONFromProperties()));case 17:e.t1=e.sent,e.t0="000"+e.t1;case 19:t.content=e.t0,this.forExportFile||(t.enc_item_key=null,t.auth_hash=null);case 21:e.next=26;break;case 23:t.content=this.item.content,t.enc_item_key=this.item.enc_item_key,t.auth_hash=this.item.auth_hash;case 26:return this.additionalFields&&_.merge(t,_.pick(this.item,this.additionalFields)),e.abrupt("return",t);case 28:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})}]),r}();ie.SFItemParams=W;var J=function(){function p(e,t,n){C(this,p),this.keypath=e,this.operator=t,this.value=n,p.IsRecursiveOperator(this.operator)&&(this.value=this.value.map(p.fromArray))}return O(p,null,[{key:"fromArray",value:function(e){return new p(e[0],e[1],e[2])}},{key:"ObjectSatisfiesPredicate",value:function(e,t){if(Array.isArray(t)&&(t=this.fromArray(t)),p.IsRecursiveOperator(t.operator)){if("and"===t.operator){var n=!0,r=!1,i=void 0;try{for(var a,o=t.value[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;if(!this.ObjectSatisfiesPredicate(e,s))return!1}}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}return!0}if("or"===t.operator){var u=!0,c=!1,l=void 0;try{for(var f,h=t.value[Symbol.iterator]();!(u=(f=h.next()).done);u=!0){s=f.value;if(this.ObjectSatisfiesPredicate(e,s))return!0}}catch(e){c=!0,l=e}finally{try{u||null==h.return||h.return()}finally{if(c)throw l}}return!1}}i=t.value;"string"==typeof i&&i.includes(".ago")&&(i=this.DateFromString(i));c=t.keypath.split(".").reduce(function(e,t){return e&&e[t]},e),l=[!1,"",null,void 0,NaN];return null==c?"!="==t.operator?!l.includes(t.value):l.includes(t.value):"="==t.operator?Array.isArray(c)?JSON.stringify(c)==JSON.stringify(i):c==i:"!="==t.operator?Array.isArray(c)?JSON.stringify(c)!=JSON.stringify(i):c!==i:"<"==t.operator?c<i:">"==t.operator?i<c:"<="==t.operator?c<=i:">="==t.operator?i<=c:"startsWith"==t.operator?c.startsWith(i):"in"==t.operator?-1!=i.indexOf(c):"includes"==t.operator?this.resolveIncludesPredicate(c,i):"matches"==t.operator&&new RegExp(i).test(c)}},{key:"resolveIncludesPredicate",value:function(e,t){if("string"==typeof t)return e.includes(t);var n=Array.isArray(t)?p.fromArray(t):t,r=!0,i=!1,t=void 0;try{for(var a,o=e[Symbol.iterator]();!(r=(a=o.next()).done);r=!0){var s=a.value;if(this.ObjectSatisfiesPredicate(s,n))return!0}}catch(e){i=!0,t=e}finally{try{r||null==o.return||o.return()}finally{if(i)throw t}}return!1}},{key:"ItemSatisfiesPredicate",value:function(e,t){return Array.isArray(t)&&(t=p.fromArray(t)),this.ObjectSatisfiesPredicate(e,t)}},{key:"ItemSatisfiesPredicates",value:function(e,t){var n=!0,r=!1,i=void 0;try{for(var a,o=t[Symbol.iterator]();!(n=(a=o.next()).done);n=!0){var s=a.value;if(!this.ItemSatisfiesPredicate(e,s))return!1}}catch(e){r=!0,i=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw i}}return!0}},{key:"DateFromString",value:function(e){var t=e.split("."),n=t[1],e=new Date,t=parseInt(t[0]);return"days"==n?e.setDate(e.getDate()-t):"hours"==n&&e.setHours(e.getHours()-t),e}},{key:"IsRecursiveOperator",value:function(e){return["and","or"].includes(e)}}]),p}();ie.SFPredicate=J;var G=function(){function t(e){return C(this,t),(e=y(this,b(t).call(this,e))).content.desktopPrivileges||(e.content.desktopPrivileges={}),e}return k(t,K),O(t,null,[{key:"contentType",value:function(){return"SN|Privileges"}}]),O(t,[{key:"setCredentialsForAction",value:function(e,t){this.content.desktopPrivileges[e]=t}},{key:"getCredentialsForAction",value:function(e){return this.content.desktopPrivileges[e]||[]}},{key:"toggleCredentialForAction",value:function(e,t){this.isCredentialRequiredForAction(e,t)?this.removeCredentialForAction(e,t):this.addCredentialForAction(e,t)}},{key:"removeCredentialForAction",value:function(e,t){_.pull(this.content.desktopPrivileges[e],t)}},{key:"addCredentialForAction",value:function(e,t){var n=this.getCredentialsForAction(e);n.push(t),this.setCredentialsForAction(e,n)}},{key:"isCredentialRequiredForAction",value:function(e,t){return this.getCredentialsForAction(e).includes(t)}}]),t}();ie.SFPrivileges=G;var Y=function(){function t(e){var n;return C(this,t),(n=y(this,b(t).call(this,e))).content.itemUUIDToItemHistoryMapping||(n.content.itemUUIDToItemHistoryMapping={}),Object.keys(n.content.itemUUIDToItemHistoryMapping).forEach(function(e){var t=n.content.itemUUIDToItemHistoryMapping[e];n.content.itemUUIDToItemHistoryMapping[e]=new X(t)}),n}return k(t,K),O(t,[{key:"addEntryForItem",value:function(e){return this.historyForItem(e).addHistoryEntryForItem(e)}},{key:"historyForItem",value:function(e){return this.content.itemUUIDToItemHistoryMapping[e.uuid]||(this.content.itemUUIDToItemHistoryMapping[e.uuid]=new X)}},{key:"clearItemHistory",value:function(e){this.historyForItem(e).clear()}},{key:"clearAllHistory",value:function(){this.content.itemUUIDToItemHistoryMapping={}}},{key:"optimizeHistoryForItem",value:function(e){e=this.historyForItem(e);e.entries.length>t.LargeItemEntryAmountThreshold&&e.optimize()}}]),t}();(ie.SFHistorySession=Y).LargeItemEntryAmountThreshold=60;var X=function(){function u(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};if(C(this,u),this.entries||(this.entries=[]),e.entries){var t=!0,n=!1,r=void 0;try{for(var i,a=e.entries[Symbol.iterator]();!(t=(i=a.next()).done);t=!0){var o=i.value,s=this.createEntryForItem(o.item);s.setPreviousEntry(this.getLastEntry()),this.entries.push(s)}}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}}}return O(u,[{key:"createEntryForItem",value:function(e){return new(u.HistoryEntryClassMapping&&u.HistoryEntryClassMapping[e.content_type]||Z)(e)}},{key:"getLastEntry",value:function(){return this.entries[this.entries.length-1]}},{key:"addHistoryEntryForItem",value:function(e){var t=this.createEntryForItem(e),e=this.getLastEntry();if(t.setPreviousEntry(e),!t.isSameAsEntry(e))return this.entries.push(t),t}},{key:"clear",value:function(){this.entries.length=0}},{key:"optimize",value:function(){function r(e){return e.deltaSize()>u.LargeEntryDeltaThreshold}function i(e,t,n){n?o.push(e):-1!==(t=o.indexOf(e))&&o.splice(t,1),n&&r(e)&&-1==e.operationVector()&&((t=a.entries[t-1])&&o.push(t))}var a=this,o=[];this.entries.forEach(function(e,t){var n;0==t||t==a.entries.length-1?i(e,t,!0):(n=r(e),i(e,t,n))}),this.entries=this.entries.filter(function(e,t){return-1!==o.indexOf(e)})}}]),u}();(ie.SFItemHistory=X).LargeEntryDeltaThreshold=15;var Z=function(){function t(e){C(this,t),this.item=K.deepMerge({},e),this.defaultContentKeyToDiffOn="text",this.textCharDiffLength=0,"string"==typeof this.item.updated_at&&(this.item.updated_at=new Date(this.item.updated_at))}return O(t,[{key:"setPreviousEntry",value:function(e){this.hasPreviousEntry=null!=e,this.item.content[this.defaultContentKeyToDiffOn]&&(this.textCharDiffLength=e?this.item.content[this.defaultContentKeyToDiffOn].length-e.item.content[this.defaultContentKeyToDiffOn].length:this.item.content[this.defaultContentKeyToDiffOn].length)}},{key:"operationVector",value:function(){return null!=this.textCharDiffLength?this.hasPreviousEntry&&0!=this.textCharDiffLength?this.textCharDiffLength<0?-1:1:0:1}},{key:"deltaSize",value:function(){return null!=this.textCharDiffLength?Math.abs(this.textCharDiffLength):1}},{key:"isSameAsEntry",value:function(e){if(!e)return!1;var t=new K(this.item),e=new K(e.item);return t.isItemContentEqualWith(e)}}]),t}();ie.SFItemHistoryEntry=Z;var D="undefined"!=typeof window?window:void 0!==e?e:null,Q=function(){function e(){C(this,e),this.DefaultPBKDF2Length=768}var n,r,t,i,a,o,s,u,c,l,f,h,p,d,g;return O(e,[{key:"generateUUIDSync",value:function(){var e=D.crypto||D.msCrypto;if(e){var n=new Uint32Array(4);e.getRandomValues(n);var r=-1;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=n[++r>>3]>>r%8*4&15;return("x"==e?t:3&t|8).toString(16)})}var i=(new Date).getTime();return D.performance&&"function"==typeof D.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)})}},{key:"generateUUID",value:(g=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.generateUUIDSync());case 1:case"end":return e.stop()}},e,this)})),function(){return g.apply(this,arguments)})},{key:"timingSafeEqual",value: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}},{key:"decryptText",value:(d=S(regeneratorRuntime.mark(function e(){var t,n,r,i,a,o,s,u,c=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t=(s=0<c.length&&void 0!==c[0]?c[0]:{}).ciphertextToAuth,n=s.contentCiphertext,r=s.encryptionKey,i=s.iv,a=s.authHash,o=s.authKey,(1<c.length?c[1]:void 0)&&!a)return console.error("Auth hash is required."),e.abrupt("return");e.next=5;break;case 5:if(a)return e.next=8,this.hmac256(t,o);e.next=12;break;case 8:if(u=e.sent,!1===this.timingSafeEqual(a,u))return console.error("Auth hash does not match, returning null."),e.abrupt("return",null);e.next=12;break;case 12:return s=A.enc.Hex.parse(r),u=A.enc.Hex.parse(i||""),u=A.AES.decrypt(n,s,{iv:u,mode:A.mode.CBC,padding:A.pad.Pkcs7}),e.abrupt("return",u.toString(A.enc.Utf8));case 16:case"end":return e.stop()}},e,this)})),function(){return d.apply(this,arguments)})},{key:"encryptText",value:(p=S(regeneratorRuntime.mark(function e(t,n,r){var i,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=A.enc.Hex.parse(n),a=A.enc.Hex.parse(r||""),a=A.AES.encrypt(t,i,{iv:a,mode:A.mode.CBC,padding:A.pad.Pkcs7}),e.abrupt("return",a.toString());case 4:case"end":return e.stop()}},e)})),function(e,t,n){return p.apply(this,arguments)})},{key:"generateRandomKey",value:(h=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",A.lib.WordArray.random(t/8).toString());case 1:case"end":return e.stop()}},e)})),function(e){return h.apply(this,arguments)})},{key:"generateItemEncryptionKey",value:(f=S(regeneratorRuntime.mark(function e(){var t,n,r,i;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=512,n=1,e.next=4,this.generateRandomKey(t);case 4:return r=e.sent,e.next=7,this.generateRandomKey(t);case 7:return i=e.sent,e.abrupt("return",this.pbkdf2(i,r,n,t));case 9:case"end":return e.stop()}},e,this)})),function(){return f.apply(this,arguments)})},{key:"firstHalfOfKey",value:(l=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.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 l.apply(this,arguments)})},{key:"secondHalfOfKey",value:(c=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.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:"base64",value:(u=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",D.btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/g,function(e,t){return String.fromCharCode("0x"+t)})));case 1:case"end":return e.stop()}},e)})),function(e){return u.apply(this,arguments)})},{key:"base64Decode",value:(s=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",D.atob(t));case 1:case"end":return e.stop()}},e)})),function(e){return s.apply(this,arguments)})},{key:"sha256",value:(o=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",A.SHA256(t).toString());case 1:case"end":return e.stop()}},e)})),function(e){return o.apply(this,arguments)})},{key:"hmac256",value:(a=S(regeneratorRuntime.mark(function e(t,n){var r,i;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=A.enc.Hex.parse(n),r=A.enc.Utf8.parse(t),i=A.HmacSHA256(r,i).toString(),e.abrupt("return",i);case 4:case"end":return e.stop()}},e)})),function(e,t){return a.apply(this,arguments)})},{key:"generateSalt",value:(i=S(regeneratorRuntime.mark(function e(t,n,r,i){var a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.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,r){return i.apply(this,arguments)})},{key:"generateSymmetricKeyPair",value:(t=S(regeneratorRuntime.mark(function e(){var t,n,r,i,a=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=(t=0<a.length&&void 0!==a[0]?a[0]:{}).password,i=t.pw_salt,n=t.pw_cost,e.next=3,this.pbkdf2(r,i,n,this.DefaultPBKDF2Length);case 3:return t=e.sent,r=t.length,i=r/3,n=t.slice(0,i),r=t.slice(i,2*i),i=t.slice(2*i,3*i),e.abrupt("return",[n,r,i]);case 10:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})},{key:"computeEncryptionKeysForUser",value:(r=S(regeneratorRuntime.mark(function e(t,n){var r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("003"!=n.version){e.next=9;break}if(n.identifier){e.next=4;break}return console.error("authParams is missing identifier."),e.abrupt("return");case 4:return e.next=6,this.generateSalt(n.identifier,n.version,n.pw_cost,n.pw_nonce);case 6:r=e.sent,e.next=10;break;case 9:r=n.pw_salt;case 10:return e.abrupt("return",this.generateSymmetricKeyPair({password:t,pw_salt:r,pw_cost:n.pw_cost}).then(function(e){return{pw:e[0],mk:e[1],ak:e[2]}}));case 11:case"end":return e.stop()}},e,this)})),function(e,t){return r.apply(this,arguments)})},{key:"generateInitialKeysAndAuthParamsForUser",value:(n=S(regeneratorRuntime.mark(function e(t,n){var r,i,a,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.SFJS.version,i=this.SFJS.defaultPasswordGenerationCost,e.next=4,this.generateRandomKey(256);case 4:return a=e.sent,e.next=7,this.generateSalt(t,r,i,a);case 7:return o=e.sent,e.abrupt("return",this.generateSymmetricKeyPair({password:n,pw_salt:o,pw_cost:i}).then(function(e){return{keys:{pw:e[0],mk:e[1],ak:e[2]},authParams:{pw_nonce:a,pw_cost:i,identifier:t,version:r}}}));case 9:case"end":return e.stop()}},e,this)})),function(e,t){return n.apply(this,arguments)})}]),e}();ie.SFAbstractCrypto=Q;var ee=function(){function e(){return C(this,e),y(this,b(e).apply(this,arguments))}var i;return k(e,Q),O(e,[{key:"pbkdf2",value:(i=S(regeneratorRuntime.mark(function e(t,n,r,i){var a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return a={keySize:i/32,hasher:A.algo.SHA512,iterations:r},e.abrupt("return",A.PBKDF2(t,n,a).toString());case 2:case"end":return e.stop()}},e)})),function(e,t,n,r){return i.apply(this,arguments)})}]),e}();ie.SFCryptoJS=ee;var te=(D="undefined"!=typeof window?window:void 0!==e?e:null).crypto?D.crypto.subtle:null,ne=function(){function e(){return C(this,e),y(this,b(e).apply(this,arguments))}var t,n,r,i,a,o,s,u,c,l,f,h,p,d;return k(e,Q),O(e,[{key:"pbkdf2",value:(d=S(regeneratorRuntime.mark(function e(t,n,r,i){var a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.webCryptoImportKey(t,"PBKDF2",["deriveBits"]);case 2:if(a=e.sent){e.next=6;break}return console.log("Key is null, unable to continue"),e.abrupt("return",null);case 6:return e.abrupt("return",this.webCryptoDeriveBits(a,n,r,i));case 7:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return d.apply(this,arguments)})},{key:"generateRandomKey",value:(p=S(regeneratorRuntime.mark(function e(t){var r=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",te.generateKey({name:"AES-CBC",length:t},!0,["encrypt","decrypt"]).then(function(e){return te.exportKey("raw",e).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,r.arrayBufferToHexString(new Uint8Array(t));case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()).catch(function(e){console.error("Error exporting key",e)})}).catch(function(e){console.error("Error generating key",e)}));case 2:case"end":return e.stop()}},e)})),function(e){return p.apply(this,arguments)})},{key:"generateItemEncryptionKey",value:(h=S(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all([this.generateRandomKey(256),this.generateRandomKey(256)]).then(function(e){return e.join("")}));case 2:case"end":return e.stop()}},e,this)})),function(){return h.apply(this,arguments)})},{key:"encryptText",value:(f=S(regeneratorRuntime.mark(function e(t,n,r){var i,a,o,s=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r)return e.next=3,this.hexStringToArrayBuffer(r);e.next=6;break;case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=new ArrayBuffer(16);case 7:return i=e.t0,i={name:"AES-CBC",iv:i},e.next=11,this.hexStringToArrayBuffer(n);case 11:return o=e.sent,e.next=14,this.webCryptoImportKey(o,i.name,["encrypt"]);case 14:return a=e.sent,e.next=17,this.stringToArrayBuffer(t);case 17:return o=e.sent,e.abrupt("return",crypto.subtle.encrypt(i,a,o).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,s.arrayBufferToBase64(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()));case 19:case"end":return e.stop()}},e,this)})),function(e,t,n){return f.apply(this,arguments)})},{key:"decryptText",value:(l=S(regeneratorRuntime.mark(function e(){var t,n,r,i,a,o,s,u,c,l,f=this,h=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t=(s=0<h.length&&void 0!==h[0]?h[0]:{}).ciphertextToAuth,n=s.contentCiphertext,r=s.encryptionKey,i=s.iv,a=s.authHash,o=s.authKey,(1<h.length?h[1]:void 0)&&!a)return console.error("Auth hash is required."),e.abrupt("return");e.next=5;break;case 5:if(a)return e.next=8,this.hmac256(t,o);e.next=12;break;case 8:if(s=e.sent,!1===this.timingSafeEqual(a,s))return console.error("Auth hash does not match, returning null. ".concat(a," != ").concat(s)),e.abrupt("return",null);e.next=12;break;case 12:if(i)return e.next=15,this.hexStringToArrayBuffer(i);e.next=18;break;case 15:e.t0=e.sent,e.next=19;break;case 18:e.t0=new ArrayBuffer(16);case 19:return u=e.t0,u={name:"AES-CBC",iv:u},e.next=23,this.hexStringToArrayBuffer(r);case 23:return l=e.sent,e.next=26,this.webCryptoImportKey(l,u.name,["decrypt"]);case 26:return c=e.sent,e.next=29,this.base64ToArrayBuffer(n);case 29:return l=e.sent,e.abrupt("return",crypto.subtle.decrypt(u,c,l).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,f.arrayBufferToString(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()).catch(function(e){console.error("Error decrypting:",e)}));case 31:case"end":return e.stop()}},e,this)})),function(){return l.apply(this,arguments)})},{key:"hmac256",value:(c=S(regeneratorRuntime.mark(function e(t,n){var r,i,a=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.hexStringToArrayBuffer(n);case 2:return i=e.sent,e.next=5,this.webCryptoImportKey(i,"HMAC",["sign"],{name:"SHA-256"});case 5:return r=e.sent,e.next=8,this.stringToArrayBuffer(t);case 8:return i=e.sent,e.abrupt("return",crypto.subtle.sign({name:"HMAC"},r,i).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,a.arrayBufferToHexString(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()).catch(function(e){console.error("Error computing hmac",e)}));case 10:case"end":return e.stop()}},e,this)})),function(e,t){return c.apply(this,arguments)})},{key:"webCryptoImportKey",value:(u=S(regeneratorRuntime.mark(function e(t,n,r,i){var a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("string"==typeof t)return e.next=3,this.stringToArrayBuffer(t);e.next=6;break;case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=t;case 7:return a=e.t0,e.abrupt("return",te.importKey("raw",a,{name:n,hash:i},!1,r).then(function(e){return e}).catch(function(e){return console.error(e),null}));case 9:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return u.apply(this,arguments)})},{key:"webCryptoDeriveBits",value:(s=S(regeneratorRuntime.mark(function e(t,n,r,i){var a,o=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.stringToArrayBuffer(n);case 2:return e.t0=e.sent,e.t1=r,e.t2={name:"SHA-512"},a={name:"PBKDF2",salt:e.t0,iterations:e.t1,hash:e.t2},e.abrupt("return",te.deriveBits(a,t,i).then(function(){var t=S(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.arrayBufferToHexString(new Uint8Array(t));case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}},e)}));return function(e){return t.apply(this,arguments)}}()).catch(function(e){return console.error(e),null}));case 7:case"end":return e.stop()}},e,this)})),function(e,t,n,r){return s.apply(this,arguments)})},{key:"stringToArrayBuffer",value:(o=S(regeneratorRuntime.mark(function e(i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(t,e){var n=new Blob([i]),r=new FileReader;r.onload=function(e){t(e.target.result)},r.readAsArrayBuffer(n)}));case 1:case"end":return e.stop()}},e)})),function(e){return o.apply(this,arguments)})},{key:"arrayBufferToString",value:(a=S(regeneratorRuntime.mark(function e(i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(t,e){var n=new Blob([i]),r=new FileReader;r.onload=function(e){t(e.target.result)},r.readAsText(n)}));case 1:case"end":return e.stop()}},e)})),function(e){return a.apply(this,arguments)})},{key:"arrayBufferToHexString",value:(i=S(regeneratorRuntime.mark(function e(t){var n,r,i,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(n=new Uint8Array(t),r="",a=0;a<n.byteLength;a++)(i=n[a].toString(16)).length<2&&(i="0"+i),r+=i;return e.abrupt("return",r);case 4:case"end":return e.stop()}},e)})),function(e){return i.apply(this,arguments)})},{key:"hexStringToArrayBuffer",value:(r=S(regeneratorRuntime.mark(function e(t){var n,r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:for(n=[],r=0;r<t.length;r+=2)n.push(parseInt(t.substr(r,2),16));return e.abrupt("return",new Uint8Array(n));case 2:case"end":return e.stop()}},e)})),function(e){return r.apply(this,arguments)})},{key:"base64ToArrayBuffer",value:(n=S(regeneratorRuntime.mark(function e(t){var n,r,i,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.base64Decode(t);case 2:for(n=e.sent,r=n.length,i=new Uint8Array(r),a=0;a<r;a++)i[a]=n.charCodeAt(a);return e.abrupt("return",i.buffer);case 7:case"end":return e.stop()}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"arrayBufferToBase64",value:(t=S(regeneratorRuntime.mark(function e(i){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(t,e){var n=new Blob([i],{type:"application/octet-binary"}),r=new FileReader;r.onload=function(e){e=e.target.result;t(e.substr(e.indexOf(",")+1))},r.readAsDataURL(n)}));case 1:case"end":return e.stop()}},e)})),function(e){return t.apply(this,arguments)})}]),e}();ie.SFCryptoWeb=ne;var re=function(){function t(e){C(this,t),this.crypto=e}var r,n,i,a;return O(t,[{key:"_private_encryptString",value:(a=S(regeneratorRuntime.mark(function e(t,n,r,i,a){var o,s,u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("001"===a.version)return e.next=3,this.crypto.encryptText(t,n,null);e.next=7;break;case 3:s=e.sent,o=a.version+s,e.next=21;break;case 7:return e.next=9,this.crypto.generateRandomKey(128);case 9:return u=e.sent,e.next=12,this.crypto.encryptText(t,n,u);case 12:return s=e.sent,l=[a.version,i,u,s].join(":"),e.next=16,this.crypto.hmac256(l,r);case 16:return c=e.sent,e.next=19,this.crypto.base64(JSON.stringify(a));case 19:l=e.sent,o=[a.version,c,i,u,s,l].join(":");case 21:return e.abrupt("return",o);case 22:case"end":return e.stop()}},e,this)})),function(e,t,n,r,i){return a.apply(this,arguments)})},{key:"encryptItem",value:(i=S(regeneratorRuntime.mark(function e(t,n,r){var i,a,o,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i={},e.next=3,this.crypto.generateItemEncryptionKey();case 3:if(a=e.sent,"001"===r.version)return e.next=7,this.crypto.encryptText(a,n.mk,null);e.next=10;break;case 7:i.enc_item_key=e.sent,e.next=13;break;case 10:return e.next=12,this._private_encryptString(a,n.mk,n.ak,t.uuid,r);case 12:i.enc_item_key=e.sent;case 13:return e.next=15,this.crypto.firstHalfOfKey(a);case 15:return o=e.sent,e.next=18,this.crypto.secondHalfOfKey(a);case 18:return s=e.sent,e.next=21,this._private_encryptString(JSON.stringify(t.createContentJSONFromProperties()),o,s,t.uuid,r);case 21:if(u=e.sent,"001"===r.version)return e.next=25,this.crypto.hmac256(u,s);e.next=27;break;case 25:c=e.sent,i.auth_hash=c;case 27:return i.content=u,e.abrupt("return",i);case 29:case"end":return e.stop()}},e,this)})),function(e,t,n){return i.apply(this,arguments)})},{key:"encryptionComponentsFromString",value:function(e,t,n){var r=e.substring(0,3);if("001"===r)return{contentCiphertext:e.substring(3,e.length),encryptionVersion:r,ciphertextToAuth:e,iv:null,authHash:null,encryptionKey:t,authKey:n};e=e.split(":");return{encryptionVersion:e[0],authHash:e[1],uuid:e[2],iv:e[3],contentCiphertext:e[4],authParams:e[5],ciphertextToAuth:[e[0],e[2],e[3],e[4]].join(":"),encryptionKey:t,authKey:n}}},{key:"decryptItem",value:(n=S(regeneratorRuntime.mark(function e(t,n){var r,i,a,o,s,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("string"!=typeof t.content)return e.abrupt("return");e.next=2;break;case 2:if(t.content.startsWith("000"))return e.prev=3,e.t0=JSON,e.next=7,this.crypto.base64Decode(t.content.substring(3,t.content.length));e.next=14;break;case 7:e.t1=e.sent,t.content=e.t0.parse.call(e.t0,e.t1),e.next=13;break;case 11:e.prev=11,e.t2=e.catch(3);case 13:return e.abrupt("return");case 14:if(t.enc_item_key){e.next=17;break}return console.log("Missing item encryption key, skipping decryption."),e.abrupt("return");case 17:if(i=t.enc_item_key,r=!0,i.startsWith("002")||i.startsWith("003")||(i="001"+i,r=!1),(i=this.encryptionComponentsFromString(i,n.mk,n.ak)).uuid&&i.uuid!==t.uuid)return console.error("Item key params UUID does not match item UUID"),t.errorDecrypting||(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!0,e.abrupt("return");e.next=26;break;case 26:return e.next=28,this.crypto.decryptText(i,r);case 28:if(a=e.sent){e.next=34;break}return console.log("Error decrypting item",t),t.errorDecrypting||(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!0,e.abrupt("return");case 34:return e.next=36,this.crypto.firstHalfOfKey(a);case 36:return o=e.sent,e.next=39,this.crypto.secondHalfOfKey(a);case 39:return u=e.sent,s=this.encryptionComponentsFromString(t.content,o,u),e.prev=41,e.t3=JSON,e.next=45,this.crypto.base64Decode(s.authParams);case 45:e.t4=e.sent,t.auth_params=e.t3.parse.call(e.t3,e.t4),e.next=51;break;case 49:e.prev=49,e.t5=e.catch(41);case 51:if(s.uuid&&s.uuid!==t.uuid)return t.errorDecrypting||(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!0,e.abrupt("return");e.next=55;break;case 55:return s.authHash||(s.authHash=t.auth_hash),e.next=58,this.crypto.decryptText(s,!0);case 58:(u=e.sent)?(1==t.errorDecrypting&&(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!1,t.content=u):(t.errorDecrypting||(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!0);case 60:case"end":return e.stop()}},e,this,[[3,11],[41,49]])})),function(e,t){return n.apply(this,arguments)})},{key:"decryptMultipleItems",value:(r=S(regeneratorRuntime.mark(function e(t,n,r){var i,a=this;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=function(){var t=S(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}return e.abrupt("return");case 2:if(1==t.deleted&&null==t.content)return e.abrupt("return");e.next=4;break;case 4:if("string"==typeof t.content||t.content instanceof String)return e.prev=6,e.next=9,a.decryptItem(t,n);e.next=19;break;case 9:e.next=19;break;case 11:if(e.prev=11,e.t0=e.catch(6),t.errorDecrypting||(t.errorDecryptingValueChanged=!0),t.errorDecrypting=!0,r)throw e.t0;e.next=17;break;case 17:return console.error("Error decrypting item",t,e.t0),e.abrupt("return");case 19:case"end":return e.stop()}},e,null,[[6,11]])}));return function(e){return t.apply(this,arguments)}}(),e.abrupt("return",Promise.all(t.map(function(e){return i(e)})));case 2:case"end":return e.stop()}},e)})),function(e,t,n){return r.apply(this,arguments)})}]),t}();ie.SFItemTransformer=re;D="undefined"!=typeof window?window:void 0!==e?e:null,e=function(){function t(e){C(this,t),D&&(!("undefined"!=typeof document&&document.documentMode||/Edge/.test(navigator.userAgent))&&D.crypto&&D.crypto.subtle?this.crypto=new ne:this.crypto=new ee),e&&(this.crypto=e),this.itemTransformer=new re(this.crypto),this.crypto.SFJS={version:this.version(),defaultPasswordGenerationCost:this.defaultPasswordGenerationCost()}}return O(t,[{key:"version",value:function(){return"003"}},{key:"supportsPasswordDerivationCost",value:function(e){return!(5e3<e)||this.crypto instanceof ne}},{key:"supportedVersions",value:function(){return["001","002","003"]}},{key:"isVersionNewerThanLibraryVersion",value:function(e){var t=this.version();return parseInt(e)>parseInt(t)}},{key:"isProtocolVersionOutdated",value:function(e){e={"001":Date.parse("2018-01-01"),"002":Date.parse("2020-01-01")}[e];return!!e&&new Date>e}},{key:"costMinimumForVersion",value:function(e){return{"001":3e3,"002":3e3,"003":11e4}[e]}},{key:"defaultPasswordGenerationCost",value:function(){return this.costMinimumForVersion(this.version())}}]),t}();if(ie.StandardFile=e,D)try{D.StandardFile=e,D.SFJS=new e,D.SFCryptoWeb=ne,D.SFCryptoJS=ee,D.SFItemTransformer=re,D.SFModelManager=F,D.SFItem=K,D.SFItemParams=W,D.SFHttpManager=T,D.SFStorageManager=V,D.SFSyncManager=q,D.SFAuthManager=M,D.SFMigrationManager=P,D.SFAlertManager=I,D.SFPredicate=J,D.SFHistorySession=Y,D.SFSessionHistoryManager=N,D.SFItemHistory=X,D.SFItemHistoryEntry=Z,D.SFPrivilegesManager=L,D.SFPrivileges=G,D.SFSingletonManager=U}catch(e){console.log("Exception while exporting window variables",e)}}.call(this,void 0!==n?n:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1])(1)})}.call(this)}.call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1]),angular.module("app").run(["$templateCache",function(e){"use strict";e.put("directives/tag_cell.html","<li>\n<div class='self' draggable='true' drop='onDrop' ng-class='{'selected' : tag.selected}' ng-click='selectTag()' tag-id='tag.uuid'>\n{{tag.displayTitle}}\n</div>\n</li>\n<li ng-if='tag.children'>\n<ul>\n<div change-parent='changeParent()' class='tag-cell' ng-repeat='child in tag.children' on-select='onSelect()' tag='child'></div>\n</ul>\n</li>\n"),e.put("directives/tag_tree.html","<div ng-if='tag'>\n<div class='self' draggable='true' drop='onDrop' is-draggable='isDraggable()' is-droppable='isDroppable()' ng-class='{'selected' : tag.selected}' ng-click='selectTag($event)' tag-id='tag.uuid'>\n<div class='tag-info' ng-class=''level-' + generationForTag(tag)'>\n<div class='sk-circle small' ng-class='circleClassForTag(tag)' ng-click='innerCollapse(tag); $event.stopPropagation();'></div>\n<div class='title' ng-if='!tag.dummy && !tag.editing'>\n{{tag.displayTitle}}\n</div>\n<input class='title' mb-autofocus='true' ng-if='!tag.dummy && tag.editing' ng-keyup='$event.keyCode == 13 && saveTagRename(tag)' ng-model='tag.displayTitle' should-focus='true'>\n<div class='action-menu' ng-if='!tag.dummy && tag.selected && !tag.editing && !tag.content.isSystemTag'>\n<div class='sk-button info' ng-click='addChild($event, tag);'>\n<div class='sk-label'>+</div>\n</div>\n<div class='sk-button danger' ng-click='removeTag(tag); $event.stopPropagation();' ng-if='!tag.master'>\n<div class='sk-label'>–</div>\n</div>\n</div>\n<div class='new-tag-form' ng-if='tag.dummy'>\n<input mb-autofocus='true' ng-blur='saveNewTag(tag)' ng-keyup='$event.keyCode == 13 && saveNewTag(tag)' ng-model='tag.content.title' placeholder='' should-focus='true'>\n</div>\n</div>\n</div>\n<div ng-if='!tag.clientData.collapsed' ng-repeat='child in tag.children'>\n<div change-parent='changeParent()' class='tag-tree' create-tag='createTag()' delete-tag='deleteTag()' ng-if='!child.deleted' on-select='onSelect($event)' on-toggle-collapse='onToggleCollapse()' save-tags='saveTags()' tag='child'></div>\n</div>\n</div>\n"),e.put("home.html","<div class='sn-component'>\n<div class='content'>\n<div class='tag-tree master' create-tag='createTag' delete-tag='deleteTag' ng-if='smartMasterTag.rawTags.length > 0' on-select='selectTag' on-toggle-collapse='toggleCollapse' save-tags='saveTags' tag='smartMasterTag'></div>\n<div change-parent='changeParent' class='tag-tree master' create-tag='createTag' delete-tag='deleteTag' on-select='selectTag' on-toggle-collapse='toggleCollapse' save-tags='saveTags' tag='masterTag'></div>\n</div>\n</div>\n")}]); |