You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

15 lines
622 KiB

function BigInteger(e,t,n){null!=e&&("number"==typeof e?this.fromNumber(e,t,n):null==t&&"string"!=typeof e?this.fromString(e,256):this.fromString(e,t))}function nbi(){return new BigInteger(null)}function am1(e,t,n,i,r,o){for(;--o>=0;){var a=t*this[e++]+n[i]+r;r=Math.floor(a/67108864),n[i++]=67108863&a}return r}function am2(e,t,n,i,r,o){for(var a=32767&t,s=t>>15;--o>=0;){var c=32767&this[e],l=this[e++]>>15,u=s*c+l*a;c=a*c+((32767&u)<<15)+n[i]+(1073741823&r),r=(c>>>30)+(u>>>15)+s*l+(r>>>30),n[i++]=1073741823&c}return r}function am3(e,t,n,i,r,o){for(var a=16383&t,s=t>>14;--o>=0;){var c=16383&this[e],l=this[e++]>>14,u=s*c+l*a;c=a*c+((16383&u)<<14)+n[i]+r,r=(c>>28)+(u>>14)+s*l,n[i++]=268435455&c}return r}function int2char(e){return BI_RM.charAt(e)}function intAt(e,t){var n=BI_RC[e.charCodeAt(t)];return null==n?-1:n}function bnpCopyTo(e){for(var t=this.t-1;t>=0;--t)e[t]=this[t];e.t=this.t,e.s=this.s}function bnpFromInt(e){this.t=1,this.s=0>e?-1:0,e>0?this[0]=e:-1>e?this[0]=e+this.DV:this.t=0}function nbv(e){var t=nbi();return t.fromInt(e),t}function bnpFromString(e,t,n){var i;if(16==t)i=4;else if(8==t)i=3;else if(256==t)i=8;else if(2==t)i=1;else if(32==t)i=5;else{if(4!=t)return void this.fromRadix(e,t);i=2}this.t=0,this.s=0;for(var r=e.length,o=!1,a=0;--r>=0;){var s=8==i?255&e[r]:intAt(e,r);0>s?"-"==e.charAt(r)&&(o=!0):(o=!1,0==a?this[this.t++]=s:a+i>this.DB?(this[this.t-1]|=(s&(1<<this.DB-a)-1)<<a,this[this.t++]=s>>this.DB-a):this[this.t-1]|=s<<a,a+=i,a>=this.DB&&(a-=this.DB))}8==i&&0!=(128&e[0])&&n&&(this.s=-1,a>0&&(this[this.t-1]|=(1<<this.DB-a)-1<<a)),this.clamp(),o&&BigInteger.ZERO.subTo(this,this)}function bnpClamp(){for(var e=this.s&this.DM;this.t>0&&this[this.t-1]==e;)--this.t}function bnToString(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(16==e)t=4;else if(8==e)t=3;else if(2==e)t=1;else if(32==e)t=5;else{if(4!=e)return this.toRadix(e);t=2}var n,i=(1<<t)-1,r=!1,o="",a=this.t,s=this.DB-a*this.DB%t;if(a-->0)for(s<this.DB&&(n=this[a]>>s)>0&&(r=!0,o=int2char(n));a>=0;)t>s?(n=(this[a]&(1<<s)-1)<<t-s,n|=this[--a]>>(s+=this.DB-t)):(n=this[a]>>(s-=t)&i,0>=s&&(s+=this.DB,--a)),n>0&&(r=!0),r&&(o+=int2char(n));return r?o:"0"}function bnNegate(){var e=nbi();return BigInteger.ZERO.subTo(this,e),e}function bnAbs(){return this.s<0?this.negate():this}function bnCompareTo(e){var t=this.s-e.s;if(0!=t)return t;var n=this.t;if(t=n-e.t,0!=t)return this.s<0?-t:t;for(;--n>=0;)if(0!=(t=this[n]-e[n]))return t;return 0}function nbits(e){var t,n=1;return 0!=(t=e>>>16)&&(e=t,n+=16),0!=(t=e>>8)&&(e=t,n+=8),0!=(t=e>>4)&&(e=t,n+=4),0!=(t=e>>2)&&(e=t,n+=2),0!=(t=e>>1)&&(e=t,n+=1),n}function bnBitLength(){return this.t<=0?0:this.DB*(this.t-1)+nbits(this[this.t-1]^this.s&this.DM)}function bnpDLShiftTo(e,t){var n;for(n=this.t-1;n>=0;--n)t[n+e]=this[n];for(n=e-1;n>=0;--n)t[n]=0;t.t=this.t+e,t.s=this.s}function bnpDRShiftTo(e,t){for(var n=e;n<this.t;++n)t[n-e]=this[n];t.t=Math.max(this.t-e,0),t.s=this.s}function bnpLShiftTo(e,t){var n,i=e%this.DB,r=this.DB-i,o=(1<<r)-1,a=Math.floor(e/this.DB),s=this.s<<i&this.DM;for(n=this.t-1;n>=0;--n)t[n+a+1]=this[n]>>r|s,s=(this[n]&o)<<i;for(n=a-1;n>=0;--n)t[n]=0;t[a]=s,t.t=this.t+a+1,t.s=this.s,t.clamp()}function bnpRShiftTo(e,t){t.s=this.s;var n=Math.floor(e/this.DB);if(n>=this.t)return void(t.t=0);var i=e%this.DB,r=this.DB-i,o=(1<<i)-1;t[0]=this[n]>>i;for(var a=n+1;a<this.t;++a)t[a-n-1]|=(this[a]&o)<<r,t[a-n]=this[a]>>i;i>0&&(t[this.t-n-1]|=(this.s&o)<<r),t.t=this.t-n,t.clamp()}function bnpSubTo(e,t){for(var n=0,i=0,r=Math.min(e.t,this.t);r>n;)i+=this[n]-e[n],t[n++]=i&this.DM,i>>=this.DB;if(e.t<this.t){for(i-=e.s;n<this.t;)i+=this[n],t[n++]=i&this.DM,i>>=this.DB;i+=this.s}else{for(i+=this.s;n<e.t;)i-=e[n],t[n++]=i&this.DM,i>>=this.DB;i-=e.s}t.s=0>i?-1:0,-1>i?t[n++]=this.DV+i:i>0&&(t[n++]=i),t.t=n,t.clamp()}function bnpMultiplyTo(e,t){var n=this.abs(),i=e.abs(),r=n.t;for(t.t=r+i.t;--r>=0;)t[r]=0;for(r=0;r<i.t;++r)t[r+n.t]=n.am(0,i[r],t,r,0,n.t);t.s=0,t.clamp(),this.s!=e.s&&BigInteger.ZERO.subTo(t,t)}function bnpSquareTo(e){for(var t=this.abs(),n=e.t=2*t.t;--n>=0;)e[n]=0;for(n=0;n<t.t-1;++n){var i=t.a
if(u[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];for(o=u.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!c&&i&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),c=o,o=u.shift())if("*"===o)o=c;else if("*"!==c&&c!==o){if(a=l[c+" "+o]||l["* "+o],!a)for(r in l)if(s=r.split(" "),s[1]===o&&(a=l[c+" "+s[0]]||l["* "+s[0]])){a===!0?a=l[r]:l[r]!==!0&&(o=s[0],u.unshift(s[1]));break}if(a!==!0)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(p){return{state:"parsererror",error:a?p:"No conversion from "+c+" to "+o}}}return{state:"success",data:t}}function B(){try{return new e.XMLHttpRequest}catch(t){}}function U(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}function O(){return setTimeout(function(){Jn=t}),Jn=ut.now()}function R(e,t,n){for(var i,r=(oi[t]||[]).concat(oi["*"]),o=0,a=r.length;a>o;o++)if(i=r[o].call(n,t,e))return i}function F(e,t,n){var i,r,o=0,a=ri.length,s=ut.Deferred().always(function(){delete c.elem}),c=function(){if(r)return!1;for(var t=Jn||O(),n=Math.max(0,l.startTime+l.duration-t),i=n/l.duration||0,o=1-i,a=0,c=l.tweens.length;c>a;a++)l.tweens[a].run(o);return s.notifyWith(e,[l,o,n]),1>o&&c?n:(s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:ut.extend({},t),opts:ut.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Jn||O(),duration:n.duration,tweens:[],createTween:function(t,n){var i=ut.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(i),i},stop:function(t){var n=0,i=t?l.tweens.length:0;if(r)return this;for(r=!0;i>n;n++)l.tweens[n].run(1);return t?s.resolveWith(e,[l,t]):s.rejectWith(e,[l,t]),this}}),u=l.props;for(q(u,l.opts.specialEasing);a>o;o++)if(i=ri[o].call(l,e,u,l.opts))return i;return ut.map(u,R,l),ut.isFunction(l.opts.start)&&l.opts.start.call(e,l),ut.fx.timer(ut.extend(c,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}function q(e,t){var n,i,r,o,a;for(n in e)if(i=ut.camelCase(n),r=t[i],o=e[n],ut.isArray(o)&&(r=o[1],o=e[n]=o[0]),n!==i&&(e[i]=o,delete e[n]),a=ut.cssHooks[i],a&&"expand"in a){o=a.expand(o),delete e[i];for(n in o)n in e||(e[n]=o[n],t[n]=r)}else t[i]=r}function j(e,t,n){var i,r,o,a,s,c,l=this,u={},p=e.style,d=e.nodeType&&S(e),f=ut._data(e,"fxshow");n.queue||(s=ut._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,c=s.empty.fire,s.empty.fire=function(){s.unqueued||c()}),s.unqueued++,l.always(function(){l.always(function(){s.unqueued--,ut.queue(e,"fx").length||s.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[p.overflow,p.overflowX,p.overflowY],"inline"===ut.css(e,"display")&&"none"===ut.css(e,"float")&&(ut.support.inlineBlockNeedsLayout&&"inline"!==T(e.nodeName)?p.zoom=1:p.display="inline-block")),n.overflow&&(p.overflow="hidden",ut.support.shrinkWrapBlocks||l.always(function(){p.overflow=n.overflow[0],p.overflowX=n.overflow[1],p.overflowY=n.overflow[2]}));for(i in t)if(r=t[i],ti.exec(r)){if(delete t[i],o=o||"toggle"===r,r===(d?"hide":"show"))continue;u[i]=f&&f[i]||ut.style(e,i)}if(!ut.isEmptyObject(u)){f?"hidden"in f&&(d=f.hidden):f=ut._data(e,"fxshow",{}),o&&(f.hidden=!d),d?ut(e).show():l.done(function(){ut(e).hide()}),l.done(function(){var t;ut._removeData(e,"fxshow");for(t in u)ut.style(e,t,u[t])});for(i in u)a=R(d?f[i]:0,i,l),i in f||(f[i]=a.start,d&&(a.end=a.start,a.start="width"===i||"height"===i?1:0))}}function H(e,t,n,i,r){return new H.prototype.init(e,t,n,i,r)}function z(e,t){var n,i={height:e},r=0;for(t=t?1:0;4>r;r+=2-t)n=Cn[r],i["margin"+n]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function V(e){return ut.isWindow(e)?e:9===e.nodeType?e.defaultView||e.parentWindow:!1}var W,G,K=typeof t,Z=e.location,X=e.document,Y=X.documentElement,Q=e.jQuery,J=e.$,et={},tt=[],nt="1.10.2",it=tt.concat,rt=tt.push,ot=tt.slice,at=tt.indexOf,st=et.toString,ct=et.hasOwnProperty,lt=nt.trim,ut=function(e,t){return new ut.fn.init(e,t,G)},pt=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,dt=/\S+/g,ft=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ht=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,gt=/^<
o=X.createElement("select"),s=o.appendChild(X.createElement("option")),r=p.getElementsByTagName("input")[0],i.style.cssText="top:1px;float:left;opacity:.5",t.getSetAttribute="t"!==p.className,t.leadingWhitespace=3===p.firstChild.nodeType,t.tbody=!p.getElementsByTagName("tbody").length,t.htmlSerialize=!!p.getElementsByTagName("link").length,t.style=/top/.test(i.getAttribute("style")),t.hrefNormalized="/a"===i.getAttribute("href"),t.opacity=/^0.5/.test(i.style.opacity),t.cssFloat=!!i.style.cssFloat,t.checkOn=!!r.value,t.optSelected=s.selected,t.enctype=!!X.createElement("form").enctype,t.html5Clone="<:nav></:nav>"!==X.createElement("nav").cloneNode(!0).outerHTML,t.inlineBlockNeedsLayout=!1,t.shrinkWrapBlocks=!1,t.pixelPosition=!1,t.deleteExpando=!0,t.noCloneEvent=!0,t.reliableMarginRight=!0,t.boxSizingReliable=!0,r.checked=!0,t.noCloneChecked=r.cloneNode(!0).checked,o.disabled=!0,t.optDisabled=!s.disabled;try{delete p.test}catch(d){t.deleteExpando=!1}r=X.createElement("input"),r.setAttribute("value",""),t.input=""===r.getAttribute("value"),r.value="t",r.setAttribute("type","radio"),t.radioValue="t"===r.value,r.setAttribute("checked","t"),r.setAttribute("name","t"),a=X.createDocumentFragment(),a.appendChild(r),t.appendChecked=r.checked,t.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,p.attachEvent&&(p.attachEvent("onclick",function(){t.noCloneEvent=!1}),p.cloneNode(!0).click());for(u in{submit:!0,change:!0,focusin:!0})p.setAttribute(c="on"+u,"t"),t[u+"Bubbles"]=c in e||p.attributes[c].expando===!1;p.style.backgroundClip="content-box",p.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===p.style.backgroundClip;for(u in ut(t))break;return t.ownLast="0"!==u,ut(function(){var n,i,r,o="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",a=X.getElementsByTagName("body")[0];a&&(n=X.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",a.appendChild(n).appendChild(p),p.innerHTML="<table><tr><td></td><td>t</td></tr></table>",r=p.getElementsByTagName("td"),r[0].style.cssText="padding:0;margin:0;border:0;display:none",l=0===r[0].offsetHeight,r[0].style.display="",r[1].style.display="none",t.reliableHiddenOffsets=l&&0===r[0].offsetHeight,p.innerHTML="",p.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",ut.swap(a,null!=a.style.zoom?{zoom:1}:{},function(){t.boxSizing=4===p.offsetWidth}),e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(p,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(p,null)||{width:"4px"}).width,i=p.appendChild(X.createElement("div")),i.style.cssText=p.style.cssText=o,i.style.marginRight=i.style.width="0",p.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(i,null)||{}).marginRight)),typeof p.style.zoom!==K&&(p.innerHTML="",p.style.cssText=o+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=3===p.offsetWidth,p.style.display="block",p.innerHTML="<div></div>",p.firstChild.style.width="5px",t.shrinkWrapBlocks=3!==p.offsetWidth,t.inlineBlockNeedsLayout&&(a.style.zoom=1)),a.removeChild(n),n=p=r=i=null)}),n=o=a=s=i=r=null,t}({});var kt=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,xt=/([A-Z])/g;ut.extend({cache:{},noData:{applet:!0,embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?ut.cache[e[ut.expando]]:e[ut.expando],!!e&&!s(e)},data:function(e,t,n){return r(e,t,n)},removeData:function(e,t){return o(e,t)},_data:function(e,t,n){return r(e,t,n,!0)},_removeData:function(e,t){return o(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&ut.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),ut.fn.extend({data:function(e,n){var i,r,o=null,s=0,c=this[0];if(e===t){if(this.length&&(o=ut.data(c),1===c.nodeType&&!ut._data(c,"parsedAttrs"))){for(i=c
c[r]&&(delete c[r],l?delete n[s]:typeof n.removeAttribute!==K?n.removeAttribute(s):n[s]=null,tt.push(r))}},_evalUrl:function(e){return ut.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),ut.fn.extend({wrapAll:function(e){if(ut.isFunction(e))return this.each(function(t){ut(this).wrapAll(e.call(this,t))});if(this[0]){var t=ut(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstChild&&1===e.firstChild.nodeType;)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return this.each(ut.isFunction(e)?function(t){ut(this).wrapInner(e.call(this,t))}:function(){var t=ut(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=ut.isFunction(e);return this.each(function(n){ut(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){ut.nodeName(this,"body")||ut(this).replaceWith(this.childNodes)}).end()}});var un,pn,dn,fn=/alpha\([^)]*\)/i,hn=/opacity\s*=\s*([^)]*)/,gn=/^(top|right|bottom|left)$/,mn=/^(none|table(?!-c[ea]).+)/,yn=/^margin/,vn=RegExp("^("+pt+")(.*)$","i"),_n=RegExp("^("+pt+")(?!px)[a-z%]+$","i"),bn=RegExp("^([+-])=("+pt+")","i"),wn={BODY:"block"},$n={position:"absolute",visibility:"hidden",display:"block"},Sn={letterSpacing:0,fontWeight:400},Cn=["Top","Right","Bottom","Left"],Mn=["Webkit","O","Moz","ms"];ut.fn.extend({css:function(e,n){return ut.access(this,function(e,n,i){var r,o,a={},s=0;if(ut.isArray(n)){for(o=pn(e),r=n.length;r>s;s++)a[n[s]]=ut.css(e,n[s],!1,o);return a}return i!==t?ut.style(e,n,i):ut.css(e,n)},e,n,arguments.length>1)},show:function(){return C(this,!0)},hide:function(){return C(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){S(this)?ut(this).show():ut(this).hide()})}}),ut.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=dn(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":ut.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,i,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,c=ut.camelCase(n),l=e.style;if(n=ut.cssProps[c]||(ut.cssProps[c]=$(l,c)),s=ut.cssHooks[n]||ut.cssHooks[c],i===t)return s&&"get"in s&&(o=s.get(e,!1,r))!==t?o:l[n];if(a=typeof i,"string"===a&&(o=bn.exec(i))&&(i=(o[1]+1)*o[2]+parseFloat(ut.css(e,n)),a="number"),!(null==i||"number"===a&&isNaN(i)||("number"!==a||ut.cssNumber[c]||(i+="px"),ut.support.clearCloneStyle||""!==i||0!==n.indexOf("background")||(l[n]="inherit"),s&&"set"in s&&(i=s.set(e,i,r))===t)))try{l[n]=i}catch(u){}}},css:function(e,n,i,r){var o,a,s,c=ut.camelCase(n);return n=ut.cssProps[c]||(ut.cssProps[c]=$(e.style,c)),s=ut.cssHooks[n]||ut.cssHooks[c],s&&"get"in s&&(a=s.get(e,!0,i)),a===t&&(a=dn(e,n,r)),"normal"===a&&n in Sn&&(a=Sn[n]),""===i||i?(o=parseFloat(a),i===!0||ut.isNumeric(o)?o||0:a):a}}),e.getComputedStyle?(pn=function(t){return e.getComputedStyle(t,null)},dn=function(e,n,i){var r,o,a,s=i||pn(e),c=s?s.getPropertyValue(n)||s[n]:t,l=e.style;return s&&(""!==c||ut.contains(e.ownerDocument,e)||(c=ut.style(e,n)),_n.test(c)&&yn.test(n)&&(r=l.width,o=l.minWidth,a=l.maxWidth,l.minWidth=l.maxWidth=l.width=c,c=s.width,l.width=r,l.minWidth=o,l.maxWidth=a)),c}):X.documentElement.currentStyle&&(pn=function(e){return e.currentStyle},dn=function(e,n,i){var r,o,a,s=i||pn(e),c=s?s[n]:t,l=e.style;return null==c&&l&&l[n]&&(c=l[n]),_n.test(c)&&!gn.test(n)&&(r=l.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),l.left="fontSize"===n?"1em":c,c=l.pixelLeft+"px",l.left=r,a&&(o.left=a)),""===c?"auto":c}),ut.each(["height","width"],function(e,n){ut.cssHooks[n]={get:function(e,i,r){return i?0===e.offsetWidth&&mn.test(ut.css(e,"display"))?ut.swap(e,$n,function(){return x(e,n,r)}):x(e,n,r):t},set:function(e,t,i){var r=i&&pn(e);return M(e,t,i?k(e,n,i,ut.support.boxSizing&&"border-box"===ut.css(e,"boxSizing",!1,r),r):0)}}}),ut.support.opacity||(ut.cssHooks.opacity={get:function(e,t){retu
}:void 0}(),c.replaceSelection=function(){return t.getSelection?function(e){var i,r=t.getSelection(),o="string"==typeof e?n.createTextNode(e):e;r.getRangeAt&&r.rangeCount&&(i=r.getRangeAt(0),i.deleteContents(),i.insertNode(n.createTextNode(" ")),i.insertNode(o),i.setStart(o,0),t.setTimeout(function(){i=n.createRange(),i.setStartAfter(o),i.collapse(!0),r.removeAllRanges(),r.addRange(i)},0))}:n.selection&&n.selection.createRange?function(e){var t=n.selection.createRange();"string"==typeof e?t.text=e:t.pasteHTML(e.outerHTML)}:void 0}(),c.insertAtCursor=function(e,t){e=" "+e;var i,r,o,a=t.value;"undefined"!=typeof t.selectionStart&&"undefined"!=typeof t.selectionEnd?(r=t.selectionStart,i=t.selectionEnd,t.value=a.substring(0,r)+e+a.substring(t.selectionEnd),t.selectionStart=t.selectionEnd=r+e.length):"undefined"!=typeof n.selection&&"undefined"!=typeof n.selection.createRange&&(t.focus(),o=n.selection.createRange(),o.text=e,o.select())},c.extend=function(e,t){if("undefined"!=typeof e&&e||(e={}),"object"==typeof t)for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e},c.escapeRegex=function(e){return(e+"").replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")},c.htmlEntities=function(e){return String(e).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")},c.emojiInserted=function(e,t){try{var n=localStorage.getItem("emojis_recent")}catch(i){return!1}var r=n&&n.split(",")||[],o=r.indexOf(e);return o?(-1!=o&&r.splice(o,1),r.unshift(e),r.length>42&&(r=r.slice(42)),localStorage.setItem("emojis_recent",r.join(",")),void(t&&t.updateRecentTab(r))):!1};var l=function(){};l.prototype.setup=function(){var e=this;this.$editor.on("focus",function(){e.hasFocus=!0}),this.$editor.on("blur",function(){e.hasFocus=!1}),this.setupButton()},l.prototype.setupButton=function(){var t,n=this;this.options.button?t=e(this.options.button):this.options.button!==!1?(t=e('<a href="javascript:void(0)">'),t.html(this.options.buttonLabel),t.addClass("emoji-button"),t.attr({title:this.options.buttonLabel}),this.$editor[this.options.buttonPosition](t)):t=e(""),t.on("click",function(e){d.show(n),e.stopPropagation()}),this.$button=t},l.createIcon=function(t){var n=t[0],i=t[1],r=t[2],o=t[3],a=e.emojiarea.spritesheetPath,s=-(e.emojiarea.iconSize*r),l=-(e.emojiarea.iconSize*i),u=e.emojiarea.spritesheetDimens[n][1]*e.emojiarea.iconSize,p=e.emojiarea.spritesheetDimens[n][0]*e.emojiarea.iconSize,d="display:inline-block;";return d+="width:"+e.emojiarea.iconSize+"px;",d+="height:"+e.emojiarea.iconSize+"px;",d+="background:url('"+a.replace("!",n)+"') "+s+"px "+l+"px no-repeat;",d+="background-size:"+u+"px "+p+"px;",'<img src="img/blank.gif" class="img" style="'+d+'" alt="'+c.htmlEntities(o)+'">'};var u=function(e,t){this.options=t,this.$textarea=e,this.$editor=e,this.setup()};u.prototype.insert=function(t){e.emojiarea.icons.hasOwnProperty(t)&&(c.insertAtCursor(t,this.$textarea[0]),c.emojiInserted(t,this.menu),this.$textarea.trigger("change"))},u.prototype.val=function(){return this.$textarea.val()},c.extend(u.prototype,l.prototype);var p=function(t,i){var r=this;this.options=i||{},this.$textarea=t,this.$editor=e("<div>").addClass("emoji-wysiwyg-editor"),this.$editor.text(t.val()),this.$editor.attr({contenteditable:"true"});var o="blur change";this.options.norealTime||(o+=" keyup"),this.$editor.on(o,function(e){return r.onChange.apply(r,[e])}),this.$editor.on("paste",function(e){return r.onPaste.apply(r,[e])}),this.$editor.on("mousedown focus",function(){n.execCommand("enableObjectResizing",!1,!1)}),this.$editor.on("blur",function(){n.execCommand("enableObjectResizing",!0,!0)});var a=this.$editor.text(),s=e.emojiarea.icons;for(var u in s)s.hasOwnProperty(u)&&(a=a.replace(new RegExp(c.escapeRegex(u),"g"),l.createIcon(s[u])));this.$editor.html(a),t.hide().after(this.$editor),this.setup(),e(n.body).on("mousedown",function(){r.hasFocus&&(r.selection=c.saveSelection())})};p.prototype.onPaste=function(e){var t,i=(e.originalEvent||e).clipboardData,r=i&&i.items||[];for(t=0;t<r.length;t++)if("file"==r[t].kind)return e.preventDefault(),!0;var o=(e.originalE
if(t&&e.hasAttribute&&e.hasAttribute(t)){do{if(!e)throw ji("uterdir","Unterminated attribute, found '{0}' but no matching '{1}' found.",t,n);1==e.nodeType&&(e.hasAttribute(t)&&r++,e.hasAttribute(n)&&r--),i.push(e),e=e.nextSibling}while(r>0)}else i.push(e);return pi(i)}function N(e,t,n){return function(i,r,o,a,s){return r=P(r[0],t,n),e(i,r,o,a,s)}}function U(e,r,a,s,l,u,p,d,f){function h(e,t,n,i){e&&(n&&(e=N(e,n,i)),e.require=$.require,(F===$||$.$$isolateScope)&&(e=Y(e,{isolateScope:!0})),p.push(e)),t&&(n&&(t=N(t,n,i)),t.require=$.require,(F===$||$.$$isolateScope)&&(t=Y(t,{isolateScope:!0})),d.push(t))}function g(e,t,n){var i,r="data",a=!1;if(b(e)){for(;"^"==(i=e.charAt(0))||"?"==i;)e=e.substr(1),"^"==i&&(r="inheritedData"),a=a||"?"==i;if(i=null,n&&"data"===r&&(i=n[e]),i=i||t[r]("$"+e+"Controller"),!i&&!a)throw ji("ctreq","Controller '{0}', required by directive '{1}', can't be found!",e,M);return i}return S(e)&&(i=[],o(e,function(e){i.push(g(e,t,n))})),i}function m(e,t,s,l,u){function f(e,t){var i;return arguments.length<2&&(t=e,e=n),K&&(i=M),u(e,t,i)}var h,m,_,b,w,$,S,C,M={};if(h=r===s?a:L(a,new Q(pi(s),a.$attr)),m=h.$$element,F){var k=/^\s*([@=&])(\??)\s*(\w*)\s*$/,x=pi(s);S=t.$new(!0),q&&q===F.$$originalDirective?x.data("$isolateScope",S):x.data("$isolateScopeNoTemplate",S),E(x,"ng-isolate-scope"),o(F.scope,function(e,n){var r,o,a,s,c=e.match(k)||[],l=c[3]||n,u="?"==c[2],p=c[1];switch(S.$$isolateBindings[n]=p+l,p){case"@":h.$observe(l,function(e){S[n]=e}),h.$$observers[l].$$scope=t,h[l]&&(S[n]=i(h[l])(t));break;case"=":if(u&&!h[l])return;o=y(h[l]),s=o.literal?B:function(e,t){return e===t},a=o.assign||function(){throw r=S[n]=o(t),ji("nonassign","Expression '{0}' used with directive '{1}' is non-assignable!",h[l],F.name)},r=S[n]=o(t),S.$watch(function(){var e=o(t);return s(e,S[n])||(s(e,r)?a(t,e=S[n]):S[n]=e),r=e},null,o.literal);break;case"&":o=y(h[l]),S[n]=function(e){return o(t,e)};break;default:throw ji("iscp","Invalid isolate scope definition for directive '{0}'. Definition: {... {1}: '{2}' ...}",F.name,n,e)}})}for(C=u&&f,U&&o(U,function(e){var n,i={$scope:e===F||e.$$isolateScope?S:t,$element:m,$attrs:h,$transclude:C};$=e.controller,"@"==$&&($=h[e.name]),n=v($,i),M[e.name]=n,K||m.data("$"+e.name+"Controller",n),e.controllerAs&&(i.$scope[e.controllerAs]=n)}),_=0,b=p.length;b>_;_++)try{w=p[_],w(w.isolateScope?S:t,m,h,w.require&&g(w.require,m,M),C)}catch(T){c(T,V(m))}var A=t;for(F&&(F.template||null===F.templateUrl)&&(A=S),e&&e(A,s.childNodes,n,u),_=d.length-1;_>=0;_--)try{w=d[_],w(w.isolateScope?S:t,m,h,w.require&&g(w.require,m,M),C)}catch(T){c(T,V(m))}}f=f||{};for(var w,$,M,k,x,A,I=-Number.MAX_VALUE,U=f.controllerDirectives,F=f.newIsolateScopeDirective,q=f.templateDirective,z=f.nonTlbTranscludeDirective,G=!1,K=!1,Z=a.$$element=pi(r),J=u,et=s,tt=0,nt=e.length;nt>tt;tt++){$=e[tt];var rt=$.$$start,ot=$.$$end;if(rt&&(Z=P(r,rt,ot)),k=n,I>$.priority)break;if((A=$.scope)&&(w=w||$,$.templateUrl||(W("new/isolated scope",F,$,Z),_(A)&&(F=$))),M=$.name,!$.templateUrl&&$.controller&&(A=$.controller,U=U||{},W("'"+M+"' controller",U[M],$,Z),U[M]=$),(A=$.transclude)&&(G=!0,$.$$tlb||(W("transclusion",z,$,Z),z=$),"element"==A?(K=!0,I=$.priority,k=P(r,rt,ot),Z=a.$$element=pi(t.createComment(" "+M+": "+a[M]+" ")),r=Z[0],X(l,pi(R(k)),r),et=T(k,s,I,J&&J.name,{nonTlbTranscludeDirective:z})):(k=pi(dt(r)).contents(),Z.empty(),et=T(k,s))),$.template)if(W("template",q,$,Z),q=$,A=C($.template)?$.template(Z,a):$.template,A=it(A),$.replace){if(J=$,k=pi("<div>"+wi(A)+"</div>").contents(),r=k[0],1!=k.length||1!==r.nodeType)throw ji("tplrt","Template for directive '{0}' must have exactly one root element. {1}",M,"");X(l,Z,r);var at={$attr:{}},st=D(r,[],at),ct=e.splice(tt+1,e.length-(tt+1));F&&O(st),e=e.concat(st).concat(ct),j(a,at),nt=e.length}else Z.html(A);if($.templateUrl)W("template",q,$,Z),q=$,$.replace&&(J=$),m=H(e.splice(tt,e.length-tt),Z,a,l,et,p,d,{controllerDirectives:U,newIsolateScopeDirective:F,templateDirective:q,nonTlbTranscludeDirective:z}),nt=e.length;else if($.compile)try{x=$.compile(Z,a,et),C(x)?h(null,x,rt,ot):x&&h(x.pre,x.post,
}return c}};var y=new u;return y}]}function Mn(){var e=/^\s*(https?|ftp|mailto|tel|file):/,t=/^\s*(https?|ftp|file):|data:image\//;this.aHrefSanitizationWhitelist=function(t){return v(t)?(e=t,this):e},this.imgSrcSanitizationWhitelist=function(e){return v(e)?(t=e,this):t},this.$get=function(){return function(n,i){var r,o=i?t:e;return ui&&!(ui>=8)||(r=Pn(n).href,""===r||r.match(o))?n:"unsafe:"+r}}}function kn(e){return e.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")}function xn(e){if("self"===e)return e;if(b(e)){if(e.indexOf("***")>-1)throw nr("iwcard","Illegal sequence *** in string matcher. String: {0}",e);return e=kn(e).replace("\\*\\*",".*").replace("\\*","[^:/.?&;]*"),new RegExp("^"+e+"$")}if(M(e))return new RegExp("^"+e.source+"$");throw nr("imatcher",'Matchers may only be "self", string patterns or RegExp objects')}function Tn(e){var t=[];return v(e)&&o(e,function(e){t.push(xn(e))}),t}function En(){this.SCE_CONTEXTS=ir;var e=["self"],t=[];this.resourceUrlWhitelist=function(t){return arguments.length&&(e=Tn(t)),e},this.resourceUrlBlacklist=function(e){return arguments.length&&(t=Tn(e)),t},this.$get=["$injector",function(i){function r(e,t){return"self"===e?Nn(t):!!e.exec(t.href)}function o(n){var i,o,a=Pn(n.toString()),s=!1;for(i=0,o=e.length;o>i;i++)if(r(e[i],a)){s=!0;break}if(s)for(i=0,o=t.length;o>i;i++)if(r(t[i],a)){s=!1;break}return s}function a(e){var t=function(e){this.$$unwrapTrustedValue=function(){return e}};return e&&(t.prototype=new e),t.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},t.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},t}function s(e,t){var i=d.hasOwnProperty(e)?d[e]:null;if(!i)throw nr("icontext","Attempted to trust a value in invalid context. Context: {0}; Value: {1}",e,t);if(null===t||t===n||""===t)return t;if("string"!=typeof t)throw nr("itype","Attempted to trust a non-string value in a content requiring a string: Context: {0}",e);return new i(t)}function c(e){return e instanceof p?e.$$unwrapTrustedValue():e}function l(e,t){if(null===t||t===n||""===t)return t;var i=d.hasOwnProperty(e)?d[e]:null;if(i&&t instanceof i)return t.$$unwrapTrustedValue();if(e===ir.RESOURCE_URL){if(o(t))return t;throw nr("insecurl","Blocked loading resource from url not allowed by $sceDelegate policy. URL: {0}",t.toString())}if(e===ir.HTML)return u(t);throw nr("unsafe","Attempting to use an unsafe value in a safe context.")}var u=function(){throw nr("unsafe","Attempting to use an unsafe value in a safe context.")};i.has("$sanitize")&&(u=i.get("$sanitize"));var p=a(),d={};return d[ir.HTML]=a(p),d[ir.CSS]=a(p),d[ir.URL]=a(p),d[ir.JS]=a(p),d[ir.RESOURCE_URL]=a(d[ir.URL]),{trustAs:s,getTrusted:l,valueOf:c}}]}function An(){var e=!0;this.enabled=function(t){return arguments.length&&(e=!!t),e},this.$get=["$parse","$sniffer","$sceDelegate",function(t,n,i){if(e&&n.msie&&n.msieDocumentMode<8)throw nr("iequirks","Strict Contextual Escaping does not support Internet Explorer version < 9 in quirks mode. You can fix this by adding the text <!doctype html> to the top of your HTML document. See http://docs.angularjs.org/api/ng.$sce for more information.");var r=N(ir);r.isEnabled=function(){return e},r.trustAs=i.trustAs,r.getTrusted=i.getTrusted,r.valueOf=i.valueOf,e||(r.trustAs=r.getTrusted=function(e,t){return t},r.valueOf=g),r.parseAs=function(e,n){var i=t(n);return i.literal&&i.constant?i:function(t,n){return r.getTrusted(e,i(t,n))}};var a=r.parseAs,s=r.getTrusted,c=r.trustAs;return o(ir,function(e,t){var n=ai(t);r[lt("parse_as_"+n)]=function(t){return a(e,t)},r[lt("get_trusted_"+n)]=function(t){return s(e,t)},r[lt("trust_as_"+n)]=function(t){return c(e,t)}}),r}]}function In(){this.$get=["$window","$document",function(e,t){var n,i,r={},o=d((/android (\d+)/.exec(ai((e.navigator||{}).userAgent))||[])[1]),a=/Boxee/i.test((e.navigator||{}).userAgent),s=t[0]||{},c=s.documentMode,l=/^(Moz|webkit|O|ms)(?=[A-Z])/,u=s.body&&s.body.style,p=!1,f=!1;if(u){for(var h in u)if(i=l.exec(h)){n=i[0],n=n.substr(0,1).toUpperCase()+n.substr(1);break}n||(n="WebkitOpacity
return this.consume("]"),p(function(r,o){var a,s,c=e(r,o),l=i(r,o);return c?(a=gn(c[l],t.text),a&&a.then&&t.options.unwrapPromises&&(s=a,"$$v"in a||(s.$$v=n,s.then(function(e){s.$$v=e})),a=a.$$v),a):n},{assign:function(n,r,o){var a=i(n,o),s=gn(e(n,o),t.text);return s[a]=r}})},functionCall:function(e,t){var n=[];if(")"!==this.peekToken().text)do n.push(this.expression());while(this.expect(","));this.consume(")");var i=this;return function(r,o){for(var a=[],s=t?t(r,o):r,c=0;c<n.length;c++)a.push(n[c](r,o));var l=e(r,o,s)||h;gn(s,i.text),gn(l,i.text);var u=l.apply?l.apply(s,a):l(a[0],a[1],a[2],a[3],a[4]);return gn(u,i.text)}},arrayDeclaration:function(){var e=[],t=!0;if("]"!==this.peekToken().text)do{var n=this.expression();e.push(n),n.constant||(t=!1)}while(this.expect(","));return this.consume("]"),p(function(t,n){for(var i=[],r=0;r<e.length;r++)i.push(e[r](t,n));return i},{literal:!0,constant:t})},object:function(){var e=[],t=!0;if("}"!==this.peekToken().text)do{var n=this.expect(),i=n.string||n.text;this.consume(":");var r=this.expression();e.push({key:i,value:r}),r.constant||(t=!1)}while(this.expect(","));return this.consume("}"),p(function(t,n){for(var i={},r=0;r<e.length;r++){var o=e[r];i[o.key]=o.value(t,n)}return i},{literal:!0,constant:t})}};var tr={},nr=i("$sce"),ir={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},rr=t.createElement("a"),or=Pn(e.location.href,!0);Bn.$inject=["$provide"],On.$inject=["$locale"],Rn.$inject=["$locale"];var ar=".",sr={yyyy:jn("FullYear",4),yy:jn("FullYear",2,0,!0),y:jn("FullYear",1),MMMM:Hn("Month"),MMM:Hn("Month",!0),MM:jn("Month",2,1),M:jn("Month",1,1),dd:jn("Date",2),d:jn("Date",1),HH:jn("Hours",2),H:jn("Hours",1),hh:jn("Hours",2,-12),h:jn("Hours",1,-12),mm:jn("Minutes",2),m:jn("Minutes",1),ss:jn("Seconds",2),s:jn("Seconds",1),sss:jn("Milliseconds",3),EEEE:Hn("Day"),EEE:Hn("Day",!0),a:Vn,Z:zn},cr=/((?:[^yMdHhmsaZE']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z))(.*)/,lr=/^\-?\d+$/;Wn.$inject=["$locale"];var ur=m(ai),pr=m(si);Zn.$inject=["$parse"];var dr=m({restrict:"E",compile:function(e,n){return 8>=ui&&(n.href||n.name||n.$set("href",""),e.append(t.createComment("IE fix"))),n.href||n.name?void 0:function(e,t){t.on("click",function(e){t.attr("href")||e.preventDefault()})}}}),fr={};o(Pi,function(e,t){if("multiple"!=e){var n=Ut("ng-"+t);fr[n]=function(){return{priority:100,link:function(e,i,r){e.$watch(r[n],function(e){r.$set(t,!!e)})}}}}}),o(["src","srcset","href"],function(e){var t=Ut("ng-"+e);fr[t]=function(){return{priority:99,link:function(n,i,r){r.$observe(t,function(t){t&&(r.$set(e,t),ui&&i.prop(e,r[e]))})}}}});var hr={$addControl:h,$removeControl:h,$setValidity:h,$setDirty:h,$setPristine:h};Yn.$inject=["$element","$attrs","$scope"];var gr=function(e){return["$timeout",function(t){var i={name:"form",restrict:e?"EAC":"E",controller:Yn,compile:function(){return{pre:function(e,i,r,o){if(!r.action){var a=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1};xi(i[0],"submit",a),i.on("$destroy",function(){t(function(){Ti(i[0],"submit",a)},0,!1)})}var s=i.parent().controller("form"),c=r.name||r.ngForm;c&&mn(e,c,o,c),s&&i.on("$destroy",function(){s.$removeControl(o),c&&mn(e,c,n,c),p(o,hr)})}}}};return i}]},mr=gr(),yr=gr(!0),vr=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,_r=/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}$/,br=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/,wr={text:Jn,number:ei,url:ti,email:ni,radio:ii,checkbox:ri,hidden:h,button:h,submit:h,reset:h},$r=["$browser","$sniffer",function(e,t){return{restrict:"E",require:"?ngModel",link:function(n,i,r,o){o&&(wr[ai(r.type)]||wr.text)(n,i,r,o,t,e)}}}],Sr="ng-valid",Cr="ng-invalid",Mr="ng-pristine",kr="ng-dirty",xr=["$scope","$exceptionHandler","$attrs","$element","$parse",function(e,t,n,r,a){function s(e,t){t=t?"-"+J(t,"-"):"",r.removeClass((e?Cr:Sr)+t).addClass((e?Sr:Cr)+t)}this.$viewValue=Number.NaN,this.$modelValue=Number.NaN,this.$parsers=[],this.$formatters=[],this.$viewChangeListeners=[],this.$pristine=!0,this.$dirty=!1,this.$valid=!0,this.$invalid
c[t]=a(o)}),n.start&&n.start(i,c,s)}function r(e,i){var r,o=0;if(i=t.lowercase(i))for(o=v.length-1;o>=0&&v[o]!=i;o--);if(o>=0){for(r=v.length-1;r>=o;r--)n.end&&n.end(v[r]);v.length=o}}var o,s,c,v=[],b=e;for(v.last=function(){return v[v.length-1]};e;){if(s=!0,v.last()&&M[v.last()])e=e.replace(new RegExp("(.*)<\\s*\\/\\s*"+v.last()+"[^>]*>","i"),function(e,t){return t=t.replace(g,"$1").replace(y,"$1"),n.chars&&n.chars(a(t)),""}),r("",v.last());else if(0===e.indexOf("<!--")?(o=e.indexOf("--",4),o>=0&&e.lastIndexOf("-->",o)===o&&(n.comment&&n.comment(e.substring(4,o)),e=e.substring(o+3),s=!1)):m.test(e)?(c=e.match(m),c&&(e=e.replace(c[0],""),s=!1)):h.test(e)?(c=e.match(p),c&&(e=e.substring(c[0].length),c[0].replace(p,r),s=!1)):f.test(e)&&(c=e.match(u),c&&(e=e.substring(c[0].length),c[0].replace(u,i),s=!1)),s){o=e.indexOf("<");var w=0>o?e:e.substring(0,o);e=0>o?"":e.substring(o),n.chars&&n.chars(a(w))}if(e==b)throw l("badparse","The sanitizer was unable to parse the following block of html: {0}",e);b=e}r()}function a(e){if(!e)return"";var t=A.exec(e),n=t[1],i=t[3],r=t[2];return r&&(E.innerHTML=r.replace(/</g,"&lt;"),r="textContent"in E?E.textContent:E.innerText),n+r+i}function s(e){return e.replace(/&/g,"&amp;").replace(v,function(e){return"&#"+e.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function c(e,n){var i=!1,r=t.bind(e,e.push);return{start:function(e,o,a){e=t.lowercase(e),!i&&M[e]&&(i=e),i||k[e]!==!0||(r("<"),r(e),t.forEach(o,function(i,o){var a=t.lowercase(o),c="img"===e&&"src"===a||"background"===a;T[a]!==!0||x[a]===!0&&!n(i,c)||(r(" "),r(o),r('="'),r(s(i)),r('"'))}),r(a?"/>":">"))},end:function(e){e=t.lowercase(e),i||k[e]!==!0||(r("</"),r(e),r(">")),e==i&&(i=!1)},chars:function(e){i||r(s(e))}}}var l=t.$$minErr("$sanitize"),u=/^<\s*([\w:-]+)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*>/,p=/^<\s*\/\s*([\w:-]+)[^>]*>/,d=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,f=/^</,h=/^<\s*\//,g=/<!--(.*?)-->/g,m=/<!DOCTYPE([^>]*?)>/i,y=/<!\[CDATA\[(.*?)]]>/g,v=/([^\#-~| |!])/g,_=r("area,br,col,hr,img,wbr"),b=r("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),w=r("rp,rt"),$=t.extend({},w,b),S=t.extend({},b,r("address,article,aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,script,section,table,ul")),C=t.extend({},w,r("a,abbr,acronym,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s,samp,small,span,strike,strong,sub,sup,time,tt,u,var")),M=r("script,style"),k=t.extend({},_,S,C,$),x=r("background,cite,href,longdesc,src,usemap"),T=t.extend({},x,r("abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,scope,scrolling,shape,size,span,start,summary,target,title,type,valign,value,vspace,width")),E=document.createElement("pre"),A=/^(\s*)([\s\S]*?)(\s*)$/;t.module("ngSanitize",[]).provider("$sanitize",n),t.module("ngSanitize").filter("linky",["$sanitize",function(e){var n=/((ftp|https?):\/\/|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s.;,(){}<>]/,r=/^mailto:/;return function(o,a){function s(e){e&&f.push(i(e))}function c(e,n){f.push("<a "),t.isDefined(a)&&(f.push('target="'),f.push(a),f.push('" ')),f.push('href="'),f.push(e),f.push('">'),s(n),f.push("</a>")}if(!o)return o;for(var l,u,p,d=o,f=[];l=d.match(n);)u=l[0],l[2]==l[3]&&(u="mailto:"+u),p=l.index,s(d.substr(0,p)),c(u,l[0].replace(r,"")),d=d.substring(p+l[0].length);return s(d),e(f.join(""))}}])}(window,window.angular),angular.module("ui.bootstrap",["ui.bootstrap.tpls","ui.bootstrap.transition","ui.bootstrap.collapse","ui.bootstrap.dropdownToggle","ui.bootstrap.modal","ui.bootstrap.position","ui.bootstrap.bindHtml","ui.bootstrap.tooltip"]),angular.module("ui.bootstrap.tpls",["template/modal/backdrop.html","template/modal/window.html","template/tooltip/tooltip-html-unsafe-popup.html","template/tooltip/tooltip-popup.html"]),angular.module("ui.bootstrap
}}),n}(),h=(p.IGE=function(){function t(e,t,n,i){for(var r=0;i>r;r++)e[n+r]^=t[r]}var n=d.extend();return n.Encryptor=n.extend({processBlock:function(n,i){var r=this._cipher,o=r.blockSize;this._ivp===e&&(this._ivp=this._iv.slice(0,o),this._iv2p=this._iv.slice(o,o+o));var a=n.slice(i,i+o);t(n,this._ivp,i,o),r.encryptBlock(n,i),t(n,this._iv2p,i,o),this._ivp=n.slice(i,i+o),this._iv2p=a}}),n.Decryptor=n.extend({processBlock:function(n,i){var r=this._cipher,o=r.blockSize;this._ivp===e&&(this._ivp=this._iv.slice(0,o),this._iv2p=this._iv.slice(o,2*o));var a=n.slice(i,i+o);t(n,this._iv2p,i,o),r.decryptBlock(n,i),t(n,this._ivp,i,o),this._ivp=a,this._iv2p=n.slice(i,i+o)}}),n}(),t.pad={}),g=h.Pkcs7={pad:function(e,t){for(var n=4*t,i=n-e.sigBytes%n,o=i<<24|i<<16|i<<8|i,a=[],s=0;i>s;s+=4)a.push(o);var c=r.create(a,i);e.concat(c)},unpad:function(e){var t=255&e.words[e.sigBytes-1>>>2];e.sigBytes-=t}},m=(h.NoPadding={pad:function(){},unpad:function(){}},n.BlockCipher=u.extend({cfg:u.cfg.extend({mode:f,padding:g}),reset:function(){u.reset.call(this);var e=this.cfg,t=e.iv,n=e.mode;if(this._xformMode==this._ENC_XFORM_MODE)var i=n.createEncryptor;else{var i=n.createDecryptor;this._minBufferSize=1}this._mode=i.call(n,this,t&&t.words)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){e.pad(this._data,this.blockSize);var t=this._process(!0)}else{var t=this._process(!0);e.unpad(t)}return t},blockSize:4}),n.CipherParams=i.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}})),y=t.format={},v=y.OpenSSL={stringify:function(e){var t=e.ciphertext,n=e.salt;if(n)var i=r.create([1398893684,1701076831]).concat(n).concat(t);else var i=t;return i.toString(s)},parse:function(e){var t=s.parse(e),n=t.words;if(1398893684==n[0]&&1701076831==n[1]){var i=r.create(n.slice(2,4));n.splice(0,4),t.sigBytes-=16}return m.create({ciphertext:t,salt:i})}},_=n.SerializableCipher=i.extend({cfg:i.extend({format:v}),encrypt:function(e,t,n,i){i=this.cfg.extend(i);var r=e.createEncryptor(n,i),o=r.finalize(t),a=r.cfg;return m.create({ciphertext:o,key:n,iv:a.iv,algorithm:e,mode:a.mode,padding:a.padding,blockSize:e.blockSize,formatter:i.format})},decrypt:function(e,t,n,i){i=this.cfg.extend(i),t=this._parse(t,i.format);var r=e.createDecryptor(n,i).finalize(t.ciphertext);return r},_parse:function(e,t){return"string"==typeof e?t.parse(e,this):e}}),b=t.kdf={},w=b.OpenSSL={execute:function(e,t,n,i){i||(i=r.random(8));var o=l.create({keySize:t+n}).compute(e,i),a=r.create(o.words.slice(t),4*n);return o.sigBytes=4*t,m.create({key:o,iv:a,salt:i})}},$=n.PasswordBasedCipher=_.extend({cfg:_.cfg.extend({kdf:w}),encrypt:function(e,t,n,i){i=this.cfg.extend(i);var r=i.kdf.execute(n,e.keySize,e.ivSize);i.iv=r.iv;var o=_.encrypt.call(this,e,t,r.key,i);return o.mixIn(r),o},decrypt:function(e,t,n,i){i=this.cfg.extend(i),t=this._parse(t,i.format);var r=i.kdf.execute(n,e.keySize,e.ivSize,t.salt);i.iv=r.iv;var o=_.decrypt.call(this,e,t,r.key,i);return o}})}(),function(){var e=CryptoJS,t=e.lib,n=t.BlockCipher,i=e.algo,r=[],o=[],a=[],s=[],c=[],l=[],u=[],p=[],d=[],f=[];!function(){for(var e=[],t=0;256>t;t++)e[t]=128>t?t<<1:t<<1^283;for(var n=0,i=0,t=0;256>t;t++){var h=i^i<<1^i<<2^i<<3^i<<4;h=h>>>8^255&h^99,r[n]=h,o[h]=n;var g=e[n],m=e[g],y=e[m],v=257*e[h]^16843008*h;a[n]=v<<24|v>>>8,s[n]=v<<16|v>>>16,c[n]=v<<8|v>>>24,l[n]=v;var v=16843009*y^65537*m^257*g^16843008*n;u[h]=v<<24|v>>>8,p[h]=v<<16|v>>>16,d[h]=v<<8|v>>>24,f[h]=v,n?(n=g^e[e[e[y^g]]],i^=e[e[i]]):n=i=1}}();var h=[0,1,2,4,8,16,32,64,128,27,54],g=i.AES=n.extend({_doReset:function(){for(var e=this._key,t=e.words,n=e.sigBytes/4,i=this._nRounds=n+6,o=4*(i+1),a=this._keySchedule=[],s=0;o>s;s++)if(n>s)a[s]=t[s];else{var c=a[s-1];s%n?n>6&&s%n==4&&(c=r[c>>>24]<<24|r[c>>>16&255]<<16|r[c>>>8&255]<<8|r[255&c]):(c=c<<8|c>>>24,c=r[c>>>24]<<24|r[c>>>16&255]<<16|r[c>>>8&255]<<8|r[255&c],c^=h[s/n|0]<<24),a[s]=a[s-n]^c}for(var l=this._invKeySchedule=[],g=0;o>g;g++){var s=o-g;if(g%4)var c=a[s];else var c=a[s-4];l[g]=4
},TLSerialization.prototype.getArray=function(){var e=new ArrayBuffer(this.offset),t=new Int32Array(e);return t.set(this.intView.subarray(0,this.offset/4)),t},TLSerialization.prototype.getBuffer=function(){return this.getArray().buffer},TLSerialization.prototype.getBytes=function(){for(var e=[],t=0;t<this.offset;t++)e.push(this.byteView[t]);return e},TLSerialization.prototype.checkLength=function(e){if(!(this.offset+e<this.maxLength)){console.trace("Increase buffer",this.offset,e,this.maxLength),this.maxLength=4*Math.ceil(Math.max(2*this.maxLength,this.offset+e+16)/4);var t=this.buffer,n=new Int32Array(t);this.createBuffer(),new Int32Array(this.buffer).set(n)}},TLSerialization.prototype.writeInt=function(e,t){this.debug&&console.log(">>>",e.toString(16),e,t),this.checkLength(4),this.intView[this.offset/4]=e,this.offset+=4},TLSerialization.prototype.storeInt=function(e,t){this.writeInt(e,(t||"")+":int")},TLSerialization.prototype.storeBool=function(e,t){e?this.writeInt(2574415285,(t||"")+":bool"):this.writeInt(3162085175,(t||"")+":bool")},TLSerialization.prototype.storeLongP=function(e,t,n){this.writeInt(t,(n||"")+":long[low]"),this.writeInt(e,(n||"")+":long[high]")},TLSerialization.prototype.storeLong=function(e,t){if(angular.isArray(e))return 2==e.length?this.storeLongP(e[0],e[1],t):this.storeIntBytes(e,64,t);var n=bigStringInt(e).divideAndRemainder(bigint(4294967296));this.writeInt(intToUint(n[1].intValue()),(t||"")+":long[low]"),this.writeInt(intToUint(n[0].intValue()),(t||"")+":long[high]")},TLSerialization.prototype.storeDouble=function(e){var t=new ArrayBuffer(8),n=new Int32Array(t),i=new Float64Array(t);i[0]=e,this.writeInt(n[0],(field||"")+":double[low]"),this.writeInt(n[1],(field||"")+":double[high]")},TLSerialization.prototype.storeString=function(e,t){this.debug&&console.log(">>>",e,(t||"")+":string");var n=unescape(encodeURIComponent(e));this.checkLength(n.length+8);var i=n.length;253>=i?this.byteView[this.offset++]=i:(this.byteView[this.offset++]=254,this.byteView[this.offset++]=255&i,this.byteView[this.offset++]=(65280&i)>>8,this.byteView[this.offset++]=(16711680&i)>>16);for(var r=0;i>r;r++)this.byteView[this.offset++]=n.charCodeAt(r);for(;this.offset%4;)this.byteView[this.offset++]=0},TLSerialization.prototype.storeBytes=function(e,t){this.debug&&console.log(">>>",bytesToHex(e),(t||"")+":bytes"),this.checkLength(e.length+8);var n=e.length;253>=n?this.byteView[this.offset++]=n:(this.byteView[this.offset++]=254,this.byteView[this.offset++]=255&n,this.byteView[this.offset++]=(65280&n)>>8,this.byteView[this.offset++]=(16711680&n)>>16);for(var i=0;n>i;i++)this.byteView[this.offset++]=e[i];for(;this.offset%4;)this.byteView[this.offset++]=0},TLSerialization.prototype.storeIntBytes=function(e,t,n){var i=e.length;if(t%32||8*i!=t)throw new Error("Invalid bits: "+t+", "+e.length);this.debug&&console.log(">>>",bytesToHex(e),(n||"")+":int"+t),this.checkLength(i);for(var r=0;i>r;r++)this.byteView[this.offset++]=e[r]},TLSerialization.prototype.storeRawBytes=function(e,t){var n=e.length;this.debug&&console.log(">>>",bytesToHex(e),t||""),this.checkLength(n);for(var i=0;n>i;i++)this.byteView[this.offset++]=e[i]},TLSerialization.prototype.storeMethod=function(e,t){var n,i=this.mtproto?Config.Schema.MTProto:Config.Schema.API,r=!1;for(n=0;n<i.methods.length;n++)if(i.methods[n].method==e){r=i.methods[n];break}if(!r)throw new Error("No method "+e+" found");this.storeInt(intToUint(r.id),e+"[id]");var o=this;return angular.forEach(r.params,function(n){o.storeObject(t[n.name],n.type,e+"["+n.name+"]")}),r.type},TLSerialization.prototype.storeObject=function(e,t,n){switch(t){case"int":return this.storeInt(e,n);case"long":return this.storeLong(e,n);case"int128":return this.storeIntBytes(e,128,n);case"int256":return this.storeIntBytes(e,256,n);case"int512":return this.storeIntBytes(e,512,n);case"string":return this.storeString(e,n);case"bytes":return this.storeBytes(e,n);case"double":return this.storeDouble(e,n);case"Bool":return this.storeBool(e,n)}if(angular.isArray(e)){if("Vector"==t.substr(0,6))this.writeInt(481674261,n+"[id]");el
if(16==e.error_code||17==e.error_code){t.applyServerTime(bigStringInt(n).shiftRight(32).toString(10))&&this.updateSession();var s=this.updateSentMessage(e.bad_msg_id);this.pushResend(s.msg_id),this.ackMessage(n)}break;case"message":this.serverMessages.push(e.msg_id),this.processMessage(e.body,e.msg_id,i);break;case"new_session_created":this.ackMessage(n),this.processMessageAck(e.first_msg_id),this.applyServerSalt(e.server_salt),this.onSessionCreate(i,n);break;case"msgs_ack":for(var o=0;o<e.msg_ids.length;o++)this.processMessageAck(e.msg_ids[o]);break;case"msg_detailed_info":if(!this.sentMessages[e.msg_id]){this.ackMessage(e.answer_msg_id);break}case"msg_new_detailed_info":this.reqResendMessage(e.answer_msg_id);break;case"rpc_result":this.ackMessage(n);var c=e.req_msg_id,a=this.sentMessages[c];if(this.processMessageAck(c),a){var l=a.deferred;if("rpc_error"==e.result._){var u=this.processError(e.result);console.log(dT(),"Rpc error",u),l&&l.reject(u)}else l&&(Config.Modes.debug?console.log(dT(),"Rpc response",e.result):console.log(dT(),"Rpc response",e.result._),a.deferred.resolve(e.result)),a.isAPI&&(this.connectionInited=!0);delete this.sentMessages[c]}break;default:this.ackMessage(n),d&&d(e)}},{getNetworker:function(e,t,n,i){return new p(e,t,n,i)},setUpdatesProcessor:function(e){d=e}}}]).factory("MtpApiManager",["AppConfigManager","MtpAuthorizer","MtpNetworkerFactory","ErrorService","$q",function(e,t,n,i,r){function o(t,n){e.set({dc:t,user_auth:angular.extend({dcID:t},n)}),h=t}function a(){return c("auth.logOut").then(function(){e.remove("dc","user_auth"),h=!1},function(t){e.remove("dc","user_auth"),t&&401!=t.code&&e.remove("dc"+h+"_auth_key"),h=!1,t.handled=!0})}function s(i,o){o=o||{};var a=o.fileUpload||o.fileDownload?d:p;if(!i)throw new Exception("get Networker without dcID");if(void 0!==a[i])return r.when(a[i]);var s="dc"+i+"_auth_key",c="dc"+i+"_server_salt";return e.get(s,c).then(function(l){if(void 0!==a[i])return a[i];var u=l[0],p=l[1];if(u&&512==u.length){var d=bytesFromHex(u),f=bytesFromHex(p);return a[i]=n.getNetworker(i,d,f,o)}return o.createNetworker?t.auth(i).then(function(t){var r={};return r[s]=bytesToHex(t.authKey),r[c]=bytesToHex(t.serverSalt),e.set(r),a[i]=n.getNetworker(i,t.authKey,t.serverSalt,o)},function(e){return console.log("Get networker error",e,e.stack),r.reject(e)}):r.reject({type:"AUTH_KEY_EMPTY",code:401})})}function c(t,n,o){o=o||{};var a,l,u=r.defer(),p=function(e){e?angular.isObject(e)||(e={message:e}):e={type:"ERROR_EMPTY"},u.reject(e),o.noErrorBox||(e.input=t,e.stack=e.stack||(new Error).stack,setTimeout(function(){e.handled||(i.show({error:e}),e.handled=!0)},100))};l=(a=o.dcID)?s(a,o):e.get("dc").then(function(e){return s(a=e||1,o)});var d,g=!1;if(l.then(function(i){return(d=i).wrapApiCall(t,n,o).then(function(e){u.resolve(e)},function(l){if(console.error(dT(),"Error",l.code,l.type,h,a),401==l.code&&h==a)e.remove("dc","user_auth");else if(401==l.code&&h&&a!=h){if(void 0===f[a]){var g=r.defer();c("auth.exportAuthorization",{dc_id:a},{noErrorBox:!0}).then(function(e){c("auth.importAuthorization",{id:e.id,bytes:e.bytes},{dcID:a,noErrorBox:!0}).then(function(){g.resolve()},function(e){g.reject(e)})},function(e){g.reject(e)}),f[a]=g.promise}f[a].then(function(){(d=i).wrapApiCall(t,n,o).then(function(e){u.resolve(e)},function(e){p(e)})},function(e){p(e)})}else if(303==l.code){var m=l.type.match(/^(PHONE_MIGRATE_|NETWORK_MIGRATE_)(\d+)/)[2];m!=a&&(o.dcID?o.dcID=m:e.set({dc:h=m}),s(m,o).then(function(e){e.wrapApiCall(t,n,o).then(function(e){u.resolve(e)},function(e){p(e)})}))}else p(l)})},function(e){p(e)}),!(g=g||(new Error).stack))try{window.unexistingFunction()}catch(m){g=m.stack||""}return u.promise}function l(){return e.get("user_auth").then(function(e){return e.id||0})}function u(){return h||!1}var p={},d={},f={},h=!1;return e.get("dc").then(function(e){e&&(h=e)}),{getBaseDcID:u,getUserID:l,invokeApi:c,setUserAuth:o,logOut:a}}]).factory("MtpApiFileManager",["MtpApiManager","$q","$window",function(e,t,n){function i(e,n,i){void 0===b[e]&&(b[e]=[],w[e]=0);var o=b[e],a=t.defer();return o.
break;case"messageMediaVideo":t.media.video=l.wrapForHistory(t.media.video.id);break;case"messageMediaDocument":t.media.document=u.wrapForHistory(t.media.document.id);break;case"messageMediaAudio":t.media.audio=p.wrapForHistory(t.media.audio.id);break;case"messageMediaContact":t.media.rFullName=h.wrapRichText(t.media.first_name+" "+(t.media.last_name||""),{noLinks:!0,noLinebreaks:!0})}t.media.user_id&&(t.media.user=o.getUser(t.media.user_id),t.media.userPhoto=o.getUserPhoto(t.media.user_id,"User"))}else if(t.action){switch(t.action._){case"messageActionChatEditPhoto":t.action.photo=c.wrapForHistory(t.action.photo.id);break;case"messageActionChatCreate":case"messageActionChatEditTitle":t.action.rTitle=h.wrapRichText(t.action.title,{noLinks:!0,noLinebreaks:!0})||"DELETED"}t.action.user_id&&(t.action.user=o.getUser(t.action.user_id),t.action.userPhoto=o.getUserPhoto(t.action.user_id,"User"))}return t.message&&t.message.length&&(t.richMessage=h.wrapRichText(t.message)),R[e]=t}function B(e){for(var t=0;t<j.dialogs.length;t++)if(j.dialogs[t].peerID==e)return[j.dialogs[t],t];return[]}function U(e){var n,i,r=P(e),s=o.getUser(e.from_id),c=o.getUserPhoto(e.from_id,"User"),l={},u=!1;if(e.message)u=e.message;else if(e.media&&"messageMediaEmpty"!=e.media._)switch(e.media._){case"messageMediaPhoto":u="Photo";break;case"messageMediaVideo":u="Video";break;case"messageMediaDocument":u="Document";break;case"messageMediaGeo":u="Location";break;case"messageMediaContact":u="Contact";break;default:u="Attachment"}else if("messageService"==e._)switch(e.action._){case"messageActionChatCreate":u="created the group";break;case"messageActionChatEditTitle":u="changed group name";break;case"messageActionChatEditPhoto":u="changed group photo";break;case"messageActionChatDeletePhoto":u="removed group photo";break;case"messageActionChatAddUser":u="invited user";break;case"messageActionChatDeleteUser":u="kicked user"}r>0?(l.title=(s.first_name||"")+(s.first_name&&s.last_name?" ":"")+(s.last_name||""),i=c,n=o.getUserString(r)):(l.title=(s.first_name||s.last_name||"Somebody")+" @ "+(a.getChat(-r).title||"Unknown chat"),i=a.getChatPhoto(-r,"Group"),n=a.getChatString(-r)),l.onclick=function(){t.$broadcast("history_focus",{peerString:n})},l.message=u,l.image=i.placeholder,l.key="msg"+e.id,l.tag=n,i.location&&!i.location.empty?f.downloadSmallFile(i.location,i.size).then(function(t){l.image=t,e.unread&&g.notify(l)}):g.notify(l)}var O={},R={},F={},q={},j={count:null,dialogs:[]},H={},z={},V={},W=e.when(),G=-1,K=m.createIndex(),Z={query:!1},X={},Y=[];return g.start(),t.$on("apiUpdate",function(e,n){switch(n._){case"updateMessageID":z[n.id]=n.random_id;break;case"updateNewMessage":var i=n.message,r=P(i),o=q[r];if(void 0!==o){var a=q[r].history[0];if(i.id<=a)return!1}else o=q[r]={count:null,history:[],pending:[]};k([i]),null!==o.count&&o.count++,o.history.unshift(i.id);var c,l=z[i.id];l&&((c=D(l,i))&&t.$broadcast("history_update",{peerID:r}),delete z[i.id]),c||t.$broadcast("history_append",{peerID:r,messageID:i.id});var u,p=B(r);p.length?(u=p[0],j.dialogs.splice(p[1],1)):u={peerID:r,unread_count:0,top_message:!1},!i.out&&i.unread&&u.unread_count++,u.top_message=i.id,m.indexObject(r,s.getPeerSearchText(r),K),j.dialogs.unshift(u),t.$broadcast("dialogs_update",u),t.idle.isIDLE&&!i.out&&i.unread&&g.getPeerMuted(r).then(function(e){i.unread&&!e&&U(i)});break;case"updateReadMessages":var d,i,f,r,p,u,h={};for(f=0;f<n.messages.length;f++)d=n.messages[f],i=O[d],i&&i.unread&&(i.unread=!1,R[d]&&(R[d].unread=!1),F[d]&&(F[d].unread=!1),r=P(i),i.out||(p=B(r),p&&(h[r]=--p[0].unread_count),g.cancel("msg"+d)));angular.forEach(h,function(e,n){t.$broadcast("dialog_unread",{peerID:n,count:e})});break;case"updateDeleteMessages":var d,i,f,r,p,u,y,h={},v={};for(f=0;f<n.messages.length;f++)d=n.messages[f],i=O[d],i&&(r=P(i),y=v[r]||(v[r]={count:0,unread:0,msgs:{}}),!i.out&&i.unread&&(y.unread++,g.cancel("msg"+d)),y.count++,y.msgs[d]=!0,R[d]&&(R[d].DELETED=!0,delete R[d]),F[d]&&(F[d].DELETED=!0,delete F[d]),i.DELETED=!0,delete O[d]);angular.forEach(v,function(e,n){var i=B(n);i&&e.unread&&(i
}function g(t){var n=c.getPeer(E);return!n||n.deleted?(safeReplaceObject(e.state,{loaded:!1}),!1):(e.history=[],e.historyPeer={id:E,data:n,photo:c.getPeerPhoto(E,"User","Group")},r.getUserID().then(function(t){e.ownPhoto=o.getUserPhoto(t,"User")}),void(t&&(e.typing={},e.$broadcast("ui_peer_change"),e.$broadcast("ui_history_change"),safeReplaceObject(e.state,{loaded:!0}))))}function m(t){var n,i,r,o=0,a=e.history.length;for(t>0?a=t:0>t&&(o=a+t),n=o;a>n;n++){if(i=e.history[n],r&&i.from_id==r.from_id&&!r.fwd_from_id==!i.fwd_from_id&&!r.action&&!i.action&&i.date<r.date+900){var s=i.message&&i.message.length<70&&-1==i.message.indexOf("\n");i.grouped=!i.fwd_from_id&&s?1:2}else(r||!n)&&delete i.grouped;r=i}}function y(){if(I&&A){var t=++L,n=e.mediaType&&{_:N[e.mediaType]},i=n?s.getSearch(e.curDialog.inputPeer,"",n,D):s.getHistory(e.curDialog.inputPeer,D);i.then(function(n){t==L&&(A+=n.history.length,I=null===n.count||A<n.count,D=n.history[n.history.length-1],angular.forEach(n.history,function(t){e.history.unshift(s.wrapForHistory(t))}),m(n.history.length+1),e.$broadcast("ui_history_prepend"))})}}function v(){I=!1,A=0,D=0;var t=++L,n=e.mediaType&&{_:N[e.mediaType]},i=n?s.getSearch(e.curDialog.inputPeer,"",n,D):s.getHistory(e.curDialog.inputPeer,D);e.state.mayBeHasMore=!0,i.then(function(n){t==L&&(A+=n.history.length,I=null===n.count||A<n.count,D=n.history[n.history.length-1],g(),safeReplaceObject(e.state,{loaded:!0}),e.history=[],angular.forEach(n.history,function(t){e.history.push(s.wrapForHistory(t))}),e.history.reverse(),m(),e.historyUnread=n.unreadLimit?{beforeID:n.history[n.unreadLimit-1],count:n.unreadLimit}:{},e.$broadcast("ui_history_change"),s.readHistory(e.curDialog.inputPeer))},function(){safeReplaceObject(e.state,{error:!0})})}function _(){safeReplaceObject(e.state,{notSelected:!0}),e.history=[],I=!1,e.$broadcast("ui_history_change")}function b(t,n){var i=n.target,r=n.shiftKey;if(r&&e.$broadcast("ui_selection_clear"),!e.selectActions&&!$(i).hasClass("icon-select-tick")&&!$(i).hasClass("im_content_message_select_area"))return!1;if(e.selectedMsgs[t])P=!1,delete e.selectedMsgs[t],e.selectedCount--,e.selectedCount||(e.selectActions=!1,e.$broadcast("ui_panel_update"));else{if(r){if(P!=t){var o,a,s,c=P>t;for(o=0;o<e.history.length;o++)if(e.history[o].id==P){a=o;break}for(o=a;e.history[o]&&(s=e.history[o].id)!=t;)e.selectedMsgs[s]||(e.selectedMsgs[s]=!0,e.selectedCount++),o+=c?-1:1}}else P=t;e.selectedMsgs[t]=!0,e.selectedCount++,e.selectActions||(e.selectActions=!0,e.$broadcast("ui_panel_update"))}}function w(t){e.selectedMsgs={},e.selectedCount=0,e.selectActions=!1,P=!1,t||e.$broadcast("ui_panel_update")}function S(){f.confirm({type:"HISTORY_FLUSH"}).then(function(){s.flushHistory(e.curDialog.inputPeer).then(function(){w()})})}function C(){if(e.selectedCount>0){var t=[];angular.forEach(e.selectedMsgs,function(e,n){t.push(n)}),s.deleteMessages(t).then(function(){w()})}}function M(){if(e.selectedCount>0){var t=[];angular.forEach(e.selectedMsgs,function(e,n){t.push(n)}),u.selectPeer({confirm_type:"FORWARD_PEER"}).then(function(e){var n=c.getPeerID(e);s.forwardMessages(n,t).then(function(){w(),i.$broadcast("history_focus",{peerString:e})})})}}function k(){e.selectActions?w():(e.selectActions=!0,e.$broadcast("ui_panel_update"))}function x(t){t&&(e.missedCount=0),e.mediaType=t||!1,e.history=[],v()}function T(){e.curDialog.peerID>0?i.openUser(e.curDialog.peerID):e.curDialog.peerID<0&&i.openChat(-e.curDialog.peerID)}e.$watch("curDialog.peer",h),l.attach(),p.start(),d.start(),e.history=[],e.mediaType=!1,e.selectedMsgs={},e.selectedCount=0,e.selectActions=!1,e.missedCount=0,e.typing={},e.state={},e.toggleMessage=b,e.selectedDelete=C,e.selectedForward=M,e.selectedCancel=w,e.selectedFlush=S,e.toggleEdit=k,e.toggleMedia=x,e.showPeerInfo=T;var E,A=0,I=!1,D=0,P=!1,N={photos:"inputMessagesFilterPhotos",video:"inputMessagesFilterVideo",documents:"inputMessagesFilterDocument",audio:"inputMessagesFilterAudio"},L=0,B={};e.$on("history_update",angular.noop),e.$on("history_append",function(t,r){if(r.peerID==e.curDialog.peerID){if(e.mediaType)
}]),angular.module("myApp.directives",["myApp.filters"]).directive("myDialog",function(){return{restrict:"AE",scope:!0,translude:!1,templateUrl:"partials/dialog.html"}}).directive("myMessage",function(){return{restrict:"AE",scope:!0,translude:!1,templateUrl:"partials/message.html"}}).directive("myDialogs",["$modalStack",function(e){function t(t,n){function i(t){if(!s&&e.getTop())return!0;if(36==t.keyCode&&!t.shiftKey&&!t.ctrlKey&&t.altKey){var n=$(o).find(".im_dialog_wrap a")[0];return n&&(n.click(),o.scrollTop=0,$(r).nanoScroller({flash:!0})),cancelEvent(t)}if(27==t.keyCode||9==t.keyCode&&t.shiftKey&&!t.ctrlKey&&!t.metaKey)return s||(a.focus(),a.value&&a.select()),cancelEvent(t);if(s&&13==t.keyCode){var n=$(o).find(".im_dialog_selected")[0]||$(o).find(".im_dialog_wrap a")[0];return n&&n.click(),cancelEvent(t)}if(38==t.keyCode||40==t.keyCode){var i=!t.shiftKey&&t.altKey;if(!i&&(!s||t.metaKey))return!0;var c,l=40==t.keyCode,n=!i&&$(o).find(".im_dialog_selected")[0]||$(o).find(".active a.im_dialog")[0],u=n&&n.parentNode;if(u){var c=n[l?"nextSibling":"previousSibling"];if(!c||!c.className||-1==c.className.indexOf("im_dialog_wrap")){var p=$(o).find(".im_dialog_wrap"),d=p.index(n.parentNode),f=d+(l?1:-1);c=p[f]}}else{var p=$(o).find(".im_dialog_wrap");c=l?p[0]:p[p.length-1]}if(i?c&&$(c).find("a")[0].click():(u&&c&&$(u).find("a").removeClass("im_dialog_selected"),c&&$(c).find("a").addClass("im_dialog_selected")),c){var h=c.offsetTop,g=c.offsetHeight,m=o.scrollTop,y=o.clientHeight;m>h?(o.scrollTop=h,$(r).nanoScroller({flash:!0})):h+g-y>m&&(o.scrollTop=h+g-y,$(r).nanoScroller({flash:!0}))}return cancelEvent(t)}}var r=$(".im_dialogs_wrap",n)[0],o=$(".im_dialogs_scrollable_wrap",n)[0],a=$(".im_dialogs_search_field",n)[0],s=!1;$(a).on("focus blur",function(e){s="focus"==e.type,s||$(o).find(".im_dialog_selected").removeClass("im_dialog_selected")}),$(document).on("keydown",i),t.$on("$destroy",function(){$(document).off("keydown",i)})}return{link:t}}]).directive("myDialogsList",["$window","$timeout",function(e,t){function n(n,i,r){function o(){return r.modal?($(i).css({height:$(e).height()-200}),void p()):(c&&c.offsetHeight||(c=$(".tg_page_head")[0]),l&&l.offsetHeight||(l=$(".im_page_footer")[0]),$(i).css({height:$(e).height()-l.offsetHeight-(c?c.offsetHeight:44)-72}),void p())}var a=$(".im_dialogs_wrap",i)[0],s=$(".im_dialogs_scrollable_wrap",i)[0],c=$(".tg_page_head")[0],l=$(".im_page_footer")[0],u=!1;onContentLoaded(function(){$(a).nanoScroller({preventPageScrolling:!0,tabIndex:-1,iOSNativeScrolling:!0})});var p=function(){onContentLoaded(function(){$(a).nanoScroller()})};n.$on("ui_dialogs_prepend",p),n.$on("ui_dialogs_append",function(){onContentLoaded(function(){p(),u=!1,t(function(){$(s).trigger("scroll")})})}),n.$on("ui_dialogs_change",function(){onContentLoaded(function(){p(),u=!1,t(function(){$(s).trigger("scroll")})})}),$(s).on("scroll",function(){!u&&s.scrollTop>=s.scrollHeight-s.clientHeight-300&&(n.$emit("dialogs_need_more"),u=!0)}),$(e).on("resize",o),o(),setTimeout(o,1e3)}return{link:n}}]).directive("myContactsList",["$window","$timeout",function(e){function t(t,n){function i(){$(n).css({height:$(e).height()-(o&&o.offsetHeight||0)-(r&&r.offsetHeight||0)-200}),$(a).nanoScroller()}var r=$(".contacts_modal_search")[0],o=$(".contacts_modal_panel")[0],a=$(".contacts_wrap",n)[0];onContentLoaded(function(){$(a).nanoScroller({preventPageScrolling:!0,tabIndex:-1,iOSNativeScrolling:!0}),i()}),$(e).on("resize",i),t.$on("contacts_change",function(){onContentLoaded(i)})}return{link:t}}]).directive("myCountriesList",["$window","$timeout",function(e){function t(t,n){function i(){$(n).css({height:$(e).height()-(o&&o.offsetHeight||0)-(r&&r.offsetHeight||0)-200}),$(a).nanoScroller()}var r=$(".countries_modal_search")[0],o=$(".countries_modal_panel")[0],a=$(".countries_wrap",n)[0];onContentLoaded(function(){$(a).nanoScroller({preventPageScrolling:!0,tabIndex:-1,iOSNativeScrolling:!0}),i()}),$(e).on("resize",i),t.$on("contacts_change",function(){onContentLoaded(i)})}return{link:t}}]).directive("myHistory",["$window","$timeout","$transiti